Recipe 27 of 33
Are Whale-vs-Shrimp extremes a contrarian signal?
Take the hourly wsi series from /indices, z-score it against its own trailing month, and check whether the 24-hour return from /ohlcv after an extreme goes against the side the index leaned.
GET /v1/hl-cohorts/symbols/{symbol}/indices answers the index half in one call: the Whale-vs-Shrimp Index (wsi)
for every settled hour, the long share of whale accounts minus the long share of shrimp accounts, from -1 to +1.
Z-score each hour against the trailing 720 hours, mark the hours beyond plus or minus 2, and compare the next 24
hours' return from /v1/hyperliquid/ohlcv; the index is contrarian if the
return after a high wsi is negative and after a low one positive. The full parameter list is on
Coin indices.
Quick answer
Four pinned hours of ETH; end is inclusive here.
# ETH's hourly indices over four hours of 2026-10-20
curl -H "X-API-Key: $VIKE_API_KEY" \
"https://data.vike.io/v1/hl-cohorts/symbols/ETH/indices?start=2026-10-20T00:00:00Z&end=2026-10-20T03:00:00Z"Example response
Captured from the live API on 2026-10-24 at 17:15 UTC, the whole response.
series is newest first and end is inclusive, so four hours come back. A wsi of -0.28 means the share of whale
notional that was long sat 28 points below the shrimp share: on ETH, shrimp wallets were the more long-leaning side.
latest is the newest 5-minute snapshot, whatever window you ask for, and stays out of the test.
{
"symbol": "ETH",
"label_basis": "point_in_time",
"latest": {
"ts": "2026-10-24T17:07:00+00:00",
"smi": -0.125087,
"wsi": -0.254126,
"whale_bias": -0.050726,
"smart_bias": -0.118494,
"label_basis": "current"
},
"series": [
{
"ts": "2026-10-20T03:00:00+00:00",
"smi": -0.11143,
"wsi": -0.236233
},
{
"ts": "2026-10-20T02:00:00+00:00",
"smi": -0.115967,
"wsi": -0.256309
},
{
"ts": "2026-10-20T01:00:00+00:00",
"smi": -0.112732,
"wsi": -0.284657
},
{
"ts": "2026-10-20T00:00:00+00:00",
"smi": -0.109572,
"wsi": -0.273617
}
],
"has_more": false
}Variations
The whole history. Up to a year of hourly rows in one call, while the series stays under 5000 rows.
# every hourly reading of ETH's indices
curl -H "X-API-Key: $VIKE_API_KEY" \
"https://data.vike.io/v1/hl-cohorts/symbols/ETH/indices?hours=8760"The forward returns. Hourly ETH candles; the 24-hour return of hour t is the close 24 bars later over the close of t.
# ETH hourly candles from 2026-04-07
curl -H "X-API-Key: $VIKE_API_KEY" \
"https://data.vike.io/v1/hyperliquid/ohlcv?symbol=ETH&interval=1h&start=2026-04-07T00:00:00Z&limit=5000"Before you rely on it
Count events, not hours
Forward 24-hour returns of neighbouring hours overlap, so one extreme that lasts six hours is one event, not six. A
wsi value is null, never 0, when the whale or shrimp rungs hold no position on the coin; drop those hours. Start on
2026-04-07, because the oldest rows are thin, 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.
Give me ETH's hourly Whale-vs-Shrimp Index since April and the hours where it was more than two standard deviations from its 30-day mean