Structure |
Related Messages
Description
The new order message type is used by institutions wishing to electronically submit securities and forex orders to a broker
for execution.
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> field). Execution instructions contain explicit directions as to how the order should be executed (see ExecInst <18> field).
New Order messages received with the PossResend <97> flag 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. PossResends previously received should be acknowledged back to the client via an Execution
- Status message. PossResends not previously received should be processed as a new order and acknowledged via an Execution
- New message.
The value specified in the TransactTime <60> field 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.
The order message can also be used to request a straight forex trade. Conventions for identifying a forex transaction are
as follows:
- The forex Symbol <55> is defined in "EBS" (Electronic Banking System) format: "CCY1/CCY2".
- Rates are expressed as "currency1 in currency2" (or "currency2 per currency1") and are calculated as CCY2 divided by CCY1
(NOT CCY1 divided by CCY2)
- (e.g. "GBP/USD" represents a rate expressed as USD per GBP, "USD/JPY" represents a rate expressed as JPY per USD, etc.).
- CCY1 and CCY2 are ISO currency codes
- The value of the Currency <15> field represents the denomination of the quantity fields (e.g. JPY represents quantity of JPY).
- In the case of a Forex - Swap (buying (or selling) a currency at one value date and selling (or buying) the same currency
at a different value date), Side <54> should represent the side of the FutSettDate2 <193> transaction.
-
OrdType <40> = Forex - Market, Forex - Limit, Forex- Swap, or Forex - Previously Quoted
- Netting can be specified via the ExecInst <18> field.
- See Appendix O – Foreign Exchange Trading
Orders involving or requiring Pre-Trade Allocation <J> consist of the following steps:
To "take" an IOI (or Quote <S>) from an ECN or exchange and not display the order on the book, the New Order message should contain the TimeInForce <59> field with ImmediateOrCancel and an OrdType <40> field with Previously Indicated ( or Previously Quoted).
The presence of DiscretionInst <388> on an order indicates that the trader wishes to display one price but will accept trades at another price. For example a
sell order with OrdType <40> = Limit, Price <44>=50.00, DiscretionInst <388> = Related to displayed price and DiscretionOffset <389> = -0.25 means that the order should be displayed as an offer for 50.00, but will match any bid >= 49.75 Discretionary pricing
can also be used when pegging an order - for example to indicate that a buy order is to be displayed as pegged to the bid
minus 0.25, but can be matched by anything <= the offer, set OrdType <40>=Pegged, ExecInst <18> = Primary Peg, PegDifference <211> = -0.25, DiscretionInst <388> = Related to market price and DiscretionOffset <389> = 0.
See Appendix D: Order State Change Matrices
Structure
Tag |
Field Name |
Req'd |
Comments |
<MessageHeader> |
Y |
MsgType <35> = D
|
11 |
ClOrdID |
Y |
Unique identifier of the order as assigned by institution.
|
109 |
ClientID |
N |
Used for firm identification in third-party transactions (should not be a substitute for OnBehalfOfCompID <115>/DeliverToCompID <128>).
|
76 |
ExecBroker |
N |
Used for firm identification in third-party transactions (should not be a substitute for OnBehalfOfCompID <115>/DeliverToCompID <128>).
|
1 |
Account |
N |
|
78 |
NoAllocs |
N |
Number of repeating groups for pre-trade allocation
|
=> |
79 |
AllocAccount |
N |
Required if NoAllocs <78> > 0. Must be first field in repeating group.
|
=> |
80 |
AllocShares |
N |
|
63 |
SettlmntTyp |
N |
Absence of this field is interpreted as Regular.
|
64 |
FutSettDate |
N |
Required when SettlmntTyp <63> ='6' (Future) or SettlmntTyp <63> ='8' (Sellers Option)
|
21 |
HandlInst |
Y |
|
18 |
ExecInst |
N |
Can contain multiple instructions, space delimited. If OrdType <40>=P, exactly one of the following values (ExecInst <18> = L, R, M, P, O, T, or W) must be specified.
|
110 |
MinQty |
N |
|
111 |
MaxFloor |
N |
|
100 |
ExDestination |
N |
|
386 |
NoTradingSessions |
N |
Specifies the number of repeating TradingSessionIDs <336>
|
=> |
336 |
TradingSessionID |
N |
Required if NoTradingSessions <386> is > 0.
|
81 |
ProcessCode |
N |
Used to identify soft trades at order entry.
|
55 |
Symbol |
Y |
|
65 |
SymbolSfx |
N |
|
48 |
SecurityID |
N |
|
22 |
IDSource |
N |
|
167 |
SecurityType |
N |
Must be specified if a Future or Option. If a Future: Symbol <55>, SecurityType <167>, and MaturityMonthYear <200> are required. If an Option: Symbol <55>, SecurityType <167>, MaturityMonthYear <200>, PutOrCall <201>, and StrikePrice <202> are required.
|
200 |
MaturityMonthYear |
N |
Specifies the month and year of maturity. Required if MaturityDay <205> is specified.
|
205 |
MaturityDay |
N |
Can be used in conjunction with MaturityMonthYear <200> to specify a particular maturity date.
|
201 |
PutOrCall |
N |
For Options.
|
202 |
StrikePrice |
N |
For Options.
|
206 |
OptAttribute |
N |
For Options.
|
231 |
ContractMultiplier |
N |
For Fixed Income, Convertible Bonds, Derivatives, etc. Note: If used, quantities should be expressed in the "nominal" (e.g.
contracts vs. shares) amount.
|
223 |
CouponRate |
N |
For Fixed Income.
|
207 |
SecurityExchange |
N |
Can be used to identify the security.
|
106 |
Issuer |
N |
|
348 |
EncodedIssuerLen |
N |
Must be set if EncodedIssuer <349> field is specified and must immediately precede it.
|
349 |
EncodedIssuer |
N |
Encoded (non-ASCII characters) representation of the Issuer <106> field in the encoded format specified via the MessageEncoding <347> field.
|
107 |
SecurityDesc |
N |
|
350 |
EncodedSecurityDescLen |
N |
Must be set if EncodedSecurityDesc <351> field is specified and must immediately precede it.
|
351 |
EncodedSecurityDesc |
N |
Encoded (non-ASCII characters) representation of the SecurityDesc <107> field in the encoded format specified via the MessageEncoding <347> field.
|
140 |
PrevClosePx |
N |
Useful for verifying security identification
|
54 |
Side |
Y |
|
114 |
LocateReqd |
N |
Required for short sell orders
|
60 |
TransactTime |
Y |
Time this order request was initiated/released by the trader or trading system.
|
38 |
OrderQty |
N |
Either CashOrderQty <152> or OrderQty <38> is required. Note that either, but not both, CashOrderQty <152> or OrderQty <38> should be specified.
|
152 |
CashOrderQty |
N |
Either CashOrderQty <152> or OrderQty <38> is required. Note that either, but not both, CashOrderQty <152> or OrderQty <38> should be specified. Specifies the approximate 'monetary quantity' for the order. Broker is responsible for converting and
calculating OrderQty <38> in shares for subsequent messages.
|
40 |
OrdType |
Y |
|
44 |
Price |
N |
Required for limit OrdTypes <40>. 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.
|
99 |
StopPx |
N |
Required for OrdType <40> = 'Stop' or OrdType <40> = 'Stop limit'.
|
15 |
Currency |
N |
|
376 |
ComplianceID |
N |
|
377 |
SolicitedFlag |
N |
|
23 |
IOIid |
N |
Required for Previously Indicated Orders (OrdType <40>=E)
|
117 |
QuoteID |
N |
Required for Previously Quoted Orders (OrdType <40>=D)
|
59 |
TimeInForce |
N |
Absence of this field indicates Day order
|
168 |
EffectiveTime |
N |
Can specify the time at which the order should be considered valid
|
432 |
ExpireDate |
N |
Conditionally required if TimeInForce <59> = GTD and ExpireTime <126> is not specified.
|
126 |
ExpireTime |
N |
Conditionally required if TimeInForce <59> = GTD and ExpireDate <432> is not specified.
|
427 |
GTBookingInst |
N |
States whether executions are booked out or accumulated on a partially filled GT order
|
12 |
Commission |
N |
|
13 |
CommType |
N |
|
47 |
Rule80A(aka OrderCapacity) |
N |
|
121 |
ForexReq |
N |
Indicates that broker is requested to execute a Forex accommodation trade in conjunction with the security trade.
|
120 |
SettlCurrency |
N |
Required if ForexReq <121> = Y.
|
58 |
Text |
N |
|
354 |
EncodedTextLen |
N |
Must be set if EncodedText <355> field is specified and must immediately precede it.
|
355 |
EncodedText |
N |
Encoded (non-ASCII characters) representation of the Text <58> field in the encoded format specified via the MessageEncoding <347> field.
|
193 |
FutSettDate2 |
N |
Can be used with OrdType <40> = 'Forex - Swap' to specify the 'value date' for the future portion of a F/X swap.
|
192 |
OrderQty2 |
N |
Can be used with OrdType <40> = 'Forex - Swap' to specify the order quantity for the future portion of a F/X swap.
|
77 |
OpenClose |
N |
For options
|
203 |
CoveredOrUncovered |
N |
For options
|
204 |
CustomerOrFirm |
N |
For options when delivering the order to execution system/exchange.
|
210 |
MaxShow |
N |
|
211 |
PegDifference |
N |
Amount (signed) added to the price of the peg
|
388 |
DiscretionInst |
N |
Code to identify the price a DiscretionOffset <389> is related to and should be mathematically added to. Required if DiscretionOffset <389> is specified.
|
389 |
DiscretionOffset |
N |
Amount (signed) added to the 'related to' price specified via DiscretionInst <388>.
|
439 |
ClearingFirm |
N |
|
440 |
ClearingAccount |
N |
|
<MessageTrailer> |
Y |
|
|
Related Messages
|