developers:fixapi:newordersingle

NEW ORDER SINGLE [35=D]

The New Order Single message submits orders to exchanges for execution. This message supports all instrument types including futures, options, spreads, and multileg strategies.

  • Account must be subscribed before order submission (automatic by default)
  • Unique ClOrdID required for each order (12-20 characters)
  • Security identification tags must match instrument type
Order Type OrdType (Tag 40) Required Price Fields
Market 1 None
Limit 2 Price (44)
Stop 3 StopPx (99)
Stop Limit 4 Price (44), StopPx (99)
Market If Touched J Price (44)
Flatten F None
Join N None
Hit H None

Message Direction: Client → T4

Tag Field Name Type Req'd Description
Message Header Y MsgType = D
1 Account String Y Account code for order submission
11 ClOrdID String Y Unique client order ID (12-20 chars)
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 only. 0=Put, 1=Call
202 StrikePrice Float C Options only. Strike price
54 Side Char Y 0=None, 1=Buy, 2=Sell
38 OrderQty Int Y Total contracts (0 for Flatten)
40 OrdType Char Y See Order Types table
44 Price Float C Required for Limit, Stop Limit, MIT
99 StopPx Float C Required for Stop, Stop Limit
59 TimeInForce Char Y 0=Day, 1=GTC, 3=IOC, 4=FOK
60 TransactTime UTCTimestamp Y Order creation time
21 HandlInst Char Y 1=Automated private, 2=Automated public, 3=Manual
210 MaxShow Int O Iceberg visible quantity
77 OpenClose Char O O=Open, C=Close
200 MaturityMonthYear String O Format: YYYYMM
204 CustomerOrFirm Int O 0=Customer, 1=Firm
58 Text String O Free form text
107 SecurityDesc String O Security description
1028 ManualOrderIndicator Boolean O Y=Manual, N=Automated
10100 TrailingDelta Float O Trailing stop amount
10102 ActivationType Int O 1=Immediate, 2=At/Above, 3=At/Below, 4=Market Mode, 5=Time, 6=Queue
10103 ActivationValue String O Activation conditions (colon-delimited)
Message Trailer Y

Note: Pipe (|) used for readability. Actual FIX messages use SOH (ASCII 01) delimiter.

Limit Order Request:

8=FIX.4.2|9=210|35=D|49=T4Example|56=T4|50=TraderName|52=20121211-20:16:17.874|
1=Account1|11=fn-634908321778744001|48=CME_20121200_ESZ2|55=ES|207=CME_Eq|
167=FUT|54=1|38=1|40=2|44=141400|59=0|21=1|60=20121211-20:16:17.874|204=0|10=123|

Successful Response:

8=FIX.4.2|9=380|35=8|49=T4|56=T4Example|50=T4FIX|52=20121211-20:16:17.952|
1=Account1|11=fn-634908321778744001|17=48146.71332401407_ESZ2.6349083219449100006.1.BD1E7093|
150=0|37=BD1E7093-EF2C-439D-AEBA-0092A03F17ED|39=0|48=CME_20121200_ESZ2|55=ES|
207=CME_Eq|200=201212|59=0|107=E-mini S&P 500 Dec12|54=1|167=FUT|38=1|40=2|
44=141400|60=20121211-20:16:34.491|10=234|
  • Malformed messages rejected with Session Reject (35=3)
  • Order errors returned via Execution Report (35=8, ExecType=8)
  • AutoSubscription can be disabled via Logon (Tag 372=BB)
  • For batch orders (OCO, Auto OCO, Spark), use New Order List message
  • developers/fixapi/newordersingle.txt
  • Last modified: 2025/09/12 01:34
  • by chad