FIX 4.4: ExecutionReport¶
The Execution Report (MsgType = 8) is the main trading response
message used by the current ScaleTrade FIX server.
At the moment it is returned as the direct response to
NewOrderSingle (35=D).
Execution Report (MsgType = 8)¶
Example¶
8=FIX.4.4|9=191|35=8|34=2|49=SERVER|52=20260408-20:34:22.499|56=CLIENT_1|
6=0|11=ORD-1775680462350-830df5|14=0|17=EXEC-1775680462|
37=ORD-1775680462350-830df5|39=8|54=1|55=EURUSD|58=Trade disabled|
150=8|151=0|10=064|
Fields Used by Current Implementation¶
| Tag | Name | Description |
|---|---|---|
| 35=8 | MsgType | Execution Report |
| 37 | OrderID | Server-side order identifier |
| 11 | ClOrdID | Client order identifier from NewOrderSingle |
| 17 | ExecID | Execution identifier |
| 150 | ExecType | Execution result type |
| 39 | OrdStatus | Order status |
| 55 | Symbol | Instrument |
| 54 | Side | 1 = Buy, 2 = Sell |
| 151 | LeavesQty | Remaining quantity |
| 14 | CumQty | Executed quantity |
| 6 | AvgPx | Average price |
| 58 | Text | Rejection or status text |
Current Status Mapping¶
Accepted¶
150=039=0
Meaning:
- order accepted by server routing
- position open request passed FIX transport validation and internal routing
Rejected¶
150=839=8
Meaning:
- order was rejected by internal trade checks or routing
- rejection reason is usually returned in
58=Text
Example reasons:
Trade disabled- validation errors
- permissions or account-state restrictions
Current Scope¶
Right now ExecutionReport is implemented as an immediate response to
order submission.
Not yet documented/implemented in the current server scope:
- partial fills
- cancel confirmations
- order-status replay
- mass-status snapshots
- post-trade lifecycle push updates for all trade events