【Python金融データ】Nasdaq Data Linkの使い方

投資・ファイナンス

Nasdaq Data Linkは金融関連の様々なデータを提供しているプラットフォームです。
以前はQuandlとして使われていたものを含んでいるようです。
pandas_datareaderにはquandlからのデータ取得がありますが、Nasdaq-data-linkのAPIを使うことで、現在も一部数値のデータ取得が可能です。ただし、直近の値は入っておらず2018年頃で更新は止まっているようなので、の取得は注意が必要です。
Quandl以外のデータソースもNasdaq-data-linkには多数存在しているので、ほしいデータが見つかる可能性は高いです。
その他のデータソースと比較して、かなりオルタネイティブデータに力を入れていることがうかがえます。
少し残念な点としては、現在はあまり無料で利用できるものが少ないことです。多くはプレミアムになっており、別途支払いが必要です。

Nasdaqが提供するデータは、Pythonだけでなく、Rやエクセルなど、様々な方法で取得可能です。
今回はPythonでの取得方法を紹介していきますが、他の方法で取得したい場合は、公式ドキュメントを参考にしてください。

APIの取得

Nasdaqからのデータの取得にはAPIが必要になります。そのために、登録を行います。
まずは、トップページからSign upを選びます。
サインアップ

すると、名前や目的を入力する画面になります。

STEP1

メールアドレスなどを入力します。

STEP2

認証と、規約への同意を行います。

STEP3

完了すると、APIキーが表示されるので、メモしておいてください。

APIキー

ライブラリのインストール

以下コマンドで、データをダウンロードするためのライブラリをインストールします。

pip install nasdaq-data-link

importとAPIキーの設定は次のようになります。

import nasdaqdatalink
nasdaqdatalink.ApiConfig.api_key = api_key

データの取得

APPLの株価取得です。ただし、2018年ごろまでしか取れません。

df = nasdaqdatalink.get("WIKI/AAPL")
df

以下は、財務データを取得する例です。ただし、このDBは有料のため、サンプルデータのみ取得が可能です。

nasdaqdatalink.get_table('MER/F1', compnumber="39102", paginate=True)

データベースの探し方

基本的にNasdaq-data-linkのデータはnasdaqdatalink.get_table'MER/F1'のようなデータベースのDB名と銘柄名にあたるものを組み合わせて取得できます。
データベースはこちらの検索画面から検索できます。
データベース検索

データを選択すると詳細ページに移動します。
詳細
スクロールしていくとドキュメントがあるので、その部分を参考にしてもよいですが、必要なデータソース情報は、赤で囲んだ部分に記載されていることが多いです。
データソース名

以下は、無料で使えるデータソース名のリストです

  1. IMF Cross Country Macroeconomic Statistics
  2. Commodity Futures Trading Commission Reports
  3. Organization of the Petroleum Exporting Countries
  4. JODI Oil World Database
  5. Bitfinex Crypto Coins Exchange Rate
  6. Bitcoin Data Insights
  7. Metal Stocks Breakdown Report
  8. Zillow Real Estate Data
  9. World Agricultural Supply and Demand Estimates
  10. World Bank Data

変わったオルタナティブデータも利用できそうです。

pandas_datareaderでQuandlデータを取得

最後にpandas_datareaderでquandlからデータを取得する方法も紹介しておきます。
symbolはDB名と銘柄名の2つの部分から構成されます。
銘柄名はDB名によって異なりますが、WIKI(米国の株式)の場合は一般的なティッカーシンボルを使用できます。

サンプルコード:

import pandas_datareader.data as web

# 株価データ
symbol = 'WIKI/AAPL'
df = web.DataReader(symbol, 'quandl', '2015-01-01', '2021-03-05', api_key=api_key)
df

Nasdaq Data LinkでAPIを取得すれば上記のようにしてデータの取得は可能ですが、2018年頃までしかデータが取れません.

今回のコードはこちらのGoogleColabで確認できます。

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