DATA · AGGREGATED TRADES

Crypto Aggregated Trades: Null vs Zero - Handle Missing Fields Correctly

Binance compresses trades at the same price, time and side into aggregate records. Their ID ranges are the tool for detecting what you missed.

Short answer

Binance USD-M aggTrades returns a (aggregate ID), p (price), q (quantity), f and l (first and last underlying trade IDs), T (time) and m (was the buyer the maker). Because aggregate IDs are sequential, a jump in a between records means records were missed — a gap, not 'no trades'. A window with no records can mean no trading or a request outside the endpoint's limits; the docs limit time-range requests to under an hour and history to about 48 hours for that form of query. Check ID continuity before trusting volume built from aggTrades.

Fields and what missing values mean

FieldNull / absent meansZero / empty means
a (aggregate ID)Jump in sequence: missed records—
f, lUnderlying trade range—
mAbsent: can't classify side—
Empty responseCheck limits and windowNo trades if within limits
q—Positive by definition
Aggregated Trades: how to read each fieldAggregated Trades: how to read each field: a (aggregate ID) — Jump in sequence: missed records; f, l — Underlying trade range; m — Absent: can't classify side; Empty response — Check limits and window; q — Positive by definition.a (aggregate ID)Jump in sequence: missed recordsf, lUnderlying trade rangemAbsent: can't classify sideEmpty responseCheck limits and windowqPositive by definition
Aggregated Trades: missing vs zero, field by field. Original ChartsPod editorial graphic.

See Crypto Aggregated Trades on live data in the free ChartsPod terminal.

Open the ChartsPod terminal

Handling policy

Policy for this sourcePolicy for this source: Check a for continuity; Respect window limits; Use m for side (true = seller aggressor); Rebuild candles only from continuous ranges; Archive: history is short.POLICY FOR THIS SOURCECheck a for continuityRespect window limitsUse m for side (true = seller aggressor)Rebuild candles only from continuous rangesArchive: history is short
Apply this policy to every aggregated trades request. Original ChartsPod editorial graphic.

Illustrative: a delta series built from aggTrades shows a sudden flat hour. Aggregate IDs jump from 1,204,551 to 1,231,902 — about 27,000 records were missed, not a silent market.

Conclusion

Related: Crypto Taker-Buy Volume: Null vs Zero - Handle Missing Fields Correctly, Crypto Order-Book Deltas: Null vs Zero - Handle Missing Fields Correctly.

Check ID continuity before trusting volume built from aggTrades.

Test Crypto Aggregated Trades on a perpetual chart; no account is needed to chart.

Launch ChartsPod

Questions readers ask

How do I detect missing aggregate trades?

Look for jumps in the aggregate ID.

What does m mean?

Whether the buyer was the maker; true implies a sell aggressor.

Does an empty response mean no trades?

Only if the request was within the endpoint's limits.

Sources and methodology

Field definitions come from DEX Screener's API reference, CoinGecko's onchain API documentation and Binance's Spot API documentation, read 17 October 2026. Where a schema was not visible in the documentation, this guide says so and describes defensive handling rather than asserting field behaviour.

  1. Binance: USD-M Futures market data API — trades, depth, funding and open interest.

This article explains research tools and workflows. It is not financial advice, does not recommend buying or selling any asset and does not predict prices. Crypto derivatives carry a risk of rapid and total loss of margin.

CHARTSPOD EDITORIAL EDITION · RESEARCH AND EDUCATION ONLY · NOT FINANCIAL ADVICE.