すべてのAPI

株価指数APIで主要18指数を取得

18指数の最新水準、前日終値、日足または1分足の履歴を、RESTまたはMCPで取得できます。水準は10進数の文字列です。

最初のリクエスト

S&P 500の最新水準を取得

curl --request GET \
  --url "https://api.narwhalapi.com/v1/indices/SPX/price" \
  --header "Authorization: Bearer $NARWHAL_API_KEY"
レスポンスの例
{
  "id": "SPX",
  "name": "S&P 500",
  "currency": "USD",
  "price": "7696.46",
  "previous_close": "7681.2",
  "change": "15.26",
  "change_percent": "0.2",
  "market_session": "open",
  "timestamp": "2026-10-29T18:38:00Z",
  "stale": false
}

エンドポイント

GET指数を一覧表示/v1/indices

価格を算出しているすべての指数を、名称、地域、通貨とともに一覧表示します。

レスポンスフィールド

  • indicesオブジェクトの配列

    価格を算出しているすべての指数。それぞれにid、名称、地域、通貨が付きます。


リファレンス全文 →
GET指数価格を取得/v1/indices/{id}/price

1つの指数の最新水準を、前日終値と変化とともに取得します。

パラメータ

  • id必須

    指数 ID(例: SPX、NDX、DJI)。大文字小文字は問いません。

主なレスポンスフィールド

  • id文字列

    指数コード(例: SPX)。

  • name文字列

    指数の正式名称。

  • currency文字列

    指数の通貨。ボラティリティ指数では省略されます。

  • price文字列

    指数の最終水準(10進数の文字列)。

  • previous_close文字列

    前取引日の終値。不明な場合は省略されます。

  • change文字列

    price から previous_close を引いた値。previous_close が省略される場合は、これも省略されます。

  • change_percent文字列

    変化率(パーセント)。1.5 は 1.5% を意味します。change と同様に、省略されることがあります。

  • market_sessionopen、closed のいずれか

    指数が公表された取引時間内で取引されている間は open、それ以外は closed です。

  • timestamp日時

    価格が有効だった時刻。UTCで、秒単位です。

  • staleブール値

    指数が取引中で、水準が15分より古い場合に true になります。クローズ中の指数は stale になりません。


リファレンス全文 →
GET複数の指数価格を取得/v1/indices/prices

最大50指数の最新水準を1回の呼び出しで取得します。

パラメータ

  • ids必須

    カンマ区切りの ID。重複を除いて最大50件です。各 ID は単一価格ルートと同じ規則に従います。価格を返した ID ごとに1回の呼び出しとして数えます。

レスポンスフィールド

  • pricesオブジェクトの配列

    価格が返ったidごとに1件。1件分の価格のフィールドが含まれます。

  • errorsオブジェクトの配列

    価格を返さなかったID。それぞれコードnot_foundが付きます。料金はかかりません。


リファレンス全文 →
GET指数バーを取得/v1/indices/{id}/bars

1つの指数の日足または1分足バーを、古い順に取得します。

パラメータ

  • id必須

    指数 ID(例: SPX、NDX、DJI)。大文字小文字は問いません。

  • interval任意

    1d(取引日ごとに1本のバー。そのバーが属する日付で表示)または 1m(1分足。12か月間保持)。それ以外は 400 invalid_interval になります。

  • start任意

    最初のバー。1d: 日付(YYYY-MM-DD)、その日を含みます。省略すると最も古いバーになります。1m: UTC時刻(YYYY-MM-DDTHH:MM:SSZ、または 00:00 UTC とみなす日付)、その時刻を含みます。省略すると end の1日前になります。

  • end任意

    最後のバー。1d: 日付、その日を含みます。省略すると直近の確定済みの日になります。1m: UTC時刻、その時刻を含みません。省略すると現在時刻、または start の5日後になります。1m では start と end の間隔は最大5日です(400 range_too_large)。

  • cursor任意

    前のページの next_cursor。パラメーターは同じものを指定します。

レスポンスフィールド

  • id文字列

    指数コード(例: SPX)。

  • currency文字列

    指数の通貨。ボラティリティ指数では省略されます。

  • start文字列

    範囲の開始日が後ろへずらされた場合にのみ送られます。

  • end文字列

    送られません。価格はすべてのアカウントでリアルタイムだからです。

  • barsオブジェクトの配列

    バーは古い順です。それぞれに timestamp、open、high、low、close があり、出来高はありません。

  • next_cursor文字列

    次のページを読むには、この値を渡します。最後のページでは null です。


リファレンス全文 →

ユースケース

全履歴をバックフィルする

履歴をすべてページ単位で取得してファイルに保存し、途中で止まっても再開します。

ガイドを読む →

毎日のデータ取得

小さなスクリプトを 1 日 1 回実行し、結果を CSV に追記します。

ガイドを読む →

キャッシュと 429 エラー

Cache responses by data type and tell a rate limit (429) from an empty credit balance (402).

ガイドを読む →

カバレッジ

  • S&P 500SPX · 米国 · USD
  • Nasdaq-100NDX · 米国 · USD
  • ダウ工業株30種平均DJI · 米国 · USD
  • ラッセル2000RUT · 米国 · USD
  • ナスダック総合指数COMP · 米国 · USD
  • Cboe Volatility Index(VIX)VIX · 米国
  • MSCIワールドMXWLD · グローバル · USD
  • MSCIエマージング・マーケットMXEF · グローバル · USD
  • Cboe UK 100BUK100P · UK · GBP
  • Cboe Germany 40BDE40P · ヨーロッパ · EUR
  • Cboe Europe 50BEP50P · ヨーロッパ · EUR
  • Cboe Eurozone 50BEZ50P · ヨーロッパ · EUR
18件の指数をすべて表示
  • Cboe France 40BFR40P · ヨーロッパ · EUR
  • PHLX半導体セクター指数SOX · 米国 · USD
  • KBWナスダック銀行株指数BKX · 米国 · USD
  • Cboe原油ETFボラティリティ指数OVX · 米国
  • Cboe金ETFボラティリティ指数GVZ · 米国
  • PHLX金・銀セクター指数XAU · 米国 · USD

関連 API

先物APIで主要29銘柄を扱う

REST、MCPで29先物の価格と履歴を提供

APIを見る →

上場株式向けの株価API

上場株式の価格と企業データをRESTとMCPで提供

APIを見る →

料金

毎月10ドル分の無料クレジット。その後は1,000回あたり2ドルから。

料金を見る →

よくある質問

どの指数を取得できますか?

18指数:米国の主要指数5、ボラティリティ指数3、MSCIグローバル指数2、Cboe Europe指数5、米国セクター指数3。idは標準コードで、SPX、NDX、DJIなどを大文字小文字を問わず指定できます。

水準には前日からの変化も含まれますか?

はい。指数の日次履歴が揃っていれば、価格に previous_close、change、change_percent が含まれます。change_percent の 1.5 は 1.5% を意味します。前日終値が不明な場合、この3つはすべて省略されます。

なぜボラティリティ指数には通貨がないのですか?

VIX、OVX、GVZは通貨ではなく予想ボラティリティを示すため、レスポンスに通貨はありません。

水準はリアルタイムですか、それとも遅延ですか?

水準はすべてのアカウントでリアルタイムです。市場が閉まっている場合、APIは最後の水準とmarket_session closedを返します。

どのくらいの履歴を取得できますか?

履歴は保有している時点から始まります。S&P 500は2023年2月からです。すべてのアカウントで、保有するすべての日足を取得できます。1分足は直近12か月分で、1回のリクエストは最大5日分です。

料金はいくらですか?

1,000回あたり$2で、プリペイドのクレジットから差し引かれます。すべてのアカウントに、最初の12か月間、毎月$10分の無料クレジットが付与されます。