見出し画像

株価をダウンロードしてローソク足チャートを作るPythonスクリプト

Yahooファイナンスから株価データをダウンロードして、ローソク足チャートのHTML文書を生成する短いpythonスクリプトを作りました。

株価データのダウンロードはyfinanceというライブラリを利用するので、python環境にインストールしてください。

pip3 install yfinance    ※ubuntuなど
pip install yfinance   ※Windows

使い方

スクリプトのコマンドライン書式は次の通りです。

python3 kabu.py 証券 [-get] [-s yyyy-mm-dd] [-e yyyy-mm-dd] [-w] [-avr 日数] 

Windowsの場合はpython3ではなく「python」です。

証券
4桁の証券コード。または「N255」で日経平均、「 DJI」でNYダウ。
-get
株価データをダウンロードする。指定しない場合は、前回ダウンロードして作成済みのcsvファイルを読み込んでチャートを作成。
-s
ダウンロードする株価の開始日を2020-03-01のように指定する。
省略時は2019-01-01から。
-e
ダウンロードする株価の終了日を2022-12-31のように指定する。
省略時は当日。
-w
チャートの幅を少し広く描画する。
-avr
移動平均の算出日数。1を指定すると当日と前日の2日間の平均。

-sと-eはダウンロードする株価の期間であり、チャートの表示期間ではないので注意してください。

ソニーの株価をデフォルトの期間(2019〜当日)でダウンロードしてチャートを作る場合は次のように実行します。

$ python3 kabu.py 6758 -get
[*********************100%***********************]  1 of 1 completed
download successful. save T6758.csv
Generate candle chart
complete 

証券コードの指定位置は後ろの方でもかまいません。

$ python3 kabu.py -get 6758

期間のデフォルトは2019/01/01〜当日です。
ダウンロード期間を指定する場合は次のようにします。

$ python3 kabu.py 6758 -get -s 2021-04-1 -e 2022-12-31

-sと-eは-getと共に指定します。-sと-eは両方でも片方でも省略できます。

ダウンロードしたデータをT6758.csvに保存し、ローソク足チャートを表示するT6758.htmlを生成します。それをウェブブラウザで表示します。

ソニー

チャートの縦サイズはブラウザ領域の高さの60%で、最大800pxです。
グラフ右の株価の目盛の上下は、その期間の最安値と最高値が丁度納まるように作られます。チャートが長く、水平スクロールバーが現れる場合は、初期表示時に自動的に右端にスクロールします。

新規にダウンロードせずに、作成済みのT6758.csvを使ってチャートを作る場合は次のようにします。

$ python3 kabu.py 6758

移動平均線を表示するには-avrに続き日数を指定します。移動平均の計算は、単純な指定日数の和の平均です。移動平均線は青線で描画されます。

$ python3 kabu.py 6758 -avr 30

少し横の目盛幅を広くしたい場合は-wを指定します。

$ python3 kabu.py 6758 -avr 10 -w

指標値では、日経平均とNYダウをダウンロードできます。

$ python3 kabu.py N225 -get
$ python3 kabu.py DJI -get



いいなと思ったら応援しよう!