vike

Recipe 10 of 33

Long/short bias history of a cohort over time

One call returns a cohort's long and short notional and bias for every hour, summed over all coins, newest first, back to 2026-04-07.

GET /v1/hl-cohorts/segments/{cohort}/history answers it in one call: one row per hour for one cohort, summed over every coin it holds, with long_usd, short_usd, bias and position_count, newest first. axis is required and is size or pnl; the default window is the newest 168 hours, and hours reaches back up to 8760. The full parameter list is on Cohort history.

Quick answer

A cohort label with a space goes in the path as its slug, such as 3x_smart.

cURL
# the last week of whale positioning across the whole book, newest hour first
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hl-cohorts/segments/whale/history?axis=size"

Example response

Captured from the live API on 2026-10-24 at 17:12 UTC with limit=3. long_usd and short_usd are USD, and bias is (long - short) / (long + short), a ratio from -1 to +1. At 16:00 UTC the whale cohort ($1m to $2.5m accounts) held $1.16B long and $859M short across all coins, a bias of +0.15. has_more: true means older hours exist beyond limit.

Example response
{
  "axis": "size",
  "cohort": "whale",
  "label_basis": "point_in_time",
  "data_from": "2026-04-07T00:00:00+00:00",
  "series": [
    {
      "ts": "2026-10-24T16:00:00+00:00",
      "long_usd": 1163984704.0,
      "short_usd": 858956938.1,
      "bias": 0.150784,
      "position_count": 3651
    },
    {
      "ts": "2026-10-24T15:00:00+00:00",
      "long_usd": 1249898790.0,
      "short_usd": 858615733.3,
      "bias": 0.185573,
      "position_count": 3656
    },
    {
      "ts": "2026-10-24T14:00:00+00:00",
      "long_usd": 1120856833.0,
      "short_usd": 846694223.2,
      "bias": 0.139342,
      "position_count": 3649
    }
  ],
  "has_more": true
}

Variations

Since April, the whole history. hours=8760 with limit=5000 returns everything from data_from (2026-04-07) in one page. For 3x smart that was 4817 hourly rows, with has_more: false.

cURL — since April
# every hour of the top 1% by realized PnL since 2026-04-07
curl -s -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hl-cohorts/segments/3x_smart/history?axis=pnl&hours=8760&limit=5000" \
  | jq '{has_more, rows: (.series | length), oldest: .series[-1], newest: .series[0]}'

A pinned month. start and end are ISO-8601 UTC, and end is inclusive.

cURL — September
# 4x whale positioning hour by hour in September
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hl-cohorts/segments/4x_whale/history?axis=size&start=2026-09-01T00:00:00Z&end=2026-09-30T23:00:00Z"

Page back. When has_more is true, call again with end set to the oldest ts you have minus 1 second.

cURL — older page
# the page before the previous one: END is its oldest ts minus 1 second
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hl-cohorts/segments/whale/history?axis=size&limit=24&end=$END"

Before you rely on it

Positions, not wallets, and daily pnl labels before August

position_count counts open positions (one per wallet and coin), not wallets. On axis=pnl each hour carries the label the wallet had then, but before 2026-08-06 that label is daily, so a series across that date changes resolution; label_computed says so. Nothing before 2026-04-07 is served, and the newest row is the last settled hour, one to two hours back. That row can still change after it first appears: on 2026-10-24 the whale cohort's 16:00 row read $1.164B long at 17:15 UTC and $1.143B at 17:19 UTC.

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_segments tool answers (view history), at 1 credit a call.

Ask your agent
Show the hourly long/short bias of the Hyperliquid whale cohort over the last week
Example response
{  "axis": "size",  "cohort": "whale",  "label_basis": "point_in_time",  "data_from": "2026-04-07T00:00:00+00:00",  "series": [    {      "ts": "2026-10-24T16:00:00+00:00",      "long_usd": 1163984704.0,      "short_usd": 858956938.1,      "bias": 0.150784,      "position_count": 3651    },    {      "ts": "2026-10-24T15:00:00+00:00",      "long_usd": 1249898790.0,      "short_usd": 858615733.3,      "bias": 0.185573,      "position_count": 3656    },    {      "ts": "2026-10-24T14:00:00+00:00",      "long_usd": 1120856833.0,      "short_usd": 846694223.2,      "bias": 0.139342,      "position_count": 3649    }  ],  "has_more": true}