iLink 2 Execution Report - Fill Notice

The Execution Report - Fill Notice (tag 35-MsgType=8, tag 39-OrdStatus=1 or 2) message is sent upon fill or partial fill of client order.

Tag

Name

Enumeration

Req

Description

iLink 2 Standard Header - CME Globex to Client System











35

MsgType

String(2)

8=Execution Report

Y

Header 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.

37711

MDTradeEntryID

Int(10)



N

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 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.

1731

AvgPxGroupID

String(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.

1598

ClearingTradePriceType

String(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).

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.

819

AvgPXIndicator

Int(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.

5149

Memo

String(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.

7928

SelfMatchPreventionID

String(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.

5979

RequestTime

Int(20)



Y

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.

64

SettlDate

LocalMktDate
(8)



N

Specific 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.

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




How was your Client Systems Wiki Experience? Submit Feedback

Copyright © 2024 CME Group Inc. All rights reserved.