Requesting the Status of an Order
The Order Status Request message (`MsgType=H`) is used by FIX API clients to electronically query the instantaneous state of an order.
The order is identified primarily by:
From the client’s perspective, the order can also be identified with:
The Order Status Request is responded to with an Execution Report:
Optionally, the request can include:
* Orders can be queried by OrderID (`Tag 37`) even if not entered via FIX API (e.g., via CTS Front-End or custom T4 API). * Outside FIX API, OrderID is also called UniqueID. * Malformed requests (missing/empty/invalid tags) are rejected with a FIX Session Reject.
* Maintain a client-side order collection for reconciliation. * This message complements Order Mass Status Request. * If AutoPortfolio Refresh is enabled (default), session orders are presented at session start. * Maximum 50 Order Status Requests per FIX session. * Responses with Unknown Status (`39=U`) occur if:
Tag | Field Name | Req'd | Comments |
---|---|---|---|
Standard Header | Y | MsgType = H | |
1 | Account | N | Account code for which status request is submitted |
11 | ClOrdID | N | Client-side identifier (max 20 chars) |
37 | OrderId | Y | Unique order ID assigned by T4 servers |
48 | SecurityID | Y | T4 Market ID |
55 | Symbol | N | T4 Contract ID |
207 | SecurityExchange | N | T4 Exchange ID |
167 | SecurityType | N | FUT=Futures, OPT=Options, STK=Stock, SYN=Synthetic, BIN=Binary Option |
54 | Side | Y | 0=None (Flatten), 1=Buy, 2=Sell |
109 | ClientID | N | Optional client identifier, echoed back as MassStatusReqID in Execution Report |
107 | SecurityDesc | N | Description of Security ID |
1028 | ManualOrderIndicator | N | Y=Manual, N=Automated |
Standard Trailer | Y |
Submitting an Order Status Request:
1 - STATUSREQUEST 34=4|49=T4Test|56=test|52=20160725-20:39:01.415|1=_Account_|11=fc-636050440308221244|37=D33CF7F0-206A-48F8-8C8E-22745339FA05|48=XCME_Eq ES (U16)|54=1|55=ES|207=CME_Eq|109=osr-636050579414153893|167=FUT| [MsgSeqNum] 34 = 4 [SenderCompID] 49 = T4Test [TargetCompID] 56 = test [SendingTime] 52 = 20160725-20:39:01.415 [Account] 1 = _Account_ [ClOrdID] 11 = fc-636050440308221244 [OrderID] 37 = D33CF7F0-206A-48F8-8C8E-22745339FA05 [SecurityID] 48 = XCME_Eq ES (U16) [Side] 54 = 1 (BUY) [Symbol] 55 = ES [SecurityExchange] 207 = CME_Eq [ClientID] 109 = osr-636050579414153893 [SecurityType] 167 = FUT (FUTURE) 2 - EXECUTIONREPORT 34=16|49=test|56=T4Test|50=T4FIX|52=20160725-20:39:01.417|143=US,IL|97=Y|1=_Account_|11=fc-636050440308221244|41=fr-636050433226127451|17=D33CF7F0-206A-48F8-8C8E-22745339FA05_9_U|150=I|37=D33CF7F0-206A-48F8-8C8E-22745339FA05|39=4|48=XCME_Eq ES (U16)|55=ES|207=CME_Eq|200=201609|59=0|107=E-mini S&P 500 Sep16|54=1|167=FUT|38=1|40=2|44=215375|912=Y|60=20160725-16:47:19.425|21=1|204=0|584=osr-636050579414153893| [MsgSeqNum] 34 = 16 [SenderCompID] 49 = test [TargetCompID] 56 = T4Test [SenderSubID] 50 = T4FIX [SendingTime] 52 = 20160725-20:39:01.417 [TargetLocationID] 143 = US,IL [PossResend] 97 = Y (YES) [Account] 1 = _Account_ [ClOrdID] 11 = fc-636050440308221244 [OrigClOrdID] 41 = fr-636050433226127451 [ExecID] 17 = D33CF7F0-206A-48F8-8C8E-22745339FA05_9_U [ExecType] 150 = I (ORDER_STATUS) [OrderID] 37 = D33CF7F0-206A-48F8-8C8E-22745339FA05 [OrdStatus] 39 = 4 (CANCELED) [SecurityID] 48 = XCME_Eq ES (U16) [Symbol] 55 = ES [SecurityExchange] 207 = CME_Eq [MaturityMonthYear] 200 = 201609 [TimeInForce] 59 = 0 (DAY) [SecurityDesc] 107 = E-mini S&P 500 Sep16 [Side] 54 = 1 (BUY) [SecurityType] 167 = FUT (FUTURE) [OrderQty] 38 = 1 [OrdType] 40 = 2 (LIMIT) [Price] 44 = 215375 [LastRptRequested] 912 = Y (YES) [TransactTime] 60 = 20160725-16:47:19.425 [HandlInst] 21 = 1 (AUTOMATED_EXECUTION_NOBROKER) [CustomerOrFirm] 204 = 0 (CUSTOMER) [MassStatusReqID] 584 = osr-636050579414153893