プログラミングで株価やそのほかの投資指標(通貨や金利など)を取得するとき、Yahoo Financeが候補になります。

今回は、Yahoo Financeで取得できる指標(※)を紹介して、実際にPythonで取得してみます。
※執筆当時時点で取得できる指標です。
Yahoo Financeで取得できる指標
日本の指数
コード | 指標 |
---|---|
^N225 | 日経平均株価 |
アメリカの指数
米国株価指数
よく見る3大指数
コード | 指標 |
---|---|
^DJI | NYダウ |
^IXIC | ナスダック総合 |
^GSPC | S&P500 |
セクター別S&P500指数
コード | セクター |
---|---|
^GSPE | エネルギー |
^SP500-20 | 工業・資本財サービス |
^SP500-30 | 生活必需品 |
^SP500-40 | 金融 |
^SP500-50 | 電気通信サービス |
^SP500-15 | 素材 |
^SP500-25 | 一般消費財・サービス |
^SP500-35 | ヘルスケア |
^SP500-45 | 情報技術 |
^SP500-55 | 公共事業 |
VIX指数
コード | 指数 |
---|---|
^VIX | VIX指数 |
米国長期金利
コード | 国債 |
---|---|
^IRX | 米13週国債 |
^FVX | 米5年国債 |
^TNX | 米10年国債 |
^TYX | 米30年国債 |
その他の株価指数
コード | 指標 |
---|---|
^DJT | Dow Jones Trnsport |
^DJU | Dow Jones Utility Average |
^BANK | NASDAQ Bank |
^IXCO | NASDAQ Computer |
^NDX | NASDAQ-100 |
^NBI | NASDAQ Biotechnology |
^NDXT | NASDAQ 100 Technology |
^INDS | NASDAQ Industrial |
^INSR | NASDAQ Insurance |
^OFIN | NASDAQ Other Finance |
^IXTC | NASDAQ Telecommunications |
^TRAN | NASDAQ Transportation |
^NYY | NYSE TMT INDEX |
^NYI | NYSE INTL 100 INDEX |
^NY | NYSE US 100 INDEX |
^NYL | NYSE NY World Leader Index |
^XMI | NYSE ACRA Major Market Index |
^OEX | S&P 100 Index |
^HSI | Hang Seng Index |
^FCHI | CAC 40 |
^BVSP | IBOVESPA |
^RUA | Russel 3000 |
^XAX | NY AMEX Composit Index |
^SOX | PHLX Semiconductor Index |
コモディティ商品
コード | コード |
---|---|
CL | WTI原油 |
為替(通貨)
コード | 通貨 |
---|---|
USDJPY=X | ドル(アメリカ) |
GBPJPY=X | ポンド(イギリス) |
INRJPY=X | ルピー |
IDRJPY=X | ルピア |
EGPJPY=X | ポンド(エジプト) |
AUDJPY=X | ドル(オーストラリア) |
CADJPY=X | ドル(カナダ) |
KRWJPY=X | ウォン |
KWDJPY=X | ディナール(クウェート) |
COPJPY=X | ペソ(コロンビア) |
SARJPY=X | リヤル |
SGDJPY=X | ドル(シンガポール) |
CHFJPY=X | フラン |
SEKJPY=X | クローナ |
THBJPY=X | バーツ |
TWDJPY=X | ドル(台湾ドル) |
CNYJPY=X | 元 |
CLPJPY=X | ペソ(チリ) |
DKKJPY=X | クローネ(デンマーク) |
TRYJPY=X | リラ |
JPYJPY=X | 円 |
NZDJPY=X | ドル(ニュージーランド) |
NOKJPY=X | クローネ |
PYGJPY=X | グァラニ |
PHPJPY=X | ペソ(フィリピン) |
BRLJPY=X | レアル |
VESJPY=X | ボリバル・ソベラノ |
PENJPY=X | ソル |
HKDJPY=X | ドル(香港) |
MYRJPY=X | リンギット |
ZARJPY=X | ランド |
MXNJPY=X | ペソ(メキシコ) |
AEDJPY=X | ディルハム |
EURJPY=X | ユーロ |
JODJPY=X | ディナール(ヨルダン) |
RONJPY=X | レウ |
LBPJPY=X | ポンド(レバノン) |
RUBJPY=X | ルーブル |
仮想通貨
コード | 仮想通貨 |
---|---|
BTC-USD | Bitcoin |
XRP-US | Ripple |
ETH-USD | Ethereum |
LTC-USD | Litecoin |
BNB-USD | Binance Coin |
EOS-USD | EOS |
USDT-USD | Tether |
LINK-USD | ChainLink |
ADA-USD | Cardano |
XLM-USD | Stellar |
XMR-USD | Monero |
DASH-USD | DigitalCash |
NEO-USD | NEO |
ETC-USD | Ethereum Classic |
XEM-USD | NEM |
ZEC-USD | ZCash |
QTUM-USD | QTUM |
BTG-USD | Bitcoin Gold |
BAT-USD | Basic Attention Token |
DOGE-USD | Dogecoin |
データを取得して表示する
今回は、Pythonモジュールのpandas-datareaderを使用して、Yahoo Financeからデータを取得します。
pandas-datareaderは以下でインストールできます。
pip install pandas_datareader
基本的な使い方は、
import pandas_datareader.data as web
df = web.DataReader('コード','yahoo', 開始日, 終了日)
という感じです。具体的な使い方はこちらをご覧ください。

例として、日経平均株価を取得すると以下のような感じになます。
import datetime
import pandas_datareader.data as web
start = datetime.date(2008,1,1)
end = datetime.date.today()
# 日経平均株価を取得
data = web.DataReader('^N225', 'yahoo', start, end)
以下で、取得したデータをグラフに表示します。
import matplotlib.pyplot as plt
plt.plot(data, label='data')
plt.xlabel('date')
plt.ylabel('value')
plt.legend()
plt.show()

コメント