はじめに
本記事では、PythonでYahooFinanceのデータベースから個別銘柄の財務情報を取得する方法を紹介します。取得できるデータは多岐にわたるので、内容はデータのインデックスを自身でご確認ください。
手順
1. yfinanceをインストール
以下のコードを実行してyfinanceをインストールします。実行環境はGoogle Colabを想定しています。
!pip install yfinance
2. 必要なライブラリをインポート
以下のコードを実行して、必要なライブラリをインポートします。
import yfinance as yf
yf.pdr_override()
import numpy as np
import pandas as pd
from pandas_datareader import data
import datetime
from IPython.display import display
3. データを取得する期間の指定
以下のコードを実行して、データを取得する期間を指定します。当日までのデータを取得するためには、終了日時に1日後を設定する必要があります。
# データの取得開始日・取得終了日を設定
day_start = datetime.date(2021,1,1)
day_end = datetime.date.today() + datetime.timedelta(days=1)
4. 株価データの取得と表示
以下のコードを実行して、財務データを取得し、コンソールに結果を表示します。
以下では年単位・四半期単位の情報をそれぞれ表示しています。
# 銘柄名を変数に格納
stocks = ["4689.T"]
ticker_info = yf.Ticker("".join(stocks))
# 年単位の財務情報を表示
display(ticker_info.financials.T)
# 四半期単位の財務情報を表示
display(ticker_info.quarterly_financials.T)
5. 財務データの統合と整理
以下のコードを実行して、年単位・四半期単位の財務データを統合・整理し、コンソールに結果を表示します。
# 年単位の財務情報と四半期単位の財務情報を統合
df_tickerinfo = pd.concat([ticker_info.financials.T, ticker_info.quarterly_financials.T[~ticker_info.quarterly_financials.T.index.isin(ticker_info.financials.T.index)]])
# データを時系列順に並び替え
df_tickerinfo = df_tickerinfo.sort_index()
# 統合したデータを表示
display(df_tickerinfo)
ソースコード全文
以下にソースコード全文を示します。
!pip install yfinance
# 必要なライブラリをインポート
import yfinance as yf
yf.pdr_override()
import numpy as np
import pandas as pd
from pandas_datareader import data
import datetime
from IPython.display import display
# データの取得開始日・取得終了日を設定
day_start = datetime.date(2021,1,1)
day_end = datetime.date.today() + datetime.timedelta(days=1)
# 銘柄名を変数に格納
stocks = ["4689.T"]
ticker_info = yf.Ticker("".join(stocks))
# 年単位の財務情報を表示
display(ticker_info.financials.T)
# 四半期単位の財務情報を表示
display(ticker_info.quarterly_financials.T)
# 年単位の財務情報と四半期単位の財務情報を統合
df_tickerinfo = pd.concat([ticker_info.financials.T, ticker_info.quarterly_financials.T[~ticker_info.quarterly_financials.T.index.isin(ticker_info.financials.T.index)]])
# データを時系列順に並び替え
df_tickerinfo = df_tickerinfo.sort_index()
# 統合したデータを表示
display(df_tickerinfo)
プログラムを実行し、コンソール上に指定した期間の財務情報が表示されれば成功です。
目次へのリンク