This is an old revision of the document!
EXECUTION REPORT [35=8]
The Execution Report message notifies clients of order state changes and execution events. This message confirms order receipt, modifications, fills, rejections, and all order lifecycle events.
Report Types
ExecType (150) Values:
| Code | Status | Description |
|---|---|---|
| 0 | New | Order accepted |
| 3 | Done for Day | Order expired at close |
| 4 | Canceled | Order canceled |
| 5 | Replace | Order modified |
| 6 | Pending Cancel | Cancel request pending |
| 7 | Stopped | Order stopped |
| 8 | Rejected | Order rejected |
| 9 | Suspended | Order suspended |
| A | Pending New | New order pending |
| C | Expired | Order expired |
| E | Pending Replace | Replace pending |
| F | Trade | Execution/fill |
| I | Order Status | Status update |
Order Status (OrdStatus)
| Code | Status |
|---|---|
| 0 | New |
| 1 | Partially Filled |
| 2 | Filled |
| 3 | Done for Day |
| 4 | Canceled |
| 5 | Replaced |
| 6 | Pending Cancel |
| 8 | Rejected |
| 9 | Suspended |
| A | Pending New |
ExecID Structure
- Trade: OrderID_TradeSeqNum_T
- Leg Trade: OrderID_LegTradeSeqNum_TL
- Status: OrderID_SeqNum_F/S/U/H
Message Specification
Message Direction: T4 → Client
| Tag | Field Name | Type | Req'd | Description |
|---|---|---|---|---|
| Message Header | Y | MsgType = 8 | ||
| 1 | Account | String | Y | Account code |
| 11 | ClOrdID | String | Y | Client order ID |
| 41 | OrigClOrdID | String | O | Previous ClOrdID |
| 37 | OrderID | String | Y | T4-generated order ID |
| 17 | ExecID | String | Y | Unique execution ID |
| 150 | ExecType | Char | Y | Execution type (see table) |
| 39 | OrdStatus | Char | Y | Current order status |
| 20 | ExecTransType | Int | O | 0=Overnight, 2=BackOffice, 3=Pit |
| 48 | SecurityID | String | Y | T4 Market ID |
| 55 | Symbol | String | Y | T4 Contract ID |
| 207 | SecurityExchange | String | Y | T4 Exchange ID |
| 167 | SecurityType | String | Y | FUT, OPT, STK, SYN, BIN |
| 201 | PutOrCall | Int | C | Options: 0=Put, 1=Call |
| 202 | StrikePrice | Float | C | Options: Strike price |
| 54 | Side | Char | Y | 0=None, 1=Buy, 2=Sell |
| 38 | OrderQty | Int | Y | Total order quantity |
| 40 | OrdType | Char | O | 1=Market, 2=Limit, 3=Stop, 4=Stop Limit |
| 44 | Price | Float | C | Limit price |
| 99 | StopPx | Float | C | Stop price |
| 31 | LastPx | Float | C | Fill price (trades only) |
| 32 | LastQty | Int | C | Fill quantity (trades only) |
| 14 | CumQty | Int | O | Total filled quantity |
| 151 | LeavesQty | Int | O | Remaining open quantity |
| 59 | TimeInForce | Char | Y | 0=Day, 1=GTC, 3=IOC, 4=FOK |
| 60 | TransactTime | UTCTimestamp | O | Transaction time |
| 200 | MaturityMonthYear | String | O | Format: YYYYMM |
| 107 | SecurityDesc | String | O | Security description |
| 21 | HandlInst | Char | O | 1=Automated private, 2=Automated public, 3=Manual |
| 204 | CustomerOrFirm | Int | O | 0=Customer, 1=Firm |
| 77 | OpenClose | Char | O | O=Open, C=Close |
| 58 | Text | String | O | Rejection reason or status text |
| 103 | OrdRejReason | Int | C | Rejection code |
| 337 | ContraTrader | String | O | Counterparty trader |
| 375 | ContraBroker | String | O | Counterparty broker |
| 442 | MultiLegReportingType | Int | O | 1=Single, 2=Individual leg, 3=Multileg |
| 66 | ListID | String | O | Batch order identifier (OCO, AutoOCO) |
| 198 | SecondaryOrderID | String | O | Secondary order ID |
| 526 | SecondaryClOrdID | String | O | Exchange ClOrdIDs |
| 584 | MassStatusReqID | String | O | Associated collateral inquiry ID |
| 912 | LastReportRequested | Boolean | O | Y=Last report in sequence |
| 1028 | ManualOrderIndicator | Boolean | O | Y=Manual, N=Automated |
| 1385 | ContingencyType | Int | O | 1=OCO, 2=AutoOCO, 3=Spark, 8=AutoOCOM |
| 210 | MaxShow | Int | O | Iceberg visible quantity |
| 10100 | TrailingDelta | Float | O | Trailing stop amount |
| 10101 | TriggerPrice | Float | O | Auto OCO trigger price |
| 10102 | ActivationType | Int | O | 1=Immediate, 2=Above, 3=Below, 4=Mode, 5=Time, 6=Queue |
| 10103 | ActivationValue | String | O | Activation conditions (semicolon-delimited) |
| 453 | NoPartyIDs | Int | O | Number of party groups |
| →448 | PartyID | String | C | Party identifier |
| →447 | PartyIDSource | Char | C | D=Proprietary |
| →452 | PartyRole | Int | C | 44=Order entry operator |
| Message Trailer | Y |
Sample Messages
Note: Pipe (|) used for readability. Actual FIX messages use SOH (ASCII 01) delimiter.
New Order Acknowledged:
8=FIX.4.2|9=350|35=8|49=T4|56=T4Example|50=T4FIX|52=20130709-22:30:54.794| 143=US,IL|1=Account1|11=fn-635089878547629169| 17=0.6.1.48024.6481305817_ESU3.635089878581150000.601A5E7B|150=0| 37=601A5E7B-8140-478A-AB45-E4916AC8CF3B|39=0|48=CME_20130900_ESU3|55=ES| 207=CME_Eq|200=201309|59=0|107=E-mini S&P 500 Sep13|54=2|167=FUT|38=40| 40=2|44=164025|60=20130709-22:30:58.115|21=1|204=0|10=234|
Partial Fill:
8=FIX.4.2|9=400|35=8|49=T4|56=T4Example|50=T4FIX|52=20130709-22:30:54.934| 143=US,IL|1=Account1|11=fn-635089878547629169| 17=1.1.64272:M:132407TN0000685.635089878581150000.601A5E7B|150=F| 37=601A5E7B-8140-478A-AB45-E4916AC8CF3B|39=1|48=CME_20130900_ESU3|55=ES| 207=CME_Eq|200=201309|59=0|107=E-mini S&P 500 Sep13|54=2|167=FUT|38=40| 40=2|44=164025|31=164175|32=1|14=1|151=39|60=20130709-22:30:58.090| 21=1|204=0|337=TRADE|375=CME000A|10=234|
Notes
- Multiple execution reports generated for order lifecycle events
- Overnight positions reported with ExecTransType=0, PossResend=Y
- OCO/AutoOCO components linked via ListID (66)
- Verbose reporting controlled via Logon (Tag 372)
- External orders generate reports for subscribed accounts