Skip to main content

Order Entry

Overview​

Cancel on Disconnect​

Cancel on Disconnect is configured by default for all FIX Order Entry session IDs. Upon a disconnect all GTD/GTT orders will be cancelled, but GTC orders will remain on the book.

Unsolicited Cancel​

In the event EDX cancels an order, we will send an ExecutionReport message confirming details of the cancel. These messages can be identified by tag 39=4, 150=4 and 58=ADMINISTRATIVE_CANCEL.


New Order​

NewOrderSingle (IN)​

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=D
11ClOrdIDYClient Identifier for the Order.
583ClOrdLinkIDNClient provided metadata for the order that is echoed on Execution Reports. No behavior currently associated with this tag.
18ExecInstNAdditional controls around the execution of an order. Currently supported options:
PARTICIPATE_DONT_INITIATE [6] – Indicates that this is a Post Only Limit Order.
9416ExtendedExecInstNDesignates that an order is a Retail order or a Retail Liquidity Providing order.
DESIGNATED_RETAIL [R] – Indicates that this is a Retail Taker order.
RETAIL_LIQUIDITY_PROVIDER [T] – Indicates that this is a Retail Maker order.
55SymbolYThe Instrument for the Order. Example: BTC/USD, ETH/USD, LTC/USD
54SideYOrder Side.
BUY [1] – This is a buy order.
SELL [2] – This is a sell order.
60TransactTimeYClient provided UTC timestamp. Not Exchange Validated
38OrderQtyYQuantity of the order.
152CashOrdQtyNThe notional quantity of the order.
40OrdTypeYDescribes the type of Order being placed.
MARKET [1]
With OrderQty: IOC, FOK Supported
With CashOrderQty: IOC Supported
LIMIT [2]
With OrderQty: GTC, GTT, GTD, IOC, FOK Supported
With CashOrderQty: GTC, GTD, IOC Supported
44PriceYThe Price of the Traded Instrument. Do not include any commas.
59TimeInForceYWhen the order should expire.
GTC [1]
IOC [3]
FOK [4]
GTD [6]
GTT [A]
126ExpireTimeNUTC timestamp. Expiry Time for a GTD Limit Order.
58TextNClient provided text. Unused.
21001SelfMatchPreventionNDefines what action to take if an order self matches.
CANCEL_NEWEST [0] – Cancels the incoming aggressing order leading to the self-match. Default behavior if no value is specified.
CANCEL_OLDEST [1] – Cancels the existing passive order on the book.
CANCEL_BOTH [3] – Cancels both the newly placed aggressive order and the passive order on the book that it would have self-matched.
528OrderCapacityYDesignates the capacity of the firm placing the order.
AGENCY [A]
PRINCIPAL [P]
RISKLESS PRINCIPAL [R]
582CustOrderCapacityYCapacity of customer placing the order.
MEMBER_TRADING_FOR_THEIR_OWN_ACCOUNT [1]
RETAIL_CUSTOMER [5]
Standard FooterY

Example​

[BeginString]        8   = FIXT.1.1
[BodyLength] 9 = 140
[MsgType] 35 = D
[MsgSeqNum] 34 = 10
[SendingTime] 52 = 20240715-00:42:43.652
[SenderCompID] 49 = USERNAME
[TargetCompID] 56 = EDXM
[ClOrdID] 11 = 100830204
[Side] 54 = 1
[TransactTime] 60 = 20240715-00:42:44.000
[OrdType] 40 = 2
[Price] 44 = 57000
[TimeInForce] 59 = 1
[OrderCapacity] 528 = P
[CustOrderCapacity] 582 = 1
[Symbol] 55 = BTC/USD
[OrderQty] 38 = 3.4928
[CheckSum] 10 = 198

ExecutionReport (OUT)​

Sent in response to a NewOrderSingle (IN).

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=8
37OrderIDYExchange provided OrderID.
11ClOrdIDYClient Identifier for the Order.
583ClOrdLinkIDNClient provided metadata for the order that is echoed on execution reports.
17ExecIDYUnique identifier of execution message as assigned by the exchange.
150ExecTypeYSpecified the Type of the Execution Report.
NEW [0]
TRADE [F] – Partial fill or fill.
EXPIRED [C]
REJECTED [8]
39OrdStatusYIndicates the status of an order.
NEW [0]
PARTIALLY_FILLED [1]
FILLED [2]
EXPIRED [C]
REJECTED [8]
103OrdRejReasonNIdentifies the reason a new order was rejected by the system. EDX supports the following values:
BROKER_EXCHANGE_OPTION [0]
UNKNOWN_SYMBOL [1]
UNKNOWN_ORDER [5]
DUPLICATE_ORDER [6]
UNSUPPORTED_ORDER_CHARACTERISTIC [11]
INCORRECT_QUANTITY [13]
PRICE_EXCEEDS_CURRENT_PRICE_BAND [16]
OTHER [99]
EDX exclusive values:
ORDER_BOOK_IN_SUSPENDED_STATE [100]
ORDER_BOOK_IN_HALT_STATE [101]
ORDER_BOOK_IN_EXPIRED_STATE [102]
ORDER_BOOK_IN_LISTED_STATE [103]
ORDER_BOOK_IN_POST_ONLY_STATE [104]
ORDER_BREACHES_BASE_POSITION_LIMIT [105]
ORDER_BREACHES_QUOTE_POSITION_LIMIT [106]
ACCESS_TO_DESIGNATED_RETAIL_DENIED [200]
1AccountYAccount mnemonic.
55SymbolYThe instrument for the Order. Example: BTC/USD, ETH/USD, LTC/USD
54SideYOrder Side.
BUY [1] – This is a buy order.
SELL [2] – This is a sell order.
38OrderQtyYQuantity of the Order.
152CashOrderQtyNThe notional quantity of the order.
5151LeavesQuoteQtyNThe remaining notional quantity of the order. Only applies to orders placed as CashOrderQty.
5152CumQuoteQtyNThe filled notional quantity of the order. Only applies to orders placed as CashOrderQty.
40OrdTypeYDescribes the type of Order being placed.
MARKET [1]
With OrderQty: IOC, FOK Supported
With CashOrderQty: IOC Supported
LIMIT [2]
With OrderQty: GTC, GTT, GTD, IOC, FOK Supported
With CashOrderQty: GTC, GTD, IOC Supported
44PriceYThe Price of the Traded Instrument.
15CurrencyNIdentifies currency used for price or quantity fields. Example: BTC, ETH, LTC
59TimeInForceYWhen the order should expire.
GOOD_TILL_CANCEL [1]
IMMEDIATE_OR_CANCEL [3]
FILL_OR_KILL [4]
GOOD_TILL_DATE [6]
GOOD_FOR_TIME [A]
126ExpireTimeNUTC timestamp/ Expiry Time for a GTD Limit Order.
18ExecInstNAdditional controls around the execution of an order. Currently supported options:
PARTICIPATE_DONT_INITATE [6] – Indicates that this is a Post Only Limit Order.
9416ExtendedExecInstNDesignates that an order is a Retail order or a Retail Liquidity Providing order.
DESIGNATED_RETAIL [R] – Indicates that this is a Retail Taker order.
RETAIL_LIQUIDITY_PROVIDER [T] – Indicates that this is a Retail Maker order.
32LastQtyNQuantity bought/sold on this (last) fill.
31LastPxNPrice of this (last) fill.
151LeavesQtyYOrder Quantity available for further execution.
14CumQtyYQuantity Executed in the current Order Chain.
6AvgPxYCalculated average price for fills and partial fills.
75TradeDateNIndicates date of trade referenced in this message.
60TransactTimeYExchange provided timestamp generated by the match engine.
120SettlCurrencyNCurrency code of settlement denomination.
58TextNDescribes cancel reason. In the case of unsolicited cancels due to limit breaches, will be set to BREACHED_QUOTE_POSITION_LIMIT or BREACHED_BASE_POSITION_LIMIT.
851LastLiquidityIndNIndicates the liquidity code for this execution.
ADDED_LIQUIDITY [1] - The order added displayed liquidity to the Exchange book.
REMOVED_LIQUIDITY [2] - The order removed liquidity from the Exchange book.
RETAIL_LIQUIDITY_ADDED [70] - The order available for retail access only added liquidity to the Exchange book.
RETAIL_LIQUIDITY_REMOVED [71] - The order available for retail access only removed liquidity from the Exchange book.
DESIGNATED_RETAIL_ADDED [170] - The designated retail-only order added liquidity to the Exchange book.
DESIGNATED_RETAIL_REMOVED [171] - The designated retail only order removed liquidity from the Exchange book.
880TrdMatchIDNIdentifier assigned to the Trade by the matching system.
828TrdTypeNConditionally required for perps instrument type trades.
REGULAR_TRADE [0] - Occurs when the customer places orders in the open market.
LIQUIDITION_TRADE [9000] - Occurs when the exchange's liquidation engine places an order in the open market.
528OrderCapacityYDesignates the capacity of the firm placing the order.
AGENCY [A]
PRINCIPAL [P]
RISKLESS_PRINCIPAL [R]
582CustOrderCapacityYCapacity of customer placing the order.
MEMBER_TRADING_FOR_THEIR_OWN_ACCOUNT [1]
RETAIL_CUSTOMER [5]
136NoMiscFeesNNumber of repeating groups of miscellaneous fees.
>891MiscFeeBasisNDefines the unit for miscellaneous fee. Always ABSOLUTE [0]
>137MiscFeeAmtNMiscellaneous fee value.
>138MiscFeeCurrNCurrency of miscellaneous fee. Will match the quote asset associated with the traded instrument.
>139MiscFeeTypeNIndicates type of miscellaneous fee. Other represents estimated fees for new and replaced order status.
EXCHANGE FEES [4]
OTHER [7]
REBATE [33]
5040NoCapacityEntriesYNumber of repeating groups for capacity entries.
>5041AvailableCapacityYRemaining long/short trade limit capacity.
>5042CapacityCurrencyYLong/short risk asset. Expect 2 entries for every spot order/instrument.
Buy order example - BTC/USD order expect to see both Buy BTC and Sell USD entries.
Sell order example - BTC/USD order expect to see both Sell BTC and Buy USD entries.
>5043CapacitySideYLong/short risk limit indicator.
BUY [1]
SELL [2]
Standard FooterY

Example (NEW)​

[BeginString]           8 = FIXT.1.1
[BodyLength] 9 = 140
[MsgType] 35 = 8
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgseqNum] 34 = 11
[SendingTime] 52 = 20240714-21:59:12.714
[OrderID] 37 = 3247689654165569536
[ClOrdID] 11 = 100830205
[ExecID] 17 = 3247689654165569537
[ExecType] 150 = 0
[OrdStatus] 39 = 0
[Account] 1 = USERNAME
[Symbol] 55 = BTC/USD
[Side] 54 = 1
[OrderQty] 38 = 3.4928
[OrdType] 40 = 2
[Price] 44 = 57000
[TimeInForce] 59 = 1
[LeavesQty] 151 = 3.4928
[CumQty] 14 = 0
[AvgPx] 6 = 0
[NoMiscFees] 13 = 1
[MiscFeeAmt] 137 = 9.8725
[MiscFeeCurr] 138 = USD
[MiscFeeType] 139 = 7
[MiscFeeBasis] 891 = 0
[NoCapacityEntries] 5040 = 2
[AvailableCapacity] 5041 = 14300521.45892178
[CapacityCurrency] 5042 = USD
[CapacitySide] 5043 = 2
[AvailableCapacity] 5041 = 22.14569813
[CapacityCurrency] 5042 = BTC
[CapacitySide] 5043 = 1
[CheckSum] 10 = 089

Example (TRADE)​

[BeginString]           8 = FIXT.1.1
[BodyLength] 9 = 306
[MsgType] 35 = 8
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgseqNum] 34 = 12
[SendingTime] 52 = 20240717-00:10:01.495
[OrderID] 37 = 3248447350061924352
[ClOrdID] 11 = 200830207
[ExecID] 17 = 3248447350061924354
[ExecType] 150 = F
[OrdStatus] 39 = 2
[Account] 1 = USERNAME
[Symbol] 55 = BTC/USD
[Side] 54 = 1
[OrderQty] 38 = 3.341
[OrdType] 40 = 2
[Price] 44 = 65350
[Currency] 15 = BTC
[TimeInForce] 59 = 1
[LastQty] 32 = 1.423
[LastPrice] 31 = 65350
[LeavesQty] 151 = 1.918
[CumQty] 14 = 3.341
[AvgPx] 6 = 106976.97
[NoMiscFees] 136 = 1
[MiscFeeAmt] 137 = 9.8725
[MiscFeeCurr] 138 = USD
[MiscFeeType] 139 = 4
[MiscFeeBasis] 891 = 0
[LastLiquidityInd] 851 = 2
[TrdMatchID] 880 = 32484474501619224351
[NoCapacityEntries] 5040 = 2
[AvailableCapacity] 5041 = 14300521.45892178
[CapacityCurrency] 5042 = USD
[CapacitySide] 5043 = 2
[AvailableCapacity] 5041 = 22.14569813
[CapacityCurrency] 5042 = BTC
[CapacitySide] 5043 = 1
[CheckSum] 10 = 209

Example (EXPIRED)​

[BeginString]     8 = FIXT.1.1
[BodyLength] 9 = 248
[MsgType] 35 = 8
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgseqNum] 34 = 13
[SendingTime] 52 = 20240717-00:37:27.277
[OrderID] 37 = 3247482960093485773
[ClOrdID] 11 = 13442545xa2344gv
[OrigClOrdID] 41 = 13442545xa2344gv
[ExecID] 17 = 8450234902043591853
[ExecType] 150 = C
[OrdStatus] 39 = C
[Account] 1 = USERNAME
[Symbol] 55 = BTC/USD
[Side] 54 = 1
[OrderQty] 38 = 1.214
[OrdType] 40 = 2
[Price] 44 = 54523
[TimeInForce] 59 = 6
[ExpireTime] 126 = 20240717-00:37:20.000
[LeavesQty] 151 = 0
[CumQty] 14 = 0
[AvgPx] 6 = 0
[TransactTime] 60 = 20240717-00:37:27:268983611
[CheckSum] 10 = 205

Example (REJECTED)​

[BeginString]           8 = FIXT.1.1
[BodyLength] 9 = 223
[MsgType] 35 = 8
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgseqNum] 34 = 14
[SendingTime] 52 = 20240715-00:43:30.139
[OrderID] 37 = NONE
[ClOrdID] 11 = 200830206
[ExecID] 17 = 3246631999169122304
[ExecType] 150 = 8
[OrderStatus] 39 = 8
[OrdRejReason] 103 = 105
[Account] 1 = USERNAME
[Symbol] 55 = BTC/USD
[Side] 54 = 1
[OrdType] 40 = 2
[LeavesQty] 151 = 0
[CumQty] 14 = 0
[AvgPx] 6 = 0
[TransactTime] 60 = 20240715-00:43:30.126696960
[Text] 58 = ORDER_BREACHES_BASE_POSITION_LIMIT
[NoCapacityEntries] 5040 = 2
[AvailableCapacity] 5041 = 14300521.45892178
[CapacityCurrency] 5042 = USD
[CapacitySide] 5043 = 2
[AvailableCapacity] 5041 = 22.14569813
[CapacityCurrency] 5042 = BTC
[CapacitySide] 5043 = 1
[CheckSum] 10 = 234

BusinessMessageReject (OUT)​

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=j
372RefMsgTypeYThe Message Type of the FIX message being referenced.
380BusinessRejectReasonYCode to identify reason for a Business Message Reject message.
58TextYDescribes reason for rejection.
Standard FooterY

Example​

[BeginString]             8 = FIXT.1.1
[BodyLength] 9 = 89
[MsgType] 35 = J
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgseqNum] 34 = 15
[SendingTime] 52 = 20240804-20:16:24.485
[RefMsgType] 372 = D
[BusinessRejectReason] 380 = 3
[Text] 58 = UNHANDLED MESSAGE
[CheckSum] 10 = 156

Reject (OUT)​

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=3
45RefSeqNumYReference message sequence number.
371RefTagIDYThe tag number of the field being referenced in the reject.
372RegMsgTypeYThe Message Type of the FIX message being referenced.
373SessionRejectReasonYDescribes the reason for rejection.
REQUIRED_TAG_MISSING [1]
VALUE_IS_INCORRECT [5]
58TextYDescribes the rejection reason.
Standard FooterY

Example​

[BeginString]            8 = FIXT.1.1
[BodyLength] 9 = 102
[MsgType] 35 = 3
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgseqNum] 34 = 16
[SendingTime] 52 = 20240804-20:16:41.756
[RefSeqNum] 45 = 15
[RefTagID] 371 = 59
[RefMsgType] 372 = D
[SessionRejectReason] 373 = 5
[Text] 58 = INVALID TAG VALUE
[CheckSum] 10 = 209

Cancel / Cancel Replace​

Cancel Order​

Cancel/Replace Order​

OrderCancelRequest (IN)​

Interaction Model​

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=F
41OrigClOrdIDYClient Identifier for the Order to be cancelled.
37OrderIDNExchange provided OrderID. Currently unused.
11ClOrdIDYClient Identifier for the Order.
55SymbolYThe Instrument for the Order.
54SideYOrder Side.
BUY [1] - This is a buy order.
SELL [2] - This is a sell order.
60TransactTimeYClient provided UTC timestamp. Not Exchange Validated
58TextNClient provided text. Unused.
Standard FooterY

Example​

[BeginString]    8 = FIXT.1.1
[BodyLength] 9 = 106
[MsgType] 35 = F
[MsgSeqNum] 34 = 17
[SendingTime] 52 = 20240716-23:22:56.000
[SenderCompID] 49 = USERNAME
[TargetCompID] 56 = EDXM
[OrigClOrdID] 41 = 32443212305
[ClOrdID] 11 = 23564832459
[Side] 54 = 1
[TransactTime] 60 = 20240716-23:22:53.000
[Symbol] 55 = BTC/USD
[CheckSum] 10 = 185

OrderCancelReplaceRequest (IN)​

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=G
37OrderIDNExchange provided OrderID.
41OrigClOrdIDYClient Identifier for the Order to be cancelled.
11ClOrdIDYClient Identifier for the Order.
583ClOrdLinkIDNClient provided metadata for the order that is echoed on Execution Reports. No behavior currently associated with this tag.
18ExecInstNAdditional controls around the execution of an order. Currently supported options:
PARTICIPATE_DONT_INITIATE [6] – Indicates that this is a Post Only Limit Order.
55SymbolYThe Instrument for the Order.
54SideYOrder Side.
BUY [1] - This is a buy order.
SELL [2] - This is a sell order.
60TransactTimeYClient provided UTC timestamp. Not Exchange Validated
38OrderQtyYQuantity of the Order.
152CashOrdQtyNThe notional quantity of the order.
40OrdTypeYDescribes the type of Order being placed.
LIMIT [2]
44PriceYNew Price of the Traded Instrument.
59TimeInForceYWhen the order should expire.
GTC [1]
IOC [3]
FOK [4]
GTD [6]
GTT [A]
126ExpireTimeNUTC timestamp. Expiry Time for a GTD Limit Order.
58TextNClient provided text. Unused.
21001SelfMatchPreventionNDefines what action to take if an order self matches.
CANCEL_NEWEST [0] – Cancels the incoming aggressing order leading to the self-match. Default behavior if no value is specified.
CANCEL_OLDEST [1] – Cancels the existing passive order on the book.
CANCEL_BOTH [3] – Cancels both the newly placed aggressive order and the passive order on the book that it would have self-matched.
Standard FooterY

Example​

[BeginString]    8 = FIXT.1.1
[BodyLength] 9 = 132
[MsgType] 35 = G
[MsgSeqNum] 34 = 18
[SendingTime] 52 = 20240720-01:14:02.000
[SenderCompID] 49 = USERNAME
[TargetCompID] 56 = EDXM
[OrigClOrdID] 41 = 31245JKf92
[ClOrdID] 11 = 43324FsJ31
[Side] 54 = 1
[TransactTime] 60 = 20240720-01:13:52.000
[OrdType] 40 = 2
[Price] 44 = 53000
[TimeInForce] 59 = 1
[Symbol] 55 = BTC/USD
[OrderQty] 38 = 2.422
[CheckSum] 10 = 037

ExecutionReport (OUT)​

Sent in response to an OrderCancelRequest (IN) or an OrderCancelReplaceRequest (IN).

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=8
37OrderIDYExchange provided OrderID.
11ClOrdIDYClient Identifier for the Order.
41OrigClOrdIDYClient Identifier for the Order to be cancelled.
583ClOrdLinkIDNClient provided metadata for the order that is echoed on execution reports.
17ExecIDYUnique identifier of execution message as assigned by the exchange.
150ExecTypeYSpecified the Type of the Execution Report.
CANCELED [4]
REPLACE [5]
39OrdStatusYIndicates the status of an order.
NEW [0]
CANCELED [4]
1AccountYAccount mnemonic.
55SymbolYThe instrument for the Order. Example: BTC/USD, ETH/USD, LTC/USD
54SideYOrder Side.
BUY [1] - This is a buy order.
SELL [2] - This is a sell order.
38OrderQtyYQuantity of the Order.
152CashOrdQtyNThe notional quantity of the order.
40OrdTypeYDescribes the type of Order being placed.
LIMIT [2]
44PriceYThe Price of the Traded Instrument.
59TimeInForceYWhen the order should expire.
GTC [1]
IOC [3]
FOK [4]
GTD [6]
GTT [A]
126ExpireTimeNUTC timestamp/ Expiry Time for a GTD Limit Order.
18ExecInstNAdditional controls around the execution of an order. Currently supported options:
PARTICIPATE_DONT_INITATE [6] – Indicates that this is a Post Only Limit Order.
9416ExtendedExecInstNDesignates that an order is a Retail order or a Retail Liquidity Providing order.
DESIGNATED_RETAIL [R] – Indicates that this is a Retail Taker order.
RETAIL_LIQUIDITY_PROVIDER [T] – Indicates that this is a Retail Maker order.
151LeavesQtyYOrder Quantity available for further execution.
14CumQtyYQuantity Executed in the current Order Chain.
6AvgPxYCalculated average price for fills and partial fills.
60TransactTimeYExchange provided timestamp generated by the match engine.
58TextNFree format text.
>136NoMiscFeesNNumber of repeating groups of miscellaneous fees.
>891MiscFeeBasisNDefines the unit for miscellaneous fee. Always ABSOLUTE [0]
>137MiscFeeAmtNMiscellaneous fee value.
>138MiscFeeCurrNCurrency of miscellaneous fee. Will match the quote asset associated with the traded instrument.
>139MiscFeeTypeNIndicates type of miscellaneous fee. Other represents estimated fees for new and replaced order status.
EXCHANGE FEES [4]
OTHER [7]
REBATE [33]
5040NoCapacityEntriesYNumber of repeating groups for capacity entries.
>5041AvailableCapacityYRemaining long/short trade limit capacity.
>5042CapacityCurrencyYLong/short risk asset. Expect 2 entries for every spot order/instrument.
Buy order example - BTC/USD order expect to see both Buy BTC and Sell USD entries.
Sell order example - BTC/USD order expect to see both Sell BTC and Buy USD entries.
>5043CapacitySideYLong/short risk limit indicator.
BUY [1]
SELL [2]
Standard FooterY

Example (CANCELLED)​

[BeginString]           8 = FIXT.1.1
[BodyLength] 9 = 236
[MsgType] 35 = 8
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgseqNum] 34 = 19
[SendingTime] 52 = 20240713-22:50.01.068
[OrderID] 37 = 3247449971403947362
[ClOrdID] 11 = 2452547xbha9834HG83
[OrigClOrdID] 41 = 1343143fsdh938VK92
[ExecID] 17 = 8359285506034856357
[ExecType] 150 = 4
[OrderStatus] 39 = 4
[Account] 1 = USERNAME
[Symbol] 55 = BTC/USD
[Side] 54 = 1
[OrderQty] 38 = 1.1
[OrdType] 40 = 2
[Price] 44 = 55847
[TimeInForce] 59 = 1
[LeavesQty] 151 = 0
[CumQty] 14 = 0
[AvgPx] 6 = 0
[TransactTime] 60 = 20240713-22:50:01.064791452
[Text] 58 = USER_INITIATED
[NoCapacityEntries] 5040 = 2
[AvailableCapacity] 5041 = 14300521.45892178
[CapacityCurrency] 5042 = USD
[CapacitySide] 5043 = 2
[AvailableCapacity] 5041 = 22.14569813
[CapacityCurrency] 5042 = BTC
[CapacitySide] 5043 = 1
[CheckSum] 10 = 170

Example (REPLACED)​

[BeginString]           8 = FIXT.1.1
[BodyLength] 9 = 221
[MsgType] 35 = 8
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgseqNum] 34 = 20
[SendingTime] 52 = 20240720-01:13:57.890
[OrderID] 37 = 3249559602857362573
[ClOrdID] 11 = 24524132494
[OrigClOrdID] 41 = 36685465446
[ExecID] 17 = 3459330504892394859
[ExecType] 150 = 5
[OrdStatus] 39 = 0
[Account] 1 = USERNAME
[Symbol] 55 = BTC/USD
[Side] 54 = 1
[OrderQty] 38 = 5.43
[OrdType] 40 = 2
[Price] 44 = 53000
[TimeInForce] 59 = 1
[NoMiscFees] 136 = 1
[MiscFeeAmt] 137 = 9.8725
[MiscFeeCurr] 138 = USD
[MiscFeeType] 139 = 7
[MiscFeeBasis] 891 = 0
[NoCapacityEntries] 5040 = 2
[AvailableCapacity] 5041 = 14300521.45892178
[CapacityCurrency] 5042 = USD
[CapacitySide] 5043 = 2
[AvailableCapacity] 5041 = 22.14569813
[CapacityCurrency] 5042 = BTC
[CapacitySide] 5043 = 1
[CheckSum] 10 = 212

Example (ADMINISTRATIVE CANCEL)​

[BeginString]           8 = FIXT.1.1
[BodyLength] 9 = 262
[MsgType] 35 = 8
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgseqNum] 34 = 21
[SendingTime] 52 = 20240720-20:34:04.054
[OrderID] 37 = 4259821452982942499
[ClOrdID] 11 = 4259821452982942499
[OrigClOrdID] 41 = 2453252352
[ExecID] 17 = 3249842774981893592
[ExecType] 150 = 4
[OrdStatus] 39 = 4
[Account] 1 = USERNAME
[Symbol] 55 = BTC/USD
[Side] 54 = 1
[OrderQty] 38 = 2.35
[OrdType] 40 = 2
[Price] 44 = 63240
[TimeInForce] 59 = 1
[LeavesQty] 151 = 0
[CumQty] 14 = 0
[AvgPx] 6 = 0
[TransactTime] 60 = 20240720-20:34:04.048559828
[Text] 58 = AMINISTRATIVE_CANCEL
[NoCapacityEntries] 5040 = 2
[AvailableCapacity] 5041 = 14300521.45892178
[CapacityCurrency] 5042 = USD
[CapacitySide] 5043 = 2
[AvailableCapacity] 5041 = 22.14569813
[CapacityCurrency] 5042 = BTC
[CapacitySide] 5043 = 1
[CheckSum] 10 = 095

OrderCancelReject (OUT)​

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=9
37OrderIDYExchange providided OrderID.
11ClOrdIDYClient Identifier for the Order.
583ClOrdLinkIDNPermits order originators to tie together groups of orders in which trades resulting from orders are associated for a specific purpose, for example the calculation of average execution price for a customer.
41OrigClOrdIDYClient Identifier for the Order to be cancelled.
39OrdStatusYIndicates the status of an order.
REJECTED [8]
1AccountYAccount mnemonic.
60TransactTimeYExchange provided timestamp generated by the match engine.
434CxlRejResponseToYIndicates the message type the Reject is in response to.
102CxlRejReasonYThe code which identifies the reason for the cancel reject. EDX's system supports the following values:
UNKNOWN_ORDER [1]
PRICE_EXCEEDS_CURRENT_PRICE_BAND [8]
OTHER [99]
EDX exclusive values:
ORDER_BREACHES_BASE_POSITION_LIMIT [16]
ORDER_BREACHES_QUOTE_POSITION_LIMIT [17]
ORDER_BOOK_IN_SUSPENDED_STATE [100]
ORDER_BOOK_IN_HALT_STATE [101]
ORDER_BOOK_IN_EXPIRED_STATE [102]
ORDER_BOOK_IN_LISTED_STATE [103]
ORDER_BOOK_IN_POST_ONLY_STATE [104]
5040NoCapacityEntriesYNumber of repeating groups for capacity entries.
>5041AvailableCapacityYRemaining long/short trade limit capacity.
>5042CapacityCurrencyYLong/short risk asset. Expect 2 entries for every spot order/instrument.
Buy order example - BTC/USD order expect to see both Buy BTC and Sell USD entries.
Sell order example - BTC/USD order expect to see both Sell BTC and Buy USD entries.
>5043CapacitySideYLong/short risk limit indicator.
BUY [1]
SELL [2]
58TextYDescribes reason for rejection.
Standard FooterY

Example​

[BeginString]         8 = FIXT.1.1
[BodyLength] 9 = 140
[MsgType] 35 = 9
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgSeqNum] 34 = 22
[SendingTime] 52 = 20240714-23:04:44.793
[OrdID] 37 = NONE
[ClOrdID] 11 = 48392004
[OrigClOrdID] 41 = 243598245
[OrdStatus] 39 = 8
[Account] 1 = USERNAME
[TransactTime] 60 = 20240714-23:04:44.787207021
[CxlRejResponseTo] 434 = 1
[CxlRejReason] 102 = 1
[Text] 58 = UNKNOWN_ORDER
[CheckSum] 10 = 103

Order Mass Status​

OrderMassStatusRequest (IN)​

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=AF
584MassStatusReqIDYValue assigned by issuer of Mass Status Request to uniquely identify the request.
585MassStatusReqTypeYMust be '7'.
STATUS_FOR_ALL_ORDERS [7]
Standard FooterY

Example​

[BeginString]          8 = FIXT.1.1
[BodyLength] 9 = 69
[MsgType] 35 = AF
[MsgSeqNum] 34 = 24
[SendingTime] 52 = 20240720-18:29:45.000
[SenderCompID] 49 = USERNAME
[TargetCompID] 56 = EDXM
[MassStatusReqID] 584 = 4
[MassStatusReqType] 585 = 7
[CheckSum] 10 = 070

ExecutionReport (OUT)​

Sent in response to an OrderMassStatusRequest (IN).

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=8
37OrderIDYExchange provided OrderID.
11ClOrdIDYClient Identifier for the Order.
583ClOrdLinkIDNClient provided metadata for the order that is echoed on execution reports.
17ExecIDYUnique identifier of execution message as assigned by the exchange.
150ExecTypeYSpecified the Type of the Execution Report.
ORDER_STATUS [I]
39OrdStatusYIndicates the status of an order.
NEW [0]
PARTIALLY_FILLED [1]
55SymbolYThe instrument for the Order. Example: BTC/USD, ETH/USD, LTC/USD
54SideYOrder Side.
BUY [1] – This is a buy order.
SELL [2] – This is a sell order.
38OrderQtyYQuantity of the Order.
152CashOrdQtyNThe notional quantity of the order.
40OrdTypeYDescribes the type of Order being placed.
LIMIT [2]
44PriceYThe Price of the Traded Instrument.
59TimeInForceYWhen the order should expire.
GOOD_TILL_CANCEL [1]
IMMEDIATE_OR_CANCEL [3]
FILL_OR_KILL [4]
GOOD_TILL_DATE [6]
GOOD_FOR_TIME [A]
126ExpireTimeNUTC timestamp/ Expiry Time for a GTD Limit Order.
18ExecInstNAdditional controls around the execution of an order. Currently supported options:
PARTICIPATE_DONT_INITATE [6] – Indicates that this is a Post Only Limit Order.
9416ExtendedExecInstNDesignates that an order is a Retail order or a Retail Liquidity Providing order.
DESIGNATED_RETAIL [R] – Indicates that this is a Retail Taker order.
RETAIL_LIQUIDITY_PROVIDER [T] – Indicates that this is at Retail Maker order.
32LastQtyNQuantity bought/sold on this (last) fill.
31LastPxNPrice of this (last) fill.
151LeavesQtyYOrder Quantity available for further execution.
14CumQtyYQuantity Executed in the current Order Chain.
6AvgPxYCalculated average price for fills and partial fills.
75TradeDateNIndicates date of trade referenced in this message.
60TransactTimeYExchange provided timestamp generated by the match engine.
584MassStatusReqIDYValue assigned by issuer of Mass Status Request to uniquely identify the request.
>136NoMiscFeesNNumber of repeating groups of miscellaneous fees.
>891MiscFeeBasisNDefines the unit for miscellaneous fee. Always ABSOLUTE [0]
>137MiscFeeAmtNMiscellaneous fee value.
>138MiscFeeCurrNCurrency of miscellaneous fee. Will match the quote asset associated with the traded instrument.
>139MiscFeeTypeNIndicates type of miscellaneous fee. Other represents estimated fees for new and replaced order status.
EXCHANGE FEES [4]
OTHER [7]
REBATE [33]
Standard FooterY

Example (ORDER STATUS)​

[BeginString]        8 = FIXT.1.1
[BodyLength] 9 = 197
[MsgType] 35 = 8
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgseqNum] 34 = 25
[SendingTime] 52 = 20240720-18:29:40.538
[OrderID] 37 = 4350920973394905095
[ClOrdID] 11 = 534ui345h435
[ExecID] 17 = 0
[ExecType] 150 = I
[OrderStatus] 39 = 0
[Symbol] 55 = ETH/USD
[Side] 54 = 1
[OrderQty] 38 = 34.323
[OrdType] 40 = 2
[Price] 44 = 3700
[TimeInForce] 59 = 1
[LeavesQty] 151 = 34.323
[CumQty] 14 = 0
[AvgPx] 6 = 0
[TransactTime] 60 = 20240720-18:28:31.9774533139
[MassStatusReqID] 584 = 4
[CheckSum] 10 = 116

OrderMassStatusRequestEnd (OUT)​

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=UMS
584MassStatusReqIDYValue assigned by issuer of Mass Status Request to uniquely identify the request.
Standard FooterY

Example​

[BeginString]        8 = FIXT.1.1
[BodyLength] 9 = 64
[MsgType] 35 = UMS
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgseqNum] 34 = 26
[SendingTime] 52 = 20240720-18:29:40.538
[MassStatusReqID] 584 = 4
[CheckSum] 10 = 164

Order Mass Cancel​

OrderMassCancelRequest (IN)​

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=q
11ClOrdIDYClient identifier for the order.
530MassCancelRequestTypeYSpecifies the Type of the Mass Cancel Request.
CANCEL_ORDERS_FOR_SECURITY [1]
CANCEL_ALL_ORDERS [7]
55 †SymbolYThe Instrument for the order. Example: BTC/USD, ETH/USD, LTC/USD
54SideNOrder Side.
BUY [1] – This is a buy order.
SELL [2] – This is a sell order.
60TransactTimeYClient provided UTC timestamp. Not Exchange Validated
58TextNClient provided text. Unused.
Standard FooterY

† For OrderMassCancelRequest (IN) messages, tag 55 (Symbol) is required even if cancelling all orders. For example, if a client has 1 open order on LTC and 1 on ETH, in the OrderMassCancelRequest, the client can send either value in tag 55, and set tag 530=7, and both orders will be cancelled.

Example​

[BeginString]              8 = FIXT.1.1
[BodyLength] 9 = 69
[MsgType] 35 = q
[MsgSeqNum] 34 = 27
[SendingTime] 52 = 20240720-19:43:17.000
[SenderCompID] 49 = USERNAME
[TargetCompID] 56 = EDXM
[ClOrdID] 11 = 32432413413
[MassCancelRequestType] 530 = 7
[TransactTime] 60 = 20240720-19:43:11.000
[Symbol] 55 = BTC/USD
[CheckSum] 10 = 111

OrderMassCancelReport (OUT)​

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=r
37OrderIDYExchange provided OrderID.
11ClOrdIDYClient identifier for the order.
530MassCancelRequestTypeYSpecifies the Type of the Mass Cancel Request.
CANCEL_ORDERS_FOR_SECURITY [1]
CANCEL_ALL_ORDERS [7]
531MassCancelResponseYIndicates the action taken by Recipient of the Order Mass Cancel request, including reject.
CANCEL_REQUEST_REJECTED [0]
CANCEL_ORDERS_FOR_A_SECURITY [1]
CANCEL_ALL_ORDERS [7]
532MassCancelRejectReasonNDescribes the reason Mass Order Cancel Request was rejected.
INVALID_OR_UNKNOWN_SECURITY [1]
60TransactTimeYUTC timestamp. Exchange provided timestamp generated by the match engine.
Standard FooterY

Example​

[BeginString]              8 = FIXT.1.1
[BodyLength] 9 = 127
[MsgType] 35 = R
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgseqNum] 34 = 28
[SendingTime] 52 = 20240720-19:43:12.203
[OrderID] 37 = 3249829853805061694
[ClOrdID] 11 = 34133413412345
[MassCancelRequestType] 530 = 7
[MassCancelResponse] 531 = 7
[TransactTime] 60 = 20240720-19:43:12.196992734
[CheckSum] 10 = 220

ExecutionReport (OUT)​

Sent in response to an OrderMassCancelRequest (IN), once per cancelled order.

Fields​

TagNameRequiredComments
Standard HeaderYMsgType 35=8
37OrderIDYExchange provided OrderID.
11ClOrdIDYClient Identifier for the Order.
41OrigClOrdIDYClient Identifier for the Order to be cancelled.
583ClOrdLinkIDNClient provided metadata for the order that is echoed on execution reports.
17ExecIDYUnique identifier of execution message as assigned by the exchange.
150ExecTypeYSpecified the Type of the Execution Report.
CANCELED [4]
39OrdStatusYIndicates the status of an order.
CANCELED [4]
1AccountYAccount mnemonic.
55SymbolYThe instrument for the Order. Example: BTC/USD, ETH/USD, LTC/USD
54SideYOrder Side.
BUY [1] - This is a buy order.
SELL [2] - This is a sell order.
38OrderQtyYQuantity of the Order.
152CashOrdQtyNThe notional quantity of the order.
40OrdTypeYDescribes the type of Order being placed.
LIMIT [2]
44PriceYThe Price of the Traded Instrument.
59TimeInForceYWhen the order should expire.
GTC [1]
IOC [3]
FOK [4]
GTD [6]
GTT [A]
126ExpireTimeNUTC timestamp/ Expiry Time for a GTD Limit Order.
18ExecInstNAdditional controls around the execution of an order. Currently supported options:
PARTICIPATE_DONT_INITATE [6] – Indicates that this is a Post Only Limit Order.
9416ExtendedExecInstNDesignates that an order is a Retail order or a Retail Liquidity Providing order.
DESIGNATED_RETAIL [R] – Indicates that this is a Retail Taker order.
RETAIL_LIQUIDITY_PROVIDER [T] – Indicates that this is a Retail Maker order.
151LeavesQtyYOrder Quantity available for further execution.
14CumQtyYQuantity Executed in the current Order Chain.
6AvgPxYCalculated average price for fills and partial fills.
60TransactTimeYExchange provided timestamp generated by the match engine.
>136NoMiscFeesNNumber of repeating groups of miscellaneous fees.
>891MiscFeeBasisNDefines the unit for miscellaneous fee. Always ABSOLUTE [0]
>137MiscFeeAmtNMiscellaneous fee value.
>138MiscFeeCurrNCurrency of miscellaneous fee. Will match the quote asset associated with the traded instrument.
>139MiscFeeTypeNIndicates type of miscellaneous fee. Other represents estimated fees for new and replaced order status.
EXCHANGE FEES [4]
OTHER [7]
REBATE [33]
Standard FooterY

Example (MASS CANCEL)​

[BeginString]        8 = FIXT.1.1
[BodyLength] 9 = 233
[MsgType] 35 = 8
[SenderCompID] 49 = EDXM
[TargetCompID] 56 = USERNAME
[MsgseqNum] 34 = 29
[SendingTime] 52 = 20240720-19:43:12.203
[OrderID] 37 = 4359829438244485384
[ClOrdID] 11 = 325483148901234
[OrigClOrdID] 41 = 231531531441244
[ExecID] 17 = 43599832957364758432
[ExecType] 150 = 4
[OrderStatus] 39 = 4
[Account] 1 = USERNAME
[Symbol] 55 = ETH/USD
[Side] 54 = 2
[OrderQty] 38 = 24.663
[OrdType] 40 = 2
[Price] 44 = 3649
[TimeInForce] 59 = 1
[LeavesQty] 151 = 0
[CumQty] 14 = 0
[AvgPx] 6 = 0
[TransactTime] 60 = 20240720-19:43:12.196992734
[Text] 58 = MASS_CANCEL
[CheckSum] 10 = 221

Change Log​

DateSection/MessageDescription
3/4/2024N/AInitial v1.0 release of FIX Order Entry specifications for EDX Markets match engine
3/14/2024Logon Messagev1.0.1
  • Updated sample Logon message to include standard header/footer.
3/26/2024Tag 18 - ExecInstv1.0.2
  • Removed option for cancel on system failure.
3/26/2024Tag 851 - LastLiquidityIndv1.0.2
  • Enumerated options for liquidity codes.
4/24/2024ExecutionReport, OrderCancelRejectv1.0.3
  • Enumerated options for CxlRejReason and OrdRejReason codes
4/25/2024OrderMassCancelRequest (IN)v1.0.4
  • Updated OrderMassCancelRequest (IN) to correct MsgType 35=‘q’
4/26/2024Login (IN)v1.0.5
  • Updated ResetSeqNumFlag
4/26/2024Logout (OUT)v1.0.5
  • Updated ResetSeqNumFlag
4/26/2024OrderMassCancelRequest (IN)v1.0.5
  • Updated required = ‘Y’
4/26/2024Login (IN)v1.0.5
  • Updated ResetSeqNumFlag values/comments
4/26/2024Logout (OUT)v1.0.5
  • Updated ResetSeqNumFlag values/comments
4/29/2024Interaction Modelv1.0.6
  • Added interaction model
5/1/2024Throttle Limitsv1.0.7
  • Added Throttle Limits
5/3/2024OrderMassStatusRequest (OUT), ExecutionReport (OUT), OrderCancelReject (OUT)v1.0.8
  • Added references to values 8 [REJECTED] and C [EXPIRED] for Tag 39 (OrdStatus)
5/3/2024OrderMassStatusRequest (OUT)v1.0.8
  • Removed reference to D [RESTATED] and added I [ORDER STATUS] for Tag 150 (ExecType)
5/7/2024OrderMassStatusRequest (OUT), ExecutionReport (OUT)v1.0.9
  • Removed reference to 5 [REPLACED] for Tag 150 (ExecType)
5/7/2024ExecutionReport (OUT)v1.0.9
  • Removed reference to D [RESTATED] for Tag 150 (ExecType)
5/9/2024OrderMassCancelRequest (IN), OrderMassCancelReport (OUT)v1.0.10
  • Corrected example for mass cancel requests and reports from occurring at account level to occurring at the session level
5/13/2024Sequence Resetv1.0.11
  • Added Sequence Reset section
5/13/2024Cancel on Disconnectv1.0.11
  • Added COD section
5/14/2024OrderMassStatusRequest (OUT)ExecutionReport (OUT)
v1.0.12
  • AvgPx changed to “Always 0”
6/7/2024Sequence Resetv1.0.13
  • Added interaction model
7/30/2024Overviewv1.0.14
  • Interaction model broken down into several models for each corresponding message.
  • Unsolicited Cancel section added.
  • Test Request section added.
  • Resend Request section added.
  • Separated Standard Header into (IN) and (OUT) messages
7/30/2024Logonv1.0.14
  • Logon Interaction model created.
  • Tag 1408 (DefaultCstmApplVerID) no longer in Logon (IN).
  • Logout (IN) matrix added.
  • Logout (IN) and Logout (OUT) sample messages added.
7/30/2024Test Requestv1.0.14
  • Test Request interaction model added.
  • Test Request (OUT) matrix added.
  • Test Request (OUT) sample message added.
  • Heartbeat in sample message added.
7/30/2024Resend Requestv1.0.14
  • Resend Request interaction model added.
  • Resend Request (OUT) matrix added.
  • Sequence Reset (IN) matrix added.
  • Reject (OUT) matrix added.
  • Resend Request (OUT) sample message added.
  • Sequence Reset (IN) sample message added.
  • Reject (OUT) sample message added.
7/30/2024New Single Orderv1.0.14
  • New Single Order interaction model added.
  • Values/comments under tag 59 updated (6 and A show same value).
  • Execution Report (OUT) matrix added below New Single Order.
  • Execution Report NEW, TRADE, EXPIRED, REJECTED (OUT) sample messages added below new single order.
  • Reject (OUT) Matrix added
  • Business Message Reject (OUT) matrix added
  • Reject sample message added.
  • Business Message Reject sample message added.
7/30/2024Order Cancel Requestv1.0.14
  • Order Cancel Request interaction model added.
7/30/2024Order Cancel Replace Requestv1.0.14
  • Included in Order Cancel Request interaction model.
  • Tag 44 (Price) changed req’d to yes.
  • Tag 59 (TIF) changed req’d to yes.
  • Tag 126 (ExpireTime) added missing req’d as N.
  • Execution Report (OUT) matrix added.
  • Order Cancel Reject (OUT) matrix added.
  • Order Cancel Request (IN) sample message added
  • Order Cancel Replace Request (IN) sample message updated.
  • Execution Report CANCELLED, REPLACE, ADMINISTRATIVE CANCEL, ORDER CANCEL REJECT (OUT) sample messages added.
  • Added Business Message Reject (OUT) matrix
  • Added Business Message Reject (OUT) sample message
7/30/2024Order Mass Status Requestv1.0.14
  • Order Mass Status Request interaction model added xecution Report (OUT) matrix added.
  • Order Mass Status Request End (OUT) matrix added.
  • Order Mass Status Request (IN) sample message updated.
  • Order Mass status request (OUT) matrix completely removed as we do not return that message.
  • Order mass status request (IN) sample message added.
  • Execution report (OUT) sample message added.
  • Order Mass status request end (OUT) sample message added.
7/30/2024Order Mass Cancel Requestv1.0.14
  • Order Mass Cancel Request interaction model added.
  • Tag 55 (Symbol) req’d changed to Y.
  • Footnote added to tag 55 (Symbol).
  • Order Mass Cancel Report (OUT) matrix added.
  • Execution Report (OUT) matrix added.
  • Order Mass Cancel Request (IN) sample message updated.
  • Order Mass Cancel Report (OUT) sample message added.
  • Execution Report (OUT) sample message added.
7/30/2024Execution Reportv1.0.14
  • The appropriate execution report matrix and sample message was added to each corresponding message that returns a 35=8 message.
  • Within each one of these execution reports is its own unique matrix appropriate for the response.
08/29/2024Execution ReportV1.0.15
  • Added:
    • NoMiscFees
    • >MiscFeeAmt
    • >MiscFeeCurr
    • >MiscFeeType
    • >MiscFeeBasis
9/24/2024Execution Reportv1.0.16
  • Added TrdType
12/23/2025Execution Reportv1.0.17
  • Added values sent in Text for unsolicited cancellations due to risk limit breaches
01/22/2025OrderCancelRejectV1.0.18
  • Added Tag 1 Account
03/06/2025Execution ReportV1.0.19
  • Added Tags:
    • 5040 NoCapacityEntries
    • 5041 AvailableCapacity
    • 5042 CapacityCurrency
    • 5043 CapacitySide
04/22/2025Resend Requestv1.0.20
  • Events that occurred during a disconnect will now be re-playable.
05/15/2025Execution ReportV1.0.21
  • AvgPx will return the Calculated average price for fills and partial fills.
06/12/2025Standard Header (OUT)V1.0.22
  • Added Tag 57 TargetSubID
7/15/2025OrderCancelReject(OUT), ExecutionReport(OUT)V1.0.23
  • Added Capacity Tags to Reject (OUT) messages:
    • 5040 NoCapacityEntries
    • >5041 AvailableCapacity
    • >5042 CapacityCurrency
03/07/2026New Single OrderV1.0.24
  • Added MARKET [1] to Tag 40 OrdType
  • Added 152 CashOrdQty
03/07/2026Execution ReportV1.0.24
  • Added MARKET [1] to Tag 40 OrdType
  • Added 152 CashOrdQty
  • Added 5151 LeavesQuoteQty
  • Added 5152 CumQuoteQty
03/07/2026New Single OrderV1.0.24
  • Added 152 CashOrdQty for LIMIT [2] OrdType
03/07/2026Execution ReportV1.0.24
  • LIMIT [2] OrdType, added:
    • 152 CashOrdQty
    • 5151 LeavesQuoteQty
    • 5152 CumQuoteQty