The Depth of Market Request

The purpose of the dom request is to provide a specific real-time market data for a quote, for example the bid or ask of a specific price level position for a certain instrument.

The dom request format

The dom request has a standard format containing the dom keyword and it uses 3 fields: instrument symbol, quote field and position.
A second format of 4 fields can be used when requesting the volume or trades for a specific bid/ask level: instrument symbol, quote field [bid or ask], volume/trades and position.
dom(SYMBOL, QUOTE_FIELD, POSITION)
dom(SYMBOL, QUOTE_FIELD, VOLUME_TRADES, POSITION)

The SYMBOL parameter is the instrument symbol used in QST for different types of products (futures, options, spreads).

Note

For futures, you can use either the standard symbol, e.g. EGCV20, or the corresponding perpetual symbol, e.g. EGC1- .

Likewise, for future spreads, the standard symbol can be used, e.g. ZCZ20:H21[SP], or the corresponding perpetual symbol, e.g. ZC1-:2-[SP] .

While for option instruments, you can either use the actual symbol of the option, e.g. EWZ20C3400 (E-mini S&P End of Month options), or using the underlying symbol instead, e.g. ESZ20{EW}C3400 .

The QUOTE_FIELD parameter represents the specific market data information requested for an instrument at a certain price level.
Possible QUOTE_FIELD values:
  • bd – Bid

  • ak - Ask

  • az – Ask Size

  • bz – Bid Size

The VOLUME_TRADES parameter represents the volume or trades information requested for an instrument at a certain price level. It can only be used when the QUOTE_FIELD is either bd or ak.
The VOLUME_TRADES values:
  • volume - Volume

  • trades - Trades

The POSITION parameter represents the price level position from which the market data is requested.
Possible POSITION values: [0 .. 9], where the bid/ask at position 0 represent the best bid/best ask.

Note

You can only request one specific piece of information per dom request, e.g. you can request a bid price or an ask price but not both in the same dom request and only from a specific price level position.

Examples of dom request

  1. Requesting the bid price at price level 3 from the ESZ20 (CME E-mini S&P) future:

=RTD("qst.rtd","","dom(ESZ20,bd,3)")
../_images/dom_bid_future.png

  1. Requesting the bid size at price level 6 from the ECLZ20:F21[SP] (NYMEX Light Sweet Crude Oil) future spread:

=RTD("qst.rtd","","dom(ECLZ20:F21[SP],bz,6)")
../_images/dom_bidsize_spread.png

  1. Requesting the ask size at price level 0 from the 6EZ20{EPM}C11650 (CME EUR/USD Premium) European option:

=RTD("qst.rtd","","dom(6EZ20{EPM}C11650,az,0)")
../_images/dom_asksize_option.png

  1. Requesting the volume at the ask level 9 from the second trading month of the ECL (NYMEX Light Sweet Crude Oil) future:

=RTD("qst.rtd","","dom(ECL2-,ak,volume,9)")
../_images/dom_ask_volume.png