This message is used to submit orders for execution, for securities, forex, collective investment vehicles (CIV), and more.
Orders can be submitted with special handling instructions and execution instructions. Handling instructions refer to how the broker should handle the order on its trading floor. See HandlInst (21). Execution instructions contain explicit directions as to how the order should be executed. See ExecInst (18).
Orders received with PossResend (97) set in the header should be validated by ClOrdID (11). Implementations should also consider checking order parameters (side, symbol, quantity, etc.) to determine if the order had been previously submitted. PossResend (97) previously received should be acknowledged back to the client using an Execution Report <35=8>. PossResend (97) not previously received should be processed as a new order.
The given TransactTime (60) should allow the receiver of the order to apply business rules to determine if the order is potentially stale, e.g. in the event that there have been communication problems.
To support forex accommodation trades, two fields, ForexReq (121) and SettlCurrency (120), are included in the message. To request a broker to execute a forex trade in conjunction with the securities trade, the institution would set the ForexReq (121) = Y and SettlCurrency (120) = "intended settlement currency". The broker would then execute a forex trade from the execution currency to the settlement currency and report the results via the execution message in the SettlCurrAmt (119) and SettlCurrency (120) fields.
Orders involving or requiring pre-trade allocation consist of the following steps:
To take an Indication of Interest <35=6> or Quote <35=S> from an ECN or exchange and not display the order on the book, the New Order Single message should contain TimeInForce (59) = "ImmediateOrCancel" and OrdType (40) = "Previously Indicated" or "Previously Quoted".
Tag | Name | Type | Required | Description |
---|---|---|---|---|
Component | ||||
11 | String | Unique identifier of the order as assigned by institution or by the intermediary (CIV term, not a hub/service bureau) with closest association with the investor | ||
2422 | Int | |||
526 | String | |||
583 | String | |||
2829 | Boolean Enum | |||
Component | This is party information related to the submitter of the request | |||
Component | Identifies parties not directly associated with or owning the order, who are to be informed to effect processing of the order | |||
229 | LocalMktDate | |||
75 | LocalMktDate | |||
1 | String | |||
660 | Int Enum | |||
581 | Int Enum | Type of account associated with the order (Origin) | ||
589 | Char Enum | |||
590 | Char Enum | |||
591 | Char Enum | |||
70 | String | Used to assign an overall allocation id to the block of preallocations | ||
Component | Number of repeating groups for pre-trade allocation | |||
63 | String Enum | For NDFs either SettlType or SettlDate should be specified | ||
64 | LocalMktDate | Takes precedence over SettlType value and conditionally required/omitted for specific SettlType values | ||
544 | Char Enum | |||
635 | String Enum | |||
21 | Char Enum | |||
18 | MultipleCharValue Enum | Can contain multiple instructions, space delimited. If OrdType=P, exactly one of the following values (ExecInst = L, R, M, P, O, T, W, a, d) must be specified | ||
1805 | Int Enum | |||
110 | Quantity | |||
1822 | Int Enum | |||
1089 | Quantity | |||
1090 | Int | |||
2676 | Percentage | |||
Component | ||||
Component | ||||
2362 | String | May be used as an alternative to MatchingInstructions when the identifier does not appear in another field | ||
2964 | Int Enum | |||
Component | ||||
Component | Specifies instructions to disclose certain order level information in market data | |||
111 | Quantity | |||
1300 | String | |||
100 | Exchange | |||
1133 | Char Enum | |||
2704 | Int Enum | |||
Component | Specifies the number of repeating TradingSessionIDs | |||
81 | Char Enum | Used to identify soft trades at order entry | ||
Component | ||||
Component | ||||
Component | Number of underlyings | |||
140 | Price | Useful for verifying security identification | ||
54 | Char Enum | |||
2102 | Boolean | |||
1688 | Int Enum | Available for optional use when Side(54) = 6(Sell short exempt) | ||
114 | Boolean Enum | Required for short sell orders | ||
60 | UTCTimestamp | Time this order request was initiated/released by the trader, trading system, or intermediary | ||
Component | ||||
854 | Int Enum | |||
Component | ||||
40 | Char Enum | |||
423 | Int Enum | |||
44 | Price | Required for limit OrdTypes. For F/X orders, should be the "all-in" rate (spot rate adjusted for forward points). Can be used to specify a limit price for a pegged order, previously indicated, etc | ||
2838 | Price | May be used for new (child) orders stemming from the split of a parent order. Refers to the working price of the parent order | ||
1092 | Char Enum | |||
99 | Price | Required for OrdType = "Stop" or OrdType = "Stop limit" | ||
Component | The set of "TriggeringInstruction" fields defined in "common components of application messages" | |||
Component | ||||
Component | ||||
15 | Currency | |||
2897 | String Enum | |||
1740 | Int Enum | |||
1741 | Int Enum | |||
1742 | Price | Upfront Price for CDS transactions. Conditionally required if TradePriceNegotiationMethod(1740) = 4(Percent of par and upfront amount), 5(Deal spread and upfront amount) or 6(Upfront points and upfront amount) | ||
376 | String | |||
2404 | String | |||
2351 | Length | Must be set if EncodedComplianceText(2352) field is specified and must immediately precede it | ||
2352 | Data | Encoded (non-ASCII characters) representation of the ComplianceText(2404) field in the encoded format specified via the MessageEncoding(347) field | ||
377 | Boolean Enum | |||
797 | Boolean | May be used when intentionally sending an order more than once, e.g. an order being received manually as well as electronically in conjunction with a regulatory requirement to report both events | ||
23 | String | Required for Previously Indicated Orders (OrdType=E) | ||
117 | String | Required for Previously Quoted Orders (OrdType=D) | ||
59 | Char Enum | Absence of this field indicates Day order | ||
168 | UTCTimestamp | Can specify the time at which the order should be considered valid | ||
432 | LocalMktDate | Conditionally required if TimeInForce = GTD and ExpireTime is not specified | ||
126 | UTCTimestamp | Conditionally required if TimeInForce = GTD and ExpireDate is not specified | ||
427 | Int Enum | States whether executions are booked out or accumulated on a partially filled GT order | ||
1629 | Int | Conditionally required when TimeInForce(59)=10 (Good for Time) | ||
1916 | Int Enum | |||
Component | ||||
Component | Use as an alternative to CommissionData component if multiple commissions or enhanced attributes are needed | |||
528 | Char Enum | |||
529 | MultipleCharValue Enum | |||
1815 | Int Enum | |||
1934 | Int Enum | |||
1091 | Boolean | |||
1390 | Int Enum | Applies to trades resulting from the order | ||
582 | Int Enum | |||
Component | ||||
121 | Boolean Enum | Indicates that broker is requested to execute a Forex accommodation trade in conjunction with the security trade | ||
120 | Currency | Required if ForexReq=Y | ||
2899 | String Enum | |||
Component | ||||
2795 | Int Enum | |||
775 | Int Enum | Method for booking out this order. Used when notifying a broker that an order to be settled by that broker is to be booked out as an OTC derivative (e.g. CFD or similar). Absence of this field implies regular booking | ||
58 | String | |||
354 | Length | Must be set if EncodedText field is specified and must immediately precede it | ||
355 | Data | Encoded (non-ASCII characters) representation of the Text field in the encoded format specified via the MessageEncoding field | ||
193 | LocalMktDate | Can be used with OrdType = "Forex - Swap" to specify the "value date" for the future portion of a F/X swap | ||
192 | Quantity | Can be used with OrdType = "Forex - Swap" to specify the order quantity for the future portion of a F/X swap | ||
640 | Price | Can be used with OrdType = "Forex - Swap" to specify the price for the future portion of a F/X swap which is also a limit order. For F/X orders, should be the "all-in" rate (spot rate adjusted for forward points) | ||
1816 | Int Enum | |||
77 | Char Enum | For use in derivatives omnibus accounting | ||
203 | Int Enum | For use with derivatives, such as options | ||
210 | Quantity | |||
Component | ||||
Component | ||||
847 | Int Enum | The target strategy of the order | ||
Component | Strategy parameter block | |||
848 | String | For further specification of the TargetStrategy | ||
849 | Percentage | Mandatory for a TargetStrategy=Participate order and specifies the target particpation rate | ||
480 | Char Enum | For CIV - Optional | ||
481 | Char Enum | |||
513 | String | Reference to Registration Instructions message for this Order | ||
494 | String | Supplementary registration information for this Order | ||
1028 | Boolean | |||
1029 | Boolean | |||
1030 | String | |||
1031 | MultipleStringValue Enum | |||
1032 | Int Enum | |||
1724 | Int Enum | |||
2882 | Int Enum | May be used for cross orders submitted with single order messages | ||
1725 | String | |||
1726 | String | |||
2883 | Int Enum | |||
2884 | Int Enum | May be used for cross orders submitted with single order messages | ||
2525 | Boolean | |||
522 | Int Enum | |||
Component | ||||
Component | ||||
2524 | Int Enum | |||
1080 | String | Required for counter-order selection / Hit / Take Orders. (OrdType = Q) | ||
1081 | Char Enum | Conditionally required if RefOrderID is specified | ||
1685 | Int Enum | |||
1806 | String | |||
1803 | Int Enum | Conditionally required for auction orders | ||
1804 | Percentage | |||
Component |