見出し画像

#6.yfinance API で株価と財務諸表の時系列データを取得する




1.yfinance API で取得できるデータ


  • yfinance API では、下記➊~⓬のデータを取得できます。

   ➊ stock info( 企業情報 )
   ➋ historical market data( 株価の時系列データ )
   ➌ meta information about the history( メタデータ )
   ➍ actions( 配当 / 株式分割 の確定日 )
   ➎ share count( 発行済株式数 )
   ➏ financials( 財務諸表 )
   ➐ holders( 株主保有割合 )
   ➑ recommendations( アナリストの推奨事項 )
   ➒ earnings dates( 予想EPS、実績EPS )
   ➓ ISIN code( 証券識別コード )
   ⓫ options expirations( オプションの満期日 )
   ⓬ news( 企業の関連ニュース )

  • 本サイトでは、株価と財務諸表の時系列データの取得に向けて、「➋ historical market data」と「➏ financials」について紹介します。


図.yfinance の APIリスト



2.historical market data


1)API構文

  • 「➋ historical market data」 は、「➋-1).history」と「➋-2).download」のどちらかのAPIで取得します。

  • どちらのAPIも出力結果は同じですので、好みで使い分けてください。

  • API構文は「①ティッカーオブジェクト」( もしくは「①’ティッカーシンボル」)「②開始日」「③終了日」「④期間」「⑤集計単位」「⑥調整済終値」の6つの変数から成り、下図に示すパラメータを設定します。

  • なお、API構文は、データの出力期間を「②開始日」と「③終了日」で設定する方法と、「④期間」で設定する方法の2通りがあります。


図.historical market data の API
図.API構文( .history )
図.API構文( .download )
図.API構文の変数・パラメータ

2)プログラムコード と 出力結果

  • Pyrhonを使ったプログラムコードと出力結果は下記のとおり。

  プログラムコード( .history )

import yfinance as yf
msft = yf.Ticker("MSFT")
msft.history(period="3mo", interval="1wk", auto_adjust=False)

  出力結果( .history )

図.「.history」の出力結果

  プログラムコード( .download )

import yfinance as yf
yf.download("MSFT", start="2024-04-01", end="2024-04-30", interval="1d", auto_adjust=True)

  出力結果( .download )

図.「.download」の出力結果



3.financials


1)API構文

  • 「➏ financials」は、下記の構文により取得します。

  • API構文は、年間/四半期の別、取得したい財務諸表(損益計算書、貸借対照表、キャッシュフロー計算書)に応じて使い分けます。

  • API構文は「ティッカーオブジェクト」の変数から成り、下図に示すパラメータを設定します。

  • なお、ファンダメンタルデータ( 損益計算書、貸借対照表、キャッシュフロー計算書 )は、企業が報告した日と同日に更新されます。


図.financials の API
図.API構文( .income_stmt / .quarity_income_stmt )
図.API構文の変数・パラメータ


2)プログラムコード と 出力結果

  • Pyrhonを使ったプログラムコード例と出力結果は下記のとおりです。


 ① .income_stmt( 損益計算書 ) 

   プログラムコード

import yfinance as yf
msft = yf.Ticker("MSFT")
msft.income_stmt

   出力結果

図.「.income_stmt」の出力結果(1/2)
図.「.income_stmt」の出力結果(2/2)


 ② .balance_sheet( 貸借対照表 ) 

   プログラムコード

import yfinance as yf
msft = yf.Ticker("MSFT")
msft.balance_sheet

   出力結果

図.「.balance_sheet」の出力結果


 ③ .cashflow( キャッシュフロー計算書 )

   プログラムコード

import yfinance as yf
msft = yf.Ticker("MSFT")
msft.cashflow

   出力結果

図.「.cashflow」の出力結果(1/2)
図.「.cashflow」の出力結果(2/2)



この記事が気に入ったらサポートをしてみませんか?