OrderNew

Enter a new Order into the system.

Order Management Details

Metadata

  • Message Type: TransactionMessage
  • Message Number: 1001

Inherited fields

NameTypeSize (bytes)Description
MessageTypeInteger (unsigned)2The unique identifier of this message.
ClientIdInteger (unsigned)4The unique identifier of a session with the server, returned in a successful LoginReply message.
RequestIdInteger (unsigned)4Within each session each message must be uniquely identified by this field. It must be monotonically increasing for the duration of the session.

Fields

NameTypeSize (bytes)Description
ClOrdIDString60Client OrderId for FIX Orders.
InstrumentMarketForeign key to InstrumentMarket8The Id of the InstrumentMarket for which the Order is being entered.
UserForeign key to User8If the Order is being entered on behalf of another User, this is the Id for that User. Otherwise set to 0.
SideOne of OrderSide1Whether this is a Buy (0) or a Sell (1).
TypeSet of OrderType4
PriceInteger (signed)8The price for the Order. It is entered as an integer with the decimal places implied. The number of decimals is given by the PriceDecimals of the InstrumentMarket for the Order.
TotalQuantityInteger (signed)8The total quantity for the Order. This is the absolute size of the Order inclusive of any hidden quantity. It is entered as an integer with the decimal places implied. The number of decimals is given by the QuantityDecimals of the InstrumentMarket for the Order.
HiddenQuantityInteger (signed)8The hidden quantity for the Order. This is the part of the total quantity that is initially hidden from the market. The number of decimals is given by the QuantityDecimals of the InstrumentMarket for the Order.
AccountForeign key to Account8The Account for an Order is optional and may be specified either as an Id if Accounts are being maintained in the Matching Engine (using this field) or as a text code. This field is used if Account is specified as an Id, or set to 0 if not used.
AccountCodeString40The Account for an Order may be specified as a plain-text code using this field. If the field Account is non-zero then AccountCode will be ignored.
TagString50If the Instrument for which the Order is being entered is a Tagged Instrument, Tag is the plain-text code that uniquely identifies the specific instance of the Instrument to be bought or sold.
SettlementClassForeign key to SettlementClass8For a multi-class Order, this is the Settlement Class for the Order.
SecurityLotLabelString20For a multi-class sell Order, this is the security label for the Order.
SecurityLotIdInteger (unsigned)8For a multi-class sell Order, this is the security id for the Order.
PriorityInteger (unsigned)2For a multi-class sell Order, this is the settlement priority for the Order.
ExpiryDateInteger (signed)4The expiry date of the Order as an integer in the form YYYYMMDD. If there is no expiry date for the Order (for a Session, Day or Good Till Time Order), set to 0.
Only applies to Good Till Date orders.
ExpiryTimeInteger (signed)4The expiry time of the Order as an integer in the form HHMMSS. Expiry time is always relative to the current trading day. If there is no expiry time for the Order, set to 0.
Only applies to Good Till Time orders.
LiveForInteger (unsigned)4If non-zero may be a number of seconds for which the order will remain live, must be less than number of seconds left in trading day.
PegRefOne of PegRef1The reference for a peg order. Can be Bid, Mid or Ask
PegOffsetInteger (signed)8Price offset from the peg reference
MinimumFillInteger (signed)8Minimum Fill Quantity for this order. Can fill with multiple smaller orders.
TestOnlyInteger (unsigned)1If set, validates the order and returns error OrderTestOnly if OK.

Permissions


Submit New Order

{
	instrumentmarket: "test-im",
	side: OrderSide.Buy,
	type: OrderType.Limit + OrderType.GoodtillCancelled,
	price: 100,
	totalquantity: 1,
}

Permission Checks

PermissionActionTableScopeIndex
ViewInstrumentMarketInstance0
ViewMarketInstance0
EnterInstrumentMarketInstance0
ViewMarketInstance0
AllowBuyOrSellMarketInstance0

Test file: OrderNew


Submit New Order on Behalf of another User

{
	instrumentmarket: "test-im",
	side: OrderSide.Buy,
	type: OrderType.Limit + OrderType.GoodtillCancelled,
	price: 100,
	totalquantity: 1,
	onbehalfof_user: "test-user",
}

Permission Checks

PermissionActionTableScopeIndex
EnterOnBehalfOfUserInstance2
ViewInstrumentMarketInstance0
ViewMarketInstance0
EnterInstrumentMarketInstance0
ViewMarketInstance0
AllowBuyOrSellMarketInstance0

Test file: OrderNew_onBehalf