FIX 4.2 xml
FIX 4.2 xml
<!--
Coinbase Prime FIX 4.2 Client Data Dictionary
Contains ONLY the message types, fields, and values supported by prime-fix.
-->
<fix type='FIX' major='4' minor='2' servicepack='0'>
<header>
<field name='BeginString' required='Y' />
<field name='BodyLength' required='Y' />
<field name='MsgType' required='Y' />
<field name='SenderCompID' required='Y' />
<field name='TargetCompID' required='Y' />
<field name='MsgSeqNum' required='Y' />
<field name='SenderSubID' required='N' />
<field name='PossDupFlag' required='N' />
<field name='PossResend' required='N' />
<field name='SendingTime' required='Y' />
<field name='OrigSendingTime' required='N' />
</header>
<messages>
<!-- Admin Messages -->
<message name='Heartbeat' msgtype='0' msgcat='admin'>
<field name='TestReqID' required='N' />
</message>
<message name='TestRequest' msgtype='1' msgcat='admin'>
<field name='TestReqID' required='Y' />
</message>
<message name='ResendRequest' msgtype='2' msgcat='admin'>
<field name='BeginSeqNo' required='Y' />
<field name='EndSeqNo' required='Y' />
</message>
<message name='Reject' msgtype='3' msgcat='admin'>
<field name='RefSeqNum' required='Y' />
<field name='RefTagID' required='N' />
<field name='RefMsgType' required='N' />
<field name='SessionRejectReason' required='N' />
<field name='Text' required='N' />
</message>
<message name='SequenceReset' msgtype='4' msgcat='admin'>
<field name='GapFillFlag' required='N' />
<field name='NewSeqNo' required='Y' />
</message>
<message name='Logout' msgtype='5' msgcat='admin'>
<field name='Text' required='N' />
</message>
<message name='Logon' msgtype='A' msgcat='admin'>
<field name='EncryptMethod' required='Y' />
<field name='HeartBtInt' required='Y' />
<field name='RawDataLength' required='N' />
<field name='RawData' required='N' />
<field name='ResetSeqNumFlag' required='N' />
<field name='Password' required='N' />
<field name='AccessKey' required='N' />
<field name='DropCopyFlag' required='N' />
</message>
<!-- Application Messages: Client -> Server (Inbound) -->
<message name='NewOrderSingle' msgtype='D' msgcat='app'>
<field name='Account' required='Y' />
<field name='ClOrdID' required='Y' />
<field name='Symbol' required='Y' />
<field name='Side' required='Y' />
<field name='TransactTime' required='Y' />
<field name='OrdType' required='Y' />
<field name='TimeInForce' required='Y' />
<field name='OrderQty' required='N' />
<field name='CashOrderQty' required='N' />
<field name='Price' required='N' />
<field name='StopPx' required='N' />
<field name='MaxShow' required='N' />
<field name='PegOffsetValue' required='N' />
<field name='PegOffsetType' required='N' />
<field name='PegWigLevel' required='N' />
<field name='EffectiveTime' required='N' />
<field name='ExpireTime' required='N' />
<field name='ExecInst' required='N' />
<field name='TargetStrategy' required='Y' />
<field name='ParticipationRate' required='N' />
<field name='ExDestination' required='N' />
<field name='QuoteID' required='N' />
<field name='SettlCurrency' required='N' />
<field name='StpId' required='N' />
<field name='IsRaiseExact' required='N' />
<field name='IsBuyExact' required='N' />
</message>
<message name='OrderCancelRequest' msgtype='F' msgcat='app'>
<field name='Account' required='Y' />
<field name='ClOrdID' required='Y' />
<field name='OrigClOrdID' required='N' />
<field name='OrderID' required='N' />
<field name='Symbol' required='Y' />
<field name='Side' required='Y' />
<field name='TransactTime' required='Y' />
<field name='OrderQty' required='N' />
<field name='CashOrderQty' required='N' />
</message>
<message name='OrderCancelReplaceRequest' msgtype='G' msgcat='app'>
<field name='Account' required='Y' />
<field name='ClOrdID' required='Y' />
<field name='OrigClOrdID' required='Y' />
<field name='OrderID' required='Y' />
<field name='Symbol' required='Y' />
<field name='Side' required='Y' />
<field name='OrdType' required='Y' />
<field name='HandlInst' required='Y' />
<field name='TransactTime' required='Y' />
<field name='OrderQty' required='N' />
<field name='CashOrderQty' required='N' />
<field name='Price' required='N' />
<field name='StopPx' required='N' />
<field name='MaxShow' required='N' />
<field name='ExpireTime' required='N' />
</message>
<message name='OrderStatusRequest' msgtype='H' msgcat='app'>
<field name='Account' required='Y' />
<field name='ClOrdID' required='N' />
<field name='OrderID' required='N' />
</message>
<message name='QuoteRequest' msgtype='R' msgcat='app'>
<field name='Account' required='Y' />
<field name='QuoteReqID' required='Y' />
<field name='Symbol' required='Y' />
<field name='Side' required='Y' />
<field name='OrdType' required='Y' />
<field name='TimeInForce' required='Y' />
<field name='OrderQty' required='N' />
<field name='CashOrderQty' required='N' />
<field name='Price' required='Y' />
<field name='SettlCurrency' required='N' />
<field name='QuoteRequestGoodForMs' required='N' />
</message>
<!-- Application Messages: Server -> Client (Outbound) -->
<message name='ExecutionReport' msgtype='8' msgcat='app'>
<field name='OrderID' required='Y' />
<field name='ExecID' required='Y' />
<field name='ExecTransType' required='Y' />
<field name='ExecType' required='Y' />
<field name='OrdStatus' required='Y' />
<field name='Symbol' required='Y' />
<field name='Side' required='Y' />
<field name='LeavesQty' required='Y' />
<field name='CumQty' required='Y' />
<field name='AvgPx' required='Y' />
<field name='ClOrdID' required='N' />
<field name='OrigClOrdID' required='N' />
<field name='SenderSubID' required='N' />
<field name='Account' required='Y' />
<field name='OrderQty' required='N' />
<field name='CashOrderQty' required='N' />
<field name='OrdType' required='N' />
<field name='TimeInForce' required='N' />
<field name='Price' required='N' />
<field name='StopPx' required='N' />
<field name='MaxShow' required='N' />
<field name='LastShares' required='N' />
<field name='LastPx' required='N' />
<field name='LastMkt' required='N' />
<field name='TransactTime' required='N' />
<field name='EffectiveTime' required='N' />
<field name='ExpireTime' required='N' />
<field name='OrdRejReason' required='N' />
<field name='Text' required='N' />
<field name='SettlCurrency' required='N' />
<field name='SettlCurrAmt' required='N' />
<field name='AlternativeAvgPx' required='N' />
<field name='FilledValue' required='N' />
<field name='IsRaiseExact' required='N' />
<field name='IsBuyExact' required='N' />
<field name='StpId' required='N' />
<field name='InternalStpId' required='N' />
<group name='NoAllocs' required='N'>
<field name='AllocAccount' required='N' />
<field name='AllocShares' required='N' />
<field name='SettlCurrency' required='N' />
<field name='Commission' required='N' />
<field name='CommType' required='N' />
<group name='NoMiscFees' required='N'>
<field name='MiscFeeAmt' required='N' />
<field name='MiscFeeCurr' required='N' />
<field name='MiscFeeType' required='N' />
</group>
</group>
</message>
<message name='OrderCancelReject' msgtype='9' msgcat='app'>
<field name='OrderID' required='Y' />
<field name='ClOrdID' required='Y' />
<field name='OrigClOrdID' required='Y' />
<field name='OrdStatus' required='Y' />
<field name='CxlRejResponseTo' required='Y' />
<field name='Text' required='N' />
</message>
<message name='Allocation' msgtype='J' msgcat='app'>
<field name='AllocID' required='Y' />
<field name='AllocTransType' required='Y' />
<field name='Side' required='Y' />
<field name='Symbol' required='Y' />
<field name='Shares' required='Y' />
<field name='AvgPx' required='Y' />
<field name='TradeDate' required='Y' />
<field name='ClOrdID' required='N' />
<field name='OrderID' required='N' />
<group name='NoAllocs' required='Y'>
<field name='AllocAccount' required='Y' />
<field name='AllocShares' required='Y' />
</group>
</message>
<message name='Quote' msgtype='S' msgcat='app'>
<field name='QuoteID' required='Y' />
<field name='QuoteReqID' required='Y' />
<field name='Symbol' required='Y' />
<field name='Account' required='Y' />
<field name='BidPx' required='N' />
<field name='BidSize' required='N' />
<field name='OfferPx' required='N' />
<field name='OfferSize' required='N' />
<field name='ValidUntilTime' required='Y' />
</message>
<message name='QuoteAcknowledgement' msgtype='b' msgcat='app'>
<field name='QuoteReqID' required='Y' />
<field name='QuoteID' required='N' />
<field name='QuoteAckStatus' required='Y' />
<field name='QuoteRejectReason' required='N' />
<field name='Account' required='Y' />
<field name='Symbol' required='Y' />
<field name='Text' required='N' />
</message>
</messages>
<trailer>
<field name='SignatureLength' required='N' />
<field name='Signature' required='N' />
<field name='CheckSum' required='Y' />
</trailer>
<fields>
<!-- Session/Header Fields -->
<field number='1' name='Account' type='STRING' />
<field number='6' name='AvgPx' type='PRICE' />
<field number='7' name='BeginSeqNo' type='SEQNUM' />
<field number='8' name='BeginString' type='STRING' />
<field number='9' name='BodyLength' type='LENGTH' />
<field number='10' name='CheckSum' type='STRING' />
<field number='11' name='ClOrdID' type='STRING' />
<field number='12' name='Commission' type='AMT' />
<field number='13' name='CommType' type='CHAR'>
<value enum='3' description='ABSOLUTE' />
</field>
<field number='14' name='CumQty' type='QTY' />
<field number='16' name='EndSeqNo' type='SEQNUM' />
<field number='17' name='ExecID' type='STRING' />
<field number='18' name='ExecInst' type='MULTIPLEVALUESTRING'>
<value enum='A' description='POST_ONLY' />
</field>
<field number='20' name='ExecTransType' type='CHAR'>
<value enum='0' description='NEW' />
<value enum='3' description='STATUS' />
</field>
<field number='21' name='HandlInst' type='CHAR'>
<value enum='1' description='AUTOMATED_EXECUTION_ORDER_PRIVATE_NO_BROKER_INTERVENTION' />
</field>
<field number='30' name='LastMkt' type='EXCHANGE' />
<field number='31' name='LastPx' type='PRICE' />
<field number='32' name='LastShares' type='QTY' />
<field number='34' name='MsgSeqNum' type='SEQNUM' />
<field number='35' name='MsgType' type='STRING'>
<value enum='0' description='HEARTBEAT' />
<value enum='1' description='TESTREQUEST' />
<value enum='2' description='RESENDREQUEST' />
<value enum='3' description='REJECT' />
<value enum='4' description='SEQUENCERESET' />
<value enum='5' description='LOGOUT' />
<value enum='8' description='EXECUTIONREPORT' />
<value enum='9' description='ORDERCANCELREJECT' />
<value enum='A' description='LOGON' />
<value enum='D' description='NEWORDERSINGLE' />
<value enum='F' description='ORDERCANCELREQUEST' />
<value enum='G' description='ORDERCANCELREPLACEREQUEST' />
<value enum='H' description='ORDERSTATUSREQUEST' />
<value enum='J' description='ALLOCATION' />
<value enum='R' description='QUOTEREQUEST' />
<value enum='S' description='QUOTE' />
<value enum='b' description='QUOTEACKNOWLEDGEMENT' />
</field>
<field number='36' name='NewSeqNo' type='SEQNUM' />
<field number='37' name='OrderID' type='STRING' />
<field number='38' name='OrderQty' type='QTY' />
<field number='39' name='OrdStatus' type='CHAR'>
<value enum='0' description='NEW' />
<value enum='1' description='PARTIALLY_FILLED' />
<value enum='2' description='FILLED' />
<value enum='3' description='DONE_FOR_DAY' />
<value enum='4' description='CANCELED' />
<value enum='5' description='REPLACED' />
<value enum='6' description='PENDING_CANCEL' />
<value enum='7' description='STOPPED' />
<value enum='8' description='REJECTED' />
<value enum='9' description='SUSPENDED' />
<value enum='A' description='PENDING_NEW' />
<value enum='E' description='PENDING_REPLACE' />
</field>
<field number='40' name='OrdType' type='CHAR'>
<value enum='1' description='MARKET' />
<value enum='2' description='LIMIT' />
<value enum='3' description='STOP' />
<value enum='4' description='STOP_LIMIT' />
<value enum='D' description='PREVIOUSLY_QUOTED' />
<value enum='P' description='PEGGED' />
</field>
<field number='41' name='OrigClOrdID' type='STRING' />
<field number='43' name='PossDupFlag' type='BOOLEAN'>
<value enum='N' description='NO' />
<value enum='Y' description='YES' />
</field>
<field number='44' name='Price' type='PRICE' />
<field number='45' name='RefSeqNum' type='SEQNUM' />
<field number='49' name='SenderCompID' type='STRING' />
<field number='50' name='SenderSubID' type='STRING' />
<field number='52' name='SendingTime' type='UTCTIMESTAMP' />
<field number='53' name='Shares' type='QTY' />
<field number='54' name='Side' type='CHAR'>
<value enum='1' description='BUY' />
<value enum='2' description='SELL' />
</field>
<field number='55' name='Symbol' type='STRING' />
<field number='56' name='TargetCompID' type='STRING' />
<field number='58' name='Text' type='STRING' />
<field number='59' name='TimeInForce' type='CHAR'>
<value enum='0' description='DAY' />
<value enum='1' description='GOOD_TILL_CANCEL' />
<value enum='3' description='IMMEDIATE_OR_CANCEL' />
<value enum='4' description='FILL_OR_KILL' />
<value enum='6' description='GOOD_TILL_DATE' />
</field>
<field number='60' name='TransactTime' type='UTCTIMESTAMP' />
<field number='62' name='ValidUntilTime' type='UTCTIMESTAMP' />
<field number='70' name='AllocID' type='STRING' />
<field number='71' name='AllocTransType' type='CHAR'>
<value enum='5' description='CALCULATED' />
</field>
<field number='75' name='TradeDate' type='LOCALMKTDATE' />
<field number='78' name='NoAllocs' type='NUMINGROUP' />
<field number='79' name='AllocAccount' type='STRING' />
<field number='80' name='AllocShares' type='QTY' />
<field number='89' name='Signature' type='DATA' />
<field number='93' name='SignatureLength' type='LENGTH' />
<field number='95' name='RawDataLength' type='LENGTH' />
<field number='96' name='RawData' type='DATA' />
<field number='97' name='PossResend' type='BOOLEAN'>
<value enum='N' description='NO' />
<value enum='Y' description='YES' />
</field>
<field number='98' name='EncryptMethod' type='INT'>
<value enum='0' description='NONE_OTHER' />
</field>
<field number='99' name='StopPx' type='PRICE' />
<field number='100' name='ExDestination' type='EXCHANGE' />
<field number='103' name='OrdRejReason' type='INT' />
<field number='108' name='HeartBtInt' type='INT' />
<field number='112' name='TestReqID' type='STRING' />
<field number='117' name='QuoteID' type='STRING' />
<field number='119' name='SettlCurrAmt' type='AMT' />
<field number='120' name='SettlCurrency' type='CURRENCY' />
<field number='122' name='OrigSendingTime' type='UTCTIMESTAMP' />
<field number='123' name='GapFillFlag' type='BOOLEAN'>
<value enum='N' description='NO' />
<value enum='Y' description='YES' />
</field>
<field number='126' name='ExpireTime' type='UTCTIMESTAMP' />
<field number='131' name='QuoteReqID' type='STRING' />
<field number='132' name='BidPx' type='PRICE' />
<field number='133' name='BidSize' type='QTY' />
<field number='134' name='OfferPx' type='PRICE' />
<field number='135' name='OfferSize' type='QTY' />
<field number='136' name='NoMiscFees' type='NUMINGROUP' />
<field number='137' name='MiscFeeAmt' type='AMT' />
<field number='138' name='MiscFeeCurr' type='CURRENCY' />
<field number='139' name='MiscFeeType' type='CHAR'>
<value enum='4' description='EXCHANGE_FEES' />
<value enum='7' description='OTHER' />
<value enum='12' description='AGENT' />
<value enum='14' description='SECURITY_LENDING' />
</field>
<field number='141' name='ResetSeqNumFlag' type='BOOLEAN'>
<value enum='N' description='NO' />
<value enum='Y' description='YES' />
</field>
<field number='150' name='ExecType' type='CHAR'>
<value enum='0' description='NEW' />
<value enum='1' description='PARTIAL_FILL' />
<value enum='2' description='FILL' />
<value enum='3' description='DONE_FOR_DAY' />
<value enum='4' description='CANCELED' />
<value enum='5' description='REPLACE' />
<value enum='6' description='PENDING_CANCEL' />
<value enum='7' description='STOPPED' />
<value enum='8' description='REJECTED' />
<value enum='A' description='PENDING_NEW' />
<value enum='E' description='PENDING_REPLACE' />
<value enum='I' description='ORDER_STATUS' />
</field>
<field number='151' name='LeavesQty' type='QTY' />
<field number='152' name='CashOrderQty' type='QTY' />
<field number='168' name='EffectiveTime' type='UTCTIMESTAMP' />
<field number='210' name='MaxShow' type='QTY' />
<field number='211' name='PegOffsetValue' type='FLOAT' /> <!-- Used for pegged orders (tag 211) -->
<field number='297' name='QuoteAckStatus' type='INT'>
<value enum='0' description='ACCEPTED' />
<value enum='5' description='REJECTED' />
</field>
<field number='300' name='QuoteRejectReason' type='INT'>
<value enum='1' description='UNKNOWN_SYMBOL' />
<value enum='3' description='QUOTE_REQUEST_EXCEEDS_LIMIT' />
<value enum='4' description='TOO_LATE_TO_ENTER' />
<value enum='8' description='INVALID_PRICE' />
<value enum='99' description='OTHER' />
</field>
<field number='371' name='RefTagID' type='INT' />
<field number='372' name='RefMsgType' type='STRING' />
<field number='373' name='SessionRejectReason' type='INT'>
<value enum='0' description='INVALID_TAG_NUMBER' />
<value enum='1' description='REQUIRED_TAG_MISSING' />
<value enum='2' description='TAG_NOT_DEFINED_FOR_THIS_MESSAGE_TYPE' />
<value enum='3' description='UNDEFINED_TAG' />
<value enum='5' description='VALUE_IS_INCORRECT' />
<value enum='6' description='INCORRECT_DATA_FORMAT_FOR_VALUE' />
<value enum='99' description='OTHER' />
</field>
<field number='380' name='BusinessRejectReason' type='INT'>
<value enum='0' description='OTHER' />
<value enum='2' description='UNKNOWN_SECURITY' />
<value enum='3' description='UNSUPPORTED_MESSAGE_TYPE' />
<value enum='5' description='CONDITIONALLY_REQUIRED_FIELD_MISSING' />
</field>
<field number='434' name='CxlRejResponseTo' type='CHAR'>
<value enum='1' description='ORDER_CANCEL_REQUEST' />
<value enum='2' description='ORDER_CANCEL_REPLACE_REQUEST' />
</field>
<field number='554' name='Password' type='STRING' />
<field number='836' name='PegOffsetType' type='INT'>
<value enum='0' description='PRICE' />
<value enum='1' description='BASIS_POINTS' />
<value enum='4' description='CUMULATIVE_DEPTH_IN_BASE_UNITS' />
</field>
<field number='847' name='TargetStrategy' type='STRING'>
<value enum='L' description='LIMIT' />
<value enum='M' description='MARKET' />
<value enum='T' description='TWAP' />
<value enum='V' description='VWAP' />
<value enum='S' description='SOR' />
<value enum='SL' description='STOP_LIMIT' />
<value enum='R' description='RFQ' />
<value enum='P' description='PEG' />
</field>
<field number='849' name='ParticipationRate' type='FLOAT' />
<!-- Custom Coinbase Tags -->
<field number='8002' name='FilledValue' type='PRICE' />
<field number='8006' name='AlternativeAvgPx' type='PRICE' />
<field number='8007' name='PegWigLevel' type='PRICE' />
<field number='8090' name='QuoteRequestGoodForMs' type='INT' />
<field number='8998' name='IsBuyExact' type='BOOLEAN'>
<value enum='N' description='NO' />
<value enum='Y' description='YES' />
</field>
<field number='8999' name='IsRaiseExact' type='BOOLEAN'>
<value enum='N' description='NO' />
<value enum='Y' description='YES' />
</field>
<field number='9406' name='DropCopyFlag' type='CHAR'>
<value enum='N' description='NO' />
<value enum='Y' description='YES' />
</field>
<field number='9407' name='AccessKey' type='STRING' />
<field number='9821' name='StpId' type='STRING' />
<field number='9823' name='InternalStpId' type='STRING' />
</fields>
</fix>
FIX 5.0 xml
FIX 5.0 xml
<!--
Coinbase Prime FIX 5.0 SP2 Client Data Dictionary (Application Layer)
Contains ONLY the message types, fields, and values supported by prime-fix.
Note: Use with FIXT11.xml as the transport data dictionary.
FIX50SP2 in prime-fix supports FCM Futures (FUT) and Perpetual Futures (PERP) only.
-->
<fix major='5' type='FIX' servicepack='2' minor='0'>
<header />
<messages>
<!-- Application Messages: Client -> Server (Inbound) -->
<message name='NewOrderSingle' msgtype='D' msgcat='app'>
<field name='Account' required='Y' />
<field name='ClOrdID' required='Y' />
<field name='Symbol' required='Y' />
<field name='SecurityType' required='Y' />
<field name='Side' required='Y' />
<field name='OrdType' required='Y' />
<field name='TimeInForce' required='Y' />
<field name='ManualOrderIndicator' required='Y' />
<field name='CustOrderHandlingInst' required='Y' />
<field name='TransactTime' required='Y' />
<field name='OrderQty' required='N' />
<field name='CashOrderQty' required='N' />
<field name='Price' required='N' />
<field name='StopPx' required='N' />
<field name='MaxShow' required='N' />
<field name='ExpireTime' required='N' />
<field name='EffectiveTime' required='N' />
<field name='ExecInst' required='N' />
<field name='OrderCapacity' required='N' />
<field name='TargetStrategy' required='N' />
</message>
<message name='OrderCancelRequest' msgtype='F' msgcat='app'>
<field name='Account' required='Y' />
<field name='ClOrdID' required='Y' />
<field name='OrigClOrdID' required='N' />
<field name='OrderID' required='N' />
<field name='Symbol' required='Y' />
<field name='SecurityType' required='Y' />
<field name='Side' required='Y' />
<field name='ManualOrderIndicator' required='Y' />
<field name='TransactTime' required='Y' />
</message>
<message name='OrderStatusRequest' msgtype='H' msgcat='app'>
<field name='Account' required='Y' />
<field name='Symbol' required='Y' />
<field name='SecurityType' required='Y' />
<field name='ClOrdID' required='N' />
<field name='OrderID' required='N' />
</message>
<message name='MarketDataRequest' msgtype='V' msgcat='app'>
<field name='MDReqID' required='Y' />
<field name='SubscriptionRequestType' required='Y' />
<field name='MarketDepth' required='Y' />
<field name='MDUpdateType' required='N' />
<group name='NoMDEntryTypes' required='Y'>
<field name='MDEntryType' required='Y' />
</group>
<group name='NoRelatedSym' required='Y'>
<field name='Symbol' required='Y' />
</group>
</message>
<!-- Application Messages: Server -> Client (Outbound) -->
<message name='ExecutionReport' msgtype='8' msgcat='app'>
<field name='OrderID' required='Y' />
<field name='ExecID' required='Y' />
<field name='ExecType' required='Y' />
<field name='OrdStatus' required='Y' />
<field name='Side' required='Y' />
<field name='LeavesQty' required='Y' />
<field name='CumQty' required='Y' />
<field name='AvgPx' required='Y' />
<field name='Symbol' required='Y' />
<field name='SecurityType' required='Y' />
<field name='Account' required='Y' />
<field name='ClOrdID' required='N' />
<field name='OrigClOrdID' required='N' />
<field name='OrdType' required='N' />
<field name='TimeInForce' required='N' />
<field name='OrderQty' required='N' />
<field name='CashOrderQty' required='N' />
<field name='Price' required='N' />
<field name='StopPx' required='N' />
<field name='MaxShow' required='N' />
<field name='LastQty' required='N' />
<field name='LastPx' required='N' />
<field name='LastMkt' required='N' />
<field name='TransactTime' required='N' />
<field name='EffectiveTime' required='N' />
<field name='ExpireTime' required='N' />
<field name='OrdRejReason' required='N' />
<field name='Text' required='N' />
<field name='OrderCapacity' required='N' />
<field name='AggressorIndicator' required='N' />
<field name='Commission' required='N' />
<field name='CommType' required='N' />
<group name='NoMiscFees' required='N'>
<field name='MiscFeeAmt' required='N' />
<field name='MiscFeeCurr' required='N' />
<field name='MiscFeeType' required='N' />
</group>
</message>
<message name='OrderCancelReject' msgtype='9' msgcat='app'>
<field name='OrderID' required='Y' />
<field name='ClOrdID' required='Y' />
<field name='OrigClOrdID' required='N' />
<field name='OrdStatus' required='Y' />
<field name='CxlRejResponseTo' required='Y' />
<field name='Text' required='N' />
</message>
<message name='MarketDataSnapshotFullRefresh' msgtype='W' msgcat='app'>
<field name='MDReqID' required='Y' />
<field name='Symbol' required='Y' />
<field name='TotNumReports' required='N' />
<field name='MDReportID' required='N' />
<group name='NoMDEntries' required='Y'>
<field name='MDEntryType' required='Y' />
<field name='MDEntryID' required='N' />
<field name='MDEntryPx' required='N' />
<field name='MDEntrySize' required='N' />
<field name='MDEntryPositionNo' required='N' />
<field name='MDEntryDate' required='N' />
<field name='MDEntryTime' required='N' />
</group>
</message>
<message name='MarketDataIncrementalRefresh' msgtype='X' msgcat='app'>
<field name='MDReqID' required='Y' />
<group name='NoMDEntries' required='Y'>
<field name='MDUpdateAction' required='Y' />
<field name='MDEntryType' required='N' />
<field name='MDEntryID' required='N' />
<field name='Symbol' required='N' />
<field name='MDEntryPx' required='N' />
<field name='MDEntrySize' required='N' />
<field name='MDEntryPositionNo' required='N' />
<field name='MDEntryDate' required='N' />
<field name='MDEntryTime' required='N' />
<field name='AggressorSide' required='N' />
</group>
</message>
<message name='MarketDataRequestReject' msgtype='Y' msgcat='app'>
<field name='MDReqID' required='Y' />
<field name='MDReqRejReason' required='N' />
<field name='Text' required='N' />
</message>
<message name='SecurityStatus' msgtype='f' msgcat='app'>
<field name='Symbol' required='Y' />
<field name='SecurityTradingStatus' required='N' />
<field name='Text' required='N' />
</message>
</messages>
<trailer />
<fields>
<!-- Account/Identification Fields -->
<field number='1' name='Account' type='STRING' />
<field number='6' name='AvgPx' type='PRICE' />
<field number='11' name='ClOrdID' type='STRING' />
<field number='12' name='Commission' type='AMT' />
<field number='13' name='CommType' type='CHAR'>
<value enum='3' description='ABSOLUTE' />
</field>
<field number='14' name='CumQty' type='QTY' />
<field number='17' name='ExecID' type='STRING' />
<field number='18' name='ExecInst' type='MULTIPLECHARVALUE'>
<value enum='A' description='POST_ONLY' />
</field>
<field number='30' name='LastMkt' type='EXCHANGE' />
<field number='31' name='LastPx' type='PRICE' />
<field number='32' name='LastQty' type='QTY' />
<field number='37' name='OrderID' type='STRING' />
<field number='38' name='OrderQty' type='QTY' />
<field number='39' name='OrdStatus' type='CHAR'>
<value enum='0' description='NEW' />
<value enum='1' description='PARTIALLY_FILLED' />
<value enum='2' description='FILLED' />
<value enum='3' description='DONE_FOR_DAY' />
<value enum='4' description='CANCELED' />
<value enum='6' description='PENDING_CANCEL' />
<value enum='7' description='STOPPED' />
<value enum='8' description='REJECTED' />
<value enum='9' description='SUSPENDED' />
<value enum='A' description='PENDING_NEW' />
<value enum='B' description='CALCULATED' />
<value enum='C' description='EXPIRED' />
<value enum='E' description='PENDING_REPLACE' />
</field>
<field number='40' name='OrdType' type='CHAR'>
<value enum='1' description='MARKET' />
<value enum='2' description='LIMIT' />
<value enum='4' description='STOP_LIMIT' />
</field>
<field number='41' name='OrigClOrdID' type='STRING' />
<field number='44' name='Price' type='PRICE' />
<field number='49' name='SenderCompID' type='STRING' />
<field number='54' name='Side' type='CHAR'>
<value enum='1' description='BUY' />
<value enum='2' description='SELL' />
</field>
<field number='55' name='Symbol' type='STRING' />
<field number='58' name='Text' type='STRING' />
<field number='59' name='TimeInForce' type='CHAR'>
<value enum='1' description='GOOD_TILL_CANCEL' />
<value enum='3' description='IMMEDIATE_OR_CANCEL' />
<value enum='4' description='FILL_OR_KILL' />
<value enum='6' description='GOOD_TILL_DATE' />
</field>
<field number='60' name='TransactTime' type='UTCTIMESTAMP' />
<field number='99' name='StopPx' type='PRICE' />
<field number='103' name='OrdRejReason' type='INT' />
<field number='126' name='ExpireTime' type='UTCTIMESTAMP' />
<field number='136' name='NoMiscFees' type='NUMINGROUP' />
<field number='137' name='MiscFeeAmt' type='AMT' />
<field number='138' name='MiscFeeCurr' type='CURRENCY' />
<field number='139' name='MiscFeeType' type='CHAR'>
<value enum='1' description='REGULATORY' />
<value enum='3' description='LOCAL_COMMISSION' />
<value enum='4' description='EXCHANGE_FEES' />
<value enum='7' description='OTHER' />
<value enum='14' description='SECURITY_LENDING' />
<value enum='31' description='CLEARING_COMMISSION' />
</field>
<field number='146' name='NoRelatedSym' type='NUMINGROUP' />
<field number='150' name='ExecType' type='CHAR'>
<value enum='0' description='NEW' />
<value enum='3' description='DONE_FOR_DAY' />
<value enum='4' description='CANCELED' />
<value enum='5' description='REPLACE' />
<value enum='6' description='PENDING_CANCEL' />
<value enum='7' description='STOPPED' />
<value enum='8' description='REJECTED' />
<value enum='9' description='SUSPENDED' />
<value enum='A' description='PENDING_NEW' />
<value enum='B' description='CALCULATED' />
<value enum='C' description='EXPIRED' />
<value enum='D' description='RESTATED' />
<value enum='E' description='PENDING_REPLACE' />
<value enum='F' description='TRADE' />
<value enum='I' description='ORDER_STATUS' />
</field>
<field number='151' name='LeavesQty' type='QTY' />
<field number='152' name='CashOrderQty' type='QTY' />
<field number='167' name='SecurityType' type='STRING'>
<value enum='FUT' description='FUTURE' />
<value enum='PERP' description='PERPETUAL' />
</field>
<field number='168' name='EffectiveTime' type='UTCTIMESTAMP' />
<field number='210' name='MaxShow' type='QTY' />
<field number='262' name='MDReqID' type='STRING' />
<field number='263' name='SubscriptionRequestType' type='CHAR'>
<value enum='0' description='SNAPSHOT' />
<value enum='1' description='SNAPSHOT_PLUS_UPDATES' />
<value enum='2' description='DISABLE_PREVIOUS_SNAPSHOT_PLUS_UPDATE_REQUEST' />
</field>
<field number='264' name='MarketDepth' type='INT' />
<field number='265' name='MDUpdateType' type='INT'>
<value enum='0' description='FULL_REFRESH' />
<value enum='1' description='INCREMENTAL_REFRESH' />
</field>
<field number='267' name='NoMDEntryTypes' type='NUMINGROUP' />
<field number='268' name='NoMDEntries' type='NUMINGROUP' />
<field number='269' name='MDEntryType' type='CHAR'>
<value enum='0' description='BID' />
<value enum='1' description='OFFER' />
<value enum='2' description='TRADE' />
<value enum='4' description='OPENING_PRICE' />
<value enum='B' description='TRADE_VOLUME' />
</field>
<field number='270' name='MDEntryPx' type='PRICE' />
<field number='271' name='MDEntrySize' type='QTY' />
<field number='272' name='MDEntryDate' type='UTCDATEONLY' />
<field number='273' name='MDEntryTime' type='UTCTIMEONLY' />
<field number='278' name='MDEntryID' type='STRING' />
<field number='279' name='MDUpdateAction' type='CHAR'>
<value enum='0' description='NEW' />
<value enum='1' description='CHANGE' />
<value enum='2' description='DELETE' />
</field>
<field number='281' name='MDReqRejReason' type='CHAR'>
<value enum='0' description='UNKNOWN_SYMBOL' />
<value enum='1' description='DUPLICATE_MDREQID' />
<value enum='4' description='UNSUPPORTED_SUBSCRIPTIONREQUESTTYPE' />
<value enum='5' description='UNSUPPORTED_MARKETDEPTH' />
<value enum='8' description='UNSUPPORTED_MDENTRYTYPE' />
<value enum='C' description='UNSUPPORTED_MDUPDATETYPE' />
</field>
<field number='290' name='MDEntryPositionNo' type='INT' />
<field number='326' name='SecurityTradingStatus' type='INT' />
<field number='373' name='SessionRejectReason' type='INT'>
<value enum='0' description='INVALID_TAG_NUMBER' />
<value enum='1' description='REQUIRED_TAG_MISSING' />
<value enum='2' description='TAG_NOT_DEFINED_FOR_THIS_MESSAGE_TYPE' />
<value enum='3' description='UNDEFINED_TAG' />
<value enum='5' description='VALUE_IS_INCORRECT' />
<value enum='6' description='INCORRECT_DATA_FORMAT_FOR_VALUE' />
<value enum='99' description='OTHER' />
</field>
<field number='380' name='BusinessRejectReason' type='INT'>
<value enum='0' description='OTHER' />
<value enum='2' description='UNKNOWN_SECURITY' />
<value enum='3' description='UNSUPPORTED_MESSAGE_TYPE' />
<value enum='5' description='CONDITIONALLY_REQUIRED_FIELD_MISSING' />
</field>
<field number='434' name='CxlRejResponseTo' type='CHAR'>
<value enum='1' description='ORDER_CANCEL_REQUEST' />
</field>
<field number='528' name='OrderCapacity' type='CHAR'>
<value enum='A' description='AGENCY' />
<value enum='P' description='PRINCIPAL' />
</field>
<field number='847' name='TargetStrategy' type='STRING'>
<value enum='1001' description='TWAP' />
</field>
<field number='911' name='TotNumReports' type='INT' />
<field number='963' name='MDReportID' type='STRING' />
<field number='1028' name='ManualOrderIndicator' type='BOOLEAN'>
<value enum='N' description='NO' />
<value enum='Y' description='YES' />
</field>
<field number='1031' name='CustOrderHandlingInst' type='MULTIPLECHARVALUE'>
<value enum='W' description='DESK' />
<value enum='Y' description='OTHER' />
<value enum='C' description='CLIENT_ELECTRONICALLY' />
<value enum='G' description='CLIENT_TELEPHONICALLY' />
<value enum='H' description='FCM_PROVIDED_SCREEN' />
<value enum='D' description='FCM_API_OR_FIX' />
</field>
<field number='1057' name='AggressorIndicator' type='BOOLEAN'>
<value enum='N' description='NO' />
<value enum='Y' description='YES' />
</field>
<field number='2446' name='AggressorSide' type='INT'>
<value enum='0' description='NO_AGGRESSOR' />
<value enum='1' description='BUY' />
<value enum='2' description='SELL' />
</field>
</fields>
</fix>