Introduction
Overview
The FIX API specification is separated into three categories: Order Entry, Market Data and Dropcopy Messages. The information in the FIX API specification describes the adaptation of the standard FIX 5.0 for market participants to interact with the Zero Hash CLOB. FIX tags, as described in detail on the Financial Information Exchange Protocol Committee website, www.fixprotocol.org as well as custom tags are used extensively in this document and the reader should familiarize themselves with the latest updates to this release. If an application message in Financial Information Exchange Protocol version 5.0, or previous FIX versions, is not included in this document, the message is ignored.
Our FAQ page contains helpful information relating to FIX API - FIX API Help Centre
Version: 1.4.0
Rate Limits
The Zero Hash API is rate limited to prevent abuse that would degrade our ability to maintain consistent API performance for all users.
The default FIX Order Entry API rate limit is 50 requests per session per second. There are no rate limits applied on the FIX Market Data API. The rate limits can be adjusted as needed upon request.
Changelog
Recent changes and additions to Zero Hash CLOB API.
2023-05-29
FIX tag 8000 SelfMatchPreventionInstruction added to Order Entry API.
FIX tag 528 OrderCapacity added to Order Entry API.
2023-05-10
FIX tag 381 GrossTradeAmt added to Execution Reports.
FIX tag 6127 ConditionTriggerMethod added to Order Entry API.
FIX field 6127 supported values updated.
2023-03-07
FIX tag 1057 AggressorIndicator added to Execution Reports.
FIX field 18 supported values updated.
Cancel/Replace example FIX messages updated.
2022-09-01
Initial Version
Connectivity
To connect to the Zero Hash CLOB via FIX API, clients must have their source IP address whitelisted and establish a secure SSL connection to the FIX gateway. If your FIX implementation does not support establishing a SSL connection natively, you will need to setup a local proxy such as stunnel to establish a secure connection to the FIX gateway. To request these details and whitelist your source IP addresses, clients can contact support@zerohash.com.
The Zero Hash FIX sessions start on Mondays at 16:10 EST.
FIX message sequence numbers reset on Mondays at 16:00 EST.
Sessions are created with Cancel on Disconnect enabled by default. Further Cancel On Disconnect options are available and explained in our FAQ - FIX API Help Centre. If a platform requires to change their default setting, they should raise the request to support@zerohash.com.
For testing in our Certification environment, Zero Hash will share the following details;
IP Address: FIRMID.oe.cert.zerohash.com
Port: 13010
SenderComp: FIRM-SENDER-COMP-1
TargetCompID: ZERO
For access to Market Data over FIX use;
IP Address: FIRMID.md.cert.zerohash.com
Port: 13010
SenderComp: FIRM-SENDER-COMP-2
TargetCompID: ZERO
For access to Drop Copy Data over FIX use;
IP Address: FIRMID.oe.cert.zerohash.com
Port: 13010
SenderComp: FIRM-DROPCOPY-SENDER-COMP-2
TargetCompID: ZERO
If whitelisting a DNS record for outbound traffic is not possible by a member, Zero Hash can support creating FIX sessions with a static IP address instead of a DNS record.
Session Level Messages
Standard Header
Fields that go at the beginning of every message.
Tag | Field Name | Required | Note |
---|---|---|---|
8 | BeginString | Yes | Must be set to FIXT.1.1 as this field represents the session version in FIX version 5.0. The application version gets specified in Logon message's DefaultApplVerID (1137) tag |
9 | BodyLength | Yes | Message length in bytes up to the checksum field, must be the second field in message |
35 | MsgType | Yes | The type of message proceeding the header, must be the third field in the message |
49 | SenderCompID | Yes | Provided by Zero Hash |
56 | TargetCompID | Yes | Static value for all sessions. ZERO |
34 | MsgSeqNum | Yes | Monotonically increasing sequence number |
52 | SendingTime | Yes | UTC time that the order was sent down to nanosecond resolution in the format e.g. 20230528-07:49:11.843265786. Zero Hash supports receiving in milisecond and nanosecond |
Standard Trailer
Fields that go at the end of every message
Tag | Field Name | Required | Note |
---|---|---|---|
10 | CheckSum | Yes | Three byte checksum calculated by summing every byte in the message up to and not including the checksum field itself |
Logon (A)
Example Message
Client
8 = FIXT.1.1
9 = 80
35 = A
34 = 1
49 = YOURSENDERCOMP
52 = 20220911-00:01:47.190
56 = ZERO
98 = 0
108 = 60
141 = Y
1137 = 9
10 = 118
Gateway
8 = FIXT.1.1
9 = 86
35 = A
34 = 1
49 = ZERO
52 = 20220911-00:01:47.237480372
56 = YOURSENDERCOMP
98 = 0
108 = 60
141 = Y
1137 = 9
10 = 182
First message that is required immediately upon connection to authenticate the connection.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | Yes | MsgType = A | |
98 | EncryptMethod | Yes | Must be 0 |
108 | HeartBtInt | Yes | Usually set to 30 seconds. If not heartbeat sent with the interval sepcified in this message, Zero Hash will initiate a Test Request. If the client does not respond with a heartbeat after the Test Request the session will be terminated. |
141 | ResetSeqNumFlag | No | Clients can request to reset their Sequence Number at any time |
1137 | DefaultApplVerID | Yes | Contains the version of the FIX protocol the exchange uses. Only FIX50SP2 is supported. Supported values: 9 = FIX50SP2 |
Standard Trailer | Yes |
Logout (5)
Example Message
Client
8 = FIXT.1.1
9 = 53
35 = 5
34 = 6
49 = YOURSENDERCOMP
52 = 20230307-13:24:29.863406207
56 = ZERO
10 = 156
Gateway
8 = FIXT.1.1
9 = 61
35 = 5
34 = 7
49 = ZERO
52 = 20230528-07:57:52.522836006
56 = YOURSENDERCOMP
10 = 160
The Logout message initiates or confirms the termination of a FIX session.
The FIX gateway will receive and generate logout messages as required by the FIX Protocol. The gateway follows the prescribed sequence of messages for the proper termination of the session.
Upon receipt of a Logout message:
1. A confirming logout message will be sent by the gateway to the client; then,
2. The session will be disconnected. The FIX gateway will not initiate a logoff except when performing system maintenance or a severe error has occurred.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | Yes | MsgType = 5 | |
58 | Text | No | Free format text string |
Standard Trailer | Yes |
Heartbeat (0)
Example Message
Client
8 = FIXT.1.1
9 = 57
35 = 0
34 = 841
49 = YOURSENDERCOMP
52 = 20230307-13:24:29.863406207
56 = ZERO
10 = 087
Gateway
8 = FIXT.1.1
9 = 63
35 = 0
34 = 849
49 = ZERO
52 = 20220911-14:09:48.786045303
56 = YOURSENDERCOMP
10 = 150
This section indicates the message intended to monitor the status of the communications link during periods of inactivity.
The FIX market data accepts and generates Heartbeat messages as per the FIX specification.
• Inbound: Handled as specified
• Outbound: In response to a test request or timeout.
• Response: None
The heartbeat message should be sent if agreed upon Heartbeatinterval has elapsed since the last message sent.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | Yes | MsgType = 0 | |
Standard Trailer | Yes |
Reject (3)
Example Message
Gateway
8 = FIXT.1.1
9 = 145
35 = 3
34 = 43
49 = ZERO
52 = 20230528-08:39:28.984789276
56 = YOUSENDERCOMP
45 = 42
58 = Value is incorrect (out of range) for this tag
371 = 40
372 = D
373 = 5
10 = 130
A session level reject message sent when the FIX session can't process a message.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | Yes | MsgType = 0 | |
45 | RefSeqNum | Yes | The MsgSeqNum of the referenced message that was rejected |
371 | RefTagID | Yes | The tag number of the FIX field referenced in the reject |
372 | RegMsgTyp | Yes | The MsgType of the FIX message referenced in the reject |
373 | SessionRejectReason | Yes | A code to quickly identify common reasons for a reject |
58 | Text | Yes | A message explaining why the message was rejected |
Standard Trailer | Yes |
FIX Order Entry Messages
The Zero Hash CLOB will respond to any new order messages with execution reports. Example order messages and execution report responses are available below.
This section outlines the FIX messages, how they are supported, and to what extent the business data is translated within the FIX Gateway.
New Order - Single (D)
Example Messages
Client - BTC/USD Buy Limit GTC Order for OrderQty 0.01 at Price of 19000.50
8 = FIXT.1.1
9 = 254
35 = D
34 = 426
49 = YOURSENDERCOMP
50 = [ParticipantId]
52 = 20230307-13:24:29.863406207
56 = ZERO
1 = [AccountId]
11 = 3637983906161824000
18 = R
21 = 1
22 = 8
38 = 0.01
40 = 2
44 = 19000.50
48 = BTC/USD
54 = 1
55 = BTC/USD
58 = ZH Testing Trades
59 = 1
60 = 20230307-13:24:29.863406207
167 = CS
10 = 007
Gateway - Execution Reports
ER NEW
8 = FIXT.1.1
9 = 394
35 = 8
34 = 11
49 = ZERO
52 = 20220913-06:09:10.076887737
56 = YOURSENDERCOMP
57 = [ParticipantId]
1 = [AccountId]
6 = 0.000000000
11 = 3637983906161824000
14 = 0.00000000
17 = 1569568851483602944
22 = 8
31 = 0.00
32 = 0.00000000
37 = 1569568851307696128
38 = 0.01000000
39 = 0
40 = 2
44 = 19000.00
48 = BTC/USD
54 = 1
55 = BTC/USD
59 = 0
60 = 20220913-06:09:10.029186377
99 = 0.00
150 = 0
151 = 0.01000000
581 = 14
582 = 4
10 = 130
ER FILL
8 = FIXT.1.1
9 = 408
35 = 8
34 = 13
49 = ZERO
52 = 20220913-06:09:10.079060678
56 = YOURSENDERCOMP
57 = [ParticipantId]
1 = [AccountId]
6 = 22671.612500000
11 = 3637983906161824000
14 = 0.01000000
17 = 1569568851483602949
22 = 8
31 = 18740.25
32 = 0.01000000
37 = 1569568851307696128
38 = 0.01000000
39 = 2
40 = 2
44 = 19000.00
48 = BTC/USD
54 = 1
55 = BTC/USD
59 = 0
60 = 20220913-06:09:10.029186377
99 = 0.00
150 = F
151 = 0.00000000
381 = 19000.00
581 = 14
582 = 4
828 = 0
1057 = Y
10 = 103
This message is used to submit an order to the CLOB. The FIX Gateway will respond with an Execution Report or Business Message Reject.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | Yes | MsgType = D | |
50 | SenderSubID | Yes | Participant ID created at Zero Hash with specific relationships on the CLOB |
1 | Account | Yes | Trading Account on the CLOB. This information wil be shared during onboarding |
11 | ClOrdId | Yes | Unique identifier of the order. Must be unique for each session |
18 | ExecInst | No | 6 = Post Only (Participate Don't Initiate) |
21 | HandlInst | Yes | 1 = Automated execution order, private, no Broker intervention 2 = Automated execution order, public, Broker intervention OK 3 = Manual order, best execution |
22 | SecurityIDSource | Yes | 8 = Exchange Symbol |
38 | OrderQty | Yes | The amount of the base asset to be transacted e.g. 10.5146. Not Required if field 152 used on Market with left over as Limit order instead |
40 | OrdType | Yes | The type of order for the request which can be: 2 = Limit 3 = Stop 4 = Stop Limit K = Market with left over as Limit |
44 | Price | No | The limit price for limit orders of the quote asset e.g. 19000.50 The decimal precision must fall within the requirements for each instrument |
48 | SecurityID | Yes | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
54 | Side | Yes | Side of the order e.g. 1 = Buy 2 = Sell |
55 | Symbol | No | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
59 | TimeInForce | No | Specifies how long the order remains in effect. The following values are supported: 0 = Day 1 = Good Till Cancel 3 = Immediate Or Cancel 6 = Good Till Time |
60 | TransactTime | Yes | Time of execution/order creation. UTC time in datetime to milisecond or nanosecond format |
99 | StopPx | No | Specifies the quote price at which the order activates for Stop order types |
126 | ExpireTime | No | Required if TimeInForce = 6. UTC time in datetime to milisecond or nanosecond format |
152 | CashOrderQty | No | Can be used to specify dollar value to buy or sell on Market with left over as Limit orders instead of OrdQty(38) |
528 | OrderCapacity | Conditionally | OrderCapacity identifies the person submitting the trade. Values supported are : A = Agency G = Proprietary I = Individual P = Principle R = Riskless Principle W = Agent for Other Member |
582 | CustOrderCapacity | Conditionally | CustOrderCapacity identifies the customer/beneficiary of the trade 1 = Member trading for their own account 2 = Clearing Firm trading for its proprietary account 3 = Member trading for another member 4 = All other 5 = Retail Customer |
6127 | ConditionTriggerMethod | No | Specifies the trigger reference price for Stop Order 2 = Last Trade Price (Default) 5 = Settlement Price |
8000 | SelfMatchPreventionInstruction | No | The following values specify what to do when two orders submitted by the same portfolio attempt to match: N = Cancel Aggressing Order O = Cancel Resting Order |
Standard Trailer | Yes |
Order Cancel/Replace Request (G)
Example messages
Client
8 = FIXT.1.1
9 = 256
35 = G
34 = 219
49 = YOURSENDERCOMP
50 = [ParticipantId]
52 = 20230307-17:01:04.493
56 = ZERO
1 = [AccountId]
11 = 15638138052644930000
21 = 1
22 = 8
38 = 0.002
40 = 2
41 = 1124638138050559054000
44 = 22100
48 = BTC/USD
54 = 1
55 = BTC/USD
59 = 1
60 = 20230307-17:01:04.493123
167 = CS
10 = 245
Gateway
8 = FIXT.1.1
9 = 394
35 = 8
34 = 220
49 = ZERO
52 = 20230307-17:01:04.575041837
56 = YOURSENDERCOMP
57 = [ParticipantId]
1 = [AccountId]
6 = 0.000000000
11 = 15638138052644930000
12 = 221.00
13 = 1
14 = 0.00000000
17 = 1633150786224631808
22 = 8
31 = 0.00
32 = 0.00000000
37 = 1633149946840895488
38 = 0.00200000
39 = 0
40 = 2
41 = 1124638138050559054000
44 = 22100.00
48 = BTC/USD
54 = 1
55 = BTC/USD
59 = 1
60 = 20230307-17:01:04.567199067
99 = 0.00
150 = 5
151 = 0.00200000
582 = 4
10 = 032
Used to modify a parameter of an existing order that is still live on exchange. Only the price and quantity can be modified.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | Yes | MsgType = G | |
50 | SenderSubID | Yes | Part of the Header. Participant ID created at Zero Hash with specific relationships on the CLOB Must match field 50 on the message that the OrigClOrdID references |
1 | Account | Yes | Trading Account on the CLOB. This information wil be shared during onboarding. Must match field 1 on the message that the OrigClOrdID references |
11 | ClOrdId | Yes | Unique identifier of the order. Must be unique for each session |
21 | HandlInst | Yes | 1 = Automated execution order, private, no Broker intervention 2 = Automated execution order, public, Broker intervention OK 3 = Manual order, best execution |
22 | SecurityIDSource | Yes | 8 = Exchange Symbol |
38 | OrderQty | Yes | The amount of the base asset to be transacted e.g. 10.5146 |
40 | OrdType | Yes | Must match OrdType on the message that the OrigClOrdID references |
41 | OrigClOrdId | Yes | An identifier matching the ClOrdID from the OrderSingle or OrderCancelReplaceRequest that this request applies to |
44 | Price | No | Required for limit OrdTypes |
48 | SecurityID | Yes | Must match the symbol on the message that the OrigClOrdID references |
54 | Side | Yes | Must match the side on the message that the OrigClOrdID references e.g. 1 = Buy 2 = Sell |
55 | Symbol | No | Must match the symbol on the message that the OrigClOrdID references |
60 | TransactTime | Yes | Time of execution/order creation. UTC time in datetime to milisecond or nanosecond format |
99 | StopPx | No | Specifies the quote price at which the order activates for Stop order types |
126 | ExpireTime | No | Required if TimeInForce = GTT (UTC time in datetime format - 17:18:02.544) |
Standard Trailer | Yes |
Order Cancel Request (F)
Example Message
Client
8 = FIXT.1.1
9 = 238
35 = F
34 = 76
49 = YOURSENDERCOMP
50 = [ParticipantId]
52 = 20230307-13:24:29.863406207
56 = ZERO
1128 = 9
1 = [AccountId]
11 = 16329117-3bf0-4684-b74a-54f44adbbe84
38 = 0.02
41 = e31e8ba5-2759-4255-8f08-91c1d18b9ebb
54 = 1
55 = BTC/USD
60 = 20220817-13:02:41
10 = 171
Used to cancel an order that is still live on the exchange.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | Yes | MsgType = F | |
50 | SenderSubID | Yes | Part of the Header. Participant ID created at Zero Hash with specific relationships on the CLOB. Must match field 50 on the message that the OrigClOrdID references |
1 | Account | Yes | Trading Account on the CLOB. This information wil be shared during onboarding. Must match field 1 on the message that the OrigClOrdID references |
11 | ClOrdId | Yes | Unique identifier of the order. Must be unique for each session |
21 | HandlInst | Yes | 1 = Automated execution order, private, no Broker intervention 2 = Automated execution order, public, Broker intervention OK 3 = Manual order, best execution |
22 | SecurityIDSource | Yes | 8 = Exchange Symbol |
38 | OrderQty | Yes | The amount of the base asset to be transacted e.g. 10.5146 |
40 | OrdType | Yes | Must match OrdType on the message that the OrigClOrdID references |
41 | OrigClOrdId | Yes | An identifier matching the ClOrdID from the OrderSingle or OrderCancelReplaceRequest that this request applies to |
48 | SecurityID | Yes | Must match the symbol on the message that the OrigClOrdID references |
54 | Side | Yes | Must match the side on the message that the OrigClOrdID references e.g. 1 = Buy 2 = Sell |
55 | Symbol | No | Must match the symbol on the message that the OrigClOrdID references |
60 | TransactTime | Yes | Time of execution/order creation. UTC time in datetime to milisecond or nanosecond format |
Standard Trailer | Yes |
Execution Report (8)
Example Messages
Gateway
8 = FIXT.1.1
9 = 417
35 = 8
34 = 187
49 = ZERO
52 = 20230528-11:00:32.132756617
56 = YOURSENDERCOMP
57 = [ParticipantId]
1 = [AccountId]
6 = 1864.410000000
11 = 1648638208684166132000
12 = 0.02
13 = 3
14 = 0.00100000
17 = 1661660653950776772
22 = 8
31 = 1864.41
32 = 0.00100000
37 = 1661694483444862995
38 = 0.00100000
39 = 2
40 = K
44 = 1864.41
48 = ETH/USD
54 = 1
55 = ETH/USD
59 = 1
60 = 20230528-11:00:32.062042969
99 = 0.00
150 = F
151 = 0.00000000
381 = 1.86
582 = 4
828 = 0
880 = 1661660653950776771
1057 = Y
10 = 138
Sent by the exchange to provide an update on a submitted order.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | - | MsgType = 8 | |
57 | TargetSubID | - | Part of the Header. Participant ID created at Zero Hash with specific relationships on the CLOB |
1 | Account | - | Trading Account on the CLOB. This information wil be shared during onboarding |
6 | AvgPx | - | Calculated average price of all fills on the order |
11 | ClOrdId | - | Unique identifier of the order copied from customer's request |
12 | Commission | - | The total amount of commissions associated with the order, rounded to two decimal places using banker's rounding |
13 | CommType | - | 1 = Per Unit 2 = Percent 3 = Absolute 4 = Percentage Waved Cash Discount 5 = Percentage Waved Enhanced Units 6 = Points Per Bond Or Contract |
14 | CumQty | - | Current executed quantity for chain of orders |
17 | ExecID | - | Platform assigned execution ID |
19 | ExecRefID | - | Reference identifier used with Trade Cancel and Trade Correct execution types |
22 | IDSource | - | Identifies class or source of the SecurityID (48) value. Required if SecurityID is specified |
31 | LastPx | - | Identifies the price of this (last) fill |
32 | LastQty | - | Quantity bought/sold on this (last) fill |
37 | OrderID | - | Unique identifier for Order |
38 | OrderQty | - | Size of the order. E.G. 10 |
39 | OrdStatus | - | 0 = New, 1 = PartiallyFilled, 2 = Filled, 4 = Canceled, 5 = Replaced, 6 = PendingCancel, 8 = Rejected, A = PendingNew, C = Expired, E = PendingReplace |
40 | OrdType | - | 2 = Limit 3 = Stop 4 = Stop Limit K = Market with left over as Limit |
44 | Price | - | Price per unit of quantity (e.g. per BTC, ETH, etc.) |
48 | SecurityID | Yes | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
54 | Side | Yes | Side of the order e.g. 1 = Buy 2 = Sell |
55 | Symbol | No | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
59 | TimeInForce | - | Specifies how long the order remains in effect. Absence of this field is interpreted as DAY. |
60 | TransactTime | - | Time of execution/order creation (UTC Time in datetime format) |
99 | StopPx | - | Stop Price |
150 | ExecType | - | Describes the specific Execution Report (i.e. Pending Cancel) while OrdStatus (39) will always identify the current order status |
151 | LeavesQty | - | Quantity open for further execution |
381 | GrossTradeAmt | - | Total amount traded (e.g. CumQty (14) * AvgPx (6) ) expressed in units of currency |
582 | CustOrderCapacity | - | Capacity of customer placing the order 1 = Member trading for their own account 2 = Clearing Firm trading for its proprietary account 3 = Member trading for another member 4 = All other |
828 | TrdType | - | 0 = Regular |
880 | TrdMatchID | - | Unique identifier assigned by the CLOB |
1057 | AggressorIndicator | - | Used to identify whether the order initiator is an aggressor or not in the trade. Y = Order initiator is aggressor N = Order initiator is passive |
Standard Trailer | - |
Order Cancel Reject (9)
This message is send when a Order Cancel Request or Order Cancel/Replace Request is rejected
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | - | MsgType = 9 | |
41 | OrigClOrdId | - | ClOrdID of the previous order. |
37 | OrdId | - | Unique Identifier of order assigned by the platform. |
11 | ClOrdId | - | Unique identifier of the order. Must be unique for each session. |
39 | OrdStatus | - | OrdStatus value after this cancel reject is applied. |
102 | CxlRejReason | - | Code to identify reason for cancel rejection. |
58 | Text | - | Optional explanation message. |
434 | CxlRejResponseTo | - | Unique identifier of the Canceled order. |
Standard Trailer | - |
Business Message Reject (j)
Example Messages
Gateway
8 = FIXT.1.1
9 = 110
35 = j
34 = 141
49 = ZERO
52 = 20221005-14:53:37.947531192
56 = YOURSENDERCOMP
57 = [ParticipantId]
45 = 140
58 = User Not Found
372 = D
380 = 6
10 = 051
An application level reject message sent when the FIX session can't process a message.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | MsgType = j | ||
45 | RefSeqNum | - | Reference Sequence Number |
58 | Text | - | A message explaining why the message was rejected. |
372 | RefMsgType | - | Reference Message type |
380 | BusinessRejectReason | - | 0 = OTHER 1 = UNKNOWN_ID 18 = INVALID_PRICE_INCREMENT 2 = UNKNOWN_SECURITY 3 = UNSUPPORTED_MESSAGE_TYPE 4 = APPLICATION_NOT_AVAILABLE 5 = CONDITIONALLY_REQUIRED_FIELD_MISSING 6 = NOT_AUTHORIZED 7 = DELIVERTO_FIRM_NOT_AVAILABLE_AT_THIS_TIME |
379 | BusinessRejectRefID | - | Rejection ID |
Standard Trailer |
Im
FIX Market Data Messages
Security List Request (x)
Example FIX Message
The FIX message would appear as
8 = FIXT.1.1
9 = 68
35 = x
34 = 2
49 = YOURSENDERCOMP-2
52 = 20220914-10:02:28.627
56 = ZERO
320 = YOUREQUESTID
559 = 4
10 = 128
Submits a request to get a list of the symbols available to trade on the exchange.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | MsgType = x | ||
48 | SecurityID | - | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
55 | Symbol | - | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
559 | SecurityListRequestType | - | 0 = Symbol 4 = All Symbols |
320 | SecurityReqID | Request ID | |
58 | Text | Text | |
Standard Trailer |
Security List (y)
Example FIX Message
The FIX message would appear as
8 = FIXT.1.1
9 = 68
35 = y
34 = 2
49 = ZERO
52 = 20220914-10:02:28.627
56 = YOUSENDERCOMP
320 = TEST3
322 = 1663137395821002753
560 = 0
146 = 8
55 = BTC/USD
48 = BTC/USD
22 = 8
167 = FXSPOT
231 = 1
864 = 1
865 = 5
866 = 19700101
868 = StartDate
969 = 0.01
1151 = BTC
15 = USD
1306 = 2
1148 = 60.0
1149 = 30.0
1150 = 27811.39
562 = 0.00000001
55 = ETH/USD
48 = ETH/USD
22 = 8
167 = FXSPOT
231 = 1
864 = 1
865 = 5
866 = 19700101
868 = StartDate
969 = 0.01
1151 = ETH
15 = USD
1306 = 2
1148 = 60.0
1149 = 30.0
1150 = 1903.01
562 = 0.00000001
10 = 240
# Example FIX Message
8=FIXT.1.1|9=1254|35=y|34=11|49=ZERO|52=20230530-07:31:25.338696963|56=YOURSENDERCOMP|320=TEST3|322=1663137395821002753|560=0|146=8|55=BTC/USD|48=BTC/USD|22=8|167=FXSPOT|231=1|864=1|865=5|866=19700101|868=StartDate|969=0.01|1151=BTC|15=USD|1306=2|1148=60.0|1149=30.0|1150=27811.39|562=0.00000001|55=ETH/USD|48=ETH/USD|22=8|167=FXSPOT|231=1|864=1|865=5|866=19700101|868=StartDate|969=0.01|1151=ETH|15=USD|1306=2|1148=60.0|1149=30.0|1150=1903.01|562=0.00000001|55=BCH/USD|48=BCH/USD|22=8|167=FXSPOT|231=1|864=1|865=5|866=19700101|868=StartDate|969=0.01|1151=BCH|15=USD|1306=2|1148=60.0|1149=30.0|1150=114.99|562=0.00000001|55=LTC/USD|48=LTC/USD|22=8|167=FXSPOT|231=1|864=1|865=5|866=19700101|868=StartDate|969=0.01|1151=LTC|15=USD|1306=2|1148=60.0|1149=30.0|1150=91.46|562=0.00000001|55=WBTC/USD|48=WBTC/USD|22=8|167=FXSPOT|231=1|864=1|865=5|866=19700101|868=StartDate|969=0.01|1151=WBTC|15=USD|562=0.00000001|55=BTC/AUD|48=BTC/AUD|22=8|167=FXSPOT|231=1|864=1|865=5|866=19700101|868=StartDate|969=0.01|1151=BTC|15=AUD|562=0.00000001|55=ETH/AUD|48=ETH/AUD|22=8|167=FXSPOT|231=1|864=1|865=5|866=19700101|868=StartDate|969=0.01|1151=ETH|15=AUD|562=0.00000001|55=WBTC/AUD|48=WBTC/AUD|22=8|167=FXSPOT|231=1|864=1|865=5|866=19700101|868=StartDate|969=0.01|1151=WBTC|15=AUD|562=0.00000001|10=240
A response to a SecurityListRequest that includes information about the requested symbols.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | MsgType = y | ||
320 | SecurityReqID | - | Request ID |
322 | SecurityResponseID | - | |
560 | SecurityRequestResult | - | |
146 | NoRelatedSym | - | |
55 | Symbol | - | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
48 | SecurityId | - | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
22 | SecurityId | - | |
167 | SecurityType | - | |
231 | ContractMultiplier | - | |
864 | NoEvents | - | |
865 | EventType | - | |
866 | EventDate | - | |
868 | EventText | - | |
969 | MinPriceIncrement | - | |
1151 | SecurityGroup | - | |
15 | Currency | - | |
1306 | PriceLimitType | - | |
1148 | LowLimitPrice | - | |
1149 | HighLimitPrice | - | |
1150 | TradingReferencePrice | - | |
562 | MinTradeVol | - | |
58 | Text | - | Text |
Standard Trailer |
Market Data Request (V)
# Market Data Request (V)
8 = FIXT.1.1
9 = 133
35 = V
34 = 306
49 = YOURSENDERCOMP
52 = 20220915-09:58:59.011
56 = ZERO
146 = 1
55 = BTC/USD
48 = BTC/USD
22 = 8
262 = ZERO
263 = 1
264 = 2
267 = 3
269 = 0
269 = 1
269 = 2
10 = 093
# Example FIX Message
8=FIXT.1.1|9=138|35=V|34=627|49=C-SENDER-4|52=20230418-10:31:53.613|56=ZERO 262=KF-TEST-1|263=1|264=0|146=1|55=BTC/USD|48=BTC/USD|22=8|267=3|269=0|269=1|269=2|10=053
Sent by the client to subscribe or unsubscribe to market data for a given symbol.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | Yes | MsgType = V | |
55 | Symbol | - | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
48 | SecurityId | - | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
22 | SecurityIDSource | Yes | 8 = Exchange Symbol |
146 | NoRelatedSym | Yes | The number of symbols in the repeating group defined below. If unspecified or set to 0 the request applies to all symbols |
262 | MDReqID | Yes | The MDReqID of the MarketDataRequest message. |
263 | SubscriptionRequestType | Yes | 0 = Snapshot 1 = Subscribe (Snapshot + Updates_ 2 = Unsubscribe |
264 | MarketDepth | Yes | |
267 | NoMDEntryTypes | Yes | How many price levels from BBO inclusive to include for the market data snapshot and updates (defaults to 1) |
269 | MDEntryType | Type of market data entry. Valid values: 0 = Bid 1 = Offer 2 = Trade |
|
10 | Standard Trailer | Yes |
Market Data Snapshot (W)
# Market Data Response
8 = FIXT.1.1
9 = 1187
35 = W
34 = 8819
49 = ZERO
52 = 20220915-09:58:59.131087940
56 = YOURSENDERCOMP
22 = 8
48 = BTC/USD
55 = BTC/USD
167 = NONE
262 = ZERO
268 = 11
269 = 0
270 = 20000.00
271 = 0.01000000
272 = 20220915
273 = 09:58:58.701896604
59 = 1
37 = 1570062592651415552
278 = 1570062592651415552
40 = 2
269 = 0
270 = 19931.67
271 = 0.00775000
272 = 20220915
273 = 09:58:58.701896604
59 = 1
37 = 1570351436330594304
278 = 1570351436330594304
40 = 2
269 = 0
270 = 19873.28
271 = 0.01550000
272 = 20220915
273 = 09:58:58.701896604
59 = 1
37 = 1570351460967936000
278 = 1570351460967936000
40 = 2
269 = 1
270 = 20335.34
271 = 0.00625000
272 = 20220915
273 = 09:58:58.701896604
59 = 1
37 = 1570351423974174720
278 = 1570351423974174720
40 = 2
269 = 1
270 = 20393.72
271 = 0.01250000
272 = 20220915
273 = 09:58:58.701896604
59 = 1
37 = 1570351448670236672
278 = 1570351448670236672
40 = 2
269 = 2
270 = 44000.00
271 = 0.02500000
272 = 20220914
273 = 18:12:59.695310898
336 = OPEN
269 = 4
270 = 20523.20
272 = 20220914
273 = 12:44:19.851431213
336 = OPEN 0
1070 = 1
269 = 6
270 = 20318.00
272 = 20220914
273 = 12:44:03.897119444
336 = OPEN
269 = 7
270 = 44000.00
272 = 20220914
273 = 18:12:59.695310898
336 = OPEN
269 = 8
270 = 20333.32
272 = 20220914
273 = 14:31:11.180821686
336 = OPEN
269 = B
270 = 53138.0442000000
271 = 2.43500000
272 = 20220914
273 = 18:12:59.695310898
336 = OPEN 1
1151 = BTC
10 = 238
# Example FIX Message
8=FIXT.1.1|9=2592|35=W|34=633|49=ZERO|52=20230418-10:31:53.671694278|56=C-SENDER-4|22=8|48=BTC/USD|55=BTC/USD|167=FXSPOT|262=KF-TEST-1|1151=BTC|268=22|269=0|270=29642.54|271=1.03125000|272=20230418|273=10:31:53.346704811|59=1|37=1648272887529566208|278=1648272887529566208|40=2|269=0|270=29633.55|271=2.06250000|272=20230418|273=10:31:53.346704811|59=1|37=1648272892308545536|278=1648272892308545536|40=2|269=0|270=29624.57|271=3.09375000|272=20230418|273=10:31:53.346704811|59=1|37=1648272897052987392|278=1648272897052987392|40=2|269=0|270=29615.59|271=4.12500000|272=20230418|273=10:31:53.346704811|59=1|37=1648272901902667776|278=1648272901902667776|40=2|269=0|270=29609.60|271=5.15625000|272=20230418|273=10:31:53.346704811|59=1|37=1648272906566733824|278=1648272906566733824|40=2|269=0|270=29600.62|271=6.18750000|272=20230418|273=10:31:53.346704811|59=1|37=1648272911380045824|278=1648272911380045824|40=2|269=0|270=29591.63|271=7.21875000|272=20230418|273=10:31:53.346704811|59=1|37=1648272916195790848|278=1648272916195790848|40=2|269=0|270=24000.00|271=0.00100000|272=20230418|273=10:31:53.346704811|59=1|37=1635303518873812992|278=1635303518873812992|40=2|269=0|270=20000.00|271=0.34000000|272=20230418|273=10:31:53.346704811|59=1|37=1647962390451802112|278=1647962390451802112|40=2|269=1|270=30241.37|271=1.03125000|272=20230418|273=10:31:53.346704811|59=1|37=1648272885002067968|278=1648272885002067968|40=2|269=1|270=30250.36|271=2.06250000|272=20230418|273=10:31:53.346704811|59=1|37=1648272889964613632|278=1648272889964613632|40=2|269=1|270=30259.34|271=3.09375000|272=20230418|273=10:31:53.346704811|59=1|37=1648272894651494400|278=1648272894651494400|40=2|269=1|270=30268.32|271=4.12500000|272=20230418|273=10:31:53.346704811|59=1|37=1648272899482554368|278=1648272899482554368|40=2|269=1|270=30274.31|271=5.15625000|272=20230418|273=10:31:53.346704811|59=1|37=1648272904255672320|278=1648272904255672320|40=2|269=1|270=30283.29|271=6.18750000|272=20230418|273=10:31:53.346704811|59=1|37=1648272909024595968|278=1648272909024595968|40=2|269=1|270=30292.28|271=7.21875000|272=20230418|273=10:31:53.346704811|59=1|37=1648272913795964928|278=1648272913795964928|40=2|269=2|270=29845.29|271=0.03000000|272=20230417|273=19:09:53.681343752|336=OPEN|269=4|270=23740.21|272=20230301|273=07:27:14.192944939|336=OPEN|1070=1|269=6|270=29871.01|272=20230418|273=10:30:02.088848545|336=OPEN|269=7|270=30601.80|272=20230412|273=10:57:30.721240790|336=OPEN|269=8|270=19894.69|272=20230310|273=14:48:33.657546283|336=OPEN|269=B|270=248417.7740584679|271=10.45056778|272=20230417|273=19:09:53.681343752|336=OPEN|10=225
Sent in response to a MarketDataRequest. This message can contain a 2 sided list of quotes for a single security. It is used to initialize or reset the entire state of the book.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | - | MsgType = W | |
22 | IDSource | - | Identifies class or source of the SecurityID (48) value. Required if SecurityID is specified |
48 | SecurityID | - | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
55 | Symbol | - | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
167 | SecurityType | - | Indicates type of security. |
262 | MDReqID | - | Unique identifier for Market Data Request |
1151 | SecurityGroup | - | An exchange specific name assigned to a group of related securities. |
268 | NoMDEntries | - | Number of entries in Market Data message. |
269 | MDEntryType | - | Type of market data entry. Valid values: 0 = Bid 1 = Offer 2 = Trade |
270 | MDEntryPx | - | Price of the Market Data Entry. |
271 | MDEntrySize | - | Qty represented by the Market Data Entry. |
272 | MDEntryDate | - | Date of Market Data Entry. |
273 | MDEntryTime | - | Time of Market Data Entry. |
59 | TimeInForce | - | Specifies how long the order remains in effect. Absence of this field is interpreted as DAY. |
37 | OrderID | - | Unique identifier for Order |
278 | MDEntryID | - | Unique Market Data Entry identifier. |
40 | OrdType | - | Order type. Valid values: 2 = Limit 3 = Stop 4 = Stop Limit K = Market with left over as Limit |
336 | TradingSessionID | - | Identifier for Trading Session. |
1070 | MDQuoteType | - | Identifies market data quote type. |
10 | Standard Trailer | - |
Market Data Incremental Refresh (X)
# Market Data Response (X)
8 = FIXT.1.1
9 = 256
35 = X
34 = 12781
49 = ZERO
52 = 20220915-12:55:24.957686955
56 = YOURSENDERCOMP
262 = ZERO
268 = 1
279 = 0
269 = 0
278 = 1570395862859935744
55 = BTC/USD
48 = BTC/USD
22 = 8
167 = NONE
1151 = BTC
270 = 19609.77
271 = 0.05425000
272 = 20220915
273 = 12:55:24.937078681
59 = 1
37 = 1570395862859935744
40 = 2
10 = 049
# Example FIX Message
8=FIXT.1.1|9=233|35=X|34=666|49=ZERO|52=20230418-10:32:59.578912962|56=C-SENDER-4|262=KF-TEST-1|268=1|279=2|269=0|278=1648273191557107712|55=BTC/USD|48=BTC/USD|22=8|167=FXSPOT|1151=BTC|272=20230418|273=10:32:59.573185773|59=1|37=1648273191557107712|40=2|10=226
Sent in response to a MarketDataRequest. This message provides incremental updates for quote changes in a single security.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | - | MsgType = X | |
262 | MDReqID | - | Unique identifier for Market Data Request |
268 | NoMDEntries | - | Number of entries in Market Data message. |
279 | MDUpdateAction | - | Type of Market Data update action. |
269 | MDEntryType | - | Type of market data entry. Valid values: 0 = Bid 1 = Offer 2 = Trade |
278 | MDEntryID | - | Unique Market Data Entry identifier. |
55 | Symbol | - | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
48 | SecurityID | - | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
22 | IDSource | - | Identifies class or source of the SecurityID (48) value. Required if SecurityID is specified. |
167 | SecurityType | - | Indicates type of security. |
1151 | SecurityGroup | - | An exchange specific name assigned to a group of related securities. |
272 | MDEntryDate | - | Date of Market Data Entry. |
273 | MDEntryTime | - | Time of Market Data Entry. |
59 | TimeInForce | - | Specifies how long the order remains in effect. Absence of this field is interpreted as DAY. |
37 | OrderID | - | Unique identifier for Order |
40 | OrdType | - | Order type. Valid values: 1 = Market , 2 = Limit , 3 = Stop , 4 = Stop Limit |
10 | Standard Trailer | - |
Drop Copy Messages
Execution Report (8)
Example Messages
Gateway
8 = FIXT.1.1
9 = 417
35 = 8
34 = 187
49 = ZERO
52 = 20230528-11:00:32.132756617
56 = YOUR-DROPCOPY-SENDERCOMP
57 = [ParticipantId]
1 = [AccountId]
6 = 1864.410000000
11 = 1648638208684166132000
12 = 0.02
13 = 3
14 = 0.00100000
17 = 1661660653950776772
22 = 8
31 = 1864.41
32 = 0.00100000
37 = 1661694483444862995
38 = 0.00100000
39 = 2
40 = K
44 = 1864.41
48 = ETH/USD
54 = 1
55 = ETH/USD
59 = 1
60 = 20230528-11:00:32.062042969
99 = 0.00
150 = F
151 = 0.00000000
381 = 1.86
582 = 4
828 = 0
880 = 1661660653950776771
1057 = Y
10 = 138
Sent by the exchange to provide an update on a submitted order. Your Drop Copy session will return Execution Report (8) messages only for all order statuses.
Tag | Field Name | Required | Note |
---|---|---|---|
Standard Header | - | ||
57 | TargetSubID | - | |
1 | Account | - | |
6 | AvgPx | - | |
11 | ClOrdId | - | Unique identifier of the order copied from customer's request |
12 | Commission | - | The total amount of commissions associated with the order, rounded to two decimal places using banker's rounding |
13 | CommType | - | 1 = Per Unit 2 = Percent 3 = Absolute 4 = Percentage Waved Cash Discount 5 = Percentage Waved Enhanced Units 6 = Points Per Bond Or Contract |
14 | CumQty | - | Current executed quantity for chain of orders |
17 | ExecID | - | Platform assigned execution ID |
19 | ExecRefID | - | Reference identifier used with Trade Cancel and Trade Correct execution types |
22 | IDSource | - | Identifies class or source of the SecurityID (48) value. Required if SecurityID is specified. |
31 | LastPx | - | Identifies the price of this (last) fill. |
32 | LastQty | - | Quantity bought/sold on this (last) fill. |
37 | OrderID | - | Unique identifier for Order |
38 | OrderQty | - | Size of the order. E.G. 10 |
39 | OrdStatus | - | 0 = New, 1 = PartiallyFilled, 2 = Filled, 4 = Canceled, 5 = Replaced, 6 = PendingCancel, 8 = Rejected, A = PendingNew, C = Expired, E = PendingReplace |
40 | OrdType | - | '2' = Limit '3' = Stop '4' = Stop Limit 'K' = Market with left over as Limit |
44 | Price | - | |
48 | SecurityID | - | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
54 | Side | - | Side of the order e.g. 1 = Buy 2 = Sell |
55 | Symbol | - | Symbol of the instrument being traded e.g. BTC/USD, ETH/USD, etc |
59 | TimeInForce | - | Specifies how long the order remains in effect. Absence of this field is interpreted as DAY. |
60 | TransactTime | - | Time of execution/order creation (UTC Time in datetime format) |
99 | StopPx | - | Stop Price |
150 | ExecType | - | Describes the specific Execution Report (i.e. Pending Cancel) while OrdStatus (39) will always identify the current order status |
151 | LeavesQty | - | Quantity open for further execution. |
381 | GrossTradeAmt | - | Total amount traded (e.g. CumQty (14) * AvgPx (6) ) expressed in units of currency. |
582 | CustOrderCapacity | - | Capacity of customer placing the order 1 = Member trading for their own account 2 = Clearing Firm trading for its proprietary account 3 = Member trading for another member 4 = All other |
828 | TrdType | - | 0 = Regular |
880 | TrdMatchID | - | Unique identifier assigned by the CLOB |
1057 | AggressorIndicator | Used to identify whether the order initiator is an aggressor or not in the trade. Y = Order initiator is aggressor N = Order initiator is passive |
|
Standard Trailer | - |
Appendix
Below is the appendix for needed components included in Order Executions & Market Data requests:
Instrument
Tag | Field Name | Required | Data Type | Accepted Enums |
---|---|---|---|---|
48 | SecurityID | Yes | STRING | |
22 | SecurityIDSource | Yes | STRING | 8 = Exchange Symbol. Currently this is only used for Crypto |
167 | SecurityType | No | STRING | CS = Common Stock. Currently this is only used for Crypto |
55 | Symbol | No | STRING |
OrderQtyData
Tag | Field Name | Required | Data Type | Accepted Enums |
---|---|---|---|---|
152 | CashOrderQty | QTY | ||
38 | OrderQty | QTY |
Parties
Tag | Field Name | Required | Data Type | Accepted Enums |
---|---|---|---|---|
NoPartyIDs | ||||
>448 | PartyID | STRING | ||
>447 | PartyIDSource | CHAR | 1 = KOREAN_INVESTOR_ID 2 = TAIWANESE_QUALIFIED_FOREIGN_INVESTOR_ID_QFII_FID 3 = TAIWANESE_TRADING_ACCT 4 = MALAYSIAN_CENTRAL_DEPOSITORY 5 = CHINESE_INVESTOR_ID 6 = UK_NATIONAL_INSURANCE_OR_PENSION_NUMBER 7 = US_SOCIAL_SECURITY_NUMBER 8 = US_EMPLOYER_OR_TAX_ID_NUMBER 9 = AUSTRALIAN_BUSINESS_NUMBER A = AUSTRALIAN_TAX_FILE_NUMBER B = BIC C = GENERALLY_ACCEPTED_MARKET_PARTICIPANT_IDENTIFIER D = PROPRIETARY E = ISO_COUNTRY_CODE F = SETTLEMENT_ENTITY_LOCATION G = MIC H = CSD_PARTICIPANT_MEMBER_CODE I = DIRECTED_BROKER_THREE_CHARACTER_ACRONYM_AS_DEFINED_IN_ISITC_ETC_BEST_PRACTICE_GUIDELINES_DOCUMENT N = LEGAL_ENTITY_IDENTIFIER |
|
>452 | PartyRole | INT | 24 = Customer Account |
CommissionData
Tag | Field Name | Required | Data Type | Accepted Enums |
---|---|---|---|---|
13 | CommType | CHAR | 1 = Per Unit 2 = Percent 3 = Absolute 4 = Percentage Waved Cash Discount 5 = Percentage Waved Enhanced Units 6 = Points Per Bond or Contract |
|
12 | Commission | FLOAT |
MDFullGrp
Tag | Field Name | Required | Data Type | Accepted Enums |
---|---|---|---|---|
NoMDEntries | ||||
>15 | Currency | CURRENCY | ||
>18 | ExecInst | MULTIPLECHARVALUE | J = SINGLE_EXECUTION_REQUESTED_FOR_BLOCK_TRADE G = ALL_OR_NONE 6 = PARTICIPATE_DONT_INITIATE b = STRICT_LIMIT R = BEST_LIMIT T = IMMEDIATELY_EXECUTABLE_LIMIT |
|
>126 | ExpireTime | UTCTIMESTAMP | ||
>332 | HighPx | PRICE | ||
>31 | LastPx | PRICE | ||
>283 | LocationID | STRING | ||
>333 | LowPx | PRICE | ||
>272 | MDEntryDate | UTCDATEONLY | ||
>278 | MDEntryID | STRING | ||
>270 | MDEntryPx | PRICE | ||
>271 | MDEntrySize | QTY | ||
>273 | MDEntryTime | UTCTIMEONLY | ||
>269 | MDEntryType | CHAR | 0 = BID 1 = OFFER 2 = TRADE 3 = INDEX_VALUE 4 = OPENING_PRICE 5 = CLOSING_PRICE 6 = SETTLEMENT_PRICE 7 = TRADING_SESSION_HIGH_PRICE 8 = TRADING_SESSION_LOW_PRICE 9 = TRADING_SESSION_VWAP_PRICE A = IMBALANCE B = TRADE_VOLUME C = OPEN_INTEREST D = COMPOSITE_UNDERLYING_PRICE E = SIMULATED_SELL_PRICE F = SIMULATED_BUY_PRICE G = MARGIN_RATE H = MID_PRICE J = EMPTY_BOOK K = SETTLE_HIGH_PRICE L = SETTLE_LOW_PRICE M = PRIOR_SETTLE_PRICE N = SESSION_HIGH_BID O = SESSION_LOW_OFFER P = EARLY_PRICES Q = AUCTION_CLEARING_PRICE R = DAILY_VALUE_ADJUSTMENT_FOR_LONG_POSITIONS S = SWAP_VALUE_FACTOR T = CUMULATIVE_VALUE_ADJUSTMENT_FOR_LONG_POSITIONS U = DAILY_VALUE_ADJUSTMENT_FOR_SHORT_POSITIONS V = CUMULATIVE_VALUE_ADJUSTMENT_FOR_SHORT_POSITIONS W = FIXING_PRICE X = CASH_RATE Y = RECOVERY_RATE Z = RECOVERY_RATE_FOR_LONG a = RECOVERY_RATE_FOR_SHORT |
|
>1070 | MDQuoteType | INT | 0 = INDICATIVE 1 = TRADEABLE 2 = RESTRICTED_TRADEABLE 3 = COUNTER 4 = INDICATIVE_AND_TRADEABLE |
|
>110 | MinQty | QTY | ||
>286 | OpenCloseSettlFlag | MULTIPLECHARVALUE | 0 = DAILY_OPEN 1 = SESSION_OPEN 2 = DELIVERY_SETTLEMENT_ENTRY 3 = EXPECTED_ENTRY 4 = ENTRY_FROM_PREVIOUS_BUSINESS_DAY 5 = THEORETICAL_PRICE_VALUE |
|
>40 | OrdType | CHAR | 2 = LIMIT 3 = STOP 4 = STOP_LIMIT K = MARKET_WITH_LEFT_OVER_AS_LIMIT |
|
>37 | OrderID | STRING | ||
> | Parties | Component | ||
>762 | SecuritySubType | STRING | ||
>58 | Text | STRING | ||
>59 | TimeInForce | CHAR | 0 = DAY 1 = GOOD_TILL_CANCEL 3 = IMMEDIATE_OR_CANCEL 6 = GOOD_TILL_DATE |
|
>336 | TradingSessionID | STRING | ||
>828 | TrdType | INT | 0 = REGULAR_TRADE (Default) |