Pythonで株価を扱う yahoo_finance_api2
参考にさせていただいているブログに従って、yahoo_finance_api2も試してみた。
まずはライブラリーページのまま、マイクロソフトの過去10日間の5分足データを得ることにする。
import sys
import pandas as pd
from yahoo_finance_api2 import share
from yahoo_finance_api2.exceptions import YahooFinanceError
my_share = share.Share('MSFT')
symbol_data = None
try:
symbol_data = my_share.get_historical(
share.PERIOD_TYPE_DAY,10,
share.FREQUENCY_TYPE_MINUTE,5)
except YahooFinanceError as e:
print(e.message)
sys.exit(1)
#symbol_dataは辞書型、それぞれの値はリストになっているので、DataFrameに変換する。
df = pd.DataFrame(symbol_data)
#日付がtimestampになっているので、datetimeに変換する
#pandasにはto_datetimeという関数がある。
df["datetime"]=pd.to_datetime(df.timestamp,unit="ms")
print(df.head())
できた!
同様に、コカコーラ(KO)の過去10週の週足データを求めてみる。
- 日で指定:share.PERIOD_TYPE_DAY
- 週で指定:share.PERIOD_TYPE_WEEK
- 月で指定:share.PERIOD_TYPE_MONTH
- 年で指定:share.PERIOD_TYPE_YEAR
とのことです。