vike

Recipe 24 of 33

Smart Money Index versus price: does it lead?

Pull a coin's whole hourly SMI series from /indices?hours=8760 and its hourly candles from /ohlcv, then correlate SMI at hour t with the return over the next k hours.

GET /v1/hl-cohorts/symbols/{symbol}/indices with hours=8760 answers the index half in one call: the coin's Smart Money Index for every settled hour, newest first, as a ratio from -1 to +1. Pull the same hours of 1-hour candles from /v1/hyperliquid/ohlcv, then correlate smi at hour t with the return from t+1 to t+k for k = 1 to 24; a lead shows up as a correlation that holds at positive k and fades as k grows. The full parameter list is on Coin indices.

Quick answer

One page holds the whole series while it is under 5000 rows.

cURL
# every hourly SMI reading of BTC up to a year back, in one page while the series is under 5000 rows
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hl-cohorts/symbols/BTC/indices?hours=8760"

Example response

Captured from the live API on 2026-10-24 at 17:19 UTC, trimmed to 3 rows; series held 4,909 rows, back to 2026-04-03. series is the test input: one row per settled hour, its pnl rungs labelled as they stood that hour (label_basis: point_in_time). has_more is false, so the 4,909 rows are the whole history and no second page is needed. latest is the newest 5-minute snapshot and stays out of the test.

Example response
{
  "symbol": "BTC",
  "label_basis": "point_in_time",
  "latest": {
    "ts": "2026-10-24T17:12:00+00:00",
    "smi": -0.109548,
    "wsi": -0.330428,
    "whale_bias": -0.195726,
    "smart_bias": -0.105831,
    "label_basis": "current"
  },
  "series": [
    {
      "ts": "2026-10-24T16:00:00+00:00",
      "smi": -0.099091,
      "wsi": -0.329866
    },
    {
      "ts": "2026-10-24T15:00:00+00:00",
      "smi": -0.111421,
      "wsi": -0.377369
    },
    {
      "ts": "2026-10-24T14:00:00+00:00",
      "smi": -0.116197,
      "wsi": -0.371108
    }
  ],
  "has_more": false
}

Variations

The candles to correlate with. Hourly bars from 2026-04-07, the first day the series covers the whole book; limit reaches 5000, and ts is epoch milliseconds, the start of the hour.

cURL — 1h candles
# BTC hourly candles from 2026-04-07
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hyperliquid/ohlcv?symbol=BTC&interval=1h&start=2026-04-07T00:00:00Z&limit=5000"

Page back once the series passes 5000 rows. When has_more is true, ask again with end set to the oldest ts of the page minus 1 second; end is inclusive.

cURL — older page
# END is the oldest ts of the previous page minus 1 second, e.g. 2026-04-03T04:59:59Z
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hl-cohorts/symbols/BTC/indices?hours=8760&end=$END"

A pinned window. start and end pin the study period; both are ISO-8601 UTC.

cURL — pinned
# BTC's SMI from the start of the hourly labels to the end of September
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hl-cohorts/symbols/BTC/indices?start=2026-08-06T00:00:00Z&end=2026-09-30T23:00:00Z"

Before you rely on it

Correlate the series, never latest, and skip the edges

latest.smi ranks wallets by today's grading (latest.label_basis is current), so it does not belong in a historical test. Start the study on 2026-04-07: the oldest rows are thin or null (2026-04-03 00:00 is null on both indices). Before 2026-08-06 the pnl labels change once a day, after it every hour, so a series crossing that date changes resolution; and leave out the newest few hours, which can still be revised after they first appear.

Ask your agent

Connected to the Vike MCP server (https://vike.io/mcp) in Claude, ChatGPT or Cursor, ask it in plain words. The hl_market tool answers (view indices), with hl_ohlcv for the candles, at 1 credit a call each.

Ask your agent
Give me BTC's hourly Smart Money Index since April and BTC's hourly closes for the same hours
Example response
{  "symbol": "BTC",  "label_basis": "point_in_time",  "latest": {    "ts": "2026-10-24T17:12:00+00:00",    "smi": -0.109548,    "wsi": -0.330428,    "whale_bias": -0.195726,    "smart_bias": -0.105831,    "label_basis": "current"  },  "series": [    {      "ts": "2026-10-24T16:00:00+00:00",      "smi": -0.099091,      "wsi": -0.329866    },    {      "ts": "2026-10-24T15:00:00+00:00",      "smi": -0.111421,      "wsi": -0.377369    },    {      "ts": "2026-10-24T14:00:00+00:00",      "smi": -0.116197,      "wsi": -0.371108    }  ],  "has_more": false}