Try TT Now

CME Gateway

Understanding the Price Feed

MDP Price Server Overview

Dual MDP price feeds connect to the Price Server via UDP for price data. These feeds are referred to as Price Feed A and Price Feed B. The dual price feed approach provides the following functions:

  • Connects to the CME Group.
  • Provides a verification system for data delivery.
  • Creates less packet overhead and throughput.
  • Uses a UDP connection to communicate with and send price information to the MDP in the Price Server.

The CME Group transmits identical price data on both feeds along with sequence numbers that define which packets of data are present. If the TT Gateway discovers a missing sequence number, the Price Server updates with correct information after receiving the next price update.

When waiting for the next price update, the CME Gateway may temporarily remove market data. This information automatically repopulates when a new price update is received. For information on price transmission failures, see the Gateway Recovery: Prices.

Price Server Files

During normal operation, the Price Server reads:

  • Hostinfo.cfg to determine the subjects (product data) to which it must subscribe.
  • fast.cfg to obtain each subject’s connectivity information (i.e., channel number, IP addresses, ports, etc.)

Also, at startup and after a product download, the Price Server reads the price data in Exchange-flavor_Mode_ttqap.dat to include previously traded contracts when calculating VAP for TTQAP-subscribed products.

TT Gateway Subscription Process

At startup and during operation, the Price Server reads the hostinfo.cfg file to determine:

  • The various subjects that it must download as specified by the Subject# parameters.
  • The NIC IP addresses (on the local machine) over which the CME Gateway routes the various MDP feeds. In the example above, these feeds are FeedA and FeedB (as illustrated in the AddressFeed* parameter). For details on routing MDP feeds, refer to Configuring Multiple NIC Setup.

After identifying these subjects, the Price Server refers to the fast.cfg file to determine the connectivity information on how to obtain the subject data from CME Group.

FIX/FAST Message Recovery

The CME Gateway order book is updated incrementally with market data per contract. If message recovery is necessary, the CME Gateway subscribes to snapshot channels to update the entire Order Book. Because the snapshot updates occur at a high message rate, subscribing to all snapshot channels simultaneously is not recommended. To help alleviate recovery issues, the Price Server is configured by default to do the following:

  • Use FIX/FAST incremental updates to refresh the Order Book.
  • Subscribe to the snapshot channels only when the incremental update has not refreshed the entire Order Book.
  • Dynamically subscribe to no more than two snapshot recovery channels at one time.
  • Only subscribe to snapshot channels for contracts with active price subscriptions. However, if an order is entered outside the displayed levels of depth for a contract that missed an inside market price update, the Price Server will not request a snapshot to refresh the Order Book. If an order is entered within the levels of depth, the snapshot is requested as needed.

This FIX/FAST recovery behavior is defined by the MaxSnapshotChannels parameter in hostinfo.cfg. Because the parameter is not present in the hostinfo.cfg file by default, you’ll have to manually add the MaxSnapshotChannels parameter if you want to reconfigure the number of snapshot channels to subscribe to. By default the Price Server functions as if the parameter is set to 2.

Note

A value of “0 “ is allowed and indicates that the Price Server only uses incremental updates to refresh the Order Book (no snapshot channels are opened).

If a restart or mid-week startup is necessary, the CME Gateway is configured by default to do the following:

  • Dynamically subscribe to no more than two instrument definition channels at one time.
  • Perform incremental price updates to the Order Book only after instrument definition updates are complete.

This default CME Gateway behavior is defined by the MaxInstrumentChannels parameter in hostinfo.cfg. Because the parameter is not present in the hostinfo.cfg file by default, you’ll have to manually add the MaxInstrumentChannels parameter if you want to configure the number of instrument definition channels to subscribe to. If you manually configure this parameter, the number of instrument definition channels should not exceed the number of price feed channels configured on the Price Server.

Refer to Section: [price_session] for more details about these parameters.

Note

If there is missing price data for a product and a snapshot is requested, the Price Server clears the existing Order Book before refreshing it with the snapshot. This is by design and not the result of the client application (e.g., Autospreader®) deleting data from the Order Book prior to a snapshot. The occurrence of frequent snapshots may be an indication of capacity or performance issues within the network.

Prices- FIX/FAST Messages

The CME Gateway continually receives market data snapshots from the exchange via FIX/FAST. If you subscribe to additional channels from the price feed, you must use the -products command line parameter to restart the Price Server and download the additional information.

For more information on FIX/FAST, refer to FIX/FAST Behavior.

Price Server Data Flow

The following is a description of the price feed connection process from the Price Server to the exchange.

  • The Price Server on the CME Gateway starts and reads hostinfo.cfg to determine which subjects to subscribe to.
  • The Price Server reads fast.cfg to determine connectivity data for each of the subjects specified in hostinfo.cfg.
  • The CME Gateway connects to the exchange via a UDP multicast, and subscribes to the products listed in hostinfo.cfg.
  • The CME Group sends the requested price information to the Price Server. Every price message from the CME Group has a sequence number.
    Note

    Currently, the price sequence number starts at 1 on Sunday and increases by one for each price message received throughout the week. The sequence number resets back to 1 on Sunday.

  • Each subject maintains its own sequence number.
  • The Price Server begins broadcasting Market Depth and price updates using the multicast group as set in Guardian.
  • In real time, the Price Server records the price structure for each contract held in RAM on the CME Gateway.

Tick Tables, Point Values, and Product Tables

The CME Group does not provide point values in their price feed.

Verifying Product Table Settings

You can use the overrride function in the product table to display the Setup Product Table Items dialog box and review these settings. For the CME Gateway, all items should be under Administrator control, and the Setup Product Table Items dialog box should appear as follows:

Customers with an MPF environment must ensure that all items are listed in the Administrator column for all MPF Price Servers and mapped Gateways.

To verify Guardian Product Table Settings:

  1. Open Guardian.
  2. Click File, then click Admin Login from the drop down menu to login as an Administrator.
  3. Click Admin, then click Product Table Setup.
  4. In the Exchange list click the drop-down menu icon and select a CME Gateway.
  5. Click Override.
  6. In the Setup Product Table Items dialog box that is displayed, verfiy that no items are listed in the Exchange column.
  7. Verify that the following items are listed in the Administrator column, and click OK:
    • Alias
    • Base Tick
    • Currency
    • Description
    • Margin
    • Point Value
    • Price Format
    • Round Lot
    • Tick Table
  8. If any changes were made, click Publish.

pMerge Overview

The CME Gateway installs with the pmerge.exe executable. During installation, this executable runs automatically to set up and configure the product tables that the TT Gateway uses. Additionally, when you upgrade a CME Gateway, pmerge.exe runs automatically to merge pre-existing product tables with any new product tables distributed with the latest TT Gateway software.The only time you must use pMerge manually is if TT distributes updated product information in a customer advisory. TT distributes this product information in a file named CME.pmg.

Note

If you run pmerge.exe as part of receiving an updated CME.pmg from a Customer Advisory, TT recommends running it during non-trading hours; the Price Server has to be stopped and restarted in order to see the new product table changes.

You can run pMerge in two different ways:

  • From Window Explorer
  • From the Command Window

To run pMerge from Windows Explorer:

  1. In Windows Explorer, navigate to <root drive>:ttbin
  2. Double-click pMerge.exe

    The Open Guardian product table merge file dialog box appears.

  3. Navigate to <root drive>:ttconfig
  4. Double-click CME.pmg

    pMerge creates the new product table. After pMerge completes its tasks, the pMerge status bar displays Finished.

  5. Close the pMerge status bar.

To run pMerge in the Command Window:

  1. Open a Command Window.
  2. At the command line prompt, run pMerge using the following syntax:
    Note

    pmerge [<root drive>:ttconfigCME.pmg -e exchange-flavor [-q | -v]]

    • pmerge: Runs the pMerge.exe file. If you do not include additional arguments, this command opens the Open Guardian product table merge file dialog box. Refer to .
    • -e exchange-flavor: Sets the exchange-flavor of the TT Gateway whose product table pMerge updates.
    • -q: Sets pMerge to run in quiet mode. pMerge does not output informative text in the Command Window when it runs.
    • -v: Sets pMerge to run in verbose mode. pMerge outputs informative text in the Command Window when it runs.

    pMerge creates the new product table. After pMerge completes its tasks, the pMerge status bar displays Finished.

  3. Close the pMerge status bar.

Support for Market Depth

CME Gateways support implied depth, and forward all levels of aggregate depth available on the exchange’s price feed.