developers:apiv2:markets

This is an old revision of the document!


Market Data

◀ WebSocket API (V2)

Send a MarketSubscribe message in order to subscribe for market data. You may have multiple active market subscriptions (up to the subscription limit set for your user.)

Feed Description
Depth of Market (Top of Book) Provides the best bid and best offer.
Depth of Market (Full Order Book) Provides the 10 best bids and offers in the market.
Market by Order (CME Only) Provides the complete order book, including order id's and position in queue information.
Ticker Provides a ticker of every trade in the market.

Note: Trade ticker includes order id's when subscribed for MBO.

Subscriptions are keyed by exchange_id, contract_id and market_id. Retrieve them from the REST-based Instruments API

market_subscribe {
  exchange_id: "CME_Eq"
  contract_id: "ES"
  market_id:   "XME_Eq ES ()"
  quotes: QUOTES_FULL_ORDER_BOOK   // detail level (see below)
  ticker: true                     // also stream trade prints
}

The Quotes enumquotes (Quotes enum) selects the market data feed:

Value You receive
QUOTES_NONE Nothing — unsubscribes the market.
QUOTES_TOP_OF_BOOK Best bid / best offer only, as MarketDepth.
QUOTES_FULL_ORDER_BOOK Full depth ladder (volume aggregated per price), as MarketDepth.
QUOTES_MARKET_BY_ORDER Every individual resting order, as MarketByOrder*.

ticker — when true, trade prints stream as MarketTrade messages.

Unsubscribe — resend MarketSubscribe for the same market with quotes: QUOTES_NONE.

Quote Feed (TOP_OF_BOOK / FULL_ORDER_BOOK):

  • MarketSnapshot — full current state on subscribe (bundles depth, trades, high/low, price limits, settlement).
  • MarketDepth — incremental bid/offer/implied updates thereafter.

Market by Order Feed (MARKET_BY_ORDER):

  • MarketByOrderSnapshot — all resting orders plus last_sequence.
  • MarketByOrderUpdate — per-order changes; each has a sequence and updates[] of type ADD_OR_UPDATE, DELETE or CLEAR. Apply in order; on a gap, resubscribe.

Ticker Feed

  • MarketTrade — when ticker is set. For an MBO subscription it also carries the trade sequence and the participating resting orders

Always:

  • MarketDetails — the instrument definition.
  • MarketHighLow, MarketPriceLimits, MarketSettlement — as they occur.
  • MarketSubscribeReject — subscription refused; check mode.

Every message carries a mode (MarketMode: open, closed, halted, …) and a delayed flag.

Messages and every field: proto/t4/v2/market/market.proto. Enums (Quotes, MarketMode, BidOffer): proto/t4/v2/common/enums.proto. See the Message Catalog.

  • developers/apiv2/markets.1788804347.txt.gz
  • Last modified: 2026/09/07 18:05
  • by chad