yfinance・楽天RSS・moomoo・SBI CSV 比較:Python株価分析のデータ取得ツールを選ぶ

Python実装・コード

※本記事には広告・アフィリエイトリンクが含まれます。掲載内容は筆者の調査・検証に基づき、読者の判断を助ける目的で作成しています。

結論から言うと:

  • 最初はyfinanceで十分。pip install yfinanceの1行でデータが取れる仕組みです
  • リアルタイム監視や自動発注まで使いたくなったら、楽天RSSかmoomooへ移行する流れです
  • 自分の過去取引を振り返りたいならSBI CSVが向いています

📘 外部参考moomoo OpenAPI(公式)

📘 外部参考yfinance 公式GitHubリポジトリPyPIページ

Pythonで株価分析を始めるとき、最初に悩むのが「どこからデータを取得するか」だと思います。yfinanceは手軽ですが遅延があります。証券会社のAPIはリアルタイムですが設定が必要です。ということで、yfinance・楽天RSS・moomoo・SBI CSVの4つを実際に使った経験をもとに比較してみます。

📘 外部参考Python 公式(ダウンロード)Python 公式ドキュメント(日本語)

4つのデータ取得方法を比較

ツール 費用 リアルタイム 日本株 Python連携 初心者向け
yfinance 無料 △(15分遅延)
楽天RSS 無料(口座要) ◎(リアルタイム)
moomoo 無料(口座要) ◎(リアルタイム)
SBI CSV 無料(口座要) ×(日次)

yfinance:まず最初に使うべき標準ツール

yfinanceはYahoo! Finance APIを通じて株価データを取得するPythonライブラリです。pip install yfinanceの1行でインストールでき、日本株・米国株・ETF・為替まで幅広く対応しています。データは15分ほど遅延していますが、分析やバックテストの学習には十分使えます。

📘 外部参考Backtesting.py(公式ドキュメント)Backtrader 公式

import yfinance as yf

# トヨタ自動車(日本株)
df = yf.download('7203.T', period='1y')
print(df.tail())

# Apple(米国株)
df_us = yf.download('AAPL', period='1y')
print(df_us.tail())
  • インストール不要・コード1行でデータ取得
  • 日本株はティッカー末尾に「.T」を付ける
  • 過去データ取得は無制限(ただし遅延あり)
  • APIレート制限があるため大量リクエストには注意

→ 詳しい使い方は「yfinanceのAPI制限(429エラー)を回避する安全な設計」を参考にしてください。

楽天証券 MarketSpeed II RSS:リアルタイム+発注ができる

📘 外部参考楽天証券 MarketSpeed II RSS(公式)

楽天証券のMarketSpeed II RSSは、DDEまたはCOM連携でPythonからリアルタイムデータを取得できます。気配値・歩み値・板情報が取れて、発注機能も使える仕組みです。率直に言うと、セットアップはやや手間がかかります。ただ、設定さえ済めば安定して使えています。

  • 楽天証券口座(無料)が必要
  • Windows専用(MacやLinuxでは動作しない)
  • リアルタイムの気配値・歩み値・板情報を取得可能
  • 発注機能あり(自動売買への発展が可能)
  • 詳細なセットアップが必要だが長期利用者が多い

→ セットアップ手順は「楽天証券 MarketSpeed II RSSをPythonで使う方法」を参考にしてください。

moomoo証券:高精度データ+APIが充実

moomoo証券(旧Futu証券)はfutu-apiというPython SDKを提供しており、リアルタイムの株価・財務データ・ニュース情報を取得できます。米国株・日本株・香港株に対応しており、データの品質が高いと感じています。口座開設は無料で、残高がなくてもデータ取得は使える仕組みです。

  • futu-apiでリアルタイムデータ取得が可能
  • 米国株・日本株・香港株に対応
  • 財務データ・ニュース・板情報も取得可能
  • Windowsでの動作が前提(Linux対応は要確認)
  • 口座残高なしでもデータ取得は可能

→ 詳しい使い方は「moomoo証券の株価データをPythonで取得・分析する方法」を参考にしてください。

SBI証券 CSV:履歴データの整理・分析に向く

SBI証券からダウンロードできるCSVには、約定履歴・保有株一覧・損益履歴などが含まれています。リアルタイムには使えませんが、自分の過去の取引をpandasで分析するのに向いています。税金計算や損益管理ツールを作るときに実際に活用しています。

📘 外部参考pandas User Guide(公式)

  • SBI証券の約定履歴・損益データをPythonで分析可能
  • リアルタイム取得は不可(手動ダウンロードが必要)
  • pandasのread_csvで簡単に読み込める
  • 税金計算・損益管理ツールを作るのに最適

→ 詳しい使い方は「SBI証券の約定履歴CSVをPythonで分析する」を参考にしてください。

目的別おすすめ:どれを使うべきか

目的おすすめ理由
Pythonを始めたばかり・まず試したいyfinanceインストール即利用・コード1行
日本株のリアルタイム監視・アラート楽天RSSリアルタイム気配値が取得可能
米国株・日本株を高精度で分析したいmoomoofutu-apiでAPIアクセスが容易
自分の取引記録を分析したいSBI CSV約定履歴CSVをpandasで直接分析
バックテストに使いたいyfinance長期ヒストリカルデータが豊富
自動発注まで視野に入れたい楽天RSS or moomoo発注APIが使える

個人的には、まずyfinanceで分析環境を作るのが一番コストが低いと思っています。「もっとリアルタイムに近いデータが欲しい」「発注まで自動化したい」という段階になってから、楽天RSSかmoomooに移行する流れがちょうどいいかと思います。

※当サイトの内容は投資判断を推奨するものではありません。掲載しているコード・分析例は学習・検証目的であり、実際の投資はご自身の責任で行ってください。

タイトルとURLをコピーしました