Last updated on

Order Entry

NewOrderSingle (35=D)

TAGNAMETYPEREQDESCRIPTION
11ClOrdIDstringYAn identifier specified by the sender to uniquely identify other messages correlating to this request.
18ExecInststringNExecution instructions separated by spaces:
6 = Add Liquidity Only (ALO)

ALO: Matching engine only accepts the order if it doesn't match against any resting orders.
38OrderQtydecimal128YQuantity requested. This represents the number of shares of the base asset.
40OrdTypecharYOrder type:
1 = Market
2 = Limit

Note: Market (OrdType = 1) orders will automatically be converted to aggressively priced limit orders.
41OrigClOrdIDstringCClOrdID (11) of the previous order as assigned by the institution, used to identify the previous order in cancel and cancel/replace requests.
44Pricedecimal128CThe limit price for limit orders of the quote asset. The requested limit price must meet the market's minimum price variation (MPV) requirements or will be rejected by the exchange.

Note: Required when OrdType = 2 (Limit). Ignored for other order types.
54SidecharYSide of order:
1 = Buy
2 = Sell
55SymbolstringYTicker symbol. Human-readable representation of the security. (e.g. BTC/USDC)
59TimeInForcecharYSpecifies how long the order remains in effect. Absence of this field is interpreted as IOC:
1 = Good Till Cancel (GTC, up to 30 days)
3 = Immediate Or Cancel (IOC)
453NoPartyIDsintYNumber of PartyID (448) and PartyRole (452) entries. This tag must be the first entry before the repeating group(s).
Must be set equal to 1. Only one party is supported per request.
↳448PartyIDstringYStart of new fee group entry
Party identifier/code.
↳452PartyRoleintYIdentifies the type or role of the PartyID (448) specified:
3 = Client ID.

OrderCancelReplaceRequest (35=G)

TAGNAMETYPEREQDESCRIPTION
11ClOrdIDstringYAn identifier specified by the sender to uniquely identify other messages correlating to this request.
38OrderQtydecimal128NNew quantity requested. This represents the number of shares of the base asset.
40OrdTypecharNOrder type:
1 = Market

Note: Only allowed to modify Limit (OrdType = 2) to market.
41OrigClOrdIDstringYClOrdID (tag 11) of the previous order as assigned by the sender, used to identify the previous order in cancel/replace requests.
44Pricedecimal128CThe new limit price for the order of the quote asset. The new requested limit price must meet the market's minimum price variation (MPV) requirements or will be rejected by the exchange.

Note: Conditionally required when OrdType = 2 (Limit). Ignored for other order types.
453NoPartyIDsintYNumber of PartyID (448) and PartyRole (452) entries. This tag must be the first entry before the repeating group(s).
Must be set equal to 1. Only one party is supported per request.
↳448PartyIDstringYStart of new fee group entry
Party identifier/code.
↳452PartyRoleintYIdentifies the type or role of the PartyID (448) specified:
3 = Client ID
24 = Customer account.

ExecutionReport (35=8)

TAGNAMETYPEREQDESCRIPTION
6AvgPxdecimal128CSet when ExecType (150) equals Trade (F).
Calculated average price of all fills on this order.
11ClOrdIDstringYAn identifier specified by the sender to uniquely identify other messages correlating to this request.
15CurrencystringYIdentifies currency used for prices, fees, and commissions within the execution report.
17ExecIDstringYUnique identifier of execution message as assigned by the exchange.
31LastPxdecimal128CSet when ExecType (150) equals Partially Filled (1) or Filled (2).
Price of this (last) trade.
32LastQtydecimal128CSet when ExecType (150) equals Partially Filled (1) or Filled (2).
Quantity bought/sold of this (last) trade.
37OrderIDstringYUnique identifier of order request as assigned by the exchange.
38OrderQtydecimal128YQuantity requested. This represents the number of shares of the base asset.
39OrdStatuscharYIdentifies current status of order:
0 = New
1 = Partially Filled
2 = Filled
4 = Canceled
6 = Pending Cancel
8 = Rejected
9 = Suspended
A = Pending New
E = Pending Replace
C = Expired.
150ExecTypecharYDescribes the specific Execution report:
0 = New
4 = Canceled
5 = Replaced
6 = Pending Cancel
8 = Rejected
A = Pending New
C = Expired
E = Pending Replace
F = Trade
G = Trade Correct
H = Trade Cancel.

OrderCancelReject (35=9)

TAGNAMETYPEREQDESCRIPTION
11ClOrdIDstringYAn identifier specified by the sender to uniquely identify other messages correlating to this request.
37OrderIDstringYUnique identifier of order request as assigned by the exchange.
41OrigClOrdIDstringYClOrdID (tag 11) of the previous order as assigned by the sender, used to identify the previous order in cancel/replace requests.
58TextstringCThe message will indicate why the cancel was rejected.
102CxlRejReasonintCA code to indicate a reason for more common scenarios that produce a cancel reject. Supported values include:
0 - Too late to cancel
1 - Unknown order.
434CxlRejResponseTocharYIdentifies the type of request that a Cancel Reject is in response to:
1 - Cancel Request
2 - Cancel Replace Request.