アメリカ市場の分足のデータを取得する

株価の予測を機械学習で行ったりしたい。データの量を考えると分足が望ましいが、お金がないのでできれば無料のものが良い。 私は米国株が中心なので、米国株について調べたが、日本語ではyahoo finance USを使うもの以外あまりまとまった情報が出てこなかった。これでもいいじゃんと最初は思ったのだが、実際にデータを取得すると結構な頻度でデータが欠損しているので非常に扱いづらい。そこで海外の情報をまとめてみよう。これらのサービスには企業を対象に想定したもののみのところや、個人も想定しているところがあったりする。プランに分け隔てないとかなり値段が高くなるので、個人向けプランを出しているところを選択するのが良いだろう。

Free

まずは完全に無料のものから、実質ないに等しいが挙げてみる。

yahoo finance (US)

正式には公開が終了したものの、なぜか公開されているyahoo financeのAPIである。 検索でてくるとよく出てくるものである。1分あしで取得するとデータの欠損がそこそこあり、信頼性に欠けるので避けるべきだろう。分足なら使えるかもしれない。ただし、そこそこの頻度でアクセスするとブラックリスト入りするので注意が必要。 株式分割の調整は不明。

https://query1.finance.yahoo.com/v7/finance/chart/HACK?range=7d&interval=1m&indicators=quote&includeTimestamps=true

Freemium

ちょっと使ってみるだけならタダで使えるやつ。実際の使い勝手などを確認できるので便利である。

yahoo finance on Rapid API

rapidapi.com

こちらは上のAPIの非公式バージョン。こちらはいろいろなAPIが用意されており、freemiumで提供されている。ファンダメンタルズの情報やニュースまでAPIで取得できる。 使うならこちらの方が良いだろう。ただし、1分足は上と同様に欠損があった。 提供データはOHLCV (open/high/low/close/volume).

Alpha Vantage

www.alphavantage.co

無料だと1分間に最大5回、1日に最大500回までAPIを叩ける。プレミアムになると75/分で、価格は50$/mo.それ以上のプランもあり。 RapidAPIでも提供している。 提供データはOHLCV (open/high/low/close/volume) .

https://rapidapi.com/alphavantage/api/alpha-vantage/pricing

polygon

polygon.io

無料で過去2年間、有料(99$/mo)で10年間遡ってデータを取得できる。それぞれ1分足で取得できる。1分足でそこそこ過去データが欲しい場合はここを使うと良さそう。プレマーケットとアフターマーケットが含まれていることに注意。これらは必ず取引があるとは限らないので、データとしてない時もある。無料でも2年まで遡れるのは素晴らしい。株式分割の調整は有無の両方が取れる。ここは良さそうだ。

https://api.polygon.io/v2/aggs/ticker/AAPL/range/1/minute/2019-2-14/2019-3-14?unadjusted=true&sort=asc&limit=120&apiKey={YOUR_API_KEY}

OHLCV (open/high/low/close/volume) + The volume weighted average price.

Paid

これらは有料のサービスである。お金が気にならなければどれも最高だ。基本的に高い。freemiumを採用しているところと違い、企業向けのものが多い印象だが、中には個人向けもある。

firstratedata

Download Historical Intraday Data (20 Years Data)

おそらく最も長い期間のデータを取得できる販売所。 各銘柄の上場初日からのデータを取得できるが、その分価格は高い。一銘柄あたり5000円ほどかかる。SP500に組み込まれている銘柄のセットや上場廃止になった銘柄など、様々用意されている。 提供データはOHLCV (open/high/low/close/volume) 。

EOD histrical data

eodhistoricaldata.com

APIを通じて取得できる。サブスクリプション形式。全世界の株式市場のデータを過去30年以上に渡り取得できるのが特徴。EODはEnd-of-Dayのことで、名前の通り日足データが中心。株式分割の情報も取れる。分足の提供もあるが、直近のものしかない。プレマーケットとアフターマーケットもあり。プランによっては株価だけでなく、ファンダメンタルの情報(これも20年以上データがある)やオプションなども取得できる。全部盛ると高い。スクリーナーもAPIで提供されており、手厚い。20$/moからでそこそこ手軽。Fundamental APIを利用するとETFの組み込み銘柄も取れるらしい。 OHLCV (open/high/low/close/volume)

IEX Cloud

iexcloud.io

有料の中ではダントツで安い。個人なら年契約で9$/mo。月契約なら19$/mo。SSE (Server-sent events) も50シンボルまでサポート。 気をつけるポイントは9$で使いたい放題というわけではなく、メッセージというクレジットが付与されてそれを全て消費すると追加のメッセージ代金がかかるという仕組みである。各APIのメッセージコストは種類や呼び出し内容によって変化する。ただし、そうそう超えることはなさそう。 Estimate your monthly message use | IEX Cloudここで用途ごとの価格をシミュレーションできる。

分足は最新30日、日足は最新15年がある。株式分割の調整は有無の両方が取れる。

OHLCV (open/high/low/close/volume) ?。

さいごに

日足で少ししか集めないのであればとりあえずyahoo financeを使っておけば良いと思う。 一方大量に取得したいなら、有料のサービスを使った方が良い。freeやfreemiumは制限が多く無駄に時間がとられてしまうためだ。また、有料だとファンダメンタルズやオプションの情報も取れるのでより楽しめるだろう。 分足が欲しいのであればpolygonと IEX Cloudで事足りそうだ。調べているともう少しいろいろありそうだったが、とりあえずこれでリサーチは止めておく。 今回は主に株価価格のみに着目したが、オプションやファンダメンタルズの情報もAPIで取れるのが一般的だ。株価以外の情報も使いたくなったらまたリサーチを行。