Order Status Request

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:


Response

The Order Status Request is responded to with an Execution Report:

Optionally, the request can include:


Identifying the Order to be Queried

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


Important Considerations

* 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:

  1. Account is not subscribed
  2. Order no longer exists in the book

Message Dictionary

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

Sample Messages

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

T4 FIX API Home