Skip to main content
Use NewOrderSingle (35=D) to submit a new order. The client order identifier must be unique within the trading date.

NewOrderSingle fields

TagNameReqTypeDescription
1AccountYStringTrading account number.
11ClOrdIDYStringClient order identifier. The value must be unique for the trading date.
55SymbolYStringTradable symbol code.
40OrdTypeYCharFIX order type. See the order type mapping table.
44PriceNPriceOrder price. Required for limit orders and price-based conditional orders.
59TimeInForceYCharOrder validity. See the order type mapping table.
54SideYCharOrder side. Use 1=Buy or 2=Sell.
60TransactTimeYUTCTimestampTime when the order request is created.
38OrderQtyYQtyOrder quantity.
99StopPxNPriceStop trigger price for stop-limit and trailing-stop orders. For sell orders, StopPx >= Price. For buy orders, StopPx <= Price.
389DiscretionOffsetNPriceOffsetTrailing step offset for trailing-stop orders. The value must be greater than or equal to 0.

Order type mapping

Unsupported combinations are rejected.
TimeInForce (59)OrdType (40)=1 marketOrdType (40)=2 limitOrdType (40)=5 market on close
3 Immediate or cancelMAKNot supportedNot supported
4 Fill or killMOKNot supportedNot supported
0 DayMTLLOATC
2 At the openingATONot supportedNot supported

Order behavior

Order typeBehavior
ATOAccepted for the opening auction when permitted by the trading session. Unmatched or remaining quantity is cancelled at the end of the opening auction.
ATCAccepted for the closing auction when permitted by the trading session. Unmatched or remaining quantity is cancelled at the end of the closing auction.
LOLimit order. Requires Price (44).
MTLMarket-to-limit order. If a contra order exists, the order matches at the best available price and any remaining quantity becomes a limit order at the matched price. If no contra order exists, the order is cancelled.
MAKMarket order with immediate-or-cancel behavior.
MOKMarket order with fill-or-kill behavior.
Conditional stop limitWaits until the stop condition is met, then submits the order to the market.
Conditional trailing stopAdjusts the stop level by the trailing offset while pending, then submits the order when the condition is met.
MTL orders are valid only in continuous trading sessions. MinQty (110) defaults to 1; other values are not supported in this contract. Orders remain valid only within the trading date. Non-matched orders are cancelled after market close.

Conditional orders

TypeRequired fieldsPending statusActivation behaviorAmendment while pendingAmendment after activation
Stop limitOrdType (40)=4, Price (44), StopPx (99)OrdStatus (39)=A, ExecType (150)=AWhen the stop condition is met, the service sends the order to market and reports OrdStatus (39)=0, ExecType (150)=0.You may change Price (44), OrderQty (38), and StopPx (99).You may change only Price (44) and OrderQty (38).
Trailing stopOrdType (40)=4, Price (44), StopPx (99), DiscretionOffset (389)OrdStatus (39)=A, ExecType (150)=AWhen the stop level changes, the service sends ExecType (150)=5 with the new Price (44). When triggered, the order is sent to market.You may change Price (44), OrderQty (38), StopPx (99), and DiscretionOffset (389).You may change only Price (44) and OrderQty (38).
For stop-loss execution design, a sell stop may use StopPx = Price + spread. A buy stop may use StopPx = Price - spread. The spread must be greater than or equal to 0.

Reject behavior

Invalid orders are rejected with ExecutionReport (35=8), OrdStatus (39)=8, and ExecType (150)=8. Common reject reasons include invalid price, disallowed order type for the session, insufficient available limit, position limit, and single-order quantity greater than 500. Accepted orders receive ExecutionReport (35=8), OrdStatus (39)=0, and ExecType (150)=0, unless the order remains pending as a conditional order.

Trading-session permission matrix

Legend:
MarkerMeaning
PPermitted and remains pending.
APermitted and activated or sent to market.
A*Permitted only while the order is pending.
xNot permitted.
Session stateActionATOLOMTLMAKMOKATCConditional
Pre-openingNew orderPPPPPPP
Pre-openingCancelPPPPPPP
Pre-openingModifyPPPPPPP
Opening auctionNew orderAAPPPPA
Opening auctionCancelxxPPPPA*
Opening auctionModifyxxPPPPA*
Continuous 1New orderxAAAAPA
Continuous 1CancelxAAxxPA*
Continuous 1ModifyxAAxxPA*
IntermissionNew orderxPPPPPP
IntermissionCancelxPPPPPP
IntermissionModifyxPPPPPP
Continuous 2New orderxAAAAPA
Continuous 2CancelxAAxxPA*
Continuous 2ModifyxAAxxPA*
Closing auctionNew orderxAxxxAA
Closing auctionCancelxxxxxxA*
Closing auctionModifyxxxxxxA*
Market closedNew orderxxxxxxx
Market closedCancelxxxxxxx
Market closedModifyxxxxxxx