API reference · Price-level maps
Forced flow
Stop-loss / take-profit orders and liquidations on the same buckets: the cascade (stops + liquidations, with the move) and the take-profits (against it) at each price.
- Elysium: not served
- HyperCore
- HyperEVM: not served
- Not on Elysium or HyperEVM: served on HyperCore only
GET https://api.femtos.xyz/v1/hypercore/forced-flow
Parameters
| Param | In | Example or values | Meaning |
|---|---|---|---|
coin | query | BTC | HyperCore perp coin: BTC, xyz:TSLA |
buckets | query | 40 | Most buckets (width rounded up to a round number); not with step |
step | query | (optional) | Bucket width in price units, instead of buckets (at most 400 buckets) |
range_pct | query | 10 | Half-width of the grid around the mark, percent, (0, 100] |
Example
curl -H "Authorization: Bearer $FEMTOS_KEY" "https://api.femtos.xyz/v1/hypercore/forced-flow?coin=BTC&buckets=40&range_pct=10"Key: Authorization: Bearer $FEMTOS_KEY. Get a free key, or with no browser through agent onboarding.
Response fields
| Field | Type | Meaning |
|---|---|---|
buckets[] | object | Ascending price: {pxLo, pxHi, stops, liquidations, cascade, forced, cumCascadeSell, cumCascadeBuy, cumSell, cumBuy} |
buckets[].cascade | object | Fires with the move: sell = sell stop-losses + long liquidations; buy = buy stop-losses + short liquidations: {sell, buy} |
buckets[].forced | object | cascade + take-profits: sell = sell stops / take-profits + long liquidations; buy = buy ones + short liquidations: {sell, buy} |
buckets[].cumCascadeSell | decimal | null | Buckets at or under the mark's: cascade sell notional from the mark down to this bucket; null over it |
buckets[].cumSell | decimal | null | Buckets at or under the mark's: forced sell notional from the mark down to this bucket; null over it |
summary | object | Inside the grid: cascade selling at or under the mark's bucket and buying at or over it; sell take-profits at or over it and buy ones at or under it; forced = cascade + take-profits on each side: {cascadeSellBelow, cascadeBuyAbove, takeProfitSellAbove, takeProfitBuyBelow, sellBelow, buyAbove} |
stops | object | Cut of the stops: {asOf, height, positions} |
liquidations | object | Cut of the liquidation prices: the positions at `height`: {asOf, height, baseHeight, baseAsOf, coverage} |
markPx | decimal | null | Mark: last trade |
rangePct | decimal | range_pct applied |
step | decimal | null | Bucket width |
Related: Price-level maps
- Liquidation price map GET /v1/hypercore/liquidation-map HyperCore
Liquidation prices of every open position, from Hyperliquid's formula on each account's state, bucketed like the stop map. - Liquidation map stream WS hc.liquidations.map HyperCore
The GET /api/hypercore/liquidation-map map, pushed whole on subscribe and every 5 s when it changes. - Forced flow stream WS hc.forced_flow.map HyperCore
The GET /api/hypercore/forced-flow map, pushed whole on subscribe and every 5 s when it changes. - Stop map stream WS hc.stops.map HyperCore
The GET /api/hypercore/stops map, pushed whole on subscribe and every 5 s when it changes.
More
- This page as Markdown
- The whole API reference
- What HyperCore serves
- The whole API in one Markdown file
- OpenAPI 3.1 document
Agent guide (agents.md)llms.txtOpenAPIMCP serverGet an API keyChangelog