株価をダウンロードしてローソク足チャートを作る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