Pythonによる金融データの取得方法

Python3ではじめるシステムトレード ──環境構築と売買戦略』に株価データの取得方法としてpandas-datareaderが紹介されてました。トレーディングシステムを構築するにはデータが重要です。しかし、個人では金銭面から取得できるデータに限界があります。今回紹介するpandas-datareaderを利用すれば、主要データの多くを無料で入手できます。本記事では、pandas-datareaderの基本的な使い方と取得できるデータについてまとめます。

基本情報

公式サイトは以下になります。

pandas-datareader — pandas-datareader 0.10.0 documentation

2021年7月13日で更新が止まっているようです。(2023年4月9日 時点)

ライブラリはpipコマンドでインストール可能です。

pip install pandas-datareader

ライブラリをインストール出来たら、早速データを取得してみます。

import pandas_datareader as pdr
pdr.get_data_fred('GS10')

上記のコードでは、米国債券10年利回りを5年分取得しています。2023/4/9時点では、2023/3/1までのデータを取得できました。

pandas-datareaderは、WebスクレイピングやWebAPIによるデータ取得をお手軽に利用できるようにしたツールのようです。

取得可能なデータソース一覧

 ”pandas-datareader”から取得できるデータソースは、以下の通り。(2023/04/09時点)

 かなり多くのデータソースに対応しているようです。ただし、Webスクレイピングを利用しているようなものはデータソースによっては禁止されているので注意が必要です。

データ取得方法

 各データベースは、リンク先に詳細に取得方法が紹介されています。ここでは、一例として、Federal Reserve Economic Data (FRED)からデータを取得する方法について紹介します。他のデータソースも使い方は基本的には同じです。引数となる”symbol”は各サイトに訪問して、特定する必要があります。

FREDから日経平均株価を取得する

 (例)FREDから日経平均株価(日次)を取得し、グラフにする。

各データソースについて

各データソースに関しては別ページに整理しました。

AlphaVantage

Federal Reserve Economic Data (FRED)

Fama-French Data (Ken French’s Data Library)

準備中。

Bank of Canada

Econdb

Enigma

Eurostat

The Investors Exchange (IEX)

Moscow Exchange (MOEX)

NASDAQ

Naver Finance

Organisation for Economic Co-operation and Development (OECD)

Quandl

Stooq.com

Tiingo

Thrift Savings Plan (TSP)

World Bank

Yahoo Finance

Google Finance

準備中。

コメント

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