当ページではyfinance.Tickerで取得したhistorianデータの活用方法を記載する。

[Yファイナンスから企業の各種情報を取得]の部分は別途以下で説明している。
yfinance.Tickerで会社情報・株価等を取得する | エクヌツITブログ
また、historian以外の株式情報の取得方法は以下で説明している。
yfinance.Tickerで取得した株式情報を使用する | エクヌツITブログ
1.最も簡単な実行方法
import yfinance as yf
stock = yf.Ticker("AAPL")
stock_history = stock.history()
print(str(stock_history))
1行目はOSSを指定している。
3行目はYファイナンスの情報を取得している。
当例ではアップルの情報を取得している。
前述しているが、Tickerの取得仕様は別途以下のページで説明している。
[Python]yfinance.Tickerで株情報を取得 | エクヌツITブロ
4行目は3行目で取得したデータのうち、株価の時系列データのみを取得している。
5行目は取得したデータを標準出力している。
2.historian()の引数設定
| 引数名 | 型 | 説明 | デフォルト |
| period | str | 株価の取得する期間を指定する。 以下を設定することができる。 1d,5d,1mo,3mo,6mo,1y,2y,5y,10y,ytd,max start・end・periodを全て設定することはできない。(ValueErrorとなる。) start・periodのみを設定した場合は、開始日時はstartの日時となり、開始日時からperiodで指定した期間分後のデータまでのデータを取得する。 end・periodのみを設定した場合は、終了日時はendの日時となり、終了日時からperiodで指定した期間分前のデータまでのデータを取得する。 | 1mo |
| start | str | 株価の取得する開始日する。 以下の形式で設定する。 YYYY-MM-DD | 99年前 |
| end | str | 株価の取得する終了日する。 以下の形式で設定する。 YYYY-MM-DD | 現在日 |
| interval | str | 取得データの取得周期を設定する。 以下を設定することができる。 1m,2m,5m,15m,30m,60m,90m,1h,1d,5d,1wk,1mo,3mo 1mで設定した場合は、1分周期のデータが取得される。 (例)2025/11/1 00:00、2025/11/1 00:01、2025/11/1 00:02・・・ 1dで設定した場合は、1日周期のデータが取得される。 (例)2025/11/1 00:00、2025/11/2 00:00、2025/11/3 00:00・・・ | 1d |
| prepost | bool | プレマーケット、ポストマーケット(時間外取引)のデータを含めるかを設定する。 | False |
| auto_adjust | bool | 株式分割などがあった際に分割後の値を分割・配当を反映した 調整後価格 を返すかを設定する。 | True |
| back_adjust | bool | 株式分割などがあった際に分割後の値を基に分割前のデータも分割後の計算結果に基づいて表示するかを設定する。 | FalseFalse |
| repair | bool | Yahooデータのエラーを補正するかを設定する。 どのような補正をしているかは以下を参照。 https://ranaroussi.github.io/yfinance/advanced/price_repair.html | False |
| keepna | bool | 戻り値にNanデータを含むかを設定する。 | False |
| rounding | bool | 小数2桁でデータを丸めるかを設定する。 | False |
| timeout | float | タイムアウト時間を何秒にするかを設定する。 | 10 |
| raise_errors | bool | データの欠損があった時に取れる限りのデータを出力するか、例外発生とするかを設定する。 True の場合、例外としてエラーを発生する。 False の場合、取れる限りのデータを出力する。 | False |
3.設定例
import yfinance as yf
stock = yf.Ticker("AAPL")
stock_history = stock.history()
# 2025/1/1から1年分のデータを1か月周期で取得する。
stock_history = stock.history(start="2025-01-01",period="1y",interval="1mo")
print(str(stock_history))
# 2025/1/1から2026/1/1の期間のデータを取得する。
stock_history = stock.history(start="2025-01-01",end="2026-01-01")
print(str(stock_history))
4.参考
公式ドキュメント
https://ranaroussi.github.io/yfinance/reference/api/yfinance.Ticker.html#yfinance.Ticker

コメント