MENU

Pythonで株価データを取得!yfinanceの使い方とJupyter Notebook活用

はじめに

Pythonで株価データを取得する方法はいくつかありますが、yfinance を使うと簡単にYahoo! Financeのデータを取得できます。特に、無料で使えて、シンプルなコードで過去の株価や財務情報を取得できるため、多くのトレーダーやデータ分析者に利用されています。

本記事では、yfinanceの基本的な使い方株価データの取得・可視化方法 について詳しく解説します。

事前準備:AnacondaでPython環境を構築しよう

このチュートリアルを進めるには、Pythonの開発環境(Anaconda + Jupyter Notebook)が必要です。
まだ準備ができていない方は、以下の記事を参考に環境を構築してください。

前の記事:「Python開発環境を整えよう!AnacondaとJupyter Notebookの基本」


目次

1. yfinanceとは?

yfinanceの概要

yfinanceは、Yahoo! Financeの株価データをPythonで簡単に取得できるライブラリ です。以下のような情報を取得できます。

✅ 過去の株価データ(終値、高値、安値、出来高など)
✅ リアルタイムの株価情報
✅ 企業の財務データ(売上、利益、PERなど)
✅ 株式の配当履歴

なぜyfinanceを使うのか?

  • 無料で利用可能(登録不要)
  • Yahoo! Financeの公式APIが使えないため、代替手段として有効
  • pandasと組み合わせてデータ分析が簡単にできる
  • matplotlibやplotlyを使って簡単に可視化できる

2. Anaconda環境でyfinanceをインストール

yfinanceを使用するには、Anacondaの仮想環境をアクティブにしてインストール するのが推奨されます。

2.1 仮想環境のアクティブ化

まず、Anacondaの仮想環境(例: ai_env)を有効化します。

conda activate ai_env

2.2 yfinanceのインストール

仮想環境がアクティブになっている状態で、以下のコマンドを実行します。

pip install yfinance pandas matplotlib

✅ これで、yfinance に加え、データ処理用の pandas と可視化用の matplotlib もインストールできます。


3. Jupyter Notebookでyfinanceを使って株価データを取得する

Jupyter Notebookを開き、新しいPythonノートブックを作成し、以下のコードを実行してください。

3.1 株価データの取得

まず、yfinance.Ticker() を使って特定の銘柄のデータを取得します。

import yfinance as yf

# Apple (AAPL) の株価データを取得
stock = yf.Ticker("AAPL")

# 株価情報を表示
print(stock.history(period="5d"))

history(period="5d") を使うと、直近5日間の株価データを取得できます。

その他の期間も指定できます。

指定期間記述方法
1日1d
5日5d
1ヶ月1mo
1年1y
5年5y
最大max

実行結果(Jupyter Notebook)

3.2 過去の株価データを取得

特定の期間のデータを取得する場合、startend を指定できます。

import yfinance as yf

# 2023年1月1日〜2023年12月31日のデータを取得
stock_data = yf.download("AAPL", start="2023-01-01", end="2023-12-31")

print(stock_data.head())

実行結果(Jupyter Notebook)

以下のように、2023年のApple株価データの最初の5行が表示されます。

.download() を使うと、複数の銘柄も同時に取得できます。

stocks = yf.download(["AAPL", "GOOGL", "MSFT"], start="2023-01-01", end="2023-12-31")
print(stocks.head())

実行結果(Jupyter Notebook)

以下のように、2023年のApple(AAPL)、Google(GOOGL)、Microsoft(MSFT)株価データの最初の5行が表示されます。

4. 株価データの可視化

4.1 株価の時系列グラフを描画

matplotlibを使って、取得したデータをグラフ化してみましょう。

import matplotlib.pyplot as plt
import yfinance as yf

# 株価データの取得
stock_data = yf.download("AAPL", start="2023-01-01", end="2023-12-31")

# 終値をプロット
plt.figure(figsize=(10,5))
plt.plot(stock_data.index, stock_data["Close"], label="AAPL Close Price")
plt.xlabel("Date")
plt.ylabel("Stock Price (USD)")
plt.title("Apple Stock Price in 2023")
plt.legend()
plt.show()

✅ Jupyter Notebookで実行すると、Appleの株価推移 を示す折れ線グラフが表示されます。

実行結果(Jupyter Notebook)


5. まとめ

今回の記事では、yfinanceを使って株価データを取得する方法 を解説しました。

おさらい

Anacondaの仮想環境でyfinanceをインストール
Jupyter Notebookでコードを実行し、株価データを取得
.history().download() を使って過去データを取得
matplotlib を使って株価の推移を可視化

これで、基本的な株価データの取得と分析ができるようになりました!🎉

次回は、さらに高度なデータ分析や、ChatGPTを活用した株価予測の方法 について解説します。ぜひお楽しみに!

▶ 次の記事:「ChatGPTを活用した株価データ分析」(リンクを挿入)

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメント一覧 (2件)

コメントする

目次