株価情報をAPIをたたいて取得する。株価はYahoo!ファイナンスなどでも取得できるが、今回はプログラミングで取得する。銘柄ごとのランキングなど、自分でプログラムをかけるようになる。
Stooqとは
公式サイト: Stooq
株価の情報を得ることができる。
得られるデータ
銘柄を指定することで、日付ごとに以下のデータが得られる。
- 始値
- 高値
- 安値
- 終値
- 出来高
Pythonによるデータの取得方法
pandas_datareaderを使用して取得する。今回はソフトバンクグループの株価を取得する。詳しいコードはこちら。
from pandas_datareader.stooq import StooqDailyReader
from datetime import datetime
start = datetime(2020, 1, 1)
end = datetime(2020, 2, 1)
brand = '9984.JP'
stooq = StooqDailyReader(brand, start=start, end=end)
data = stooq.read() # pandas.core.frame.DataFrame
print(data)
出力
Open High Low Close Volume
Date
2020-01-31 23860 24130 23850 23910 248984
2020-01-30 23980 24020 23590 23650 311328
2020-01-29 24000 24100 23920 24100 227687
...
グラフ化
2021年のソフトバンクグループのグラフ。
コード
from pandas_datareader.stooq import StooqDailyReader
from datetime import datetime
import matplotlib.pyplot as plt
start = datetime(2021, 1, 1)
end = datetime(2021, 12, 31)
brand = '9984.JP'
stooq = StooqDailyReader(brand, start=start, end=end)
data = stooq.read() # pandas.core.frame.DataFrame
plt.figure()
data[['Open', 'High', 'Low', 'Close']].plot()
plt.savefig('soft.png')
Comments