LoginSignup
6
14

More than 1 year has passed since last update.

Pythonのpandas-datareaderを使って経済指標などの金融データを取得する方法

Posted at

 基本的にJupiter Notebookを使うことを想定しています。専門家のような高度なプログラミングスキルはないのでご承知おきください。

コードを書く前に…

pandas-datareaderのインストール

 pandas-datareaderというライブラリをインストールします。pandasとは別ものなのでpandasをすでに持っている人も新たにインストールしてください。

pip install pandas-datareader

取得しにいくWebサイトについて

 FREDというサイトからデータを取得します。→ https://fred.stlouisfed.org/

米国の雇用統計を取得する

 まず必要なものをインポートして、

import pandas as pd
import datetime as dt
import pandas_datareader.data as web

 今回は2013年1月から2022年1月までの米国非農業部門雇用者数をpandasのデータフレームで受け取るようにします。

start = dt.date(2013,1,1)
stop = dt.date(2022,1,1)

df = web.DataReader('PAYEMS', 'fred', start, stop)

 実行して中身を確認してみます。
image.png
うまく取得できました。DataReader()の引数には、欲しいデータのシンボルコード、取得先(今回は'fred')、開始期間、終了期間を入れます。
 
 では次に取得したデータをグラフにします。グラフ作成のためのmatplotlibをインポートしておいてください。

import matplotlib.pyplot as plt
%matplotlib inline

 データフレームのインデックスが日時データになっているので、そのままグラフの横軸にして…

plt.plot(df.index, df['PAYEMS'])
plt.show()

 実行すると
image.png
 うまく表示できましたね。ちなみにグラフの途中に崖みたいな箇所があるのは「2020年のコロナショック」で大量に失業者がでたことを示しています。

雇用統計以外のデータを取得するには

 DataReader()の引数の「欲しいデータのシンボルコード」を変更すればFREDが提供してくれているデータなんでも引っ張ってこれます。

シンボルコードはここから調べられます。
https://fred.stlouisfed.org/categories

 ここから下、個人的によく使うシンボルコードを適当に書いておきます。

「株価」

ダウ平均:DJIA
S&P500:SP500
ナスダック:NASDAQ100
日経225:NIKKEI225

「金利」

米10年債利回り日足:DGS10
米10年債利回り月足:GS10
米10年債利回と米3ヶ月債利回の差:T10Y3M
米10年債利回と米2年債利回の差:T10Y2Y
米政策金利目標上限値:DFEDTARU
米政策金利目標下限値:DFEDTARL
フェデラルファンド実効金利:DFF

日本10年債利回り月足:IRLTLT01JPM156N
日本10年債利回り月足:IRLTLT01JPM156N

「経済指標」

米非農業部門雇用者数:PAYEMS
米失業率:UNRATE
米GDP成長率:A191RL1Q225SBEA
米名目GDP:GDP
米実質GDP:GDPC1
米消費者物価指数:CPALTT01USM659N
米新規失業保険申請件数:ICSA

日本実質GDP:JPNNGDP

「貿易」

米国対日輸出額:EXPJP
米国対日輸入額:IMPJP
日本向輸出:XTEXVA01JPM667S
日本向輸入:XTIMVA01JPM667S

「その他」

米M2マネーストック:M2REAL

6
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
14