This topic contains a table with filters to query iLink message specification tags by Tag Number, Name, FIX Type, Required, and Global (entire specification). 

Y: Required by FIX protocol, Y*: Required by CME Globex (not by FIX protocol), N: Not Required, C: Conditionally

This page lists all iLink message types in a set order. Message types may be blank if the filter is not applicable.

Please scroll through the list of messages to see full results.

Oops, it seems that you need to place a table or a macro generating a table within the Table Filter macro.

The table is being loaded. Please wait for a bit ...

  • Page:
    iLink 2 Business Level Reject
    TagNameFIX TypeEnumerationReqDescription

    iLink 2 Standard Header - CME Globex to Client System






    35MsgTypeString(2)j=Business Level RejectYHeader tag identifying message type.

    45

    RefSeqNum

    SeqNum(10)


    Y

    Tag 34-MsgSeqNum of the rejected message.

    372

    RefMsgType

    String(2)


    Y

    Tag 35-MsgType of the rejected message.

    379

    BusinessRejectRefID

    String(32)


    N

    Identifier of the rejected message.

    • Tag 117-QuoteID if the message is a Mass Quote or Quote Cancel message.
    • Tag 320-SecurityReqID of the Security Definition Request if the message is a User Defined Instrument.
    • Tag 548-CrossID of the rejected Request for Cross (tag 35-MsgType=R) message.

    380

    BusinessRejectReason

    Int(2)

    0=Other
    1=Unknown ID
    2=Unknown security
    3=Unsupported message type
    4=Application not available
    5=Conditionally required field missing
    6=Not authorized
    7=Delivery to firm not available at this time

    Y

    Code identifying reject reason.

    58

    Text

    String(200)


    Y*

    Additional information on the reject reason.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y = manual
    N = automated

    Y*

    Indicates if order was sent manually or generated by automated trading logic.

    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    1031

    CustOrderHandlingInst

    String(1)

    W - Desk

    Y - Electronic (Default)

    C - Vendor-provided Platform billed by Executing Broker

    G - Sponsored Access via Exchange API or FIX provided by Executing Broker

    H - Premium Algorithmic Trading Provider billed by Executing Broker

    D - Other, including Other-provided Screen

    Y

    Defines source of original order.

    9553SplitMsgInt(1)

    0 – Split message 

    1 – Out-of-order message 

    2 – Complete message 

    N

    Indicates whether a message was subject to additional processing as a result of being:

    • split among multiple packets (0)
    • out-of-order (1)
    • a previously submitted split message (2)

    If absent, then the message was not subject to additional processing.

    iLink 2 Standard Message Trailer





    End of message


  • Page:
    iLink 2 Execution Report - Fill Notice

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - CME Globex to Client System






    35MsgTypeString(2)8=Execution ReportYHeader tag identifying message type.

    1

    Account

    String(12)


    Y*

    Unique account identifier.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex.

    6

    AvgPx

    Price(20)


    Y

    Always '0'.

    11

    ClOrdID

    String(20)


    Y*

    CME Globex returns this value from tag 11 of the New Order or Cancel Replace Request message up to 20 bytes.

    For Mass Quotes the value references 299-QuoteEntryID.

    See iLink - CME Globex Identifiers for more information.

    14

    CumQty

    Int(9)


    Y*

    Contains cumulated traded quantity throughout lifespan of an order.
    This value does not reset if order is cancel/replace.

    37711MDTradeEntryIDInt(10)
    NCommon identifier that associates CME STP cleared trades with order execution and market data messaging. Will continue to refer back to the original value as assigned to the trade being busted or adjusted. Will always be present on Fills except for leg fills on a spread or combination trade. Unique across all iLink sessions and market segments per trading week.

    17

    ExecID

    String(40)


    Y

    CME Globex assigned execution report message identifier; globally unique for each message published.

    20

    ExecTransType

    Char(1)

    0

    Y

    Always '0'.

    31

    LastPx

    Price(20)


    Y*

    Price at which order was filled.

    Premium quoted option value will be equivalent calculated premium price.

    32

    LastQty

    Int(9)


    Y*

    Quantity filled.

    37

    OrderID

    String(17)


    Y

    CME Globex assigned order identifier; globally unique for each message published.

    38

    OrderQty

    Int(9)


    C

    Quantity of order.
    This field must contain an integer.

    Note: For spread trade Execution Reports, this tag is sent in the Execution Report – Fill Notice (35=8, 39=1 or 2) for the spread only and not the legs of the spread.

    39

    OrdStatus

    Char(1)

    1=Partial fill
    2=Complete fill

    Y

    Indicates if fill is for part or all of order quantity.

    40

    OrdType

    Char(1)

    1=Market order (with protection)
    2=Limit order
    3-Stop order (with protection)
    4=Stop-Limit order

    Y*

    Order type. See  Order Management for complete details. 

    The state of an order type can change over the life of an order. For example, a submitted stop order (3) can turn into a market order (1) when the stop price level has been crossed.
    Also refer to Order Types for Futures and Options.

    41

    OrigClOrdID

    String(20)


    N

    Last accepted ClOrdID in the order chain. If a value is included in tag 41 on order entry, the same value is returned. If not, the tag will contain '0'. See iLink - CME Globex Identifiers for more information.

    44

    Price

    Price(20)


    C

    Price per single contract unit.

    All Execution Report messages sent in response to Market orders (with protection) and Stop orders (with protection) will include tag 44-Price populated with the Protection Price Limit (best available price +/- the protection points).

    If the order is not completely filled, the remaining Open Quantity will rest on the order book at the Protection Price Limit.
     
    Note: For spread trade Execution Reports, this tag is sent in the Execution Report – Fill Notice (35=8, 39=1 or 2) for the spread only and not the legs of the spread. 

    48

    SecurityID

    Int(12)


    Y*

    Identifier of the instrument defined in tag 107-SecurityDesc.

    54

    Side

    Char(1)

    1=Buy
    2=Sell

    Y

    Side of order.

    55

    Symbol

    String(6)


    Y

    This tag contains the Group Code of the instrument.

    59

    TimeInForce

    Char(1)

    0=Day
    1=Good Till Cancel (GTC)
    3=Fill and Kill
    6=Good Till Date (GTD)

    C

    Specifies how long the order remains in effect.
    If not present, DAY order is the default.

    For GTD, ExpireDate is required.
    For FAK, MinQty can also be specified.

    See Order Types for Futures and Options or Order Management for more information.

    Note: For spread trade Execution Reports, this tag is sent in the Execution Report – Fill Notice (35=8, 39=1 or 2) for the spread only and not the legs of the spread.

    60

    TransactTime

    UTCTimeStamp(21)


    Y*

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    78

    NoAllocs

    String(1)

    1

    N

    Returned on Execution Report if sent on inbound message.

    79

    AllocAccount

    String(11)


    N

    Returned on Execution Report if sent on inbound message.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex.

    75

    TradeDate

    LocalMktDate(8)


    Y*

    Indicates date of trade reference in this message in YYYYMMDD format.

    107

    SecurityDesc

    String(20)


    Y*

    Instrument identifier.
    e.g. "ESM0'

    150

    ExecType

    Char(1)

    1=Partial fill
    2=Complete fill

    Y

    Indicates the type of execution report.

    151

    LeavesQty

    Int(9)


    C

    Amount of contracts remaining for execution after this fill.

    Note: For spread trade Execution Reports, this tag is sent in the Execution Report – Fill Notice (35=8, 39=1 or 2) for the spread only and not the legs of the spread. 

    167

    SecurityType

    String(6)

    FUT=Future

    OPT=Option

    FXSPOT=FX Spot

    N

    Indicates instrument is future or option.

    Note: For options strategy including UDS COMBO or COVERED, send OPT. For UDS Futures, send FUT.

    337

    ContraTrader

    String(8)

    TRADE

    N

    Will contain 'TRADE'.

    375

    ContraBroker

    String(8)

    CME000A

    N

    Will contain 'CME000A'.

    393

    TotalNumSecurities

    Int(3)


    N

    Contains the number of Leg Fill Acknowledgment messages sent with the spread summary.
    Sent for spread fill message only.

    432

    ExpireDate

    LocalMktDate(8)


    C

    Required only if tag 59-TimeInForce=Good Till Date (GTD). 
    CME Globex does not support tag 126-ExpireTime.
    Only the expiration date can be set.
    Orders expire at the end of the trading session of the specified date.
     
    Note: For spread trade Execution Reports, this tag is sent in the Execution Report – Fill Notice (35=8, 39=1 or 2) for the spread only and not the legs of the spread.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    Value sent on inbound message from client system indicating the order as sent manually or generated by automated trading logic.

    1031

    CustOrderHandlingInst

    String(1)

    W - Desk

    Y - Electronic (Default)

    C - Vendor-provided Platform billed by Executing Broker

    G - Sponsored Access via Exchange API or FIX provided by Executing Broker

    H - Premium Algorithmic Trading Provider billed by Executing Broker

    D - Other, including Other-provided Screen

    Y

    Defines source of original order.

    1731AvgPxGroupIDString(20)
    N

    Used to identify account numbers or orders for grouping trades together for average price calculations.

    If incoming value is greater than max length, iLink will return the right-most twenty bytes.
    1598ClearingTradePriceTypeString(1)0 – Trade Clearing at Execution Price
    1 – Trade Clearing at Alternate Clearing Price
    NIndicates whether spread differential trade is clearing at execution price (tag 31-LastPx) or alternate clearing price (i.e. previous day’s settlement price).

    442

    MultiLegReportingType

    Int(1)

    1=Outright
    2=Leg of spread
    3=Spread

    N

    Indicates if acknowledgment message is sent for an outright, leg of spread or spread.

    527

    SecondaryExecID

    String(40)


    Y

    CME Globex assigned unique identifier; can be used to link spread summary fill notice with leg fill notice and trade cancel messages.

    548

    CrossID

    String(32)


    N

    Identifier for a cross order.

    549

    CrossType

    Int(1)

    3=Cross order

    N

    Identified transaction type if other than standard order execution.

    819AvgPXIndicatorInt(3)0 – No Average Pricing (Default)
    1 – Trade is part of an Average Price Group Identified by the AvgPxGroupID
    3 - Notional Value Average Pricing with Average Price Group Identified by the AvgPxGroupID
    N

    Indicates if the resulting trade is to be average priced.

    This tag is also used to indicate type of average price grouping.
    5149MemoString(75)

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    811

    OptionDelta

    Float(6.2)


    C

    Calculated delta, expressed as a decimal between -1 and 1.

    1057

    AggressorIndicator

    Char(1)

    Y=Match aggressor

    N=Resting at match

    C

    Indicates if order was incoming or resting for the match event.
    Default=not present.

    Note: For spread trade Execution Reports, this tag is sent in the iLink 2 Execution Report - Fill Notice (35=8, 39=1 or 2) for the spread only and not the legs of the spread. 

    1189

    ExpirationTimeValue

    Float


    C

    This value is expressed as a decimal portion of a year, typically the days to expiration divided by the days in a year. Currently the year assumption is 365.

    1190

    RiskFreeRate

    Price(20)


    C

    Daily interest rate based on the settlement price of the previous day's SOFR futures front month quarterly (or 100 minus the previous day's SOFR front month quarterly settlement price).

    If the front month SOFR future is the quarterly month, then the next quarterly futures settlement price will be used. CME Globex divides the difference by 100 and the resulting quotient is the input into its options pricing model.

    Conditionally required for premiums.

    7928SelfMatchPreventionIDString(12)
    N

    This tag is required when market participants elect to use the optional Self Match Prevention functionality.

    Non-implied orders with the same Self-Match Prevention identifier submitted with the same Executing Firm Identifier (subcomponent of tag 49-SenderCompID) will not match on CME Globex.

    9717

    CorrelationClOrdID

    String(20)


    N

    Unvalidated value returned as submitted if sent by client system on inbound message. See tag 9717-CorrelationClOrdID note in the iLink 2 New Order message specification for further details.

    5979RequestTimeInt(20)
    YInformation carried on a response to convey the time (UTC) when the request was received by the MSGW application. UTC timestamps are sent in number of nanoseconds since UNIX epoch with microsecond precision.
    64SettlDateLocalMktDate
    (8)

    NSpecific date of trade settlement for the Spot leg

    1362

    NoFills

    NumInGroup(1)

    --

    Y

    Specifies the number of fill reasons or allocations included in this Execution Report

    Maximum number of fill reasons is 6

    Note: The number of fill reason is always '1' for spread leg fills

    →1363

    FillExecID

    String(2)

    --

    Y

    Used as an identifier for each fill reason or allocation reported in single Execution Report

    Required if tag 1362-NoFills > 0

    Append tag 17-ExecID with tag 1363-FillExecID to derive the unique identifier for each fill reason

    →1364

    FillPx

    Price(20)

    --

    Y

    Price of this fill reason or allocation

    Required if tag 1362-NoFills > 0

    Same as tag 31-LastPx

    →1365

    FillQty

    Qty(9)

    --

    Y

    Quantity bought/sold for this fill reason or allocation

    Required if tag 1362-NoFills > 0

    →1622

    FillYieldType

    String(2)

    0 – Future Hedge

    1 – Pro Rata

    2 – LMM

    3 – TOP

    4 – FIFO

    5 – Cross BMG

    8 – Covering

    9 – Cross BPM

    10 – Leveling

    11 – Aggressor

    14 – Leg

    16 – Opening

    18 – Implied Opening

    19 – FIFO Percent

    Y

    Fill reason

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Execution Report - Order Creation Cancel or Modify

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - CME Globex to Client System




    35MsgTypeString(2)8=Execution ReportYHeader tag identifying message type.

    1

    Account

    String(12)


    Y*

    Unique account identifier.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex.

    6

    AvgPx

    Price(20)

    0

    Y

    Always '0'.

    11

    ClOrdId

    String(20)


    Y*

    Unique order identifier assigned by client system.

    Client system must maintain uniqueness of this value for the life of the order.

    Refer to iLink - CME Globex Identifiers for more information.

    14

    CumQty

    Int(9)


    Y

    Contains cumulated traded quantity throughout lifespan of an order.

    This value resets to zero if order is cancelled.

    For Execution Report - Modify message sent in response to Order Cancel/Replace Request:

    • Value resets to zero if client system submits cancel/replace with disabled in-flight mitigation (IFM).
    • Value does not reset if client system submits cancel/replace with enabled IFM.

    17

    ExecID

    String(40)


    Y

    CME Globex assigned execution report message identifier; globally unique for each message published.

    20

    ExecTransType

    Char(1)

    0=New

    Y

    Identifies transaction type as 'new' (i.e., new order, order cancel or cancel/replace accepted).

    37

    OrderID

    String(17)


    Y

    CME Globex assigned order identifier; globally unique for each message published.

    38

    OrderQty

    Int(9)


    Y*

    Order quantity submitted by client.
    The format of this field is different from FIX protocol specifications.
    This field must be an integer.

    39

    OrdStatus

    Char(1)

    0=New Order Ack
    4=Cancel Ack
    5=Modify Ack

    Y

    Identifies order status as accepted, cancelled or replaced.

    40

    OrdType

    Char(1)

    1=Market order (with protection)
    2=Limit order
    3=Stop order (with protection)
    4=Stop-Limit order K=Market-Limit order

    Y*

    Order type.

    The state of an order type can change over the life of an order. For example, a submitted stop order (3) can turn into a market order (1) when the stop price level has been crossed.

    Also refer to Order Types for Futures and Options in Electronic Trading Concepts.

    41

    OrigClOrdID

    String(20)


    N

    Last accepted ClOrdID in the order chain. Unvalidated value returned as submitted by client system on Order Cancel Request or Order Cancel-Replace Request message. If a value is include in tag 41-OrigClOrdID, the same value is returned; however, if no value is sent, a value of '0' is returned in  all Execution Report (tag 35-MsgType=8)  messages, except the Execution Report-Order Status Request.

    Refer to iLink - CME Globex Identifiers for more information.

    44

    Price

    Price(20)


    N

    Required for limit or stop-limit orders. Designates the price per single contract unit. The decimal, and if applicable the negative sign of the price are each one character. Client systems should not supply more than 9 characters to the left and 9 characters to the right of the decimal.

    See Fractional Pricing for products that tick fractionally but must be submitted in decimal.

    48

    SecurityID

    Int(12)


    Y*

    Identifier of the instrument defined in tag 107-SecurityDesc.

    54

    Side

    Char(1)

    1=Buy

    2=Sell

    Y

    Side of order.

    55

    Symbol

    String (6)


    Y

    This tag contains the Group Code of the instrument.

    59

    TimeInForce

    Char(1)

    0=Day
    1=Good Till Cancel (GTC)
    3=Fill and Kill
    6=Good Till Date

    N

    Specifies how long the order remains in effect. If not present, DAY order is the default.

    For GTD, ExpireDate is required.
    For FAK, MinQty can also be specified.

    See Order Types for Futures and Options and Order Management  for more information.

    60

    TransactTime

    UTCTimestamp(21)


    Y*

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    78

    NoAllocs

    NumInGroup(1)


    N

    Returned on Execution Report if sent on inbound message.

    79

    AllocAccount

    String(11)


    N

    Returned on Execution Report if sent on inbound message.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex.

    107

    SecurityDesc

    String(20)


    Y*

    Instrument identifier.
    Future Example:  GEZ8
    Option Example:  GEZ9 C9375

    99

    StopPx

    Price(20)


    N

    Designates stop trigger price specified by the individual entering the order or cancel/replace.

    110

    MinQty

    Int(9)


    N

    Minimum quantity of an order to be executed.

    The value of MinQty must be between 1 and the value in tag 38-OrderQty.

    The format of this tag is different from FIX protocol specifications.

    This tag must be an integer.

    150

    ExecType

    Char(1)

    0=New Order Ack
    4=Cancel Ack
    5=Modify Ack

    Y

    Indicates type of execution report.

    151

    LeavesQty

    int(9)


    Y

    Amount of contract units open for further execution.

    The format of this tag is different from FIX protocol specifications.
    This tag must be an integer.

    167

    SecurityType

    String(6)

    FUT=Future

    OPT=Option

    IRS=Interest Rate Swap

    FXSPOT=FX Spot

    N

    Indicates instrument is future or option.

    Note: For options strategy including UDS COMBO or COVERED, send OPT. For UDS Futures, send FUT.

    378

    ExecRestatementReason

    Int(3)

    8=Exchange (GCC)
    100=Cancel on Disconnect
    103=Cancel Oldest (Resting) due to Self Match Prevention
    104=Cancel from CME Globex Credit Controls (GC2) violation
    105=Cancel from FirmSoft
    106=Cancel from Risk Management API (RMI)
    107=Cancel Newest (Aggressing) due to Self Match Prevention

    108=Cancel due to resting order quantity less than minimum lot size

    N

    Identifies origin of the order elimination.

    This tag will not be sent on cancellations triggered by an iLink iLink 2 Order Cancel Request.

    210

    MaxShow

    Int(9)


    N

    See Order Display Quantity in Electronic Trading Concepts.

    Maximum quantity of an order to be shown in the order book at any given time.

    • The value of MaxShow must be a fixed number N between 1 and value in tag 38-OrderQty.
    • If MaxShow is reduced (due to matches) to 0, then MaxShow is reset to the lesser of N or the number in tag 38-OrderQty remaining.

    432

    ExpireDate

    LocalMktDate(8)


    Y

    Populated as follows according to the Order Qualifier value set in tag 59-TimeInForce:

    • For GTD contains expiration date
    • For GTC contains all zeros
    • For Day contains date of current session
    • For FAK contains date of current session

    CME Globex does not support tag 126-ExpireTime. Only the expiration date can be set.Orders expire at the end of the trading session for the specified date.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    Value sent on inbound message from client system indicating the order as sent manually or generated by automated trading logic.
    For an Order Cancel - Execution Report, this tag will contain the resting value attached with the order regardless of how the cancel itself was submitted.

    1031

    CustOrderHandlingInst

    String(1)

    W - Desk

    Y - Electronic (Default)

    C - Vendor-provided Platform billed by Executing Broker

    G - Sponsored Access via Exchange API or FIX provided by Executing Broker

    H - Premium Algorithmic Trading Provider billed by Executing Broker

    D - Other, including Other-provided Screen

    Y

    Defines source of original order.

    1731AvgPxGroupIDString(20)
    N

    Used to identify account numbers or orders for grouping trades together for average price calculations.

    If incoming value is greater than max length, iLink will return the right-most twenty bytes.
    1598ClearingTradePriceTypeString(1)0 – Trade Clearing at Execution Price
    1 – Trade Clearing at Alternate Clearing Price
    NIndicates whether spread differential trade is clearing at execution price (tag 31-LastPx) or alternate clearing price (i.e. previous day’s settlement price).
    819AvgPXIndicatorInt(3)0 – No Average Pricing (Default)
    1 – Trade is part of an Average Price Group Identified by the AvgPxGroupID
    3 - Notional Value Average Pricing with Average Price Group Identified by the AvgPxGroupID
    N

    Indicates if the resulting trade is to be average priced.

    This tag is also used to indicate type of average price grouping.

    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    7928SelfMatchPreventionIDString(12)
    N

    Use of this tag indicates client does not wish to trade against itself on CME Globex.

    Non-implied orders with the same Self-Match Prevention identifier submitted with the same Executing Firm Identifier (sub-component of tag 49-SenderCompID) will not match on CME Globex.

    8000

    SelfMatchPreventionInstruction

    Char(1)

    O=Cancel Resting
    N=Cancel Aggressing

    N

    Indicates a cancel instruction when Self Match Prevention is triggered.

    Note:

    • To use tag 8000-SelfMatchPreventionInstruction, client systems must include tag 7928-SelfMatchPreventionID on the originating message
    • If tag 8000-SelfMatchPreventionInstruction is not sent, the resting order will be cancelled.
    • Tag 8000-SelfMatchPreventionInstruction is NOT sent in the Execution Report response to a New Order Cross (tag 35-MsgType=s) message.

    9717

    CorrelationClOrdID

    String(20)


    N

    Unvalidated value returned as submitted if sent by client system on inbound message. See tag 9717-CorrelationClOrdID note in the iLink 2 New Order message specification for further details.

    Note: for solicited order cancellation by client system, CME Globex returns the value of tag 9717-CorrelationClOrdID on the Order Cancel Execution Report  as submitted on the Order Cancel Request.

    Note: for order cancellation by FirmSoft, CME Globex always returns the values of tag 9717-CorrelationClOrdID on the Order Cancel Execution Report  from the value of tag 11-ClOrdID on the original Execution Report (tag35-msgType=8, tag 39-OrdStatus=0) New Order Acknowledgment message.

    548

    CrossID

    String(32)


    N

    Sent on Execution Report to allow correlation of execution responses to the New Order Cross.

    549

    CrossType

    Int(1)

    3=RFC order

    N

    The CME Globex platform uses this tag to validate instrument eligibility.
    This value is also returned on the Execution Report for New Cross Orders only.

    961

    HostCrossID

    String(32)


    N

    Unique ID generated at the Cross level.
    Returned on the Execution Report for New Cross Orders only.

    5979RequestTimeInt(20)
    YInformation carried on a response to convey the time (UTC) when the request was received by the MSGW application. UTC timestamps are sent in number of nanoseconds since UNIX epoch with microsecond precision.
    5904DelayDurationInt
    N

    Indicates the amount of time in nanoseconds that a message was subject to additional processing as a result of being:

    • split among multiple packets (tag 9553=0)
    • out-of-order (tag 9553=1)
    • a previously submitted split message (tag 9553=2)

    Subtracting this number from tag 5979-RequestTime will represent original received time of in-flight message

    9553SplitMsgInt(1)

    0 – Split message 

    1 – Out-of-order message 

    2 – Complete message 

    N

    Indicates whether a message was subject to additional processing as a result of being:

    • split among multiple packets (0)
    • out-of-order (1)
    • a previously submitted split message (2)

    If absent, then the message was not subject to additional processing.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Execution Report - Order Elimination

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - CME Globex to Client System




    35MsgTypeString(2)8=Execution ReportYHeader tag identifying message type.

    1

    Account

    String(12)


    Y*

    Unique account identifier.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex.

    6

    AvgPx

    Price(20)


    Y

    Always '0'.

    11

    ClOrdID

    String(20)


    Y*

    Unique order identifier assigned by client system. Client system must maintain uniqueness of this value.

    Refer to iLink - CME Globex Identifiers for more information.

    14

    CumQty

    Int(9)


    Y

    Contains cumulated traded quantity throughout lifespan of an order.
    This value resets to zero if order is cancelled.

    17

    ExecID

    String(40)


    Y

    CME Globex assigned execution report message identifier; globally unique for each message published.

    20

    ExecTransType

    Char(1)

    0=New

    Y

    Identifies transaction type as 'new' (i.e., new order, order cancel or cancel/replace accepted).

    37

    OrderID

    String(17)


    Y

    CME Globex assigned order identifier; globally unique for each message published.

    38

    OrderQty

    Int(9)


    Y*

    Order quantity submitted by client.
    The format of this field is different from FIX protocol specifications.
    This field must be an integer. 

    39

    OrdStatus

    Char(1)

    C=Expired

    Y

    Identifies type of order elimination.

    40

    OrdType

    Char(1)

    1=Market order (with protection)
    2=Limit order
    3=Stop order (with protection)
    4=Stop-Limit order
    K=Market-Limit order

    Y*

    Order type. See Order Management for additional information.

    41

    OrigClOrdID

    String(20)


    N

    The last accepted ClOrdID in an order chain.
    If a value is included in tag 41-OrigClOrdID, the same value is return; however,
    if no value is sent, a value of '0' is returned in the Order Elimination message.

    Refer to iLink - CME Globex Identifiers for more information.

    44

    Price

    Price(20)


    N

    Price per single contract unit.

    48

    SecurityID

    Int(12)


    Y*

    Identifier of the instrument define in tag 107-SecurityDesc.

    54

    Side

    Char(1)

    1=Buy
    2=Sell

    Y

    Side of order.

    55

    Symbol

    String(6)


    Y

    This tag contains the Group Code for the instrument.

    59

    TimeInForce

    Char(1)

    0=Day
    1=Good Till Cancel (GTC)
    3=Fill and Kill (Immediate or Cancel)
    6=Good till Date (GTD)

    N

    Specifies how long the order remains in effect.

    If not present, DAY order is the default.  

    For GTD, ExpireDate is required.

    For FAK, MinQty can also be specified.

    See Order Types for Futures and Options or Order Management for more information.

    60

    TransactTime

    UTCTimestamp(21)


    Y*

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    78

    NoAlloc

    Char(1)

    1

    N

    Returned on Execution Report if sent on inbound message.

    79

    AllocAccount

    String(11)


    N

    Returned on Execution Report if sent on inbound message.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex.

    107

    SecurityDesc

    String(20)


    Y*

    Instrument identifier.
    Future Example: GEZ8

    110MinQtyInt(9)
    C

    Minimum quantity of an order to be executed.

    The value of MinQty must be between 1 and the value in tag 38-OrderQty.

    The format of this tag is different from FIX protocol specifications.

    This tag must be an integer.

    150

    ExecType

    Char(1)

    C=Elimination Ack

    Y

    Indicates type of execution report.

    151

    LeavesQty

    Int(9)

    0

    Y

    Quantity available for further execution.
    Always '0' for order elimination.

    167

    SecurityType

    String(6)

    FUT=Future

    OPT=Option

    IRS=Interest Rate Swap

    FXSPOT=FX Spot

    N

    Indicates type of security as future or option.

    Note: for options strategy including UDS COMBO or COVERED, send OPT.

    For UDS Futures, send FUT. 

    432

    ExpireDate

    LocalMktDate(8)


    N

    Required only if tag 59-TimeInForce=Good Till Date (GTD).
    CME iLink 2 does not support tag 126-ExpireTime.
    Only expiration date can be set.
    Orders expire at the end of the trading session.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    Value sent on inbound message from client system indicating the order as sent manually or generated by automated trading logic.

    1031

    CustOrderHandlingInst

    String(1)

    W - Desk

    Y - Electronic (Default)

    C - Vendor-provided Platform billed by Executing Broker

    G - Sponsored Access via Exchange API or FIX provided by Executing Broker

    H - Premium Algorithmic Trading Provider billed by Executing Broker

    D - Other, including Other-provided Screen

    Y

    Defines source of original order.

    1731AvgPxGroupIDString(20)
    N

    Used to identify account numbers or orders for grouping trades together for average price calculations.

    If incoming value is greater than max length, iLink will return the right-most twenty bytes.
    1598ClearingTradePriceTypeString(1)0 – Trade Clearing at Execution Price
    1 – Trade Clearing at Alternate Clearing Price
    NIndicates whether spread differential trade is clearing at execution price (tag 31-LastPx) or alternate clearing price (i.e. previous day’s settlement price).
    819AvgPXIndicatorInt(3)0 – No Average Pricing (Default)
    1 – Trade is part of an Average Price Group Identified by the AvgPxGroupID
    3 - Notional Value Average Pricing with Average Price Group Identified by the AvgPxGroupID
    N

    Indicates if the resulting trade is to be average priced.

    This tag is also used to indicate type of average price grouping.
    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    7928SelfMatchPreventionIDString(12)
    N

    This tag is required when market participants elect to use the optional Self Match Prevention functionality.

    Non-implied orders with the same Self-Match Prevention identifier submitted with the same Executing Firm Identifier (subcomponent of tag 49-SenderCompID) will not match on CME Globex.

    8000

    SelfMatchPreventionInstruction

    Char(1)

    O=Cancel Resting
    N=Cancel Aggressing

    N

    Indicates a cancel instruction when Self Match Prevention is triggered.

    Note:

    • To use tag 8000-SelfMatchPreventionInstruction, client systems must include tag 7928-SelfMatchPreventionID on the originating message
    • If tag 8000-SelfMatchPreventionInstruction is not sent, the resting order will be cancelled.

    9717

    CorrelationClOrdID

    String(20)


    N

    Unvalidated value returned as submitted if sent by client system on inbound message. See tag 9717-CorrelationClOrdID note in the iLink 2 New Order message specification for further details.

    5979RequestTimeInt(20)
    YInformation carried on a response to convey the time (UTC) when the request was received by the MSGW application. UTC timestamps are sent in number of nanoseconds since the UNIX epoch with microsecond precision.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Execution Report - Order Status Request Acknowledgment

    Tag

    Name

    FIX Type

    EnumerationReq

    Description

    iLink 2 Standard Header - CME Globex to Client System




    35MsgTypeString(2)8=Execution ReportYHeader tag identifying message type.

    584

    MassStatusReqID

    String(20)


    N

    Unique ID of Order Mass Status Request as assigned by the client system.

    37

    OrderID

    Int(17)


    Y

    CME Globex assigned order identifier; globally unique for each message published.

    1

    Account

    String(12)


    N

    Unique account identifier.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex.

    11

    ClOrdID

    String(32)


    N

    CME Globex returns this value from the original New Order message up to 32 bytes (this tag is only 32 bytes for order status ack).

    41

    OrigClOrdID

    String(20)


    N

    Last accepted ClOrdID in the order chain.

    6

    AvgPrice

    Price(1)

    0 (zero).Y

    Always '0'.

    1028

    ManualOrderIndicator

    Boolean(1)


    N

    Value sent on inbound message from client system indicating the order as sent manually or generated by automated trading logic.

    CME Globex returns the Manual Order Indicator value from tag 1028 submitted by the client system in the corresponding order message.

    9717

    CorrelationClOrdID

    String(32)


    Y

    CME Globex returns the value of tag 11-ClOrdID from the original Execution Report (tag 35-MsgType=8, tag 39-OrdStatus=0) New Order Acknowledgement message.

    Note: This tag is returned 'NA' when the Order Mass Status is not found.

    548

    CrossID

    String(32)


    N

    Identifier for a Cross order.

    17

    ExecID

    String(1)

    0Y

    CME Globex assigned execution report message identifier; globally unique for each message published.

    Always '0'.

    150

    ExecType

    Char(1)

    I=Order StatusY

    Indicates type of execution report.

    Always 'I'.

    39

    OrdStatus

    Char(1)

    0=New

    1=Partially Filled

    2=Filled

    4=Cancelled

    5=Replaced

    C=Eliminated

    8=Rejected

    U=Undefined

    6=Pending Cancel

    E=Pending Replace

    Y

    Indicates order status.

    New: outstanding order with no executions and remaining quantity. (also applicable to orders that have been modified)

    Partially Filled: outstanding order with executions and remaining quantity.

    14

    CumQty

    Int(9)


    Y

    Contains cumulated traded quantity throughout the lifespan of an order.
    This value resets to zero if order is cancel/replaced.

    549

    CrossType

    Int(2)

    3=Cross One SideN

    Identified transaction type if other than standard order execution.

    20

    ExecTransType

    Char(1)

    3=StatusY

    Identifies transaction type.

    ‘3’ indicates this execution report is in response to an order status request message/order mass status request message.

    107

    SecurityDesc

    String(20)


    Y

    Instrument identifier. e.g. "ESM0'

    961

    HostCrossID

    String(32)


    N

    Unique ID generated at the Cross level.
    Returned on the Execution Report for New Cross Orders only.

    55

    Symbol

    String(6)


    Y

    This tag contains the Group Code of the instrument.

    48

    SecurityID

    Int(12)


    YIdentifier of the instrument defined in tag 107-SecurityDesc.

    372

    RefMsgType

    String(2)

    AF=Order Mass Status Request

    N

    Tag 35-MsgType of the message being rejected.

    Note: This tag is returned only when the Order Mass Status is not found.

    380

    BusinessRejectReason

    Int(2)

    0=Other

    Y

    Code identifying reject

    Note: This tag is returned only when the Order Mass Status is not found.

    167

    SecurityType

    String(6)

    FUT=Future

    OPT=Option

    IRS=Interest Rate Swap

    FXSPOT=FX Spot

    Y

    Indicates whether the instrument is a future or an option.

    Note: for options strategy including UDS COMBO or COVERED, send OPT.

    For UDS Futures, send FUT.

    54

    Side

    Char(1)

    1=Buy

    2=Sell

    Y

    Side of order.

    38

    OrderQty

    Int(9)


    Y

    Order quantity submitted by client.

    The format of this tag is different from FIX protocol specifications.
    This tag must be an integer.

    40

    OrdType

    Char(1)

    1=Market order (with Protection)

    2=Limit order

    4=Stop Limit order

    K=Market-Limit order

    N

    Order type.

    The state of an order type can change over the life of an order. For example, a submitted stop order (3) can turn into a market order (1) when the stop price level has been crossed.

    Also refer to Order Types for Futures and Options in Electronic Trading Concepts.

    44

    Price

    Price(20)


    N

    Required for limit or stop-limit orders. Designates the price per single contract unit. The decimal, and if applicable the negative sign of the price are each one character. Client systems should not supply more than 9 characters to the left and 9 characters to the right of the decimal.

    See Fractional Pricing for products that tick fractionally but must be submitted in decimal.

    99

    StopPx

    Price(20)


    N

    Designates stop trigger price specified by the individual entering the order or cancel/replace.

    59

    TimeInForce

    Char(1)

    0=Day

    1=Good Till

    Cancel (GTC)

    3=Fill and Kill

    6=Good Till Date (GTD)

    N

    Specifies how long the order remains in effect. If not present, DAY order is the default.

    For GTD, ExpireDate is required.
    For FAK, MinQty can also be specified.

    See Order Types for Futures and Options and Order Management  for more information.

    432

    ExpireDate

    LocalMktDate(8)


    N

    Required only if tag 59-TimeInForce=Good Till Date (GTD).

    CME Globex does not support tag 126-ExpireTime.
    Only the expiration date can be set.

    Orders expire at the end of the trading session fo the specified date.

    151

    LeavesQty

    Int(9)


    Y

    Amount of contract units open for further execution.

    The format of this tag is different from FIX protocol specifications.
    This tag must be an integer.

    75

    TradeDate

    LocalMktDate(8)


    N

    Indicates date of trade referenced in this message in YYYYMMDD format. This will be the trade date for the last partial fill.
    If this tag is not present, the order has not been filled.

    60

    TransactTime

    UTCTimestamp(21)


    N

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    110

    MinQty

    Int(9)


    N

    Minimum quantity of an order to be executed.

    The value of MinQty must be between 1 and the value in tag 38-OrderQty.

    The format of this tag is different from FIX protocol specifications.

    This tag must be an integer.

    210

    MaxShow

    Int(9)


    N

    See Order Display Quantity in Electronic Trading Concepts.

    Maximum quantity of an order to be shown in the order book at any given time.

    • The value of MaxShow must be a fixed number N between 1 and the value in tag 38-OrderQty.
    • If MaxShow is reduced (due to matches) to 0, then MaxShow is reset to the lesser of N or the number in tag 38-OrderQty remaining.

    912

    LastRptRequested

    Boolean(1)

    N=Not Last Message

    Y=Last Message

    N

    Indicates whether this message is the last report message in response to an Order Mass Status Request.

    58

    Text

    String(200)


    YFree-form text.
    5979RequestTimeInt(20)
    YInformation carried on a response to convey the time (UTC) when the request was received by the MSGW application. UTC timestamps are sent in number of nanoseconds since UNIX epoch with microsecond precision.
    iLink 2 Standard Message Trailer



    End of message.
  • Page:
    iLink 2 Execution Report - Reject

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - CME Globex to Client System




    35MsgTypeString(2)8=Execution ReportYHeader tag identifying message type.

    1

    Account

    String(12)


    Y*

    Unique account identifier.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex.

    6

    AvgPx

    Price(20)

    0

    Y

    Always '0'.

    11

    ClOrdID

    String(20)


    Y*

    Unique order identifier assigned by client system. Client system must maintain uniqueness of this value for the life of the order.

    Refer to iLink - CME Globex Identifiers for more information.

    14

    CumQty

    Int(9)


    Y

    Contains cumulated traded quantity throughout lifespace of an order.
    This value does not reset if order is cancel/replaced.

    17

    ExecID

    String(40)


    Y

    CME Globex assigned execution report message identifier; globally unique for each message published.

    20

    ExecTransType

    Char(1)

    0=New

    Y

    Identifies transaction type as 'new' (i.e. new order, order cancel or cancel replace accepted).

    37

    OrderID

    String(17)


    Y

    CME Globex assigned order identifier; globally unique for each message published.

    38

    OrderQty

    Int(9)


    Y*

    Order quantity submitted by client.
    The format of this field is different from FIX protocol specifications.
    This field must be an integer.

    39

    OrdStatus

    Char(1)

    8=Rejected

    Y

    Order status.

    40

    OrdType

    Char(1)

    1=Market order (with protection)
    2=Limit order
    3=Stop order (with protection)
    4=Stop-Limit order
    K=Market-Limit order

    Y*

    Order type. See additional information in  Order Management.

    The state of an order typee can change over the life of the order. For example, a submitted stop order (3) can turn into a market order (1) when the stop price level has been crossed.

    See Order Types for Futures and Options for more information.

    41

    OrigClOrdID

    String(20)


    N

    Original Client Order ID. Refer to iLink - CME Globex Identifiers for more information.

    44

    Price

    Price(20)


    N

    Price per unit of quantity.

    48

    SecurityID

    Int(12)


    Y*

    Security ID.

    54

    Side

    Char(1)

    1=Buy
    2=Sell

    Y

    Side of order.

    55

    Symbol

    String(6)


    Y

    This tag contains the instrument Group Code.

    58

    Text

    String(200)


    N

    Free format text string.

    See Futures and Options Reject Codes for more information.

    59

    TimeInForce

    Char(1)

    0=Day
    1=Good Till Cancel (GTC)
    3=Fill and Kill
    6=GoodTill Date (GTD)

    Y*

    Specifies how long the order remains in effect. If not present, DAY order is the default.

    For GTD, ExpireDate is required.

    For FAK, MinQty can also be specified.

    See Order Types for Futures and Options and Order Management for more information.

    60

    TransactTime

    UTCTimestamp(21)


    N

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    78

    NoAllocs

    Char(1)

    1

    N

    Returned on Execution Report if sent on inbound message.

    79

    AllocAccount

    String(11)


    N

    Returned on Execution Report if sent on inbound message.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex.

    99

    StopPx

    Price(20)


    N

    Designates stop trigger price specified by the individual entering the order or cancel/replace.

    103

    OrdRejReason

    Int(6)


    N

    Designates the order reject reason.

    107

    Securitydesc

    String(20)


    Y*

    Instrument identifier.
    Future Example: GEZ8
    Option Example: GEZ9 C9375

    150

    ExecType

    Char(1)

    8=Reject Ack

    Y

    Indicates type of execution report.

    151

    LeavesQty

    Int(9)

    0

    Y

    Amount of contract units open for further execution. Always = 0 for the reject.

    167

    SecurityType

    String(6)

    FUT=Future

    OPT=Option

    IRS=Interest Rate Swap

    FXSPOT=FX Spot

    N

    Indicates instrument is future or option.

    Note: for options strategy including UDS COMBO or COVERED, send OPT.

    For UDS Futures, send FUT.

    432

    ExpireDate

    LocalMktDate(8)


    C

    Required only if tag 59-TimeInForce=Good Till Date (GTD).
    CME Globex does not support tag 126-ExpireTime.
    Only the expiration date can be set.
    Orders expire at the end of the trading session of the specified date.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    Value sent on inbound message from client system indicating the order as sent manually or generated by automated trading logic.

    1031

    CustOrderHandlingInst

    String(1)

    W - Desk

    Y - Electronic (Default)

    C - Vendor-provided Platform billed by Executing Broker

    G - Sponsored Access via Exchange API or FIX provided by Executing Broker

    H - Premium Algorithmic Trading Provider billed by Executing Broker

    D - Other, including Other-provided Screen

    Y

    Defines source of original order.

    1731AvgPxGroupIDString(20)
    N

    Used to identify account numbers or orders for grouping trades together for average price calculations.

    If incoming value is greater than max length, iLink will return the right-most twenty bytes.
    1598ClearingTradePriceTypeString(1)0 – Trade Clearing at Execution Price
    1 – Trade Clearing at Alternate Clearing Price
    NIndicates whether spread differential trade is clearing at execution price (tag 31-LastPx) or alternate clearing price (i.e. previous day’s settlement price).
    819AvgPXIndicatorInt(3)0 – No Average Pricing (Default)
    1 – Trade is part of an Average Price Group Identified by the AvgPxGroupID
    3 - Notional Value Average Pricing with Average Price Group Identified by the AvgPxGroupID
    N

    Indicates if the resulting trade is to be average priced.

    This tag is also used to indicate type of average price grouping.
    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    5904DelayDurationInt
    N

    Indicates the amount of time in nanoseconds that a message was subject to additional processing as a result of being:

    • split among multiple packets (tag 9553=0)
    • out-of-order (tag 9553=1)
    • a previously submitted split message (tag 9553=2)

    Subtracting this number from tag 5979-RequestTime will represent original received time of in-flight message

    9553SplitMsgInt(1)

    0 – Split message 

    1 – Out-of-order message 

    2 – Complete message 

    N

    Indicates whether a message was subject to additional processing as a result of being:

    • split among multiple packets (0)
    • out-of-order (1)
    • a previously submitted split message (2)

    If absent, then the message was not subject to additional processing.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Execution Report - Trade Cancel

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    Standard Header - CME Globex to Client System




    35MsgTypeString(2)8=Execution ReportYHeader tag identifying message type.

    1

    Account

    String(12)


    Y*

    Unique account identifier.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex.

    6

    AvgPx

    Price(20)

    0

    Y

    Always '0'.

    11

    ClOrdID

    String(20)


    Y*

    Unique order identifier assigned by client system. Client system must maintain uniqueness of this value for the life of the order.

    Not returned for Trade Cancels originating from a Mass Quote.

    For Mass Quotes the value references 299-QuoteEntryID.

    Refer to iLink - CME Globex Identifiers for more information.

    14

    CumQty

    Int(9)


    Y

    Contains cumulated traded quantity throughout lifespan of an order. This value does not reset if order is cancel/replaced.

    37711MDTradeEntryIDInt(10)
    YCommon identifier that associates CME STP cleared trades with order execution and market data messaging. Will continue to refer back to the original value as assigned to the trade being busted or adjusted. Unique across all iLink sessions and market segments per trading week.

    17

    ExecID

    String(40)


    Y*

    CME Globex assigned execution report message identifier; globally unique for each message published.

    19

    ExecRefID

    String(9)


    Y*

    Contains unique ID for the trade being cancelled.
    These are the last 9 characters of tag 17-ExecID.

    20

    ExecTransType

    Char(1)

    1=Cancel

    Y

    Identifies transaction type.

    31

    LastPx

    Price(20)


    Y*

    Price of the canceled trade.

    32

    LastQty

    Int(9)


    Y*

    Quantity of canceled trade.

    37

    OrderID

    String(17)


    Y

    CME Globex assigned order identifier; globally unique for each message published.

    39

    OrdStatus

    Char(1)

    H=Trade Cancelled

    Y

    Identifies trade status as canceled.

    41

    OrigClOrdID

    String(20)


    N

    The last accepted ClOrdID in an order chain.
    If the value is included in tag41-OrigClOrdID, the same value is returned; however, if no value is sent, a value of '0' is returned in the Execution Report (tag 35-MsgType=8) Cancellation message, else tag 41-OrigClOrdID is not sent.

    Refer to iLink - CME Globex Identifiers for more information.

    48

    SecurityID

    Int(12)


    Y*

    Identifier of the instrument defined in tag 107.

    54

    Side

    Char(1)

    1=Buy
    2=Sell

    Y

    Side of order.

    55

    Symbol

    String(6)


    Y

    This tag contains the Group Code.

    60

    TransactTime

    UTCTimestamp(21)


    Y*

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    75

    TradeDate

    LocalMktDate(8)


    Y*

    Indicates date of trade referenced in this message in
    YYYYMMDD format. Absence of this field indicates
    current day (expressed in local time at place of trade).

    78

    NoAllocs

    Char(1)

    1

    N

    Returned on Execution Report if sent on inbound message.

    79

    AllocAccount

    String(11)


    N

    Returned on Execution Report if sent on inbound message.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex.

    107

    SecurityDesc

    String(20)


    Y*

    Instrument identifier used on iLink to uniquely identify an instrument.
    Future Example: GEZ8
    Option Example: GEZ9 C9375

    150

    ExecType

    Char(1)

    H=Trade
    Cancel Ack

    Y

    Indicates type of Execution Report.

    167

    SecurityType

    String(6)

    FUT=Future

    OPT=Option

    IRS=Interest Rate Swap

    FXSPOT=FX Spot

    N

    Indicates instrument type.

    Note: for options strategy including UDS COMBO or COVERED, send OPT.

    For UDS Futures, send FUT.

    393

    TotalNumSecurities

    Int(3)


    N

    Number of leg trade elimination messages for a given counterparty. The value will be '0' (zero) for outrights.

    442

    MultiLegReportingType

    Int(1)

    1=Outright
    2=Leg of spread
    3=Spread

    N

    Indicates if acknowledgment message is sent for an outright, leg of spread, or spread.

    527

    SecondaryExecID

    String(40)


    Y

    Unique identifier that allows linking of spread summary fill notice with leg fill notice and trade cancel messages.

    810

    UnderlyingPx

    Price(20)


    C

    Reserved for future use.

    811

    OptionDelta

    Float(6.2)


    C

    Reserved for future use.

    1188

    Volatility

    String(20)


    C

    Reserved for future use.

    1189

    ExpirationTimeValue

    Float


    C

    Reserved for future use.

    1190

    RiskFreeRate

    Price(20)


    C

    Reserved for future use.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    Value sent on inbound message from client system indicating the order as sent manually or generated by automated trading logic.

    1731AvgPxGroupIDString(20)
    N

    Used to identify account numbers or orders for grouping trades together for average price calculations.

    If incoming value is greater than max length, iLink will return the right-most twenty bytes.
    1598ClearingTradePriceTypeString(1)0 – Trade Clearing at Execution Price
    1 – Trade Clearing at Alternate Clearing Price
    NIndicates whether spread differential trade is clearing at execution price (tag 31-LastPx) or alternate clearing price (i.e. previous day’s settlement price).
    819AvgPXIndicatorInt(3)0 – No Average Pricing (Default)
    1 – Trade is part of an Average Price Group Identified by the AvgPxGroupID
    3 - Notional Value Average Pricing with Average Price Group Identified by the AvgPxGroupID
    N

    Indicates if the resulting trade is to be average priced.

    This tag is also used to indicate type of average price grouping.
    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    5979RequestTimeInt(20)
    YInformation carried on a response to convey the time (UTC) when the request was received by the MSGW application. UTC timestamps are sent in number of nanoseconds since UNIX epoch with microsecond precision.
    64SettlDateLocalMktDate
    (8)

    NSpecific date of trade settlement for the Spot leg

    1362

    NoFills

    NumInGroup(1)

    --

    Y

    Specifies the number of fill reasons or allocations included in this Execution Report

    Maximum number of fill reasons is 6

    Note: The number of fill reason is always '1' for spread leg fills

    →1363

    FillExecID

    String(2)

    --

    Y

    Used as an identifier for each fill reason or allocation reported in single Execution Report

    Required if tag 1362-NoFills > 0

    Append tag 17-ExecID with tag 1363-FillExecID to derive the unique identifier for each fill reason

    →1364

    FillPx

    Price(20)

    --

    Y

    Price of this fill reason or allocation

    Required if tag 1362-NoFills > 0

    Same as tag 31-LastPx

    →1365

    FillQty

    Qty(9)

    --

    Y

    Quantity bought/sold for this fill reason or allocation

    Required if tag 1362-NoFills > 0

    →1622

    FillYieldType

    String(2)

    0 – Future Hedge

    1 – Pro Rata

    2 – LMM

    3 – TOP

    4 – FIFO

    5 – Cross BMG

    8 – Covering

    9 – Cross BPM

    10 – Leveling

    11 – Aggressor

    14 – Leg

    16 – Opening

    18 – Implied Opening

    19 – FIFO Percent

    Y

    Fill reason

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Execution Report - Trade Correction
    TagNameFIX TypeEnumerationReqDescription
    Standard Header - Client to CME Globex




    35MsgTypeString(2)8=Execution ReportYHeader tag identifying message type.
    1AccountString(12)
    Y*

    Unique account identifier.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex.

    6AvgPxPrice(20)
    YAlways '0'.
    11ClOrdIdString(20)
    Y

    Unique order identifier assigned by client system.

    Client system must maintain uniqueness of this value for the life of the order.

    Refer to iLink - CME Globex Identifiers for more information.

    14

    CumQty

    Qty(9)
    YThis value will reset to zero. Leaves quantity will not be returned in correction execution message.
    17ExecIDString(40)
    Y*

    CME Globex assigned execution report message identifier; globally unique for each message published.

    For Trade Correction, will contain a new value.

    19

    ExecRefID

    String(9)
    Y*Contains unique ID for the trade being cancelled. 
    These are the 9 right-most characters of tag 17-ExecID.
    20ExecTransTypeChar(1)

    2=Correction

    YIdentifies transaction type.

    31

    LastPx

    Price(20)


    Y*

    New fill price.

    32

    LastQty

    Qty(9)


    Y*

    Original quantity filled.
    37OrderIDString(17)
    Y

    CME Globex assigned order identifier; globally unique for each message published.

    39OrdStatusChar(1)

    G=Trade Correct

    YOrder status.
    41OrigClOrdIDString(20)
    N

    Last accepted ClOrdID in the order chain. If a value is included in tag 41 on order entry, the same value is returned. If not, the tag will contain '0'. See iLink - CME Globex Identifiers for more information.

    48SecurityIDInt(12)
    Y*Identifier of the instrument defined in tag 107-SecurityDesc.
    54SideChar(1)
    YSide of order.
    55SymbolString(6)
    YThis tag contains the Group Code of the instrument.
    60TransactTimeUTCTimeStamp(21)
    Y*UTC format YYYYMMDD-HH:MM:SS.sss 
    e.g. 20091216-19:21:41.109
    75TradeDateLocalMktDate(8)
    Y*Indicates date of trade reference in this message in YYYYMMDD format.
    107SecurityDescString(20)
    Y*Instrument identifier. 
    Future Example:  SR1U3
    Option Example:  SR1U3 C9575
    150ExecTypeChar(1)

    G=Trade Correct

    Y

    Describes the action that triggered this specific Execution Report – see the OrdStatus (39) tag for the current order status (e.g., Partially Filled).

    393TotalNumSecuritiesInt(3)
    NNumber of leg trade elimination messages for a given counterparty. The value will be '0' (zero) for outrights.
    442MultiLegReportingTypeInt(1)1=Outright 
    2=Leg of spread 
    3=Spread
    NIndicates if acknowledgment message is sent for an outright, leg of spread, or spread.
    527 SecondaryExecIDString(40)
    Y

    Unique identifier that allows linking of spread summary fill notice with leg fill notice and trade correction messages.

    The value in this tag will increment from its original value only in trade correction for:

    1. Spread and all legs
    2. Spread and some legs
    1028ManualOrderIndicatorBoolean(1)
    NIndicates if order was sent manually or generated by automated trading logic.
    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    5979RequestTimeInt(20)
    YInformation carried on a response to convey the time (UTC) when the request was received by the MSGW application. UTC timestamps are sent in number of nanoseconds since UNIX epoch with microsecond precision.
    37711MDTradeEntryID Int(10)
    Y

    Common identifier that associates CME STP cleared trades with order execution and market data messaging. Will continue to refer back to the original value as assigned to the trade being cancelled or or corrected. Unique across all iLink sessions and market segments per trading week.

    9703

    OriginalSecondaryExecID

    String(40)
    YContains the value from tag 527-SecondaryExecID. Trade correction execution reports will refer back to that of the latest fill being corrected for outrights, spreads and legs.
    7928SelfMatchPreventionIDString(12)
    N

    This tag is required when market participants elect to use the optional Self Match Prevention functionality.

    Non-implied orders with the same Self-Match Prevention identifier submitted with the same Executing Firm Identifier (subcomponent of tag 49-SenderCompID) will not match on CME Globex.

    8000SelfMatchPreventionInstructionChar(1)O=Cancel Resting
    N=Cancel Aggressing
    N

    Indicates a cancel instruction when Self Match Prevention is triggered.

    Note:

    • To use tag 8000-SelfMatchPreventionInstruction, client systems must include tag 7928-SelfMatchPreventionID on the originating message
    • If tag 8000-SelfMatchPreventionInstruction is not sent, the resting order will be cancelled.
    • Tag 8000-SelfMatchPreventionInstruction is NOT sent in the Execution Report response to a New Order Cross (tag 35-MsgType=s) message.
    9717CorrelationClOrdIDString(20)
    NUnvalidated value returned as submitted if sent by client system on inbound message. For further details, see tag 9717-CorrelationClOrdID note in the New Order message specification.
    64SettlDateLocalMktDate
    (8)

    NSpecific date of trade settlement for the Spot leg.

    1362

    NoFills

    NumInGroup(1)

    Specifies the number of fill reasons or allocations included in this Execution Report

    Maximum number of fill reasons is 6

    Note: The number of fill reason is always '1' for spread leg fills

    Y

    Specifies the number of fill reasons or allocations included in this Execution Report

    Maximum number of fill reasons is 6

    Note: The number of fill reason is always '1' for spread leg fills

    →1363

    FillExecID

    String(2)

    Used as an identifier for each fill reason or allocation reported in single Execution Report

    Required if tag 1362-NoFills > 0

    Append tag 17-ExecID with tag 1363-FillExecID to derive the unique identifier for each fill reason

    Y

    Used as an identifier for each fill reason or allocation reported in single Execution Report

    Required if tag 1362-NoFills > 0

    Append tag 17-ExecID with tag 1363-FillExecID to derive the unique identifier for each fill reason

    →1364

    FillPx

    Price(20)

    Price of this fill reason or allocation

    Required if tag 1362-NoFills > 0

    Same as tag 31-LastPx

    Y

    Price of this fill reason or allocation

    Required if tag 1362-NoFills > 0

    Same as tag 31-LastPx

    →1365

    FillQty

    Qty(9)

    Quantity bought/sold for this fill reason or allocation

    Required if tag 1362-NoFills > 0

    Y

    Quantity bought/sold for this fill reason or allocation

    Required if tag 1362-NoFills > 0

    →1622

    FillYieldType

    String(2)

    Fill reason

    0 – Future Hedge

    1 – Pro Rata

    2 – LMM

    3 – TOP

    4 – FIFO

    5 – Cross BMG

    8 – Covering

    9 – Cross BPM

    10 – Leveling

    11 – Aggressor

    14 – Leg

    16 – Opening

    18 – Implied Opening

    19 – FIFO Percent

    Y

    Fill reason

    iLink 2 Standard Message Trailer



    End of message.


    End of message.

  • Page:
    iLink 2 Heartbeat
    TagNameFIX TypeEnumerationReqDescription

    iLink 2 Standard Header - Client System to CME Globex






    iLink 2 Standard Header - CME Globex to Client System




    35MsgTypeString(2)0=HeartbeatYHeader tag identifying message type.

    112

    TestReqID

    String(20)


    N

    Required if heartbeat message is generated in response to a Test Request message. In this case, this tag must contain the TestReqID that was sent in the Test Request message.

    9553SplitMsgInt(1)

    0 – Split message 

    1 – Out-of-order message 

    2 – Complete message 

    N

    Indicates whether a message was subject to additional processing as a result of being:

    • split among multiple packets (0)
    • out-of-order (1)
    • a previously submitted split message (2)

    If absent, then the message was not subject to additional processing.

    iLink 2 Standard Message Trailer





    End of message.


  • Page:
    iLink 2 Logon from Client System to CME Globex
    TagNameFIX TypeEnumerationReqDescription

    Standard Header - Client System to CME Globex






    35MsgTypeString(2)A=LogonYHeader tag identifying message type.

    108

    HeartBtlnt

    Int(3)

    30-60 inclusive

    Y

    Hearbeat interval in seconds.

    • CME Group requires a heartbeat interval between 5 and 60 seconds. Intervals of less than 5 seconds are not permitted. Intervals longer than 60 seconds are not supported. The recommended value is 30 (seconds).
    • CME Globex uses the heartbeat interval submitted in the customer Logon message.

    141

    ResetSeqNumFlag

    Boolean(1)

    Y=Yes, reset sequence numbers

    N=No

    C

    Indicates that both sides of the FIX session should reset sequence numbers.

    For beginning of week and mid-week logon, tag 141 is optional but a Logon message with 141=Y will receive a Logout message in response. During in-session logon, tag 141 is required and must be set to "Y". 

    Messages with incorrect or missing tag 141 values will result in session logout.

    1603

    ApplicationSystemName

    String(30)

    Value obtained from GAM or ISV.

    Y*

    Identifies system generating the message.

    1604

    TradingSystemVersion

    String(10)

    Value obtained from GAM or ISV.

    Y*

    Identifies the version of the system generating the message.

    1605

    ApplicationSystemVendor

    String(10)

    Value obtained from GAM or ISV.

    Y*

    Identifies the vendor of the application system.

    354

    EncodedTextLen

    Length(2)


    C

    Length of the Access Key ID.

    Must be sent if tag 355-EncodedText field is specified and must immediately precede it.

    355

    EncodedText

    Data(32)


    C

    Contains the Access Key ID assigned to the session ID in tag 49-SenderCompID.

    1400

    EncryptedPasswordMethod

    String(13)

    CME-1-SHA-256

    C

    Defines the method used to create secure cryptographic hash in the encrypted password field.

    For day 1 the only valid value supported is CME-SHA-256 which represents first CME version of message digest or hash of SHA-256.

    1401

    EncryptedPasswordLen

    Length(2)


    C

    Length of tag 1402-EncryptedPassword which contains the HMAC signature.

    1402

    EncryptedPassword

    Data(44)


    C

    Contains the HMAC signature built with HMAC data using the instruction provided.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Logon from CME Globex to Client System
    TagNameFIX TypeEnumerationReqDescription

    iLink 2 Standard Header - CME Globex to Client System






    35MsgTypeString(2)A=LogonYHeader tag identifying message type.

    108

    HeartBtlnt

    Int(3)

    30 - 60 inclusive

    Y

    Heartbeat interval in seconds. CME Globex will echo back the heartbeat interval submitted in the customer logon message.

    141

    ResetSeqNumFlag

    Boolean(1)

    Y=Yes, reset sequence numbers N=No

    C

    CME Globex echoes back the ResetSeqNumFlag indicator from the customer logon message.

    1603ApplicationSystemNameString(30)Echoes the value sent from the client system.Y*

    Identifies system generating the message.
    Note: this tag is returned if in the header for the iLink 2 Logon from CME Globex to Client System message only.

    1604TradingSystemVersionString(10)Echoes the value sent from the client system.Y*

    Identifies system generating the message.
    Note: this tag is returned if in the header for the iLink 2 Logon from CME Globex to Client System message only.

    1605ApplicationSystemVendorString(10)Echoes the value sent from the client system.Y*

    Identifies system generating the message.
    Note: this tag is returned if in the header for the iLink 2 Logon from CME Globex to Client System message only.

    9553SplitMsgInt(1)

    0 – Split message 

    1 – Out-of-order message 

    2 – Complete message 

    N

    Indicates whether a message was subject to additional processing as a result of being:

    • split among multiple packets (0)
    • out-of-order (1)
    • a previously submitted split message (2)

    If absent, then the message was not subject to additional processing.

    iLink 2 Standard Message Trailer





    End of message.


  • Page:
    iLink 2 Logout
    TagNameFIX TypeEnumerationReqDescription

    Standard Header - Client System to CME Globex




    Y


    iLink 2 Standard Header - CME Globex to Client System




    Y

    Same as above.

    35MsgTypeString(2)5=LogoutYHeader tag identifying message type.

    58

    Text

    String(200)


    N

    Reason for logout.

    789

    NextExpectedMsgSeqNum

    Int(9)


    Y*

    Next expected inbound tag 34-MsgSeqNum value expected by CME.

    9553SplitMsgInt(1)

    0 – Split message 

    1 – Out-of-order message 

    2 – Complete message 

    N

    Indicates whether a message was subject to additional processing as a result of being:

    • split among multiple packets (0)
    • out-of-order (1)
    • a previously submitted split message (2)

    If absent, then the message was not subject to additional processing.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Mass Quote

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - Client System to CME Globex




    35MsgTypeString(2)i=Mass QuoteYHeader tag identifying message type.

    131

    QuoteReqID

    String(23)


    N

    If a quote entry is in response to a Quote Request, this tag should contain the QuoteReqID of the corresponding Request for Quote (tag 35-MsgType=R) market data message.

    117

    QuoteID

    String(10)


    Y

    Client system generated identifier of the message. Must be unique per mass quote message per trading session.

    9771

    MMAccount

    String(12)


    Y*

    Account number of Mass Quoting firm.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    'N' indicates the message was generated by automated trading logic.

    Note: iLink messages containing a value other than 'Y' or 'N' in this tag will be rejected.

    This tag is subject to Rule 536.B.2 Electronic Audit Trail Requirements for Electronic Order Routing/Front-End Systems.

    1031CustOrderHandlingInstString(1)

    W - Desk

    Y - Electronic (Default)

    C - Vendor-provided Platform billed by Executing Broker

    G - Sponsored Access via Exchange API or FIX provided by Executing Broker

    H - Premium Algorithmic Trading Provider billed by Executing Broker

    D - Other, including Other-provided Screen

    YDefines source of original order.

    204

    CustomerOrFirm

    Int(1)

    0=Customer
    1=Firm

    Y*

    The type of business conducted.

    Note

    • If the order is sent by a customer of a clearing firm, then tag 204 = 0 (Customer)
    • If the order is sent by a proprietary trader within a clearing firm, then tag 204 = 1 (Firm)
    7928SelfMatchPreventionIDString(12)
    N

    This tag is required when market participants elect to use the optional Self Match Prevention functionality.

    Non-implied orders with the same Self-Match Prevention identifier submitted with the same Executing Firm Identifier (subcomponent of tag 49-SenderCompID) will not match on CME Globex.

    9702

    CtiCode

    Char(1)

    1=CTI 1

    2=CTI 2

    3-CTI 3

    4=CTI 4

    Y*

    Customer Type Indicator (CTI)

    For electronic trading CTI codes are defined as:

    • CTI 1: Applies to orders entered or trades executed by an individual member for their own account, for an account they controls, or for an account in which they have an ownership or financial interest. However, transactions initiated and executed by a member for the proprietary account of a member firm must be designated as CTI 2 transactions.
    • CTI 2: Applies to orders entered or trades executed for the proprietary accounts of a member firm, including Rule 106.H., I., N., R. and S. firms.
    • CTI 3: Applies to orders entered by a member or a nonmember terminal operator for the account of another individual member or an account controlled by such individual member.
    • CTI 4: Applies to all orders and transactions not included in CTI categories 1, 2, or 3. These typically are orders entered by or on behalf of nonmember entities.

    This tag is subject to Rule 536.D Customer Type Indicator (CTI) Codes and to 536.B.2 Electronic Audit Trail Requirements for Electronic Order Routing/Front-End Systems.

    If you are unsure of which value to use, contact CME Group Market Regulation.

    9773MMProtectionResetChar(1)Y=Reset 
    N=Do not reset
    NWhen Mass Quoting Protection is triggered, CME Globex will not accept any new quotes from the Mass Quote customer for the given product group until it receives a Mass Quote message with the tag 9773-MMPReset flag set to 'Y' to reset protection. 

    See Mass Quote Protections.
    1731AvgPxGroupIDString(20)
    N

    Used to identify account numbers or orders for grouping trades together for average price calculations.

    If incoming value is greater than max length, iLink will return the right-most twenty bytes.
    1598ClearingTradePriceTypeString(1)0 – Trade Clearing at Execution Price
    1 – Trade Clearing at Alternate Clearing Price
    NIndicates whether spread differential trade is clearing at execution price (tag 31-LastPx) or alternate clearing price (i.e. previous day’s settlement price).
    819AvgPXIndicatorInt(3)0 – No Average Pricing (Default)
    1 – Trade is part of an Average Price Group Identified by the AvgPxGroupID
    3 - Notional Value Average Pricing with Average Price Group Identified by the AvgPxGroupID
    N

    Indicates if the resulting trade is to be average priced.

    This tag is also used to indicate type of average price grouping.
    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    296NoQuoteSetsInt(2)
    YThe number of quote sets that follow in this message.

    →302

    QuoteSetID

    String(3)


    Y

    Sequential number for the quote set. For a given QuoteID, assumed to start at '1'. Must be the first tag in the repeating group.

    →307

    UnderlyingSecurityDesc

    String(20)


    N

    Instrument identifier for underlying futures contract (e.g. ESH0).

    →304

    TotQuoteEntries

    Int(3)


    Y

    Total quote entries.
    Must have the same value as tag 295-NoQuoteEntries.

    →295

    NoQuoteEntries

    Int(3)


    Y

    The number of quotes for the quote set.

    →→299

    QuoteEntryID

    String(10)


    Y

    Client system provided unique identifier for quote in this repeating group. Must be the first tag in the repeating group.

    →→55

    Symbol

    String(6)


    Y*

    This tag contains the Group Code of the instrument.

    →→107

    SecurityDesc

    String(20)


    Y*

    Instrument identifier.
    Option Example: ESU8 C2425

    →→167

    SecurityType

    String(3)

    OPT=Option

    Y*

    Indicates instrument is an option.

    →→48

    SecurityID

    Int(12)


    N

    Identifier of the instrument defined in tag 107-SecurityDesc.

    →→22

    SecurityIDSource

    Char(1)

    8=Exchange symbol

    N

    Identifies class or source of the tag 48-SecurityID value.

    →→60

    TransactTime

    UTCTimestamp(21)


    N

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    →→132

    BidPx

    Price(20)


    N

    Quoted bid price.
    Tag 132-BidPx cannot be submitted without the tag 134-BidSize.

    The decimal, and if applicable the negative sign of the price are each one character. Client systems should not supply more than 9 characters to the left and 9 characters to the right of the decimal.

    →→134

    BidSize

    Int(9)


    N

    Quoted bid size.
    Tag 134-BidSize cannot be submitted without the tag 132-BidPx.
    A value of '0' sent in this tag cancels quotes on this side for the given instrument.

    →→133

    OfferPx

    Price(20)


    N

    Quoted offer price.
    Ta 133-OfferPx cannot be submitted without the tag 135-OfferSize.

    The decimal, and if applicable the negative sign of the price are each one character. Client systems should not supply more than 9 characters to the left and 9 characters to the right of the decimal..

    →→135

    OfferSize

    Int(9)


    N

    Quoted offer size. 
    Tag 135-OfferSize cannot be submitted without the tag 133-OfferPx.
    A value of '0' sent in this tag cancels quotes on this side for the given instrument.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 New Order

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    Standard Header - Client to CME Globex






    35MsgTypeString(2)D=New OrderYHeader tag identifying message type.

    1

    Account

    String(12)


    Y*

    Unique account identifier.

    11

    ClOrdID

    String(20)


    Y

    Unique order identifier assigned by client system.
    Client system must maintain uniqueness of this value for the life of the order.

    Refer to iLink - CME Globex Identifiers for more information.

    21

    HandInst

    Char(1)

    1=Automated execution

    N

    Order submitted for automated matching on CME Globex.

    1031

    CustOrderHandlingInst

    String(1)

    W - Desk

    Y - Electronic (Default)

    C - Vendor-provided Platform billed by Executing Broker

    G - Sponsored Access via Exchange API or FIX provided by Executing Broker

    H - Premium Algorithmic Trading Provider billed by Executing Broker

    D - Other, including Other-provided Screen

    Y

    Defines source of original order.

    38

    OrderQty

    Int(9)


    Y*

    Order quantity. Must be a positive integer.

    • New Orders submitted with quantity greater than the Max Quantity and less than 99999 will be rejected with 35=8.
    • New Orders submitted with quantity greater than 99999 will be rejected with 35=3.
      Maximum Quantity is defined in the market data Security Definition (MsgType-tag 35-d) message in tag 1140-MaxTradeVol.
    • For GC2, A New Order submitted with a quantity greater than the allowed clip size will be rejected with a Session Level Reject (35=3) with tag 58-Text= 'Credit Limit Violation: Order Quantity x exceeds Clip Size: y'.

    40

    OrdType

    Char(1)

    1=Market order (with protection)
    2=Limit order
    3=Stop order (with protection)
    4=Stop-Limit order
    K=Market-Limit order

    Y

    Order type. See also iLink Order Types and Order Types for Futures and Options for complete details.

    The state of an order type can change over the life of an order. For example, a submitted stop order (3) can turn into a market order (1) when the stop price level has been crossed.

    44

    Price

    Price(20)


    C

    Required for limit or stop-limit orders. Designates the price per single contract unit. The decimal, and if applicable the negative sign of the price are each one character. Client systems should not supply more than 9 characters to the left and 9 characters to the right of the decimal.

    See Fractional Pricing for products that tick fractionally but must be submitted in decimal.

    54

    Side

    Char(1)

    1=Buy
    2=Sell

    Y

    Side of order.

    55

    Symbol

    String(6)


    N

    This tag contains the Group Code of the instrument.

    59

    TimeInForce

    Char(1)

    0=Day
    1=Good Till Cancel (GTC)
    3=Fill and Kill
    6=Good Till Date

    N

    Specifies how long the order remains in effect. If not present, DAY order is the default.

    For GTD, ExpireDate is required.
    For FAK, MinQty can also be specified.

    See Order Type Qualifiers for more information.

    60

    TransactTime

    UTCTimestamp(21)


    Y

    Timestamp of the business event of submitting the order (e.g., click the submission button).

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    'N' indicates the message was generated by automated trading logic.

    Note

    iLink messages containing a value other than 'Y' or 'N' in this tag will be rejected.

    This tag is subject to Rule 536.B.2 Electronic Audit Trail Requirements for Electronic Order Routing/Front-End Systems.

    78NoAllocsNumInGroup(1)1CAlways set to '1'. 
    Indicates the number of give up accounts. CME Globex supports only 1 give up account. 
    Must be used in conjunction with tag 9708-CmtaGiveupCD, tag 9707-GiveupFirm and tag 79-AllocAccount.

    79

    AllocAccount

    String(11)


    C

    Indicates a give up account number.
    Must be used in conjunction with tag 9708-CmtaGiveupCD, tag 9707-GiveupFirm and tag 78-NoAllocs.

    99

    StopPx

    Price(20)


    C

    Required for stop and stop-limit orders. Designates stop trigger price specified by the individual entering the order or cancel/replace. The decimal, and if applicable the negative sign of the price are each one character. Client systems should not supply more than 9 characters to the left and 9 characters to the right of the decimal.



    See tag 44-Price description for fractional pricing information.

    107

    SecurityDesc

    String(20)


    Y*

    Instrument identifier.
    Future Example: GEZ8
    Option Example: CEZ9 C9375

    110

    MinQty

    Int(9)


    N

    Minimum quantity of an order to be executed.

    The value of MinQty must be between 1 and the value in tag 38-OrderQty.

    The format of this tag is different from FIX protocol specifications.

    This tag must be an integer.

    167

    SecurityType

    String(6)

    FUT=Future

    OPT=Option

    IRS=Interest Rate Swap

    FXSPOT=FX Spot

    N

    Indicates security type.

    Note: For options strategy including UDS COMBO or COVERED, send OPT. For UDS Futures, send FUT.

    204

    CustomerOrFirm

    Int(1)

    0=Customer
    1=Firm

    Y*

    The type of business conducted.

    Note

    • If the order is sent by a customer of a clearing firm, then tag 204 = 0 (Customer)
    • If the order is sent by a proprietary trader within a clearing firm, then tag 204 = 1 (Firm)

    210

    MaxShow

    Qty(9)


    N

    Display quantity of an order to be shown in the order book at any given time.

    • The value of MaxShow must be a fixed number N between 1 and value in tag 38-OrderQty. If MaxShow is reduced (due to matches) to 0, then MaxShow is reset to the lesser of N or the number in tag 38-OrderQty remaining and the order reinstated at the bottom of the book.
    • See also: Order Display Quantity.

    Not available for some:

    In CME Eurodollar Futures products, the maximum display ratio is 1:60.

    432

    ExpireDate

    LocalMktDate(8)


    C

    Required only if tag 59-TimeInForce=Good Till Date (GTD). CME Globex does not support tag 126-ExpireTime. Only the expiration date can be set. Orders expire at the end of the trading session of the specified date.

    7928SelfMatchPreventionIDString(12)

    C

    This tag is required when market participants elect to use the optional Self Match Prevention functionality.

    Non-implied orders with the same Self-Match Prevention identifier submitted with the same Executing Firm Identifier (subcomponent of tag 49-SenderCompID) will not match on CME Globex.

    8000

    SelfMatchPreventionInstruction

    Char(1)

    O=Cancel Resting
    N=Cancel Aggressing

    N

    Indicates a cancel instruction when Self Match Prevention is triggered.

    Note

    • To use tag 8000-SelfMatchPreventionInstruction, client systems must include tag 7928-SelfMatchPreventionID on the originating message
    • If tag 8000-SelfMatchPreventionInstruction is not sent, the resting order will be cancelled.

    9702

    CtiCode

    Char(1)

    1=CTI 1
    2=CTI 2
    3=CTI 3
    4=CTI 4

    Y*

    Customer Type Indicator (CTI)

    For electronic trading CTI codes are defined as:

    • CTI 1: Applies to orders entered or trades executed by an individual member for their own account, for an account they controls, or for an account in which they have an ownership or financial interest. However, transactions initiated and executed by a member for the proprietary account of a member firm must be designated as CTI 2 transactions.
    • CTI 2: Applies to orders entered or trades executed for the proprietary accounts of a member firm, including Rule 106.H., I., N., R. and S. firms.
    • CTI 3: Applies to orders entered by a member or a nonmember terminal operator for the account of another individual member or an account controlled by such individual member.
    • CTI 4: Applies to all orders and transactions not included in CTI categories 1, 2, or 3. These typically are orders entered by or on behalf of nonmember entities.

    This tag is subject to Rule 536.D Customer Type Indicator (CTI) Codes and to 536.B.2 Electronic Audit Trail Requirements for Electronic Order Routing/Front-End Systems.

    If you are unsure of which value to use, contact CME Group Market Regulation.

    1731AvgPxGroupIDString(20)
    N

    Used to identify account numbers or orders for grouping trades together for average price calculations.

    If incoming value is greater than max length, iLink will return the right-most twenty bytes.
    1598ClearingTradePriceTypeString(1)0 – Trade Clearing at Execution Price
    1 – Trade Clearing at Alternate Clearing Price
    NIndicates whether spread differential trade is clearing at execution price (tag 31-LastPx) or alternate clearing price (i.e. previous day’s settlement price).
    819AvgPXIndicatorInt(3)0 – No Average Pricing (Default)
    1 – Trade is part of an Average Price Group Identified by the AvgPxGroupID
    3 - Notional Value Average Pricing with Average Price Group Identified by the AvgPxGroupID
    N

    Indicates if the resulting trade is to be average priced.

    This tag is also used to indicate type of average price grouping.
    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    9707

    GiveUpFirm

    String(3)


    N

    Identifies the executing firm ID to which the fill is given up or mutually off-set for eligible contracts.

    9708

    CmtaGiveupCD

    String(2)

    GU=Give-up
    SX=SGX off-set

    N

    Indicates if order is a give-up or mutual off-set with the Singapore Exchange (SGX).

    9717

    CorrelationClOrdID

    String(20)


    N

    CME STRONGLY RECOMMENDS this tag contain the same value as tag 11-ClOrdID for use in correlating all iLink messages associated with the order chain originating with this New Order message. However, CME Globex does not validate this value and returns it as submitted on all subsequent messages from CME Globex to the Client System for the order chain.

    Refer to iLink - CME Globex Identifiers for more information.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 New Order Cross

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - Client System to CME Globex




    35MsgTypeSting(2)s=New Order CrossYHeader tag identifying message type.

    21

    HandInst

    Char(1)

    1=Automated execution

    N

    Order submitted for automated matching on CME Globex.

    22

    SecurityIDsource

    Char(1)

    8=Exchange symbol

    N

    Identifies class or source of the tag 48-SecurityID value.

    40

    OrdType

    Char(1)

    2=Limit order

    Y

    Only '2' (limit order) supported.

    44

    Price

    Price(20)


    Y

    Required for limit or stop-limit orders. Designates the price per single contract unit. The decimal, and if applicable the negative sign of the price are each one character. Client systems should not supply more than 9 characters to the left and 9 characters to the right of the decimal.

    See Fractional Pricing for products that tick fractionally but must be submitted in decimal.

    48

    SecurityID

    Int(12)


    N

    Identifier of the instrument defined in tag 107-SecurityDesc.

    55

    Symbol

    String(6)


    Y

    This tag contains the Group Code of the instrument.

    60

    TransactTime

    UTCTimestamp(21)


    Y

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    'N' indicates the message was generated by automated trading logic.

    Note: iLink messages containing a value other than 'Y' or 'N' in this tag will be rejected.

    This tag is subject to Rule 536.B.2 Electronic Audit Trail Requirements for Electronic Order Routing/Front-End Systems.

    107

    SecurityDesc

    String(20)


    Y*

    Instrument identifier.
    Future Example: GEZ8
    Option Example: GEZ9 C9375

    167

    SecurityType

    String(6)

    FUT=Future

    OPT=Option

    IRS=Interest Rate Swap

    FXSPOT=FX Spot

    N

    Indicates instrument is future or option.

    Note: for options strategy including UDS COMBO or COVERED, send OPT.

    For UDS Futures, send FUT.

    548

    CrossID

    String(32)


    Y

    Client system populates this tag to allow linking of Buy and Sell sides (and all legs in the case of a spread) for related Execution Reports.

    549

    CrossType

    Int(2)

    3=Cross trade executed
    with existing orders

    Y

    Identifies transaction type.

    550

    CrossPrioritization

    Int(1)

    0=None

    Y

    Always '0'.

    483

    TransBkdTime

    UTCTimestamp(21)


    Y

    Indicates the time at which the order was finalized between the buyer and seller prior to submission.

    UTC Timestamps are sent in number of nanoseconds since Unix epoch synced to a master clock to microsecond accuracy.

    552

    NoSides

    Int(1)

    2

    Y

    Number of sides. Always '2'.

    →54

    Side

    Char(1)

    1=Buy
    2=Sell

    Y

    Side of order.

    →1

    Account

    String(12)


    Y*

    Executing account mnemonic as agreed between the broker and clearing member firm.

    →11

    ClOrdID

    String(20)


    Y

    Unique order identifier assigned by client system.
    Client system must maintain uniqueness of this value for the life of the order.

    Refer to iLink - CME Globex Identifiers for more information.

    →1031CustOrderHandlingInstString(1)

    W - Desk

    Y - Electronic (Default)

    C - Vendor-provided Platform billed by Executing Broker

    G - Sponsored Access via Exchange API or FIX provided by Executing Broker

    H - Premium Algorithmic Trading Provider billed by Executing Broker

    D - Other, including Other-provided Screen

    NDefines source of original order.

    →38

    OrderQty

    Int(9)


    Y

    Order quantity. Must be a positive integer.
    Must be the same for both sides.

    →962

    SideTimeInForce

    Char(1)

    0=Keep on book
    3=Eliminate remaining quantity when RFC instrument state returns to 'Normal'

    N

    Indicates how long the order as specified in the side stays in effect. SideTimeInForce allows a two-sided cross order to specify order behavior separately for each side.

    →204

    CustomerOrFirm

    Int(1)

    0=Customer
    1=Firm

    Y*

    The type of business conducted.

    →9702

    CtiCode

    Char(1)

    1=CTI 1

    2=CTI 2

    3-CTI 3

    4=CTI 4

    Y*

    Customer Type Indicator (CTI)

    For electronic trading CTI codes are defined as:

    • CTI 1: Applies to orders entered or trades executed by an individual member for their own account, for an account they controls, or for an account in which they have an ownership or financial interest. However, transactions initiated and executed by a member for the proprietary account of a member firm must be designated as CTI 2 transactions.
    • CTI 2: Applies to orders entered or trades executed for the proprietary accounts of a member firm, including Rule 106.H., I., N., R. and S. firms.
    • CTI 3: Applies to orders entered by a member or a nonmember terminal operator for the account of another individual member or an account controlled by such individual member.
    • CTI 4: Applies to all orders and transactions not included in CTI categories 1, 2, or 3. These typically are orders entered by or on behalf of nonmember entities.

    This tag is subject to Rule 536.D Customer Type Indicator (CTI) Codes and to 536.B.2 Electronic Audit Trail Requirements for Electronic Order Routing/Front-End Systems.

    If you are unsure of which value to use, contact CME Group Market Regulation.

    1731AvgPxGroupIDString(20)
    N

    Used to identify account numbers or orders for grouping trades together for average price calculations.

    If incoming value is greater than max length, iLink will return the right-most twenty bytes.

    Note: For Request for Cross (“RFC”) order, customers can submit tag 819, tag 1731, and tag 1598 on each buy and sell repeating group. Each acknowledgment and execution report for the buy and the sell orders will contain the corresponding tag values from the correct buy and sell repeating group.

    1598ClearingTradePriceTypeString(1)0 – Trade Clearing at Execution Price
    1 – Trade Clearing at Alternate Clearing Price
    N

    Indicates whether spread differential trade is clearing at execution price (tag 31-LastPx) or alternate clearing price (i.e. previous day’s settlement price).

    Note: For Request for Cross (“RFC”) order, customers can submit tag 819, tag 1731, and tag 1598 on each buy and sell repeating group. Each acknowledgment and execution report for the buy and the sell orders will contain the corresponding tag values from the correct buy and sell repeating group.

    819AvgPXIndicatorInt(3)0 – No Average Pricing (Default)
    1 – Trade is part of an Average Price Group Identified by the AvgPxGroupID
    3 - Notional Value Average Pricing with Average Price Group Identified by the AvgPxGroupID
    N

    Indicates if the resulting trade is to be average priced.

    This tag is also used to indicate type of average price grouping.

    Note: For Request for Cross (“RFC”) order, customers can submit tag 819, tag 1731, and tag 1598 on each buy and sell repeating group. Each acknowledgment and execution report for the buy and the sell orders will contain the corresponding tag values from the correct buy and sell repeating group.

    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    Note: For Request for Cross (“RFC”) order, customers can submit tag 5149 on each buy and sell repeating group. Each acknowledgment and execution report for the buy and the sell orders will contain the corresponding tag 5149 value from the correct buy and sell repeating group.

    →78

    NoAllocs

    Char(1)

    1

    N

    Always set to '1'.

    Indicates the number of give up accounts. CME Globex supports only 1 give up account.

    Must be used in conjunction with tag 9708-CmtaGiveupCD, tag 9707-GiveupFirm and tag 79-AllocAccount.

    →79

    AllocAccount

    String(11)


    N

    Indicates a give up account number.

    Must be used in conjunction with tag 9708-CmtaGiveupCD, tag 9707-GiveupFirm and tag 78-NoAllocs.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Order Cancel and Order Cancel-Replace Reject
    TagNameFIX TypeEnumerationReqDescription
    iLink 2 Standard Header - CME Globex to Client System




    35MsgTypeString(2)9=Order Cancel RejectYHeader tag identifying message type.

    1

    Account

    String(12)


    Y*

    Unique account identifier. Returned only for the reject of an Order Cancel/Replace Request.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex. 

    11

    ClOrdID

    String(20)


    Y

    CME Globex returns this value from the rejected iLink 2 Order Cancel Request message tag 11-ClOrdID, up to 20 bytes.

    Refer to iLink - CME Globex Identifiers for more information.

    17

    ExecID

    String(40)


    Y*

    CME Globex assigned execution report message identifier; globally unique for each message published.

    37

    OrderID

    String(17)


    Y

    CME Globex assigned order identifier; globally unique for each message published.

    39

    OrdStatus

    Char(1)

    U=Undefined

    Y

    Identifies reason for cancel reject.

    41

    OrigClOrdID

    String(20)


    N

    Last accepted ClOrdID in the order chain. If a value is included in tag 41 on order entry, the same value is returned. If not, the tag will contain '0'.

    Refer to iLink - CME Globex Identifiers for more information.

    48

    SecurityID

    Int(12)


    N

    Identifier of the instrument defined in tag 107.

    58

    Text

    String(200)


    N

    Text reason order cancel was rejected.

    60

    TransactTime

    UTCTimestamp(21)


    Y*

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    102

    CXlRejReason

    Int(6)

    1003=Orders may not be cancelled while the market is closed

    2045=This order is not in the book

    2048=The order was submitted with a different SenderCompID than the requesting cancel

    2051=The Order was submitted with a different side than the requesting Cancel side

    2058=Stop price maxi-mini must be greater than or equal to trigger price

    2060=Sell order stop price must be below last trade price

    2061=Buy order stop price must be above last trade price

    2137=Order price is outside the limits

    2179=Order price is outside bands

    7009=The contract for this order is past expiration/for future activation date and may no longer/not yet be traded

    7024=Order cannot be modified or cancelled while the market is in No Cancel

    N

    Cancel reject reason.

    107

    SecurityDesc

    String(20)


    N

    Instrument identifier, e.g. ESM0.

    434

    CancelRejResponseTo

    Char(1)

    1=Order Cancel Request
    2=Order Cancel/Replace
    Request

    Y

    Identifies the type of request reject message is in response to.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    Value sent on inbound message from client system indicating the order as sent manually or generated by automated trading logic.

    1031

    CustOrderHandlingInst

    String(1)

    W - Desk

    Y - Electronic (Default)

    C - Vendor-provided Platform billed by Executing Broker

    G - Sponsored Access via Exchange API or FIX provided by Executing Broker

    H - Premium Algorithmic Trading Provider billed by Executing Broker

    D - Other, including Other-provided Screen

    Y

    Defines source of original order.

    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    7928SelfMatchPreventionIDString(12)
    N

    Use of this tag indicates client does not wish to trade against itself on CME Globex.

    Non-implied orders with the same Self-Match Prevention identifier submitted with the same Executing Firm Identifier (sub-component of tag 49-SenderCompID) will not match on CME Globex.

    9717

    CorrelationClOrdID

    String(20)


    Y*

    Unvalidated value returned as submitted if sent by client system on inbound message. See tag 9717-CorrelationClOrdID note in the iLink 2 New Order message specification for further details.

    5979RequestTimeInt(20)
    YInformation carried on a response to convey the time (UTC) when the request was received by the MSGW application. UTC timestamps are sent in number of nanoseconds since UNIX epoch with microsecond precision.
    5904DelayDurationInt
    N

    Indicates the amount of time in nanoseconds that a message was subject to additional processing as a result of being:

    • split among multiple packets (tag 9553=0)
    • out-of-order (tag 9553=1)
    • a previously submitted split message (tag 9553=2)

    Subtracting this number from tag 5979-RequestTime will represent original received time of in-flight message

    9553SplitMsgInt(1)

    0 – Split message 

    1 – Out-of-order message 

    2 – Complete message 

    N

    Indicates whether a message was subject to additional processing as a result of being:

    • split among multiple packets (0)
    • out-of-order (1)
    • a previously submitted split message (2)

    If absent, then the message was not subject to additional processing.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Order Cancel Request

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    Standard Header - Client to CME Globex




    35MsgTypeString(2)F=Order Cancel RequestYHeader tag identifying message type.

    1

    Account

    String(12)


    Y*

    Unique account identifier.

    11

    ClOrdID

    String(20)


    Y

    Unique order identifier assigned by client system.
    Client system must maintain uniqueness of this value for the life of the order.

    Refer to iLink - CME Globex Identifiers for more information.

    37

    OrderID

    String(17)


    Y*

    CME Globex assigned order identifier; globally unique for each message published.

    Note: Tag 37 value sent from client system to CME Globex must exactly match the value CME Globex assigned.

    41

    OrigClOrdID

    String(20)


    N

    Last accepted ClOrdID in the order chain.

    Refer to iLink - CME Globex Identifiers for more information.

    54

    Side

    Char(1)

    1=Buy

    2=Sell

    Y

    Side of order.

    55

    Symbol

    String(6)


    N

    This tag contains the Group Code of the instrument.

    60

    TransactTime

    UTCTimestamp(21)


    Y

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual

    N=automated

    Y*

    'N' indicates the message was generated by automated trading logic.

    Note: iLink messages containing a value other than 'Y' or 'N' in this tag will be rejected.

    This tag is subject to Rule 536.B.2 Electronic Audit Trail Requirements for Electronic Order Routing/Front-End Systems.

    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    107

    SecurityDesc

    String(20)


    Y*

    Unique Instrument identifier.
    Future Example: GEZ8
    Option Example: GEZ9 C9375

    167

    SecurityType

    String(6)

    FUT=Future

    OPT=Option

    IRS=Interest Rate Swap

    FXSPOT=FX Spot

    N

    Indicates instrument is future or option.

    Note: for options strategy including UDS COMBO or COVERED, send OPT.

    For UDS Futures, send FUT.

    9717

    CorrelationClOrdID

    String(20)


    Y*

    This tag should contain the same value as the tag 11-ClOrdID of the original New Order (tag 35-MsgType-D) message and is used to correlate iLink messages associated with a single order chain.

    Refer to iLink - CME Globex Identifiers for more information.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Order Cancel-Replace Request

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    Standard Header - Client to CME Globex




    35MsgTypeString(2)G=Order Cancel Replace RequestYHeader tag identifying message type.

    1

    Account

    String(12)


    Y*

    11

    ClOrdID

    String(20)


    Y

    Unique order identifier assigned and maintained by client system.

    Client system must maintain uniqueness of this value for the life of the order i.e. throughout the series of cancel/replace requests.

    Refer to iLink - CME Globex Identifiers for more information.

    37

    OrderID

    String(17)


    Y*

    CME Globex assigned order identifier; globally unique for each message published.

    Note: Tag 37 value sent from client system to CME Globex must exactly match the value CME Globex assigned.

    21

    HandInst

    Char(1)

    1=Automated execution

    N

    Order submitted for automated matching on CME Globex.

    38

    OrderQty

    Int(9)


    Y*

    Order quantity. Must be a positive integer.

    Note: If this value is reduced from the original value submitted in the New Order message, the order will maintain priority in the order book. If this value is increased, the order will lose priority on the order book.

    • An Order Cancel/Replace Request submitted with quantity greater than the Max Quantity and less than 99999 will be rejected with 35=8.
    • An Order Cancel/Replace Request submitted with quantity greater than 99999 will be rejected with 35=3.
      Maximum Quantity is defined in the market data Security Definition (MsgType-tag 35-d) message in tag 1140-MaxTradeVol.
    • For GC2, An Order Cancel/Replace Request submitted with a quantity greater than the allowed clip size will be rejected with a Session Level Reject (35=3) with tag 58-Text= 'Credit Limit Violation: Order Quantity x exceeds Clip Size: y'.

    1031

    CustOrderHandlingInst

    String(1)

    W - Desk

    Y - Electronic (Default)

    C - Vendor-provided Platform billed by Executing Broker

    G - Sponsored Access via Exchange API or FIX provided by Executing Broker

    H - Premium Algorithmic Trading Provider billed by Executing Broker

    D - Other, including Other-provided Screen

    Y

    Defines source of original order.

    40

    OrderType

    Char(10)

    1=Market order (with protection)
    2=Limit order
    3=Stop order (with protection)
    4=Stop-Limit order
    K=Market-Limit order

    Y

    Order type. See iLink Order Types for complete details. 

    The state of an order type can change over the life of an order. For example, a submitted stop order (3) can turn into a market order (1) when the stop price level has been crossed.
    Also refer to Order Types for Futures and Options.

    41

    OrigClOrdID

    String(20)


    Y

    Last accepted ClOrdID in the order chain. If a value is included in tag 41-OrigClOrdID, the same value is returned, however, if no value is sent, a value of '0' is returned in the Execution Report - Cancellation (tag 35-MsgType=8) message or tag 41-OrigClOrdID is not sent.

    Refer to iLink - CME Globex Identifiers for more information.

    44

    Price

    Price(20)


    C

    Required for limit or stop-limit orders. Designates the price per single contract unit.
    The decimal, and if applicable the negative sign of the price are each one character. Client systems should not supply more than 9 characters to the left and 9 characters to the right of the decimal.



    See Fractional Pricing for products that tick fractionally but must be submitted in decimal.

    Note: If this value is changed from the original value submitted in the New Order message, the order will lose priority in the order book.

    54

    Side

    Char(1)

    1=Buy
    2=Sell

    Y

    Side of order.

    55

    Symbol

    String(6)


    N

    This tag contains the Group Code of the instrument.

    If this tag is not sent on the inbound message, CME Globex will return the correct tag 55 value on all related outbound messages.

    58

    Text

    String(18)


    N

    Free format text string.

    59

    TimeInForce

    Char(1)

    0=Day
    1=Good Till Cancel (GTC)
    3=Fill and Kill
    6=Good Till Date

    N

    Specifies how long the order remains in effect. If not present, DAY order is the default.

    Note: If this value is changed from the original value submitted in the New Order message, the order will maintain priority in the order book.

    For GTD, ExpireDate is required.
    For FAK, MinQty can also be specified.

    See Order Types for Futures and Options or Order Qualifiers for more information.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    'N' indicates the message was generated by automated trading logic.

    Note: iLink messages containing a value other than 'Y' or 'N' in this tag will be rejected.

    This tag is subject to Rule 536.B.2 Electronic Audit Trail Requirements for Electronic Order Routing/Front-End Systems.

    60

    TransactTime

    UTCTimestamp(21)


    Y

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    78

    NoAllocs

    NumInGroup(1)

    1

    C

    Always set to '1'.
    Indicates the number of give up accounts. CME Globex supports only 1 give up account.
    Must be used in conjunction with tag 9708-CmtaGiveupCD, tag 9707-GiveupFirm and tag 79-AllocAccount.

    79

    AllocAccount

    String(11)


    C

    Indicates a give up account number.

    Must be used in conjunction with tag 9708-CmtaGiveupCD, tag 9707-GiveupFirm and tag 78-NoAllocs.

    99

    StopPx

    Price(20)


    C

    Required for stop and stop-limit orders. Designates stop trigger price specified by the individual entering the order or cancel/replace. The decimal, and if applicable the negative sign of the price, are each one character. The decimal, and if applicable the negative sign of the price are each one character. Client systems should not supply more than 9 characters to the left and 9 characters to the right of the decimal. See Fractional Pricing for products that tick fractionally but must be submitted in decimal.

    Note: If this value is changed from the original value submitted in the New Order message, the order will maintain priority in the order book.

    107

    SecurityDesc

    String(20)


    Y*

    Unique instrument identifier.
    Future Example: GEZ8
    Option Example: GEZ9 C9375

    110

    MinQty

    Int(9)


    N

    Minimum quantity of an order to be executed.

    The value of MinQty must be between 1 and the value in tag 38-OrderQty.

    The format of this tag is different from FIX protocol specifications.

    This tag must be an integer.

    167

    SecurityType

    String(3)

    FUT=Future

    OPT=Option

    IRS=Interest Rate Swap

    FXSPOT=FX Spot

    N

    Indicates instrument is future or option.

    204

    CustomerOrFirm

    Int(1)

    0=Customer
    1=Firm

    Y*

    The type of business conducted.

    210

    MaxShow

    Qty(9)


    N

    Maximum quantity of an order to be shown in the order book at any given time.

    • The value of MaxShow must be a fixed number N between 1 and value in tag 38-OrderQty.
    • If MaxShow is reduced (due to matches) to 0, then MaxShow is reset to the lesser of N or the number in tag 38-OrderQty remaining.

    Note: If this value is changed from the original value submitted in the New Order message, the order will maintain priority in the order book.

    Not available for some:

    In CME Eurodollar Futures products, the maximum display ratio is 1:60.

    See also: Order Types for Futures and Options or Order Qualifiers.

    432

    ExpireDate

    LocalMktDate(8)


    C

    Required only if tag 59-TimeInForce=Good Till Date (GTD).

    CME Globex does not support tag 126-ExpireTime. Only the expiration date can be set.
    Orders expire at the end of the trading session of the specified date.

    7928SelfMatchPreventionIDString(12)
    C

    This tag is required when market participants elect to use the optional Self Match Prevention functionality.

    Non-implied orders with the same Self-Match Prevention identifier submitted with the same Executing Firm Identifier (subcomponent of tag 49-SenderCompID) will not match on CME Globex.

    8000

    SelfMatchPreventionInstruction

    Char(1)

    O=Cancel Resting
    N=Cancel Aggressing

    N

    Indicates a cancel instruction when Self Match Prevention is triggered.

    Note:

    • To use tag 8000-SelfMatchPreventionInstruction, client systems must include tag 7928-SelfMatchPreventionID on the originating message
    • If tag 8000-SelfMatchPreventionInstruction is not sent, the resting order will be cancelled.

    9702

    CtiCode

    Char(1)

    1=CTI 1
    2=CTI 2
    3-CTI 3
    4=CTI 4

    Y*

    Customer Type Indicator (CTI)

    For electronic trading CTI codes are defined as:

    • CTI 1: Applies to orders entered or trades executed by an individual member for their own account, for an account they controls, or for an account in which they have an ownership or financial interest. However, transactions initiated and executed by a member for the proprietary account of a member firm must be designated as CTI 2 transactions.
    • CTI 2: Applies to orders entered or trades executed for the proprietary accounts of a member firm, including Rule 106.H., I., N., R. and S. firms.
    • CTI 3: Applies to orders entered by a member or a nonmember terminal operator for the account of another individual member or an account controlled by such individual member.
    • CTI 4: Applies to all orders and transactions not included in CTI categories 1, 2, or 3. These typically are orders entered by or on behalf of nonmember entities.

    This tag is subject to Rule 536.D Customer Type Indicator (CTI) Codes and to 536.B.2 Electronic Audit Trail Requirements for Electronic Order Routing/Front-End Systems.

    If you are unsure of which value to use, contact CME Group Market Regulation.

    Note: If this value is changed from the original value submitted in the New Order message, the order will maintain priority in the order book.

    1731AvgPxGroupIDString(20)
    N

    Used to identify account numbers or orders for grouping trades together for average price calculations.

    If incoming value is greater than max length, iLink will return the right-most twenty bytes.
    1598ClearingTradePriceTypeString(1)0 – Trade Clearing at Execution Price
    1 – Trade Clearing at Alternate Clearing Price
    NIndicates whether spread differential trade is clearing at execution price (tag 31-LastPx) or alternate clearing price (i.e. previous day’s settlement price).
    819AvgPXIndicatorInt(3)0 – No Average Pricing (Default)
    1 – Trade is part of an Average Price Group Identified by the AvgPxGroupID
    3 - Notional Value Average Pricing with Average Price Group Identified by the AvgPxGroupID
    N

    Indicates if the resulting trade is to be average priced.

    This tag is also used to indicate type of average price grouping.
    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    9717

    CorrelationClOrdID

    String(20)


    Y*

    This tag should contain the same value as the tag 11-ClOrdID of the original iLink 2 New Order message and is used to correlate iLink messages associated with a single order chain.

    Refer to iLink - CME Globex Identifiers for more information.

    9768

    OFMOverride

    Char(1)

    N=Disabled (default)
    Y=Enabled

    N

    Indicates whether the cancel/replace supports IFM. IFM disabled is default behavior (N or tag not present).

    See In-Flight Mitigation (IFM) for additional information.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Order Mass Action Report

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - CME Globex to Client System




    35MsgTypeString(2)BZ=Order Mass Action ReportYHeader tag identifying message type.

    11

    ClOrdID

    String(32)


    Y

    Unique ID of Order Mass Action Request as assigned by the customer.

    1369

    MassActionReportID

    String(20)


    Y

    Unique ID of Order Mass Action Report. If fragmented then all messages must have the same value.

    1373

    MassActionType

    Int(1)

    3=Cancel Orders

    Y

    Specifies the type of action requested.

    1374

    MassActionScope

    Int(1)

    1=Instrument

    9=Market Segment

    10=Group Code

    Y

    Specifies the scope of the action.


    1375

    MassActionResponse

    Int(1)

    1=Accepted

    Y

    Indicates if request was accepted.

    533

    TotalAffectedOrders

    Int(7)


    Y

    Total number of orders affected by the Order Mass Action Request. Will be returned as zero for rejects or if request is accepted but no orders could be cancelled. If fragmented, then this is the sum of NoAffectedOrders across all messages with the same MassActionReportID. Otherwise will have same value as NoAffectedOrders when one or more orders is cancelled.  

    534

    NoAffectedOrders

    Int(7)


    N

    Total number of order identifiers affected by the Order Mass Action Request. Only used if orders could actually be cancelled. Must be followed by OrigCIOrdID.

    →41

    OrigCIOrdID

    String(20)


    C

    Required if NoAffectedOrders > 0 and must be the first repeating field in the group. Indicates the CIOrdID of an order cancelled by this request.

    →84

    CxlQty

    Qty(9)

    C

    Total quantity cancelled for this order.

    535

    AffectedOrderID

    String(17)

    C

    Order ID of an order cancelled by a mass action request.

    1300

    MarketSegmentID

    Int(2)


    C

    Specifies the market segment for which working orders should be cancelled.

    55

    Symbol

    String(6)


    C

    Specifies the Group Code for which working orders should be cancelled.

    107

    SecurityDesc

    String(20)


    C

    Specifies the Instrument for which working orders should be cancelled.

    6115

    MassCancelRequestType

    Int(3)

    100=SenderSubID

    101=Account

    N

    Specifies the scope of the Order Mass Action Request within the context of Sender Comp ID. If absent then all orders belonging to Sender Comp ID will be cancelled for specified Mass Action Scope.

    1

    Account

    String(12)


    C

    If provided then orders belonging to Account & Sender Comp ID will be cancelled for specified Mass Action Scope.

    54

    Side

    Char(1)

    1=Buy

    2=Sell

    N

    If present then only orders belonging to one side will be cancelled. If not sent, orders belonging to both sides will be cancelled.

    40

    OrdType

    Char(1)

    1=Market Protect

    2=Limit

    4=Stop Limit

    K=Market Limit

    N

    If provided then only orders of this type will be cancelled. If absent then all orders will be cancelled. Stop Protect orders rest on the book as Stop Limit. Market Protect & Market Limit orders rest on the book as Limit but are required to be referenced as Market Protect & Market Limit only.

    59

    TimeInForce

    Char(1)

    0=Day

    1=Good Till Cancel (GTC)

    6=Good Till Date (GTD)

    N

    If present then only orders with this qualifier will be cancelled. If not present, all Day & GT orders will be cancelled.

    Note: FAK orders are not cancelled since they do not rest on the book.        

    60

    TransactTime

    UTCTimestamp(21)


    Y

    Time of execution/creation; expressed in UTC.

    1028

    ManualOrderIndicator

    Boolean(1)

    N=No (Electronic)

    Y=Yes (Manual)

    Y*

    Indicates if the request was initially received manually (as opposed to electronically).

    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    893LastFragmentBoolean(1)

    N=Not Last Message

    Y=Last Message
    YIndicates whether the message is the last message in a sequence of messages to support fragmentation.

    58

    Text

    String(200)


    N

    Reason orders could not be cancelled.

    5979RequestTimeInt(20)
    YInformation carried on a response to convey the time (UTC) when the request was received by the MSGW application. UTC timestamps are sent in number of nanoseconds since UNIX epoch with microsecond precision.
    5904DelayDurationInt
    N

    Indicates the amount of time in nanoseconds that a message was subject to additional processing as a result of being:

    • split among multiple packets (tag 9553=0)
    • out-of-order (tag 9553=1)
    • a previously submitted split message (tag 9553=2)

    Subtracting this number from tag 5979-RequestTime will represent original received time of in-flight message

    9553SplitMsgInt(1)

    0 – Split message 

    1 – Out-of-order message 

    2 – Complete message 

    N

    Indicates whether a message was subject to additional processing as a result of being:

    • split among multiple packets (0)
    • out-of-order (1)
    • a previously submitted split message (2)

    If absent, then the message was not subject to additional processing.

    iLink 2 Standard Message Trailer



    End of message.
  • Page:
    iLink 2 Order Mass Action Request

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    Standard Header - Client to CME Globex




    35MsgTypeSting(2)CA=Order Mass Action RequestYHeader tag identifying message type.

    11

    ClOrdID

    String(32)


    Y

    Unique ID of Order Mass Action Request as assigned by the customer. Uniqueness must be enforced by client system.

    1373

    MassActionType

    Int(1)

    3=Cancel Orders

    Y

    Specifies the type of action requested. 

    1374

    MassActionScope

    Int(2)

    1=Instrument

    9=Market Segment ID

    10=Group Code

    Y

    Specifies the scope of the action. All orders will be cancelled for either:

    • Instrument
    • Market Segment ID
    • Group Code

    1300

    MarketSegmentID

    Int(2)


    C

    Specifies the market segment for which working orders should be cancelled. Conditionally Required if Mass Action Scope=”Market Segment” (Tag 1374=9). Will be ignored if present for any other criteria specified in Mass Action Scope besides Market Segment.

    55

    Symbol

    String(6)


    C

    Specifies the Instrument Group for which working orders should be cancelled. Conditionally required if Mass Action Scope= “Instrument Group” (Tag 1374=10). Ignored if present for any other criteria specified in Mass Action Scope besides Instrument Group.

    107

    SecurityDesc

    String(20)


    C

    Conditionally required if Mass Action Scope=”Instrument” (Tag 1374=1). Will be ignored if present for any other criteria specified in Mass Action Scope besides Instrument.

    6115

    MassCancelRequestType

    Int(3)

    100=SenderSubID

    101=Account

    N

    If present – specifies the scope of the Order Mass Action Request within the context of Sender Comp ID. If absent then all orders belonging to Sender Comp ID will be cancelled for specified Mass Action Scope.

    1

    Account

    String(12)


    C

    Conditionally required if Mass Cancel Request Type=”Account” (Tag 6115=101). If provided then orders belonging to Account & Sender Comp ID will be cancelled for specified Mass Action Scope. Will be ignored if present for any other criteria specified in Mass Cancel Request Type besides Account or if Mass Cancel Request Type itself is absent.

    54

    Side

    Char(1)

    1=Buy

    2=Sell

    N

    If provided then only orders belonging to one side will be cancelled. If absent then orders belonging to both sides will be cancelled.

    40

    OrdType

    Char(1)

    2=Limit

    4=Stop Limit

    N

    If ‘2’ then all limit, market-limit, and market-protect orders will be cancelled.

    If ‘4’ then all stop and stop-limit orders will be cancelled.

    If this tag is present, only orders of this type will be cancelled. If not present all orders will be cancelled.

    59

    TimeInForce

    Char(1)

    0=Day

    1=Good Till Cancel (GTC)

    6=Good Till Date (GTD)

    N

    If this tag is present, only orders with this qualifier will be cancelled. If not present, all Day & GT orders will be cancelled.

    60

    TransactTime

    UTCTimeStamp(21)


    Y

    Time of execution/creation; expressed in UTC.

    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    1028

    ManualOrderIndicator

    Boolean(1)

    N=No (Electronic)

    Y=Yes (Manual)

    Y*

    Indicates if the request was initially received manually.

    iLink 2 Standard Message Trailer





     End of message.
  • Page:
    iLink 2 Order Mass Status Request

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - Client System to CME Globex




    35MsgTypeString(2)AF=Order Mass Status RequestYHeader tag identifying message type.

    584

    MassStatusReqID

    String(20)


    Y

    Unique identifier for Order Mass Status Request as assigned by the client system.

    585

    MassStatusReqType

    Int(3)

    1=Instrument

    3=Group Code

    7=All Orders

    100=Market Segment

    Y

    Specifies the scope of the Order Mass Status Request. The statuses of all working orders will be returned for one of the following:

    • 1=Instrument
    • 3=Group Code
    • 7=All Orders
    • 100=Market Segment 
    1300MarketSegmentIDInt(2)
    C

    Specifies the market segment for the Mass Order Status.

    Required when tag 585=100

    5000

    OrdStatusReqType

    Int(3)

    100=SenderSubID

    101=Account

    N

    Specifies the scope of the Order Mass Status Request within the context of tag 585-MassStatusRequestType and tag 49-SenderCompID for working orders only. Statuses will be returned for all orders matching the specified criteria specified.

    1

    Account

    String(12)


    C

    Unique account identifier.

    Note: Required if tag 5000-Order Status Request Type=101 (Account).

    55

    Symbol

    String(6)


    C

    This tag contains the instrument group code of the instrument.

    Note: Required if tag 585-MassStatusReqType=3 (Instrument Group).

    107

    SecurityDesc

    String(20)


    C

    Instrument identifier.
    Future Example: GEZ8
    Option Example: CEZ9 C9375

    Note: Conditionally required if 585-MassStatusReqType=1 (Instrument). Statuses for orders belonging to this particular instrument will be returned. If this field contains an invalid value, an Execution Report - Reject (no orders found) will be sent. This tag will be ignored if it is present when tag 585-MassStatusReqType does not equal 1 (Instrument).

    59

    TimeInForce

    Char(1)

    0=Day

    1=Good Till Cancel (GTC) 6=Good Till Date (GTD)

    N

    Specifies how long the order remains in effect. If not present, DAY order is the default.

    See Order Types for Futures and Options or Order Qualifiers for more information.

    If this tag is sent, statuses will only be sent for orders with this qualifier. If this tag is not sent, statuses for all Day and GT orders will be sent.

    60

    TransactTime

    UTCTimeStamp(21)


    Y

    Timestamp of the business event of submitting the Order Mass Status Request (e.g., when the submission button was clicked).

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=Yes (Manual)

    N=No (Electronic)

    Y

    Indicates if order was sent manually or generated by automated trading logic.

    iLink 2 Standard Message Trailer





    End of Message

  • Page:
    iLink 2 Order Status Request

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    Standard Header - Client to CME Globex




    35MsgTypeString(2)H=Order Status RequestYHeader tag identifying message type.

    11

    ClOrdID

    String(20)


    Y

    The tag 11-ClOrdID value for the Order Status Requests MUST be equal to the tag 11-ClOrdID value of the order whose status is being requested. In the case of an order chain, for best performance, us the tag 11-ClOrdID value of the last order in the chain.

    Refer to iLink - CME Globex Identifiers for more information.

    37

    OrderID

    String(17)


    Y*

    CME Globex assigned order identifier; globally unique for each message published.

    Note: Tag 37 value sent from client system to CME Globex must exactly match the value CME Globex assigned.

    54

    Side

    Char(1)

    1=Buy
    2=Sell

    Y

    Side of order.

    55SymbolString(6)
    NThis tag contains the Group Code of the instrument.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    'N' indicates the message was generated by automated trading logic.

    Note: iLink messages containing a value other than 'Y' or 'N' in this tag will be rejected.

    This tag is subject to Rule 536.B.2 Electronic Audit Trail Requirements for Electronic Order Routing/Front-End Systems.

    60

    TransactTime

    UTCTimestamp(21)


    Y*

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    107

    SecurityDesc

    String(20)


    Y*

    Unique instrument identifier.
    Future Example: GEZ8
    Option Example: GEZ9 C9375

    167

    SecurityType

    String(6)

    FUT=Future

    OPT=Option

    IRS=Interest Rate Swap

    FXSPOT=FX Spot

    N

    Indicates instrument is future or option.

    Note: for options strategy including UDS COMBO or COVERED, send OPT.

    For UDS Futures, send FUT.

    9717

    CorrelationClOrdID

    String(20)


    Y*

    This tag should contain the same value as the tag 11-ClOrdID of the original New Order (tag 35-MsgType=D) message and is used to correlate iLink messages associated with a single order chain.

    Refer to iLink - CME Globex Identifiers for more information.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Quote Acknowledgment

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - CME Globex to Client System




    35MsgTypeString(2)b=Quote AcknowledgmentYHeader tag identifying message type.

    131

    QuoteReqID

    String(23)


    C

    Conditionally required when acknowledgment (tag 35-MsgType=b) is in response to a Quote Request (tag 35-MsgType=R) message. Will contain the tag 131-QuoteReqID value from the corresponding Quote Request.

    297

    QuoteAckStatus

    Int(2)

    0=Accepted
    5=Rejected

    Y

    Indicates acceptance or rejection of Mass Quote.

    9770

    ExchangeQuoteReqID

    String(23)


    N

    CME Globex generated QuoteID.

    117

    QuoteID

    String(10)


    C

    Conditionally required when acknowledgment (tag 35-MsgType=b) is in response to a Mass Quote (tag 35-MsgType=i) or Mass Quote Cancel (tag 35-MsgType=Z) message. Will contain the tag 117-QuoteID value from the corresponding Mass Quote or Mass Quote Cancel message.

    300

    QuoteRejectReason

    Int(6)

    1=Unknown symbol (security)
    2=Exchange (Security) closed
    3=Quote request exceeds limit
    5=Unknown quote
    6=Duplicate quote
    7=Invalid bid/ask spread
    8=Invalid price
    9=Not authorized to quote security
    20=Too many rejects and cancel group code*
    98=Market maker protection*
    99=Missing account number or 'other' reason*
    *CME defined value

    N

    Contains reason (error code) the corresponding Mass Quote message has been rejected. When this tag is returned, all quotes in the corresponding Mass Quote message are rejected.

    7928SelfMatchPreventionIDString(12)
    NThis tag is required when market participants elect to use the optional Self Match Prevention functionality and will be returned on the Quote Acknowledgment.

    9771

    MMAccount

    String(12)


    Y*

    Tag 9771-MMAccount of the corresponding Mass Quote message.

    Note: This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized account values to CME Globex.

    9772

    NoProcessedEntries

    Int(5)


    Y*

    In response to tag 35-MsgType=i.
    Number of quotes that have been accepted from the corresponding inbound message, e.g. 0=all quotes rejected.

    9773

    MMProtectionReset

    Char(1)


    N

    This tag is sent and set to 'Y' on the first quote acknowledgment sent after Mass Quote Protection reset.

    58

    Text

    String(200)

    Will contain text accompanying quote reject reason value given in tag 300-QuoteRejectreason

    N

    Reason (error text) the message has been rejected.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    Value sent on inbound message from client system indicating the order as sent manually or generated by automated trading logic.

    1731AvgPxGroupIDString(20)
    N

    Used to identify account numbers or orders for grouping trades together for average price calculations.

    If incoming value is greater than max length, iLink will return the right-most twenty bytes.
    1598ClearingTradePriceTypeString(1)0 – Trade Clearing at Execution Price
    1 – Trade Clearing at Alternate Clearing Price
    NIndicates whether spread differential trade is clearing at execution price (tag 31-LastPx) or alternate clearing price (i.e. previous day’s settlement price).
    819AvgPXIndicatorInt(3)0 – No Average Pricing (Default)
    1 – Trade is part of an Average Price Group Identified by the AvgPxGroupID
    3 - Notional Value Average Pricing with Average Price Group Identified by the AvgPxGroupID
    N

    Indicates if the resulting trade is to be average priced.

    This tag is also used to indicate type of average price grouping.
    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    296NoQuoteSetsInt(2)
    YThe number of quote sets that follow in this message.

    →302

    QuoteSetID

    String(3)


    C

    Tag 302-QuoteSetID contains invalid quotes in the corresponding Mass Quote message.

    Present only for quote-level reject.

    →304

    TotQuoteEntries

    Int(3)


    C

    Always identifical to tag 295-NoQuoteEntries.

    Present only for quote-level reject.

    →295

    NoQuoteEntries

    Int(3)


    C

    Number of invalid quotes for this underlying contract (Quote Set).

    Present only for quote-level reject.

    →→299

    QuoteEntryID

    String(10)


    C

    Uniquely identifies a quote.

    Present only for quote-level reject.

    →→55

    Symbol

    String(6)


    N

    Group code.

    →→107

    SecurityDesc

    String(20)


    N

    Instrument identifier.
    Option Example: GEZ9 C9375

    →→167

    SecurityType

    String(3)

    OPT=Option

    N

    Indicates instrument is an option.

    →→48

    SecurityID

    Int(12)


    N

    Identifier of the instrument defined in tag →→ 107.

    →→22

    SecurityIDSource

    Char(1)

    4=ISIN number

    N

    Identifies class or source of the tag 48-SecurityID value.

    '4' sent for negative acknowledgment

    →→368

    QuoteEntryRejectReason

    Int(4)

    See table below.

    C

    Reason (error code) quote has been rejected.

    Present only for quote-level reject.

    5979RequestTimeInt(20)
    YInformation carried on a response to convey the time (UTC) when the request was received by the MSGW application. UTC timestamps are sent in number of nanoseconds since UNIX epoch with microsecond precision.
    5904DelayDurationInt
    N

    Indicates the amount of time in nanoseconds that a message was subject to additional processing as a result of being:

    • split among multiple packets (tag 9553=0)
    • out-of-order (tag 9553=1)
    • a previously submitted split message (tag 9553=2)

    Subtracting this number from tag 5979-RequestTime will represent original received time of in-flight message

    9553SplitMsgInt(1)

    0 – Split message 

    1 – Out-of-order message 

    2 – Complete message 

    N

    Indicates whether a message was subject to additional processing as a result of being:

    • split among multiple packets (0)
    • out-of-order (1)
    • a previously submitted split message (2)

    If absent, then the message was not subject to additional processing.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Quote Cancel

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - Client System to CME Globex




    35MsgTypeString(2)Z=Quote CancelYHeader tag identifying message type.

    117

    QuoteID

    String(10)


    Y

    Client system generated identifier of the message.
    Should be unique per message trading session.

    298

    QuoteCancelType

    Int(1)

    1=Cancel per instrument

    3=Cancel per group code

    4=Cancel all quotes

    100=Cancel per quote set

    Y

    Specifies level of quote cancel - by instrument, Product Code, Quote Set ID, or all.

    See Mass Quotes - Cancellation.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    'N' indicates the message was generated by automated trading logic.

    iLink messages containing a value other than 'Y' or 'N' in this tag will be rejected. 

    This tag is subject to Rule 536.B.2 Electronic Audit Trail Requirements for Electronic Order Routing/Front-End Systems.

    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    295NoQuoteEntriesInt(3)
    Y

    The number of quotes for the quote set.

    →55

    Symbol

    String(6)

    • For cancel per instrument, cancel per Product Code, and cancel Quote Set, must contain Product Code of contract.
    • Always [N/A] for Cancel All.

    Y

    Must be the first tag in the repeating group.
    This tag contains the Group Code of the instrument.

    →107

    SecurityDesc

    String(20)

    Instrument to be cancelled.

    C

    Instrument identifier.
    Example: ESZ0 C115

    →302QuoteSetIDString(3)
    N*Client system generated identifier of the message. Must be unique per mass quote message per trading session.
    →134BidSize

    Int(9)


    NA value of '0' sent in this tag cancels quotes on this side for the given instrument.
    →135OfferSize

    Int(9)


    NA value of '0' sent in this tag cancels quotes on this side for the given instrument.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Quote Cancel Acknowledgment

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - CME Globex to Client System




    35MsgTypeString(2)b=Quote Acknowledgment (Cancel)YHeader tag identifying message type.

    297

    QuoteAckStatus

    Int(3)

    1=Cancel per instrument accepted

    3=Cancel per group code accepted

    4=Cancel all accepted

    5=Rejected

    100=Cancel per Quote Set accepted

    Y

    The Quote Cancel Acknowledgment message will have one of three formats when received in response to a Quote Cancel message:

    117

    QuoteID

    String(10)


    Y*

    Identifier of the corresponding Quote Cancel message.

    300

    QuoteRejectReason

    Int(3)

    1=Unknown symbol (security)
    2=Exchange (Security) closed
    3=Quote request exceeds limit
    5=Unknown quote
    6=Duplicate quote
    7=Invalid bid/ask spread
    8=Invalid price
    9=Not authorized to quote security
    20=Too many rejects and cancel Product Code*
    98=Market maker protection*
    99=Missing account number or 'other' reason*
    *CME defined value

    N

    Contains reason (error code) why the Quote Cancel message was rejected.

    7928SelfMatchPreventionIDString(12)
    N

    This tag is required when market participants elect to use the optional Self Match Prevention functionality.

    Sent only for an unsolicited quote cancel triggered by Self-Match Prevention.

    9774

    CancelledSymbol

    String(2)


    Y*

    Group code being cancelled.

    9772

    NoProcessedEntries

    Int(5)


    Y*

    Number of quotes that have been accepted from the corresponding inbound message.

    9773

    MMProtectionReset

    Char(1)


    N

    This tag is sent and set to 'Y' only when  Mass Quote Cancellation has been triggered by Mass Quote Protection (tag 9775-UnsolicitedCancelType=F).

    9775

    UnsolicitedCancelType

    Char(1)

    Tag 9775-UnsolicitedCancelType Table of Values

    N

    Type of cancel (A-H) if initiated by CME Globex platform.

    58

    Text

    String(200)


    N

    Reason (error text) for quote cancel reject.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    Value sent on inbound message from client system indicating the order as sent manually or generated by automated trading logic.

    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    304

    TotQuoteEntries

    Int(3)


    N

    Always identifcal to tag 295-NoQuoteentries.

    295

    NoQuoteEntries

    Int(3)


    N

    The number of quote cancels that follow in this message.

    →299

    QuoteEntryID

    String(10)


    Y

    This tag contains the QuoteEntryID of the quote that failed to be cancelled or 'CME' if the quote could not be found, e.g. attempt to cancel an invalid contract.

    →55

    Symbol

    String(6)


    N

    Group code of the quote that failed to be cancelled.

    →107

    SecurityDesc

    String(20)


    N

    Instrument identifier.
    Future Example:  GEZ8
    Option Example:  GEZ9  C9375

    →167

    SecurityType

    String(3)

    FUT=Future
    OPT=Option

    N

    Indicates instrument is future or option.

    →48

    SecurityID

    Int(12)


    N

    Identifier of the instrument defined in tag 107-SecurityDesc.

    →22

    SecurityIDSource

    Char(1)

    8=Exchange symbol

    N

    Identifies class or source of the tag 48-SecurityID value.

    →368

    QuoteEntryRejectReason

    Int(4)

    Tag 368-QuoteEntryRejectReason Table of Values

    Y*

    This tag contains the reason (error code) why the cancellation failed.

    296NoQuoteSetsInt(2)
    NThe number of quote sets that follow in this message.
    →302QuoteSetIDString(10)
    YUnique ID for the Quote Set.
    →9030QuoteErrorReasonInt(4)

    1=Unknown symbol (Security)

    2=Exchange (Security) closed

    4=Too late to enter

    6=Duplicate quote set id (if CME Globex already processed this quote set id in the same message)

    9=Not authorized to quote security

    Y*This tag contains the reason (error code) why the quote set cancellation failed.
    5979RequestTimeInt(20)
    C

    Information carried on a response to convey the time (UTC) when the request was received by the MSGW application. UTC timestamps are sent in number of nanoseconds since UNIX epoch with microsecond precision.

    Sent only for a solicited quote cancel from Client System.

    Not required for an unsolicited quote cancel.

    5904DelayDurationInt
    N

    Indicates the amount of time in nanoseconds that a message was subject to additional processing as a result of being:

    • split among multiple packets (tag 9553=0)
    • out-of-order (tag 9553=1)
    • a previously submitted split message (tag 9553=2)

    Subtracting this number from tag 5979-RequestTime will represent original received time of in-flight message

    9553SplitMsgInt(1)

    0 – Split message 

    1 – Out-of-order message 

    2 – Complete message 

    N

    Indicates whether a message was subject to additional processing as a result of being:

    • split among multiple packets (0)
    • out-of-order (1)
    • a previously submitted split message (2)

    If absent, then the message was not subject to additional processing.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Quote Request

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - Client System to CME Globex






    35MsgTypeString(2)R=Quote RequestYHeader tag identifying message type.

    131

    QuoteReqID

    String(23)


    Y

    Unique identifier for quote request message.

    146

    NoRelatedSym

    Int(3)

    1

    Y

    Must=1; only one request supported per message.

    →55

    Symbol

    String(6)


    Y

    This tag contains the Group Code of the instrument.

    Note: Tag 55-Symbol must come directly after tag 146-NoRelatedSym or the message will be rejected.

    →38

    OrderQty

    Qty(9)


    N

    Order quantity.

    If tag 54= 1 (Buy) or 2 (Sell), this tag is required.

    If tag 54-Side=8 (Cross), this is optional.

    →54

    Side

    Char(1)

    1=Buy

    2=Sell

    8=Cross

    N

    Indicates Quote Request side as Buy or Sell.

    For Quote Request for Cross, to notify the market of intent to submit a Cross on CME Globex, tag 54-Side must = 8 prior to submitting the iLink 2 New Order Cross message.

    →60

    TransactTime

    UTCTimestamp(21)


    N

    UTC format YYYYMMDD-HH:MM:SS.sss
    e.g. 20091216-19:21:41.109

    →107

    SecurityDesc

    String(20)


    Y*

    Instrument identifier.
    Future Example: GEZ8
    Option Example: GEZ9 C9375

    →167

    SecurityType

    String(3)

    FUT=Future

    OPT=Option

    IRS=Interest Rate Swap

    FXSPOT=FX Spot

    Y*

    Indicates instrument is future or option.

    →9943QuoteTypeInt(1)1=TradableN

    When tag 54-Side = 1 (Buy) , 2 (Sell), or not present, this tag must be present and = 1 for tradable.


    Tag 9943 is not allowed for Quote Requests where 54-Side=8 (Cross). If this tag is present for a Quote Request for Cross, the message will be rejected with a Business Level Reject (tag 35=j) message.

    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    'N' indicates the message was generated by automated trading logic.

    Note: iLink messages containing a value other than 'Y' or 'N' in this tag will be rejected.

    This tag is subject to Rule 536.B.2 Electronic Audit Trail Requirements for Electronic Order Routing/Front-End Systems.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Resend Request
    TagNameFIX TypeEnumerationReqDescription

    Standard Header - Client System to CME Globex






    iLink 2 Standard Header - CME Globex to Client System






    35MsgTypeString(2)2=Resend RequestYHeader tag identifying message type.

    7

    BeginSeqNo

    Int(9)

    Valid sequence number for session.

    Y

    Message sequence number of first message in range to be resent.

    16

    EndSeqNo

    Int(9)

    0=Up to 2500 messages, when available.

    OR

    Valid sequence number for session

    Y

    Message sequence number of last message in range to be resent.

    When 16=0, CME Globex will send all messages with sequence numbers equal to or greater than the value in tag 7.

    When 16=a specific sequence number, CME Globex will send all messages with sequence numbers equal to or great than the value in tag 7, and equal to or less than the value in tag 16.

    CME Globex limits each resend request response to 2500 total messages.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Security Definition

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - CME Globex to Client System




    35MsgTypeString(2)d=Security DefinitionYHeader tag identifying message type.

    15

    Currency

    Currency(3)


    N

    Identifies currency used for price. Absence of this field is interpreted as the default currency for the security.

    22

    SecurityIDSource

    Char(1)

    4=ISIN number

    N

    Identifies class or source of the tag 48-SecurityID value.

    48

    SecurityID

    Int(12)


    N

    Identifier of the instrument defined in tag 107.

    58

    Text

    String(200)


    N

    Used for instructions to customer if needed, i.e. reject reason.

    107

    SecDesc

    String(20)


    N

    UDS Instrument identifier (e.g. UD:U$:CVT 0808123456).

    200

    MaturityMonthYear

    String(8)


    N

    Instrument expiration; earliest leg maturity in the options spread or combination.

    Format YYYYMM (i.e. 200912.)

    For daily products, this tag contains the full calendar date as reflected in the instrument symbol. Format YYYYMMDD (e.g. 20191205).

    For weekly options products, this tag contains the calendar month and week indicator reflected in the instrument symbol. Format YYYYMMwW (e.g., for the 4th week contracts, 201912W4).

    320

    SecurityReqID

    String(32)


    Y

    Unique identifier from tag 320 of the Security Definition Request (tag 35-MsgType=c) message.

    322

    SecurityResponseID

    String(32)


    Y

    CME Globex generated unique ID for the response.

    323

    SecurityResponseType

    Int(1)

    2=Accept security proposal
    with revisions as indicated
    in the message.
    5=Reject security proposal.

    Y*

    Type of response.
    Note: if tag 142-SenderLocationID is not present on the inbound Security Definition Request (tag 35-MsgType=c) message, the request will be rejected with tag 323=5.

    167SecurityTypeString(6)

    FUT=Future

    OPT=Option

    IRS=Interest Rate Swap

    FXSPOT=FX Spot

    C

    Security Type

    Note: For UDS for Futures, only returned in UDS acknowledgments (tag 323-SecurityResponseType=2). It is not returned in rejects (323-SecurityResponseType=5).

    55

    Symbol

    String(6)


    N

    Product Code.

    9779

    UserDefinedInstrument

    String(1)

    Y=User defined instrument 
    N=Not a user defined instrument

    C

    Identifies user-defined instruments. If the tag is not present, the instrument is not user-defined.

    827

    ExpirationCycle

    Int(1)

    0=Expire on trading session close (default)
    2=Trading eligibility expiration specified in the date and
    time fields.

    N

    For tag 827-ExpirationCycle=2, instrument expires as indicated in market data Security Definition (tag 35-MsgType=d) repeating block:

    • Tag 865-EventType=7 (Last Eligible Trade Date)
    • Tag 1145-EventTime

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    Value sent on inbound message from client system indicating manual or automated trading logic.

    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    Note: if tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.

    5979RequestTimeInt(20)
    NInformation carried on a response to convey the time (UTC) when the request was processed by the MSGW application. UTC Timestamps are sent in number of nanoseconds since Unix epoch synced to a master clock to microsecond accuracy.

    9776

    AutoQuoteRequest

    Boolean(1)

    Y = Quote Request (tag 35-MsgType=R) generated at UDS creation.

    Y*

    Always set to Y.

    Note: Not sent when tag 323-SecurityResponseType=5.

    555

    NoLegs

    Int(3)


    Y*

    Number of repeating groups in the message.

    Option Repeating Group






    →600

    LegSymbol

    String(6)


    Y*

    Product Code.

    →602

    LegSecurityID

    String(12)


    N

    Identfier of the instrument defined in tag 620-LegSecruityDesc.

    →603

    LegSecurityIDSource

    Char(1)

    8=Exchange symbol

    N

    Identifies class or source of the tag 48-SecurityID value.

    →608

    LegCFICode

    String(6)


    N

    CFI code for leg instrument.

    →610

    LegMaturityMonthYear

    String(8)


    N

    Expiration month and year.

    →612

    LegStrikePrice

    Price(19)


    N

    Strike requested.
    Included for outright options only.

    For UDS for futures, this will always be sent as 0.

    →620

    LegSecurityDesc

    String(20)


    Y*

    Instrument identifier.

    →623LeqRatioQtyInt(2)
    YSpecifies ratio for the leg instrument defined in this repeating group. Required for options legs.

    →624

    LegSide

    Char(1)

    1=Buy
    2=Sell

    Y*

    Leg side.

    →942

    LegStrikeCurrency

    Currency(3)


    N

    Strike currency.
    Included for outright options only.

    Future Repeating Group






    →600

    LegSymbol

    String(6)


    Y

    Product Code.

    →602

    LegSecurityID

    String(12)


    N

    Identifier of the instrument defined in tag 620-LegSecurityDesc.

    →603

    LegSecurityIDSource

    Char(1)

    8=Exchange symbol

    N

    Identifies class or source of the tag 48-SecurityID value.

    →608

    LegCFICode

    String(6)

     iLink 2 - CFICode Table of Values

    N

    CFI code for leg instrument.

    →620

    LegSecurityDesc

    String(20)


    Y*

    Instrument identifier.

    →623LegRatioQtyQty(2)
    C

    Specifies ratio for the leg instrument defined in this repeating group. For a Covered UDS this tag is optional for covering future leg(s).

    →624

    LegSide

    Char(1)

    1=Buy
    2=Sell

    Y*

    Leg side.

    →566

    LegPrice

    Price(15)


    N

    Price of the futures contract. 
    Note:

    • If this field contains more than 15 characters (including decimal and/or sign), the Security Definition Request will be rejected.
    • If this tag is present for an options repeating group, the message will be rejected.

    →1017

    LegOptionDelta

    Float(6.2)


    N

    For covered options only; delta used to calculate the quantity of futures used to cover the option or options spread or combination.
    Refer to User Defined Spread - UDS for more information.
    Float (6.2) = six-byte field with two decimal places.

    9553SplitMsgInt(1)

    0 – Split message 

    1 – Out-of-order message 

    2 – Complete message 

    N

    Indicates whether a message was subject to additional processing as a result of being:

    • split among multiple packets (0)
    • out-of-order (1)
    • a previously submitted split message (2)

    If absent, then the message was not subject to additional processing.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Security Definition Request

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    iLink 2 Standard Header - Client System to CME Globex




    35MsgTypeString(2)c=Security Definition RequestYHeader tag identifying message type.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y=manual
    N=automated

    Y*

    'N' indicates the message was generated by automated trading logic.


    iLink messages containing a value other than 'Y' or 'N' in this tag will be rejected.

    This tag is subject to Rule 536.B.2 Electronic Audit Trail Requirements for Electronic Order Routing/Front-End Systems.

    5149MemoString(75)
    N

    Allows users to submit a free-form Note tag with a customer order and persists from order entry through clearing

    If tag 5149-Memo value on inbound messages exceeds the max length of 75 bytes, iLink will return a truncated 75 bytes from the right on the response.
    320SecurityReqIDString(32)
    Y

    Unique identifier for this Security Definition Request message. Uniqueness of this value is incumbent upon the client system.

    321

    SecurityReqType

    String(10)

    1=Request security
    identity for the
    specifications provided

    Y

    Value must = 1.

    762

    SecuritySubType

    String(8)

    COMBO
    COVERED

    C

    This tag is case sensitive; values must be entered in upper case.

    If this tag is not present, 'COVERED' is assumed.

    Value must be sent as 'COMBO' for UDS for futures.

    555

    NoLegs

    Int(2)


    Y*

    Up to 40 legs (i.e., repeating groups) supported for UDS for futures and options. Up to 40 legs, with a maximum of 39 futures, for UDS Covereds.

    Options Repeating Group






    →600

    LegSymbol

    String(6)


    Y*

    This tag contains the Group Code of the requested Security Definition.

    • Must be present when tag 555-NoLegs is present.
    • Must be the first tag in the repeating group.
    • Must correspond to instrument defined in tag 620-LegSecurityDesc.

    →602

    LegSecurityID

    String(12)


    N

    Unique identifier of the instrument defined in tag 620-LegSecurityDesc.
    If invalid or not present, this tag will be corrected in the Security Definition (tag 35-MsgType=d) response.

    →603

    LegSecurityIDSource

    Char(1)

    8=Exchange symbol

    N

    Identifies class or source of the tag 48-SecurityID value.

    →608

    LegCFICode

    String(6)


    N

    See iLink 2 - CFICode Table of Values in the iLink iLink 2 Security Definition message.
    If invalid or not present, this tag will be corrected in the Security Definition.

    →620

    LegSecurityDesc

    String(20)


    Y*

    Symbol (i.e. GEZ0). This is the primary tag used to identify the contract.

    This tag must be populated with the corresponding tag 55-Symbol value from the market data Security Definition (tag 35-MsgType=d) message

    Message will be rejected if instrument is:

    • Invalid
    • Not active
    • Expired
    • Closed or paused
    • Nonexistent

    →623

    LegRatioQty

    Int(2)


    Y*

    Specifies ratio for the instrument defined in this repeating group.

    The maximum value for this tag is 20 for UDS legs.

    →624

    LegSide

    Char(1)

    1=Buy

    2=Sell

    Y*

    For Covereds, must be present for option repeating group and must = 1 (buy).

    For Combos, the first instrument in the repeating group must = 1 (buy)*.

    *All UDS contracts are defined from the buy side perspective (i.e. buying the spread) with the exceptions of the exchange-recognized options spread types:

    Jelly Roll (JR)

    Iron Butterfly (IB)

    Iron Condor (IC)

    in which the first instrument in the repeating group=2 (sell).

    Future Repeating Group for Covereds Only






    →600

    LegSymbol

    String(6)


    Y

    Group Code of the Futures contract.

    • Must be present when tag 555-NoLegs is present.
    • Must be first tag in repeating group.
    • Must correspond to instrument defined in tag 620-LegSecurityDesc.*


    *For a CBOT Treasury Covered UDS, any combination of the following futures may be used:

    • 5-Year T-Note futures (tag 6937-Asset=ZF)
    • 10-Year T-Note futures (6937=ZN)
    • Ultra 10-Year U.S. Treasury Note futures (6937=TN)
    • U.S. Treasury Bond futures (6937=ZB)
    • Ultra U.S. Treasury Bond futures (6937=UB)

    →602

    LegSecurityID

    String(12)


    N

    Unique identifier of the instrument defined in tag 620-LegSecurityDesc.
    If invalid or not present, this tag will be corrected in the iLink 2 Security Definition response.

    →603

    LegSecurityIDSource

    Char(1)

    8=Exchange symbol

    N

    Identifies class or source of the tag 48-SecurityID value.

    →608

    LegCFICode

    String(6)


    N

    See iLink 2 - CFICode Table of Values in the iLink 2 Security Definition message.
    If invalid or not present, this tag will be corrected in the Security Definition.

    →620

    LegSecurityDesc

    String(20)


    Y*

    Symbol of the future contract. This is the primary tag used to identify the contract. 

    This tag must be populated with the corresponding tag 55-Symbol value from the market data iLink 2 Security Definition message.

    Message will be rejected if instrument is:

    • Invalid
    • Not active
    • Expired
    • Closed or paused
    • Nonexistent

    →624

    LegSide

    Char(1)

    1=Buy
    2=Sell

    Y*

    Indicates side for future leg.

    →566

    LegPrice

    Price(15)


    Y*

    Price of covering futures contract. Send only for a Covered options UDS.

    • If this tag contains more than 15 characters (including decimal and/or sign), the Security Definition Request message will be rejected.
    • If this tag is present for an options repeating group, the message will be rejected. See explanation for tag 44-Price.
    Must not be sent for UDS for futures.

    →1017

    LegOptionDelta

    Float(6.2)

    Covered outright:
    +0.01 = +1.00

    Covered
    spread:
    +0.01 = +40.00

    Y*

    Delta used to calculate the quantity of futures used to cover the option or options spread.

    See UDS - Covered Options Instruments  for additional information.

    Six-byte field that can accommodate two decimal places.

    • For covered option outright instrument, must be between +0.01 and +1.00.
    • For a covered options spread, must be between +0.01 and +40.00.
      If this tag is present for an options repeating group, the message will be rejected.
    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Sequence Reset
    TagNameFIX TypeEnumerationReqDescription

    Standard Header - Client System to CME Globex






    iLink 2 Standard Header - CME Globex to Client System





    Same as above.

    35MsgTypeString(2)4=Sequence ResetYHeader tag identifying message type.

    36

    NewSeqNo

    Int(9)


    Y

    New sequence number. This number cannot be lower than the expected incoming sequence number of either the client system or CME Globex who originally sent the resend request.

    123

    GapFillFlag

    Boolean(1)

    Y=Gap Fill message, tag 34-MsgSeqNum is valid.
    N=Sequence Reset, ignore tag 34-MsgSeqNum.

    N

    Indicates that the Sequence Reset message is replacing administrative or application messages, which will not be resent.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Session Level Reject
    TagNameFIX TypeEnumerationReqDescription
    iLink 2 Standard Header - CME Globex to Client System



    When any of the following mandatory tags are submitted blank by the client system to CME Globex:

      • tag 49-SenderCompID
      • tag 50-SenderSubID
      • tag 142-SenderLocationID

    the Reject message will return that tag with the string value "null".

    35MsgTypeSting(2)3=Session Level RejectYHeader tag identifying message type.

    45

    RefSeqNum

    Int(9)


    Y

    Tag 34-MsgSeqNum of the rejected message.

    58

    Text

    String(200)


    N

    Provides the reason the order was rejected.

    See Session Layer Validation Conditions for more information.

    371

    RefTagID

    String(23)


    N

    Contains the tag 117-QuoteID value from Mass Quote Request when the request is rejected by exceeding the Mass Quote messaging threshold limit. Sent for Mass Quote message violations only.

    373SessionRejectReasonInt(2)

    70 = Mass Quote message violations

    71 = Mass Quote entry violations

    72 = Messaging Control message violations

    73 = Messaging Control cancel violations

    NIndicates reject reason for Mass Quote Governor rejects and Messaging Control rejects.

    1028

    ManualOrderIndicator

    Boolean(1)

    Y = manual
    N = automated

    Y*

    Indicates if order was sent manually or generated by automated trading logic.

    Not present on Session-level messages.

    9553SplitMsgInt(1)

    0 – Split message 

    1 – Out-of-order message 

    2 – Complete message 

    N

    Indicates whether a message was subject to additional processing as a result of being:

    • split among multiple packets (0)
    • out-of-order (1)
    • a previously submitted split message (2)

    If absent, then the message was not subject to additional processing.

    iLink 2 Standard Message Trailer





    End of message.

  • Page:
    iLink 2 Standard Header - Client System to CME Globex
    TagNameFIX TypeEnumerationReqDescription

    8

    BeginString

    String(7)

    FIX Version for session, i.e. 'FIX.4.2'

    Y

    Identifies beginning of new message and contains FIX protocol version.

    9

    BodyLength

    Int(6)


    Y

    Number of bytes in message body.

    35

    MsgType

    String(2)

    See FIX protocol for list of message types.

    Y

    Identifies FIX message type.

    34

    MsgSeqNum

    Int(9)


    Y

    Sequence number sent by client system.

    43

    PossDupFlag

    Boolean(1)


    N

    Indicates possible retransmission of message with this sequence number. Must be set to 'Y' for messages sent in response to a Resend Request from CME Globex.

    49

    SenderCompID

    String(7)

    For FTI byte only:

    P=Primary
    B=Backup
    U=Undefined
    N=None

    Y

    This tag consists of 2 subcomponents and a constant: Session ID, Firm ID and Fault Tolerance Indicator (FTI). Session ID is the left-most 3 characters. The next 3 characters represent Firm ID. The last character is always set to FTI.
    Example: ABC123N
    Session ID: ABC
    Firm ID: 123
    FTI: N (for no fault tolerance).

    50

    SenderSubID

    String(18)


    Y*

    Operator ID. This tag is subject to Rule 576 Identification of CME Globex Terminal Operators.

    iLink supports a value up to 32 bytes on inbound messages, but will return a truncated 20 bytes from the right on the response TargetSubID.

    Additionally, Regulatory systems will truncate to 18 bytes from the right.

    CME Group recommends all customers limit tag 50 to 18 bytes.

    In FirmSoft and Global Command Center queries for order status and cancellations, the value in tag 50 must be exact.

    This tag must:

    • be at least 2 bytes (characters) in length
    • include alpha and/or numeric characters

    This tag may include only the following non-alpha numeric characters

      • _ underscore
      • - dash
      • : colon
      • @ (commercial) at
      • . period

    52

    SendingTime

    UTCTimestamp(21)


    Y

    Timestamp of the message leaving the client system.

    369

    LastMsgSeqNumProcessed

    Int(9)


    N

    Last message sequence number processed by the client system.

    Note

    This tag is optional in production but required for iLink certification via Autocert+.

    56

    TargetCompID

    String(7)

    CME

    Y

    Identifies entity receiving the message (CME).

    57

    TargetSubID

    String(20)

    G=CME Globex

    Y*

    Operator ID receiving the message.

    CME Globex will echo back tag 57-TargetSubID values in tag 50-SenderSubID.

    122

    OrigSendingTime

    UTCTimestamp(21)


    C

    For resent messages only, contains timestamp from tag 52-SendingTime from original message.

    • REQUIRED for all messages submitted in response to a Resend Request (including Gap Fill messages).
    • MUST NOT BE PRESENT IN NEW MESSAGE (NON-RESENT)

    142

    SenderLocationID

    String(32)


    Y*

    ISO identifier of the physical location of the individual or team head trader identified by the tag 50 (Operator ID) in the message. For further information on Tag 50 (Operator ID) refer to Rule 576-CME Globex Tag 50 ID Requirements.

    The first two bytes as per ISO 3166-1, identify the country (e.g., JP = Japan, CN = China).

    The next three bytes indicate a comma-delimited state or province code (e.g., CA = California, QC = Quebec).

    For valid values, refer to https://www.cmegroup.com/ftp/fix/coo

    Market Regulation requires only the submission of the two first characters of tag 142–SenderLocationID for all countries with the exception of Canada. For Canada, the 5 bytes including the province code must be submitted.

    Note: for Cancel/Replace (tag 35-MsgType=G) messaging, the tag 142 value submitted in the original New Order will not persist for the lifetime of the order.

  • Page:
    iLink 2 Standard Header - CME Globex to Client System

    Tag

    Name

    FIX Type

    Enumeration

    Req

    Description

    8

    BeginString

    String(7)

    FIX version for session, i.e. 'FIX.4.2'

    Y

    Identifies beginning of new message and contains FIX protocol version.

    9

    BodyLength

    Int(6)


    Y

    Number of bytes in message body.

    35

    MsgType

    String(2)

    See FIX protocol for list of message types

    Y

    Identifies FIX message type.

    34

    MsgSeqNum

    Int(9)


    Y

    Sequence number sent by CME Globex.

    43

    PossDupFlag

    Boolean(1)

    Y=Possible duplicate
    N=Original transmission

    N

    During a normal processing state, tag 43-PossDupFlag is typically not present. If tag 43-PossDupFlag is present, it is set to N.
    During a resend state, tag 43-PossDupFlag is set to Y to indicate a possible re-transmission of message with this sequence number.

    49

    SenderCompID

    String(7)

    CME

    Y

    Value from order entry tag 56-TargetCompID.

    50

    SenderSubID

    Char(1)

    G=CME Globex

    Y

    Operator ID. This tag is subject to Rule 576 Identification of CME Globex Terminal Operators.

    In FirmSoft and Global Command Center queries for order status and cancellations, the value in tag 50 must be exact.

    52

    SendingTime

    UTCTimestamp(21)


    Y

    Timestamp sent by CME Globex at time of message processing.

    56

    TargetCompID

    String(7)


    Y

    This tag consists of 2 subcomponents and a constant: session ID, Firm ID and Fault Tolerance Indicator (FTI). Session ID is the left-most 3 characters. The next 3 characters represent Firm ID. The last character is always the FTI that was sent back on the log-on ack.
    Example: ABC123N
    Session ID: ABC
    Firm ID: 123
    FTI: N (for no fault tolerance)

    57

    TargetSubID

    String(20)


    Y*

    Operator ID receiving the message.

    Notes:

    • This tag value is always uppercase, regardless of the case in the inbound message tag. Client systems are not required to submit capitalized identifier to CME Globex.
    • For an Order Status Request Acknowledgment - Execution Report, CME Globex will echo back tag 57-TargetSubID values from tag 50-SenderSubID and tag 1028 submitted by the client system in the corresponding order message.

    97

    PossResend

    Boolean(1)

    Y

    N

    Y indicates message is a possible resend.

    122

    OrigSendingTime

    UTCTimestamp(21)


    N**

    For resent messages only, contains timestamp from tag 52-SendingTime from original message. **REQUIRED for all messages submitted in response to a Resend Request (including Gap Fill messages). ** MUST NOT BE PRESENT IN NEW MESSAGE (NON-RESENT)

    UTC Timestamps are sent in number of nanoseconds since Unix epoch synced to a master clock to microsecond accuracy.

    369

    LastSeqNumProcessed

    Int(9)


    Y*

    Last message sequence number processed by CME Globex.

    143

    TargetLocationID

    String(32)


    Y*

    Contains value sent by client system in tag 142-SenderLocationID.

    For an Order Cancel - Execution Report, this tag will contain the value of tag 142 - SenderLocationID from the Order Cancel Request.

  • Page:
    iLink 2 Test Request
    TagNameFIX TypeEnumerationReqDescription

    Standard Header - Client System to CME Globex 
    iLink 2 Standard Header - CME Globex to Client System





    This identifier should be returned in the iLink 2 Heartbeat response.

    35MsgTypeString(2)1=Test RequestYHeader tag identifying message type.

    112

    TestReqID

    String(20)


    Y


    iLink 2 Standard Message Trailer





    End of message.