developers:fixapi:neworderlist

This is an old revision of the document!


Submitting Orders with Multiple Components: Batch Orders

The New Order List message (`MsgType=E`) is used by the T4 FIX API to submit multiple-component (batch) orders to an exchange. Batch orders:

  • Identified by Contingency Type (`Tag 1385`)
  • Contain only constituent orders
  • Maximum of 6 components

Applicable to:

  • Outright futures
  • Futures options
  • Spreads
  • Multi-leg strategies

Instruments are identified using:

  • `SecurityID` (`Tag 48`)
  • `Symbol` (`Tag 55`)
  • `SecurityExchange` (`Tag 207`)
  • `SecurityType` (`Tag 167`)

Lists of tradeable securities can be obtained via Security Definition Request (`MsgType=c`).


Identifiers

* ListID (`Tag 66`) – Unique ID for the entire order list * ClOrdID (`Tag 11`) – Unique ID (12–20 chars) for each constituent order * Account (`Tag 1`) – Subscribed account for order submission

Malformed messages (missing/empty/invalid tags) are rejected with:

  • FIX Session Reject
  • Or Execution Report (`Tag 150=8`)

Special Multi-Component Order Types

* OCO Order * AutoOCO Order * Spark Order * AutoOCOM Order (Multiple Exits)


Order Definition Fields

Field Name Tag #
ContingencyType 1385
TriggerPrice 10101
TriggerStop 10104
TriggerStopTrail 10105
Order Quantity 38
Side 54
Order Type 40
Price 44
Stop Price 99
Time In Force 59

Other Fields

Field Name Tag # Comments
MaxShow 210 For Icebergs
TrailingDelta 10100 For Trailing Stops
Activation Type 10102 For Queue and Activation orders
Activation Value 10103 For Activation orders

Account Subscription

All order routing (new, cancel-replace, cancel) requires:

  • Successful subscription to the account
  • By default: all user accounts auto-subscribed
  • To disable auto-subscription: use Logon (`Tag 372=BB`)
  • If disabled: manually subscribe via Collateral Inquiry

Message Dictionary

Tag Field Name Req'd Comments
Standard Header Y MsgType = E
66 ListID Y Unique identifier for the order list
1385 ContingencyType Y 1=OCO, 2=Auto OCO (diff values), 3=Spark, 4=Synthetic, 7=Auto OCO (absolute values), 8=Auto OCO Multiple Exits (diff), 9=Auto OCO Multiple Exits (absolute)
394 BidType N 0=Non-Disclosed, 1=Disclosed, 2=None
433 ListExecInstType N 1=Immediate (default), 2=Wait for Execution Instructions
69 ListExecInst N Free text execution instructions
1028 ManualOrderIndicator N Y=Manual, N=Automated
58 Text N Free text
68 NoTotOrders Y Number of constituent orders
Start Repeating Group
11 ClOrdID Y Unique ID for each order component (max 20 chars)
1 Account Y Account code for the order
54 Side Y 0=None (Flatten), 1=Buy, 2=Sell
38 OrderQty Y Number of contracts (0 for AutoOCO component or Flatten)
48 SecurityID Y T4 Market ID
55 Symbol Y T4 Contract ID
207 SecurityExchange Y T4 Exchange ID
167 SecurityType N FUT=Futures, OPT=Options, STK=Stock, SYN=Synthetic, BIN=Binary Option
107 SecurityDesc N Description of security
201 PutOrCall N 0=Put, 1=Call
202 StrikePrice N Option strike price
200 MaturityMonthYear N Format YYYYMM
110 MinQty N Minimum quantity (exchange dependent)
210 MaxShow N Max visible quantity
40 OrdType Y 1=Market, 2=Limit, 3=Stop, 4=Stop Limit, J=Market If Touched, F=Flatten, N=Join, H=Hit
44 Price N Price (required for Limit, Stop-Limit, Market-if-Touched)
99 StopPx N Stop price (required for Stop/Stop-Limit)
59 TimeInForce Y 0=Day, 1=GTC, 3=IOC, 4=FOK
21 HandlInst N 1=Auto-private (default), 2=Auto-public, 3=Manual
77 OpenClose N O=Open, C=Close
204 CustomerOrFirm N 0=Customer, 1=Firm
10100 TrailingDelta N Stop trailing amount
10101 TriggerPrice N Trigger price for batch order
10104 TriggerStop N Trigger stop price
10105 TriggerStopTrail N Trigger stop trail
10102 ActivationType N 1=Immediate, 2=At/Above Price, 3=At/Below Price, 4=On Market Mode, 5=At/After Time, 6=Queue
10103 ActivationValue N Condition value(s), separated by “;”
End Repeating Group
Standard Trailer Y

Sample Messages

Batch Order for an OCO

>> 2/27/2013 6:17:29 PM   [FIXNEWORDERLIST] 34=5|49=T4Example|56=T4|50=TraderName|52=20130228-00:17:29.985|66=fnl-634975858499851777|1385=1|1=Account1|48=CME_20130300_ESH3|55=ES|207=CME_Eq|167=FUT|433=1|68=2|11=oco-1-634975858499851777|54=1|38=1|40=2|44=149800|59=0|21=2|11=oco-2-634975858499851777|54=1|38=1|40=3|99=149850|59=0|21=2|
[FIXNEWORDERLIST]
[MsgSeqNum] 34 = 5
[SenderCompID] 49 = T4Example
[TargetCompID] 56 = T4
[SenderSubID] 50 = TraderName
[SendingTime] 52 = 20130228-00:17:29.985
[ListID] 66 = fnl-634975858499851777
[ContingencyType] 1385 = 1 (OCO)
[Account] 1 = Account1
[SecurityID] 48 = CME_20130300_ESH3
[Symbol] 55 = ES
[SecurityExchange] 207 = CME_Eq
[SecurityType] 167 = FUT (FUTURE)
[ListExecInstType] 433 = 1 (IMMEDIATE)
[TotNoOrders] 68 = 2
[ClOrdID] 11 = oco-1-634975858499851777
[Side] 54 = 1 (BUY)
[OrderQty] 38 = 1
[OrdType] 40 = 2 (LIMIT)
[Price] 44 = 149800
[TimeInForce] 59 = 0 (DAY)
[HandlInst] 21 = 2 (AUTOMATED_EXECUTION_ORDER_PUBLIC_BROKER_INTERVENTION_OK)
[ClOrdID] 11 = oco-2-634975858499851777
[Side] 54 = 1 (BUY)
[OrderQty] 38 = 1
[OrdType] 40 = 3 (STOP)
[StopPx] 99 = 149850
[TimeInForce] 59 = 0 (DAY)
[HandlInst] 21 = 2 (AUTOMATED_EXECUTION_ORDER_PUBLIC_BROKER_INTERVENTION_OK)


Batch Order for an OCO. Response: Limit Component working

<< 2/27/2013 6:17:30 PM  [fixexecutionreport] 34=256|49=T4|56=T4Example|50=T4FIX|52=20130228-00:17:30.016|143=US,IL|1=Account1|11=oco-1-634975858499851777|66=fnl-634975858499851777|17=48103.6421035170_ESH3.6349758585347000006.1.3512E303|150=0|37=3512E303-2379-41A8-A3AC-40CB40D91CFB|39=0|48=CME_20130300_ESH3|55=ES|207=CME_Eq|200=201303|59=0|107=E-mini S&P 500 Mar13|54=1|167=FUT|38=1|40=2|44=149800|60=20130228-00:17:33.470|21=1|204=0|1385=1|
[FIXEXECUTIONREPORT]
[MsgSeqNum] 34 = 256
[SenderCompID] 49 = T4
[TargetCompID] 56 = T4Example
[SenderSubID] 50 = T4FIX
[SendingTime] 52 = 20130228-00:17:30.016
[TargetLocationID] 143 = US,IL
[Account] 1 = Account1
[ClOrdID] 11 = oco-1-634975858499851777
[ListID] 66 = fnl-634975858499851777
[ExecID] 17 = 48103.6421035170_ESH3.6349758585347000006.1.3512E303
[ExecType] 150 = 0 (NEW)
[OrderID] 37 = 3512E303-2379-41A8-A3AC-40CB40D91CFB
[OrdStatus] 39 = 0 (NEW)
[SecurityID] 48 = CME_20130300_ESH3
[Symbol] 55 = ES
[SecurityExchange] 207 = CME_Eq
[MaturityMonthYear] 200 = 201303
[TimeInForce] 59 = 0 (DAY)
[SecurityDesc] 107 = E-mini S&P 500 Mar13
[Side] 54 = 1 (BUY)
[SecurityType] 167 = FUT (FUTURE)
[OrderQty] 38 = 1
[OrdType] 40 = 2 (LIMIT)
[Price] 44 = 149800
[TransactTime] 60 = 20130228-00:17:33.470
[HandlInst] 21 = 1 (AUTOMATED_EXECUTION_ORDER_PRIVATE_NO_BROKER_INTERVENTION)
[CustomerOrFirm] 204 = 0 (CUSTOMER)
[ContingencyType] 1385 = 1 (OCO)

Batch Order for an OCO. Response: Stop Component working

<< 2/27/2013 6:17:30 PM  [fixexecutionreport] 34=258|49=T4|56=T4Example|50=T4FIX|52=20130228-00:17:30.234|143=US,IL|1=T4Example|11=oco-2-634975858499851777|66=fnl-634975858499851777|17=48104.6421035171_ESH3.6349758585347500006.1.43C8EAEF|150=0|37=43C8EAEF-F849-4785-84D9-9EED6EFF6F5F|39=0|48=CME_20130300_ESH3|55=ES|207=CME_Eq|200=201303|59=0|107=E-mini S&P 500 Mar13|54=1|167=FUT|38=1|40=3|99=149850|60=20130228-00:17:33.475|21=1|204=0|1385=1|
[FIXEXECUTIONREPORT]
[MsgSeqNum] 34 = 258
[SenderCompID] 49 = T4
[TargetCompID] 56 = T4Example
[SenderSubID] 50 = T4FIX
[SendingTime] 52 = 20130228-00:17:30.234
[TargetLocationID] 143 = US,IL
[Account] 1 = Account1
[ClOrdID] 11 = oco-2-634975858499851777
[ListID] 66 = fnl-634975858499851777
[ExecID] 17 = 48104.6421035171_ESH3.6349758585347500006.1.43C8EAEF
[ExecType] 150 = 0 (NEW)
[OrderID] 37 = 43C8EAEF-F849-4785-84D9-9EED6EFF6F5F
[OrdStatus] 39 = 0 (NEW)
[SecurityID] 48 = CME_20130300_ESH3
[Symbol] 55 = ES
[SecurityExchange] 207 = CME_Eq
[MaturityMonthYear] 200 = 201303
[TimeInForce] 59 = 0 (DAY)
[SecurityDesc] 107 = E-mini S&P 500 Mar13
[Side] 54 = 1 (BUY)
[SecurityType] 167 = FUT (FUTURE)
[OrderQty] 38 = 1
[OrdType] 40 = 3 (STOP)
[StopPx] 99 = 149850
[TransactTime] 60 = 20130228-00:17:33.475
[HandlInst] 21 = 1 (AUTOMATED_EXECUTION_ORDER_PRIVATE_NO_BROKER_INTERVENTION)
[CustomerOrFirm] 204 = 0 (CUSTOMER)
[ContingencyType] 1385 = 1 (OCO)

For a description and samples of other multiple-component order types, please refer to the T4 FIX API Order Routing sidebar.

T4 FIX API Home

  • developers/fixapi/neworderlist.1757640948.txt.gz
  • Last modified: 2025/09/12 01:35
  • by chad