Binance USDS-M Futures

Binance USDS-M Futures historical market data details - instruments, data coverage and data collection specifics

Binance USDS-M Futures historical data for all its instruments is available since 2019-11-17.

See Binance USDS-M Futures historical data coverage: available symbols, channels, date ranges and incidents

Data collection before 2020-05-14 suffered some issues (missing data, latency spikes) during market volatility periods. It has been circumvented by switching to Tokyo DC and using multiple WS connections for real-time market data collection.

Downloadable CSV files

Historical CSV datasets for the first day of each month are available to download without API key. See downloadable CSV files documentation.

derivative_ticker open interest data is available since 2020-05-13 - date since we've started collecting that info via Binance USDS-M Futures REST API (open interest channel).

data type
symbol
date

incremental_book_L2

BTCUSDT

2020-02-01

trades

BTCUSDT

2020-02-01

derivative_ticker

BTCUSDT

2020-02-01

API Access and data format

Historical data format is the same as provided by real-time Binance USDS-M Futures WebSocket API with addition of local timestamps. If you'd like to work with normalized data format instead (same format for each exchange) see downloadable CSV files or official client libs that perform data normalization client-side.

Captured real-time channels

See Binance USDS-M Futures WebSocket API docs providing documentation for each captured channel's format

Click any channel below to see HTTP API response with historical data recorded for it.

  • trade Public futures trade executions stream

  • depth Incremental futures order book updates stream. Recorded with the fastest API cadence available at the time: until 2020-01-07 it was subscribed as depth@100ms (100ms updates), after that as depth@0ms (real-time dynamically adjusted update speed).

  • depthSnapshot — generated channel Binance USDS-M Futures real-time WebSocket API does not provide initial order book snapshots. To overcome this issue we fetch initial order book snapshots from REST API and store them together with the rest of the WebSocket messages — top 1000 levels. Such snapshot messages are marked with "stream":"<symbol>@depthSnapshot" and "generated":true fields.

    During data collection integrity of order book incremental updates is being validated using sequence numbers provided by real-time feed (pu and u fields) — in case of detecting missed message WebSocket connection is being restarted. We also validate if initial book snapshot fetched from REST API overlaps with received depth messages.

  • bookTicker Best bid and best ask updates stream

  • forceOrder — available since 2020-01-07 Liquidation order stream publishing only the latest liquidation per symbol in each 1000ms window

  • ticker 24h futures ticker updates stream

  • markPrice Mark price and funding metrics stream. Subscribed as @markPrice@1s. The 1s update speed has been available since 2020-02-13; before that the default (3s) speed was used.

  • premiumIndex — generated channel, available since 2026-04-11

    Snapshots are fetched from the REST mark price endpoint about every 6 seconds for all instruments. The recorder splits the REST response into one generated message per instrument, marked with "stream":"<symbol>@premiumIndex" and "generated":true fields. This channel includes the interestRate field that is not present on the WebSocket markPrice stream.

  • indexConstituents — generated channel, available since 2026-04-23

    Snapshots are fetched from the REST index price constituents endpoint every minute per instrument. Messages are marked with "stream":"<symbol>@indexConstituents" and "generated":true fields with REST response format.

  • openInterest — generated channel, available since 2020-05-12

    Snapshots are fetched from the REST open interest endpoint about every 6 seconds per instrument. Messages are marked with "stream":"<symbol>@openInterest" and "generated":true fields with REST response format.

  • fundingInfo — generated channel, available since 2026-03-17

    Snapshots are fetched from the REST funding info endpoint every minute. Binance returns only symbols with adjusted funding cap, floor, or interval. Messages are marked with "stream":"<symbol>@fundingInfo" and "generated":true fields with REST response format.

  • insuranceBalance — generated channel, available since 2026-03-17

    Snapshots are fetched from the REST insurance fund balance endpoint every minute. Messages are marked with "stream":"insuranceBalance" and "generated":true fields with REST response format.

  • aggTrade Aggregated futures trade executions stream

  • compositeIndex — available since 2020-10-28 Composite index updates stream for multi-asset index symbols

  • assetIndex — available since 2023-06-16 Asset index updates stream

  • topLongShortAccountRatio — generated channel, available since 2020-10-28

    Top trader long/short ratio (accounts), sourced by querying REST endpoint every minute

  • topLongShortPositionRatio — generated channel, available since 2020-10-28

    Top trader long/short ratio (positions), sourced by querying REST endpoint every minute

  • globalLongShortAccountRatio — generated channel, available since 2020-10-28

    Global long/short ratio, sourced by querying REST endpoint every minute

  • takerlongshortRatio — generated channel, available since 2021-12-01

    Taker buy/sell volume ratio, sourced by querying REST endpoint every minute

  • !contractInfo — available since 2023-07-24 Contract metadata updates stream pushed when listing, settlement, or bracket information changes

Market data collection details

Market data collection infrastructure for Binance USDS-M Futures since 2020-05-14 is located in GCP asia-northeast1 region (Tokyo, Japan), before that it was located in GCP europe-west2 region (London, UK).

Real-time market data is captured via multiple WebSocket connections to wss://fstream.binance.com/stream.

Binance servers are located in AWS ap-northeast-1 region (Tokyo, Japan).

Last updated

Was this helpful?