Données de marché

API d’order flow crypto

Suivez la pression acheteuse et vendeuse du marché : CVD, carnet d’ordres agrégé, ratio achat/vente et taille moyenne des trades. Les données de flux sont normalisées sur toutes les places couvertes : vous lisez un seul marché au lieu de recoudre les carnets un à un.

Ce que le carnet d’ordres et le flux d’ordres disent du rapport de force. Quatre familles : delta de volume cumulé, profondeur agrégée, pression directionnelle et zones de liquidation.

#Order flow crypto pour agents IA et LLM

« Acheteurs ou vendeurs : qui tient BTC ? », « Le CVD diverge-t-il du prix ? », « Le carnet d’ETH est-il plus épais à l’achat ou à la vente ? » : un agent IA lit l’order flow par l’outil MCP get_pair_data, au comptant, en perpétuel ou les deux.

MCP tools/call
Douze heures d’order flow BTC au pas de 15 minutes, en un appel MCP.
{
  "name": "get_pair_data",
  "arguments": {
    "symbol": "BTCUSDT",
    "fields": ["cvd", "buy_sell_ratio", "orderbook"],
    "timeframe": "15m",
    "limit": 48
  }
}
  • Pour le LLM : le CVD est une somme cumulée, son niveau seul ne veut rien dire ; c’est sa pente sur la fenêtre qui dit qui pousse le prix.
  • Pour les développeurs : /v1/cvd et /v1/orderbook font des outils naturels pour votre propre agent IA (tool calling) ; par MCP, l’outil envoie le marché demandé vers la bonne route.
  • Où ça tourne : Claude, ChatGPT, Cursor et tout client MCP, y compris les frameworks d’agents qui parlent MCP, comme LangChain ou n8n.

Branchez votre agent IA avec le guide du serveur MCP, ou apprenez-lui BytNode avec les Agent Skills open source.

#CVD

GET/v1/cvddata_type · cvdRéférence complète
Les 9 champs de cette route (d’après le contrat)
timeISO 8601 UTC, milliseconds (2026-09-28T14:00:00.000Z)Start of the bucket the row covers: a 1h bucket at 14:00 covers 14:00:00 to 14:59:59.999.
cvd_seriesbase asset quantity (BTC for BTCUSDT)Cumulative volume delta inside the bucket, one point per step of finer candles (1 minute up to `1h`, 5 minutes in `4h`, 15 minutes in `1d`), starting from 0 at the bucket start. `null` when those finer candles do not cover the bucket (before 2026-06-05; in `1d`, before 2023-12; or a collection gap): `buy_volume`, `sell_volume` and `net_volume` then come from the bucket's own candle, as on `/v1/trades-kline`, and `sample_count` is 1.
net_volumebase asset quantity (BTC for BTCUSDT)buy_volume - sell_volume over the row, base asset units. Positive = net buying.
buy_volumebase asset quantity (BTC for BTCUSDT)Aggressive (taker) buy volume, base asset units, aggregated across venues.
sell_volumebase asset quantity (BTC for BTCUSDT)Aggressive (taker) sell volume, base asset units, aggregated across venues.
sample_countcountNumber of points in `cvd_series`; 1 when `cvd_series` is `null` (the bucket's candle alone).
buy_sell_coverage_ratiofraction (0.585 = 58.5 %)Share of the volume (in USD) whose buy/sell split is known. 1 = every trade is split. Below 1 on part of the history, where some sources did not report the aggressor side: `buy_volume` and `sell_volume` then cover that share only, so `buy_volume + sell_volume` < `volume`; `buy_ratio` and the CVD describe the covered share. `null` when the bucket has no volume.
is_volume_estimated`true` when some base-asset quantities of this row were ESTIMATED from USD amounts (history where a source reported amounts but not quantities): a buy or sell amount is converted at that source's own average price when its total quantity is known, otherwise at the candle's typical price (high + low + close) / 3. Every quantity a source measured is kept as is. `false` = all measured. `null` when the volume itself is `null` (not available).
is_closed`true` = the row is final; `false` = provisional: the latest bucket while it still settles (a few seconds after its end, e.g. a candle whose volumes are not final yet), or the period in progress with `?live=1` on the routes that take it. Exception, rare: when a venue delivers trades LATE (seconds to minutes, e.g. during a burst), a closed row built from trades (trade candles, candle volumes, CVD, buy/sell ratio, trades per second) is corrected afterwards to include them, usually within minutes and at most one hour later; the correction only adds the late trades.
GET/v1/cvd/historydata_type · cvd_historyRéférence complète
Les 9 champs de cette route (d’après le contrat)
timeISO 8601 UTC, milliseconds (2026-09-28T14:00:00.000Z)Start of the bucket the row covers: a 1h bucket at 14:00 covers 14:00:00 to 14:59:59.999.
cvd_seriesbase asset quantity (BTC for BTCUSDT)Cumulative volume delta inside the bucket, one point per step of finer candles (1 minute up to `1h`, 5 minutes in `4h`, 15 minutes in `1d`), starting from 0 at the bucket start. `null` when those finer candles do not cover the bucket (before 2026-06-05; in `1d`, before 2023-12; or a collection gap): `buy_volume`, `sell_volume` and `net_volume` then come from the bucket's own candle, as on `/v1/trades-kline`, and `sample_count` is 1.
net_volumebase asset quantity (BTC for BTCUSDT)buy_volume - sell_volume over the row, base asset units. Positive = net buying.
buy_volumebase asset quantity (BTC for BTCUSDT)Aggressive (taker) buy volume, base asset units, aggregated across venues.
sell_volumebase asset quantity (BTC for BTCUSDT)Aggressive (taker) sell volume, base asset units, aggregated across venues.
sample_countcountNumber of points in `cvd_series`; 1 when `cvd_series` is `null` (the bucket's candle alone).
buy_sell_coverage_ratiofraction (0.585 = 58.5 %)Share of the volume (in USD) whose buy/sell split is known. 1 = every trade is split. Below 1 on part of the history, where some sources did not report the aggressor side: `buy_volume` and `sell_volume` then cover that share only, so `buy_volume + sell_volume` < `volume`; `buy_ratio` and the CVD describe the covered share. `null` when the bucket has no volume.
is_volume_estimated`true` when some base-asset quantities of this row were ESTIMATED from USD amounts (history where a source reported amounts but not quantities): a buy or sell amount is converted at that source's own average price when its total quantity is known, otherwise at the candle's typical price (high + low + close) / 3. Every quantity a source measured is kept as is. `false` = all measured. `null` when the volume itself is `null` (not available).
is_closed`true` = the row is final; `false` = provisional: the latest bucket while it still settles (a few seconds after its end, e.g. a candle whose volumes are not final yet), or the period in progress with `?live=1` on the routes that take it. Exception, rare: when a venue delivers trades LATE (seconds to minutes, e.g. during a burst), a closed row built from trades (trade candles, candle volumes, CVD, buy/sell ratio, trades per second) is corrected afterwards to include them, usually within minutes and at most one hour later; the correction only adds the late trades.
GET/v1/cvd/spotdata_type · cvd_spotRéférence complète
GET/v1/cvd/spot/historydata_type · cvd_spot_historyRéférence complète
GET/v1/cvd/futuresdata_type · cvd_futuresRéférence complète
GET/v1/cvd/futures/historydata_type · cvd_futures_historyRéférence complète

Le delta de volume cumulé : la somme courante du volume acheté au marché moins le volume vendu au marché. Il mesure qui, des acheteurs ou des vendeurs, a dû traverser le carnet d’ordres, donc qui pousse vraiment le prix.

CVD, ratio acheteur, taille moyenne des transactions et carnet prennent le marché dans le CHEMIN : sans suffixe = tous les marchés (spot + futures perpétuels), /spot, /futures (/v1/cvd, /v1/cvd/spot, /v1/cvd/futures, de même avec /history) ; l’enveloppe le rappelle dans market. Les quantités spot sont mesurées depuis le 2026-09-27 : avant cette date, en spot et tous marchés, les volumes acheteur et vendeur sont estimés depuis les montants en USD, signalés par is_volume_estimated: true. /futures sert tout l’historique futures.

ParamètreTypeDéfautDescription
symbolstringobligatoireL’actif.
timeframestringobligatoire1m, 5m, 15m, 30m, 1h, 4h, 1d.
livebooleanfalseExpose la fenêtre en cours.
since_ms / until_msinteger—Sur l’historique uniquement.
limitinteger100Sur l’historique, de 1 à 1000.
curl -H "X-API-KEY: $BYTNODE_API_KEY" \
  "https://api.bytnode.com/v1/cvd?symbol=BTCUSDT&timeframe=1h"
ChampTypeDescription
timestringDébut de la fenêtre.
cvd_seriesfloat[]La série cumulée à l’intérieur de la fenêtre, un point par pas interne, du plus ancien au plus récent. C’est sa pente qui porte l’information.
net_volumefloatAchat moins vente sur toute la fenêtre.
buy_volume / sell_volumefloatLes deux volumes qui composent le delta.
sample_countintegerNombre de points de la série.
is_volume_estimatedbooleantrue quand une quantité spot de la ligne a été estimée depuis son montant en USD (données spot antérieures au 2026-09-27).
is_closedbooleanFaux uniquement avec live=1.

#Carnet d’ordres

GET/v1/orderbookdata_type · orderbookRéférence complète
Les 9 champs de cette route (d’après le contrat)
timeISO 8601 UTC, milliseconds (2026-09-28T14:00:00.000Z)Start of the bucket; the depth is the photo of the order book at the END of the bucket.
is_closed`true` = the row is final; `false` = provisional: the latest bucket while it still settles (a few seconds after its end, e.g. a candle whose volumes are not final yet), or the period in progress with `?live=1` on the routes that take it. Exception, rare: when a venue delivers trades LATE (seconds to minutes, e.g. during a burst), a closed row built from trades (trade candles, candle volumes, CVD, buy/sell ratio, trades per second) is corrected afterwards to include them, usually within minutes and at most one hour later; the correction only adds the late trades.
rangesOne entry per price range around the mid price, from the tightest (±0.25 %) to the widest (±10 %). Each range is cumulative: ±1 % includes everything inside ±0.5 %.
ranges.range_pctpercent (58.5 = 58.5 %)Half-width of the range around each venue's mid price ((best bid + best ask) / 2): `1.0` = bids down to -1 % and asks up to +1 %.
ranges.bids_quantitybase asset quantity (BTC for BTCUSDT)Resting BUY orders inside the range (price >= mid × (1 - range_pct/100)), summed across venues. `null` = no venue publishes its book that deep.
ranges.asks_quantitybase asset quantity (BTC for BTCUSDT)Resting SELL orders inside the range (price <= mid × (1 + range_pct/100)), summed across venues. `null` = not measured.
ranges.bids_usdUSDUSD value (Σ price × quantity) of the buy orders inside the range.
ranges.asks_usdUSDUSD value (Σ price × quantity) of the sell orders inside the range.
ranges.imbalance_ratiofraction from -1 to 1(bids_usd - asks_usd) / (bids_usd + asks_usd). Positive = more bids than asks. `null` when one side is not measured.
GET/v1/orderbook/spotdata_type · orderbook_spotRéférence complète
GET/v1/orderbook/futuresdata_type · orderbook_futuresRéférence complète

La dernière photo close du carnet pour le timeframe demandé (1m = la dernière minute close), sommée sur les places, par fourchette de prix : la liquidité posée à ±0,25 %, 0,5 %, 0,75 %, 1 %, 2 %, 3 %, 5 % et 10 % du prix médian. /v1/orderbook additionne les carnets spot et futures perpétuels ; /v1/orderbook/spot et /v1/orderbook/futures donnent un seul marché.

ChampTypeDescription
timestringDébut de la minute photographiée ; les valeurs sont le carnet à sa fin.
is_closedbooleanToujours vrai : toute photo servie est définitive.
rangesarrayUne entrée par fourchette de prix, de la plus étroite à la plus large.
range_pct / bids_quantity / asks_quantity / bids_usd / asks_usd / imbalance_ratiofloat | nullPour chaque fourchette : sa largeur en pourcentage, les quantités posées de chaque côté (actif de base), les mêmes en USD, et imbalance_ratio = (bids_usd − asks_usd) / (bids_usd + asks_usd), de −1 à 1, positif quand les acheteurs dominent. null quand aucune place n’a mesuré cette fourchette.
GET/v1/orderbook/historydata_type · orderbook_historyRéférence complète
Les 9 champs de cette route (d’après le contrat)
timeISO 8601 UTC, milliseconds (2026-09-28T14:00:00.000Z)Start of the bucket; the depth is the photo of the order book at the END of the bucket.
is_closed`true` = the row is final; `false` = provisional: the latest bucket while it still settles (a few seconds after its end, e.g. a candle whose volumes are not final yet), or the period in progress with `?live=1` on the routes that take it. Exception, rare: when a venue delivers trades LATE (seconds to minutes, e.g. during a burst), a closed row built from trades (trade candles, candle volumes, CVD, buy/sell ratio, trades per second) is corrected afterwards to include them, usually within minutes and at most one hour later; the correction only adds the late trades.
rangesOne entry per price range around the mid price, from the tightest (±0.25 %) to the widest (±10 %). Each range is cumulative: ±1 % includes everything inside ±0.5 %.
ranges.range_pctpercent (58.5 = 58.5 %)Half-width of the range around each venue's mid price ((best bid + best ask) / 2): `1.0` = bids down to -1 % and asks up to +1 %.
ranges.bids_quantitybase asset quantity (BTC for BTCUSDT)Resting BUY orders inside the range (price >= mid × (1 - range_pct/100)), summed across venues. `null` = no venue publishes its book that deep.
ranges.asks_quantitybase asset quantity (BTC for BTCUSDT)Resting SELL orders inside the range (price <= mid × (1 + range_pct/100)), summed across venues. `null` = not measured.
ranges.bids_usdUSDUSD value (Σ price × quantity) of the buy orders inside the range.
ranges.asks_usdUSDUSD value (Σ price × quantity) of the sell orders inside the range.
ranges.imbalance_ratiofraction from -1 to 1(bids_usd - asks_usd) / (bids_usd + asks_usd). Positive = more bids than asks. `null` when one side is not measured.
GET/v1/orderbook/spot/historydata_type · orderbook_spot_historyRéférence complète
GET/v1/orderbook/futures/historydata_type · orderbook_futures_historyRéférence complète

La même photo par bucket (timeframe obligatoire, sur la dernière valeur comme sur l’historique) : le carnet tel qu’il était à la FIN de chaque bucket — une photo, pas une moyenne. Toute ligne est définitive : live n’est donc pas accepté.

ChampTypeDescription
timestringDébut du bucket ; les valeurs sont le carnet à sa fin.
rangesarrayLes mêmes fourchettes de prix que ci-dessus.
is_closedbooleanToujours vrai : un intervalle n’est servi qu’une fois clos (live n’est pas accepté sur le carnet).

#Pression directionnelle

Comme /v1/cvd, ces routes exigent timeframe (1m à 1d), et leur dernière valeur est le dernier bucket CLOS — la première ligne du /history pour le même timeframe. Le marché est dans le chemin : sans suffixe = spot + futures, /spot, /futures.

GET/v1/buy-sell-ratiodata_type · buy_sell_ratioRéférence complète
Les 8 champs de cette route (d’après le contrat)
timeISO 8601 UTC, milliseconds (2026-09-28T14:00:00.000Z)Start of the latest closed bucket of `timeframe` — the first row of `/v1/buy-sell-ratio/history` for the same `timeframe`.
buy_volumebase asset quantity (BTC for BTCUSDT)Aggressive (taker) buy volume, base asset units, aggregated across venues.
sell_volumebase asset quantity (BTC for BTCUSDT)Aggressive (taker) sell volume, base asset units, aggregated across venues.
buy_ratiofraction (0.585 = 58.5 %)buy_volume / (buy_volume + sell_volume). Above 0.5 = buyers dominate.
sample_countcountNumber of points of the CVD series behind the bucket — the `sample_count` of `/v1/cvd` for the same bucket.
buy_sell_coverage_ratiofraction (0.585 = 58.5 %)Share of the volume (in USD) whose buy/sell split is known. 1 = every trade is split. Below 1 on part of the history, where some sources did not report the aggressor side: `buy_volume` and `sell_volume` then cover that share only, so `buy_volume + sell_volume` < `volume`; `buy_ratio` and the CVD describe the covered share. `null` when the bucket has no volume.
is_volume_estimated`true` when some base-asset quantities of this row were ESTIMATED from USD amounts (history where a source reported amounts but not quantities): a buy or sell amount is converted at that source's own average price when its total quantity is known, otherwise at the candle's typical price (high + low + close) / 3. Every quantity a source measured is kept as is. `false` = all measured. `null` when the volume itself is `null` (not available).
is_closed`true` = the row is final; `false` = provisional: the latest bucket while it still settles (a few seconds after its end, e.g. a candle whose volumes are not final yet), or the period in progress with `?live=1` on the routes that take it. Exception, rare: when a venue delivers trades LATE (seconds to minutes, e.g. during a burst), a closed row built from trades (trade candles, candle volumes, CVD, buy/sell ratio, trades per second) is corrected afterwards to include them, usually within minutes and at most one hour later; the correction only adds the late trades.
GET/v1/buy-sell-ratio/historydata_type · buy_sell_ratio_historyRéférence complète
Les 8 champs de cette route (d’après le contrat)
timeISO 8601 UTC, milliseconds (2026-09-28T14:00:00.000Z)Start of the bucket. The row covers the WHOLE bucket, from `time` to `time` + the envelope's `step` (excluded).
buy_volumebase asset quantity (BTC for BTCUSDT)Aggressive (taker) buy volume, base asset units, aggregated across venues.
sell_volumebase asset quantity (BTC for BTCUSDT)Aggressive (taker) sell volume, base asset units, aggregated across venues.
buy_ratiofraction (0.585 = 58.5 %)buy_volume / (buy_volume + sell_volume). Above 0.5 = buyers dominate.
sample_countcountNumber of points of the CVD series behind the bucket — the `sample_count` of `/v1/cvd/history` for the same bucket.
buy_sell_coverage_ratiofraction (0.585 = 58.5 %)Share of the volume (in USD) whose buy/sell split is known. 1 = every trade is split. Below 1 on part of the history, where some sources did not report the aggressor side: `buy_volume` and `sell_volume` then cover that share only, so `buy_volume + sell_volume` < `volume`; `buy_ratio` and the CVD describe the covered share. `null` when the bucket has no volume.
is_volume_estimated`true` when some base-asset quantities of this row were ESTIMATED from USD amounts (history where a source reported amounts but not quantities): a buy or sell amount is converted at that source's own average price when its total quantity is known, otherwise at the candle's typical price (high + low + close) / 3. Every quantity a source measured is kept as is. `false` = all measured. `null` when the volume itself is `null` (not available).
is_closed`true` = the row is final; `false` = provisional: the latest bucket while it still settles (a few seconds after its end, e.g. a candle whose volumes are not final yet), or the period in progress with `?live=1` on the routes that take it. Exception, rare: when a venue delivers trades LATE (seconds to minutes, e.g. during a burst), a closed row built from trades (trade candles, candle volumes, CVD, buy/sell ratio, trades per second) is corrected afterwards to include them, usually within minutes and at most one hour later; the correction only adds the late trades.
GET/v1/buy-sell-ratio/spotdata_type · buy_sell_ratio_spotRéférence complète
GET/v1/buy-sell-ratio/spot/historydata_type · buy_sell_ratio_spot_historyRéférence complète
GET/v1/buy-sell-ratio/futuresdata_type · buy_sell_ratio_futuresRéférence complète
GET/v1/buy-sell-ratio/futures/historydata_type · buy_sell_ratio_futures_historyRéférence complète
ChampTypeDescription
timestringDébut du bucket.
buy_volumefloatVolume acheteur sur le bucket (le même que /v1/cvd pour ce bucket).
sell_volumefloatVolume vendeur.
buy_ratiofloatbuy / (buy + sell), de 0 à 1. Au-dessus de 0,5, les acheteurs dominent.
is_volume_estimatedbooleantrue quand une quantité spot de la ligne a été estimée depuis son montant en USD (données spot antérieures au 2026-09-27).
sample_countintegerNombre de minutes (points) derrière le bucket.
is_closedbooleantrue : le bucket est clos et ses valeurs sont définitives.
GET/v1/trades/avg-sizedata_type · trades_avg_sizeRéférence complète
Les 7 champs de cette route (d’après le contrat)
timeISO 8601 UTC, milliseconds (2026-09-28T14:00:00.000Z)Start of the latest closed bucket of `timeframe` — the first row of `/v1/trades/avg-size/history` for the same `timeframe`.
avg_trade_sizebase asset quantity (BTC for BTCUSDT)Average trade size, base asset units (NOT dollars: multiply by the price for a notional).
volumebase asset quantity (BTC for BTCUSDT)Traded volume over the row, base asset units (BTC for BTCUSDT, NOT dollars), aggregated across venues, over the market(s) the route covers: spot + perpetual futures on `/v1/klines` and `/v1/trades-kline`, the path's market alone on a `/spot` or `/futures` route (a name without a market suffix covers every market of its route; `volume_spot` / `volume_futures` restrict). `null` when a market is not available (never a partial sum).
trade_countcountNumber of trades. `null` when the number is not known: history imported from an outside source carries the buy and sell volumes, not the trade count.
is_volume_estimated`true` when some base-asset quantities of this row were ESTIMATED from USD amounts (history where a source reported amounts but not quantities): a buy or sell amount is converted at that source's own average price when its total quantity is known, otherwise at the candle's typical price (high + low + close) / 3. Every quantity a source measured is kept as is. `false` = all measured. `null` when the volume itself is `null` (not available).
sample_countcountNumber of source points in the bucket (one-minute points with data). For a state (basis, open interest) the value is the LAST of them — the bucket's close —; for a flow it is their total.
is_closed`true` = the row is final; `false` = provisional: the latest bucket while it still settles (a few seconds after its end, e.g. a candle whose volumes are not final yet), or the period in progress with `?live=1` on the routes that take it. Exception, rare: when a venue delivers trades LATE (seconds to minutes, e.g. during a burst), a closed row built from trades (trade candles, candle volumes, CVD, buy/sell ratio, trades per second) is corrected afterwards to include them, usually within minutes and at most one hour later; the correction only adds the late trades.
GET/v1/trades/avg-size/historydata_type · trades_avg_size_historyRéférence complète
Les 7 champs de cette route (d’après le contrat)
timeISO 8601 UTC, milliseconds (2026-09-28T14:00:00.000Z)Start of the bucket of `timeframe`, the value aggregating the bucket's minutes; the row covers `time` to `time` + the envelope's `step` (excluded).
avg_trade_sizebase asset quantity (BTC for BTCUSDT)Average trade size, base asset units (NOT dollars: multiply by the price for a notional).
volumebase asset quantity (BTC for BTCUSDT)Traded volume over the row, base asset units (BTC for BTCUSDT, NOT dollars), aggregated across venues, over the market(s) the route covers: spot + perpetual futures on `/v1/klines` and `/v1/trades-kline`, the path's market alone on a `/spot` or `/futures` route (a name without a market suffix covers every market of its route; `volume_spot` / `volume_futures` restrict). `null` when a market is not available (never a partial sum).
trade_countcountNumber of trades. `null` when the number is not known: history imported from an outside source carries the buy and sell volumes, not the trade count.
is_volume_estimated`true` when some base-asset quantities of this row were ESTIMATED from USD amounts (history where a source reported amounts but not quantities): a buy or sell amount is converted at that source's own average price when its total quantity is known, otherwise at the candle's typical price (high + low + close) / 3. Every quantity a source measured is kept as is. `false` = all measured. `null` when the volume itself is `null` (not available).
sample_countcountNumber of source points in the bucket (one-minute points with data). For a state (basis, open interest) the value is the LAST of them — the bucket's close —; for a flow it is their total.
is_closed`true` = the row is final; `false` = provisional: the latest bucket while it still settles (a few seconds after its end, e.g. a candle whose volumes are not final yet), or the period in progress with `?live=1` on the routes that take it. Exception, rare: when a venue delivers trades LATE (seconds to minutes, e.g. during a burst), a closed row built from trades (trade candles, candle volumes, CVD, buy/sell ratio, trades per second) is corrected afterwards to include them, usually within minutes and at most one hour later; the correction only adds the late trades.
GET/v1/trades/avg-size/spotdata_type · trades_avg_size_spotRéférence complète
GET/v1/trades/avg-size/spot/historydata_type · trades_avg_size_spot_historyRéférence complète
GET/v1/trades/avg-size/futuresdata_type · trades_avg_size_futuresRéférence complète
GET/v1/trades/avg-size/futures/historydata_type · trades_avg_size_futures_historyRéférence complète

La taille moyenne d’une transaction profile les participants : elle monte quand les acteurs institutionnels entrent, elle s’effondre quand le flux devient une poussière d’ordres de particuliers.

ChampTypeDescription
avg_trade_sizefloat | nullTaille moyenne, pondérée par le nombre de transactions de chaque place.
volumefloatVolume total agrégé.
trade_countintegerNombre de transactions agrégé.
timestringDébut du bucket.
is_volume_estimatedbooleantrue quand une quantité spot de la ligne a été estimée depuis son montant en USD (données spot antérieures au 2026-09-27).
sample_countintegerNombre de minutes (points) derrière le bucket.
is_closedbooleantrue : le bucket est clos et ses valeurs sont définitives.