yfinanceは、Yahoo Financeから株価データを取得できる便利なPythonライブラリです。
本記事では、インストールから基本的な使い方、業務活用のユースケースまで、yfinanceの実用的な使い方を詳しく解説します。
Code(コード)セクション
yfinanceの基本的な使い方を解説し、サンプルコードを交えて詳しく紹介します。
yfinanceのインストールとインポート
まず、yfinanceをインストールします。
pip install yfinance
インストールが完了したら、Pythonコードにインポートします。
import yfinance as yf
2. 特定銘柄の株価データを取得
以下のコードで、Apple (AAPL) の株価データを取得できます。
ticker = yf.Ticker("AAPL")
data = ticker.history(period="5d") # 過去5日分のデータ取得
print(data)
株価データ
-
始値(Open)
取引開始時の価格を取得します。
import yfinance as yf
ticker = yf.Ticker("AAPL")
print(ticker.history(period="1y")["Open"].head()) -
終値(Close)
取引終了時の価格を取得します。一般的に「株価」として参照されます。
print(ticker.history(period="1y")["Close"].head())
-
高値(High)
取引日の最高価格を取得します。
print(ticker.history(period="1y")["High"].head())
-
安値(Low)
取引日の最低価格を取得します。
print(ticker.history(period="1y")["Low"].head())
-
出来高(Volume)
取引日の総取引量を取得します。
print(ticker.history(period="1y")["Volume"].head())
-
調整後終値(Adj Close)
株式分割や配当支払いなどの調整が加えられた終値を取得します。
print(ticker.history(period="1y")["Adj Close"].head())
-
株式分割(Stock Splits)
指定された期間中の株式分割情報を取得します。
print(ticker.splits)
-
配当(Dividends)
過去の配当金の支払い履歴を取得します。
print(ticker.dividends)
-
時価総額(Market Cap)
最新の時価総額データを取得します。
print(ticker.info["marketCap"])
-
PER(Price-Earnings Ratio)
株価収益率(PER)を取得します。株価の割高・割安を判断する指標です。
print(ticker.info["trailingPE"])
-
PBR(Price-to-Book Ratio)
株価純資産倍率(PBR)を取得します。企業の純資産に対する株価の倍率です。
print(ticker.info["priceToBook"])
-
ROE(Return on Equity)
自己資本利益率を取得します。株主資本に対する収益の割合です。
print(ticker.info["returnOnEquity"])
-
収益(Revenue)
過去の四半期および年間の収益データを取得します。
print(ticker.financials.loc["Total Revenue"])
-
純利益(Net Income)
過去の四半期および年間の純利益データを取得します。
print(ticker.financials.loc["Net Income"])
-
営業キャッシュフロー(Operating Cash Flow)
企業が営業活動から得たキャッシュフローのデータを取得します。
print(ticker.cashflow.loc["Operating Cash Flow"])
-
企業の概要情報(Company Profile)
企業の概要や業種、所在地などの基本情報を取得します。
print(ticker.info["longBusinessSummary"])
複数の銘柄を一括取得
複数の銘柄のデータを取得し、比較することも可能です。
tickers = yf.Tickers(["AAPL", "MSFT", "GOOGL"])
data = tickers.history(period="1mo") # 過去1か月のデータ取得
print(data)
データのCSVファイル保存
取得したデータをCSV形式で保存することで、後で分析に役立てることができます。
data = ticker.history(start="2022-01-01", end="2022-12-31")
data.to_csv("AAPL_2022.csv")
Use Case(ユースケース)セクション
yfinanceを使った業務や日常での活用例を紹介します。サンプルコードとともに、効率的なデータ取得や分析手法を学びましょう。
株価トレンドの可視化
以下のコードで、Appleの過去1年の株価推移をグラフ化して表示します。
import matplotlib.pyplot as plt
data = ticker.history(period="1y")
data["Close"].plot(title="Appleの株価トレンド")
plt.show()
複数銘柄の比較
Apple、Microsoft、Googleの株価を比較し、トレンド分析に役立てます。
tickers = yf.Tickers(["AAPL", "MSFT", "GOOGL"])
data = tickers.history(period="1y")
data["Close"].plot(title="AAPL vs MSFT vs GOOGL")
plt.show()
株価監視と通知システム
定期的に株価を取得し、変動があれば通知する監視システムを構築できます。
import time
while True:
current_price = ticker.history(period="1d")["Close"].iloc[-1]
print(f"AAPLの現在の株価: {current_price}")
time.sleep(3600) # 1時間ごとに更新
Steps(手順)セクション
yfinanceの導入方法と、サンプルコードを実際に動かす手順を解説します。
yfinanceのインストール
以下のコマンドを使って、yfinanceをインストールします。
pip install yfinance
公式ドキュメントの参照
yfinanceのより高度な機能については、公式ドキュメントもご参照ください。
まとめ
最近は新NISAがスタートし、投資に興味を持つ方が増えていると思います。しかし、株の情報を集めるのが手間がかかり、大変だと思います。yfinanceを使えば、株価データの収集・分析が簡単に行えます。業務や投資分析において強力なツールとなりますので、この記事のサンプルコードを参考に、ぜひyfinanceの活用を始めてみてください。
コメント