Overview
The Execution Report is a receive-only FIX message (MsgType ="8") sent by the gateway to confirm order receipt, relay fill information, confirm cancellations, report order status, and communicate rejections.
Field Layout
| Tag | Field | Description | Req’d | Type | Values |
|---|---|---|---|---|---|
| 1 | Account | Trading account | Y | String | |
| 6 | AvgPx | Average fill price across all fills | N | Price | |
| 11 | ClOrdID | Client’s order identifier | Y | String | |
| 14 | CumQty | Total quantity filled so far | Y | Qty | |
| 17 | ExecId | Execution ID assigned by the gateway | Y | String | |
| 19 | ExecRefID | Reference ID for Trade Cancel / Trade Correct | N | String | |
| 31 | LastPx | Price of this (last) fill | N | Price | |
| 32 | LastQty | Quantity of this (last) fill | N | Qty | |
| 37 | OrderId | OrderId assigned by the gateway | Y | String | |
| 38 | OrderQty | Original order quantity | Y | Qty | |
| 39 | OrdStatus | Current order status | N | Char | See table below |
| 40 | OrdType | Order type | Y | Char | 1=Market, 2=Limit, 3=Stop, 4=Stop Limit |
| 41 | OrigClOrdID | Original ClOrdID (for cancel/replace) | C | String | |
| 44 | Price | Price per unit (if fill reported) | N | Price | |
| 54 | Side | Order side | Y | Char | 1=Buy, 2=Sell |
| 55 | Symbol | Security symbol | Y | String | |
| 58 | Text | Free-text description / rejection reason | N | String | |
| 59 | TimeInForce | Time-in-force | Y | Char | 0=Day, 1=GTC |
| 60 | TransactTime | Transaction timestamp | Y | UTCTimestamp | |
| 103 | OrdRejReason | Rejection reason code | N | Int | See table below |
| 150 | ExecType | Execution type (what happened) | N | Char | See table below |
| 151 | LeavesQty | Remaining quantity to fill | N | Qty | |
| 167 | SecurityType | Security type | N | String | CS, OPT, MLEG |
OrdStatus Values (Tag 39)
0=New, 1=Partially Filled, 2=Filled, 3=Done for Day, 4=Canceled, 5=Replaced, 6=Pending Cancel, 7=Stopped, 8=Rejected, 9=Suspended, A=Pending New, B=Calculated, C=Expired, D=Accepted for Bidding, E=Pending Replace.
ExecType Values (Tag 150)
0=New (acknowledged), 1=Partial Fill, 2=Fill, 3=Done for Day, 4=Canceled, 5=Replace, 6=Pending Cancel, 7=Stopped, 8=Rejected, 9=Suspended, A=Pending New, B=Calculated, C=Expired, D=Restated, E=Pending Replace, F=Trade (partial fill or fill), G=Trade Correct, H=Trade Cancel, I=Order Status (response to status request).
OrdRejReason Values (Tag 103)
0=Broker/Exchange option, 1=Unknown symbol, 2=Exchange closed, 3=Order exceeds limit, 4=Too late to enter, 5=Unknown order, 6=Duplicate order (duplicate ClOrdID), 7=Duplicate of verbally communicated order, 8=Stale order, 9=Trade along required, 10=Invalid investor ID, 11=Unsupported order characteristic, 12=Surveillance option, 13=Incorrect quantity, 14=Incorrect allocated quantity, 15=Unknown account(s), 99=Other.
Example — Order Acknowledged
Example — Partial Fill
Example — Order Rejected
REST Equivalent
Order status and fill data is available viaPOST /api/external/get-orders and POST /api/Blotter/GetBlotterOrderInfo. FIX audit logs are available via GET /api/Blotter/OrderFixLogs.