※当サイトはPRを含みます

20代で資産2000万を達成した筆者が解説!【Python株価分析:第1回】Pythonで株価データを取得する方法

2025年6月5日

💰 20代で資産2,000万円を達成した筆者のリアルな投資ノウハウ

大学時代にNISAが始まり、当時から積立NISAをスタート。
社会人になってからは、毎月8万円を個別株とインデックス投資に半分ずつ投資。
個別株はPythonを使って銘柄を分析し、明確なルールに基づいて利確・損切りしてきました。

そんな投資スタイルで、20代のうちに資産2,000万円を突破。
本連載では、Pythonを活用した再現性のある株式分析の方法を紹介していきます。

📈 第1回:Pythonで株価データを取得する(yfinance徹底活用)

この連載では、Pythonを使った株価分析の基礎から応用までをステップバイステップで解説していきます。

第1回は、株価データの取得がテーマです。株価分析のスタートは「データを手に入れる」ことから。これができなければ何も始まりません。

そこで今回は、Pythonライブラリの中でも特に人気な yfinance を使って、実際に株価データを取得しながら学んでいきます!

yfinanceとは?

yfinance は、Yahoo! Finance から株価データを簡単に取得できるPythonライブラリです。

特徴:

  • 株価、出来高、配当などを取得可能
  • 複数銘柄の同時取得も対応
  • リアルタイムに近い最新データも取得可能
  • インストール・使用が簡単

環境構築とインストール

まずはyfinanceをインストールします。

pip install yfinance

Jupyter NotebookやGoogle Colabを使っている場合も同様です。

株価データの基本的な取得方法

以下のように書くだけで、対象銘柄のデータを簡単に取得できます。

import yfinance as yf

# トヨタ自動車の証券コード(日本株は.Tをつける)
ticker = '7203.T'

# 2023年から2024年末までの株価データを取得
df = yf.download(ticker, start='2023-01-01', end='2024-12-31')

# 先頭5行を表示
print(df.head())

データの中身を確認しよう

出力されるDataFrameには以下のようなカラムが含まれています:

カラム名説明
Date日付(インデックス)
Open始値(その日の取引開始価格)
High高値(その日の最高価格)
Low安値(その日の最低価格)
Close終値(その日の取引終了価格)
Adj Close調整終値(分割や配当を考慮した終値)
Volume出来高(その日に取引された株の数)
df.info()    # データ型の確認
df.describe()  # 統計情報の確認

期間や頻度の指定

startend 以外にも period を使って簡単に指定できます:

df = yf.download('7203.T', period='1y')  # 過去1年
periodの例意味
'1d'1日間
'5d'5日間
'1mo'1ヶ月
'1y'1年間
'max'可能な最大期間

⏰ 頻度の指定(interval)

以下のように日足、週足、分足なども指定できます:

df = yf.download('7203.T', period='7d', interval='1h')  # 過去7日間の1時間足
intervalの例説明
'1m'1分足(最大7日まで)
'5m'5分足
'1h'1時間足
'1d'日足(デフォルト)
'1wk'週足
'1mo'月足

複数銘柄の同時取得

複数の銘柄を同時に取得したい場合も簡単です

tickers = ['7203.T', '6758.T', '9984.T']  # トヨタ、ソニー、ソフトバンクG
df = yf.download(tickers, start='2023-01-01', end='2023-12-31', group_by='ticker')

group_by='ticker'を指定すると、銘柄ごとにデータがまとめられます。

応用:企業情報や財務データの取得

株価だけでなく、企業情報も取得できます

stock = yf.Ticker("7203.T")

# 基本情報
print(stock.info)

# 財務データ
print(stock.financials)

# 配当履歴
print(stock.dividends)

企業の概要や市場情報、配当利回りなども取り出せます。

✅ まとめ

  • Pythonのyfinanceを使えば、Yahoo! Financeから簡単に株価データを取得できる。
  • 日本株の場合は証券コードの末尾に「.T」を付ける。
  • 日足、週足、分足なども柔軟に取得可能。
  • 複数銘柄や企業情報も扱える。

次回は、取得した株価データを使って、チャートや移動平均線の可視化を行います!