Spot Market Endpoints
Three endpoints for spot market movers. Data is cached for 30 seconds with stampede protection (only one request refreshes the cache at a time).GET /v1/spot/gainers
Top gaining assets by 24h price change.GET /v1/spot/losers
Top losing assets by 24h price change.GET /v1/spot/volume
Top assets by 24h trading volume.Query Parameters (all three endpoints)
Number of results to return. Uses O(N) partial sort (
select_nth_unstable) for efficient top-K selection.Filter by exchange (e.g.,
binance, okx). Omit for cross-exchange results.Example
Response Fields
The cache holds ~11,500 ticker entries from 23 exchanges. Vector capacity is pre-allocated, and top-K selection uses Rust’s
select_nth_unstable_by for O(N) performance instead of O(N log N) full sort.Field Reference
| Field | Type | Description | Granularity | Example |
|---|---|---|---|---|
symbol | string | Trading symbol as reported by the exchange (may include pair suffix) | — | "WIF" |
exchange | string | Source exchange ID | — | "bybit" |
price | number | Last traded price in USD. Full precision for sub-penny tokens | ~30s cached | 2.85 |
change_pct_24h | number | 24h price change (%). Entries with no change data are excluded | ~30s cached | 42.50 |
volume_24h | number | 24h trading volume in USD | ~30s cached | 890000000.00 |

