vike

Volume by coin

Hourly traded notional and fill count — the whole venue, or one coin — with both sides of every trade counted.

GET https://data.vike.io/v1/hyperliquid/stats/volume

Hourly traded notional (volume, USD) and fill count (n_fills) — the whole venue, or one coin. Both count every fill row, and a trade has one row per side, so halve them for traded volume and trades.

cURL
# the last three hours of BTC perp volume
curl -s "https://data.vike.io/v1/hyperliquid/stats/volume?symbol=BTC&limit=3" \
  -H "X-API-KEY: $VIKE_API_KEY"

# next page of the call just above: NEXT is its nextCursor, passed back verbatim
curl -s "https://data.vike.io/v1/hyperliquid/stats/volume?symbol=BTC&limit=3&cursor=$NEXT" \
  -H "X-API-KEY: $VIKE_API_KEY"

# venue-wide volume by the hour for the last day (omit coin)
curl -s "https://data.vike.io/v1/hyperliquid/stats/volume?limit=24" \
  -H "X-API-KEY: $VIKE_API_KEY"

# a pinned week of ETH hourly volume: limit must cover every hour in the range
curl -s "https://data.vike.io/v1/hyperliquid/stats/volume?symbol=ETH&start=2026-08-10T00:00:00Z&end=2026-08-16T23:59:59Z&limit=168" \
  -H "X-API-KEY: $VIKE_API_KEY"

# roll the hours up into days
curl -s "https://data.vike.io/v1/hyperliquid/stats/volume?limit=168" \
  -H "X-API-KEY: $VIKE_API_KEY" \
  | jq '.volume | group_by(.ts[:10]) | map({day: .[0].ts[:10], volume: (map(.volume) | add), fills: (map(.n_fills) | add)})'
symbolqueryoptional
HL ticker. Omit for the whole venue
startqueryoptional
ISO-8601 UTC bounds
endqueryoptional
ISO-8601 UTC bounds
limitqueryoptional
Default 500, max 5000
cursorqueryoptional
Keyset cursor
Example response
{
  "volume": [
    {
      "ts": "2026-09-03T08:00:00+00:00",
      "volume": 61952806.20848002,
      "n_fills": 7662,
      "symbol": "BTC"
    },
    {
      "ts": "2026-09-03T07:00:00+00:00",
      "volume": 367067977.39358,
      "n_fills": 46418,
      "symbol": "BTC"
    },
    {
      "ts": "2026-09-03T06:00:00+00:00",
      "volume": 115475061.87640005,
      "n_fills": 23854,
      "symbol": "BTC"
    }
  ],
  "nextCursor": "eyJ0cyI6IjIwMjYtMDktMDMgMDY6MDA6MDAifQ"
}

Both sides of every trade, and every market

volume and n_fills sum every fill, and each trade is two fills, the buyer's and the seller's, so both are twice the traded figure: on 2026-10-24 BTC's 16:00 hour read $511,282,097 and 45,210 fills on this route against $255,641,049 and 22,605 trades on the hourly candle, exactly two to one. Without symbol the total covers every market the venue runs, spot pairs and HIP-3 builder dexes included, not only core perps.

Example response
{  "volume": [    {      "ts": "2026-09-03T08:00:00+00:00",      "volume": 61952806.20848002,      "n_fills": 7662,      "symbol": "BTC"    },    {      "ts": "2026-09-03T07:00:00+00:00",      "volume": 367067977.39358,      "n_fills": 46418,      "symbol": "BTC"    },    {      "ts": "2026-09-03T06:00:00+00:00",      "volume": 115475061.87640005,      "n_fills": 23854,      "symbol": "BTC"    }  ],  "nextCursor": "eyJ0cyI6IjIwMjYtMDktMDMgMDY6MDA6MDAifQ"}