Order Entry V2 Websocket - Submit Order




Contents

Input - Submit Order


Submit a new order.


Fields

RefFieldNameData TypeValuesUsageDescription
1header
2→ applicationNameApplication NameString
REQUIRED

Identifies the application generating the message.

3→ applicationVendorApplication VendorString
REQUIRED

Identifies the vendor of the application generating the message.

4→ applicationVersionApplication VersionString
REQUIRED

Identifies the version of the application generating the message.

5→ messageTypeMessage TypeMessageType
  • ORDNEW (Order New)
REQUIRED
6→ requestIdRequest IDString
REQUIRED

A unique identifier for the request provided by the client for correlation.

7→ sentTimeSent TimeDateTime
REQUIRED

Timestamp of the message leaving the producing application.

8payload
9→ customerOrderHandlingInstrCustomer Order Handling InstructionCustomerOrderHandlingInstruction
 Click here to expand...
  • ALGORITHM_ENGINE (Algorithm Engine)
  • CLIENT_ELECTRONIC (Client Electronic)
  • DESK_ELECTRONIC (Desk Electronic)
  • FCM_API (FCM API or FIX)
  • FCM_PROVIDED_SCREEN (FCM Provided Screen)
  • OTHER_PROVIDED_SCREEN (Other Provided Screen)
REQUIRED
10→ customerOrderIdCustomer Order IDString
  • Length: 1 - 20
REQUIRED
11→ displayQtyIntDisplay Quantity IntegerInteger
OPTIONAL
12→ durationTypeDuration TypeOrderDurationType
  • DAY (Day) - Order expires at the end of the trading day.
  • FILL_AND_KILL (Fill and Kill) - Order is immediately executed against any available quantity and any remaining quantity is eliminated
  • FILL_OR_KILL (Fill or Kill) - Order is filled completely or else eliminated
  • GOOD_TILL_CANCEL (Good till Cancel) - Order remains working until cancelled
  • GOOD_TILL_DATE (Good till Date) - Order remains working until the end of the trading session of the local market date specified in the ExpirationDate field.
REQUIRED
13→ entities
14→ → customerAccountIdCustomer Account IDString
  • Length: 1 - 12
REQUIRED
15→ → customerOriginTypeCustomer Origin TypeOriginType
  • CUSTOMER (Customer)
  • HOUSE (House)
REQUIRED
16→ → customerTypeCustomer TypeCustomerType
  • MEMBER_OWN (Member Own) - Applies to orders entered or trades executed by an individual member for their own account, for an account they controls, or for an account in which they have an ownership or financial interest. However, transactions initiated and executed by a member for the proprietary account of a member firm must be designated as Member Other Member transactions.
  • MEMBER_PROPRIETARY (Member Proprietary) - Applies to orders entered or trades executed for the proprietary accounts of a member firm, including Rule 106.H., I., N., R. and S. firms.
  • ON_BEHALF_INDIVIDUAL (On-Behalf Individual) - Applies to orders entered by a member or a nonmember terminal operator for the account of another individual member or an account controlled by such individual member.
  • OTHER (Other) - Applies to all orders and transactions not included in any of the defined categories. These typically are orders entered by or on behalf of nonmember entities.
REQUIRED
17→ → executingFirmIdExecuting Firm IDString
  • Length: 1 - 10
REQUIRED
18→ → operatorIdOperator IDString
  • Length: 1 - 18
REQUIRED
19→ → senderCountrySender CountryString
  • Length: 1 - 2
REQUIRED
20→ → senderStateSender StateString
  • Length: ≤ 2
OPTIONAL
21→ expirationDtExpiration DateDate
CONDITIONAL
Criteria
  • ALWAYS when payload.type = "GOOD_TILL_DATE"
22→ instrument
23→ → glbxSecurityIdGlobex Security IDInteger
REQUIRED
24→ manualIndManual IndicatorYesNoIndicator
  • NO (No) - No
  • YES (Yes) - Yes
REQUIRED

Indicates whether the order was generated by automated trading logic.

25→ memoMemoString
  • Length: ≤ 75
OPTIONAL
26→ minimumQtyIntMinimum Quantity IntegerInteger
OPTIONAL
27→ pricePricePrice
CONDITIONAL
Criteria
  • ALWAYS when payload.type IN (LIMIT, STOP_LIMIT)
28→ qtyIntQuantity IntegerInteger
REQUIRED
29→ selfMatchPreventionIdSelf-Match Prevention IDInteger
OPTIONAL
30→ selfMatchPreventionInstrSelf-Match Prevention InstructionSelfMatchPreventionInstruction
  • CANCEL_NEWEST (Cancel Newest)
  • CANCEL_OLDEST (Cancel Oldest)
OPTIONAL
31→ sideIndSide IndicatorMarketSideIndicator
  • BUY (Buy) - Identifies a buy side order
  • SELL (Sell) - Identifies a sell side order
REQUIRED
32→ stopPriceStop PricePrice
CONDITIONAL
Criteria
  • ALWAYS when payload.type IN (STOP, STOP_LIMIT)
33→ typeTypeOrderType
  • LIMIT (Limit) - A Limit order defines the upper price limit at which to buy an instrument and lower price limit at which to sell an instrument. The price limit is defined in the Price field. If the price is not immediately available, the Limit order will rest until filled or cancelled.
  • MARKET (Market) - A Market order with protection is filled within a pre-defined range of prices referred to as the protected range. For buy orders, protection points are added to the current best offer price to calculate the protection price limit. For sell orders, protection points are subtracted from the current best bid price.
  • MARKET_TO_LIMIT (Market to Limit) - A Market-limit order is executed at the best price available in the market. If the market-limit order can only be partially filled, the order becomes a limit order and the remaining quantity remains on the order book at the specified limit price.
  • STOP (Stop) - A Stop order is an order which, when accepted, does not immediately go on the book, but must be "triggered" by a trade in the market at the price level submitted with the order. A Stop order goes on the book as a Market order once triggered.
  • STOP_LIMIT (Stop Limit) - A Stop order is an order which, when accepted, does not immediately go on the book, but must be "triggered" by a trade in the market at the price level submitted with the order. A Stop-Limit order goes on the book as a Limit order once triggered.
REQUIRED

Output - Submit Order Response - Success

Fields

RefFieldNameData TypeValuesUsageDescription
1header
2→ messageTypeMessage TypemessageType
  • ORDSTS (Order Status)
ALWAYS
3→ possibleRetransIndPossible Retransmission IndicatoryesNoIndicator
  • NO (No) - No
  • YES (Yes) - Yes
OPTIONAL
4→ requestIdRequest IDstring
ALWAYS

A unique identifier for the request provided by the client for correlation.

5→ sentTimeSent TimedateTime
ALWAYS

Timestamp of the message leaving the producing application.

6→ sequenceNbrSequence Numberstring
ALWAYS
7payload
8→ actionActionorderAction
  • NEW (New)
ALWAYS
9→ customerOrderHandlingInstrCustomer Order Handling InstructioncustomerOrderHandlingInstruction
 Click here to expand...
  • ALGORITHM_ENGINE (Algorithm Engine)
  • CLIENT_ELECTRONIC (Client Electronic)
  • DESK_ELECTRONIC (Desk Electronic)
  • FCM_API (FCM API or FIX)
  • FCM_PROVIDED_SCREEN (FCM Provided Screen)
  • OTHER_PROVIDED_SCREEN (Other Provided Screen)
ALWAYS
10→ customerOrderIdCustomer Order IDstring
ALWAYS
11→ displayQtyIntDisplay Quantity Integerint32
OPTIONAL
12→ durationTypeDuration TypeorderDurationType
  • DAY (Day) - Order expires at the end of the trading day.
  • FILL_AND_KILL (Fill and Kill) - Order is immediately executed against any available quantity and any remaining quantity is eliminated
  • FILL_OR_KILL (Fill or Kill) - Order is filled completely or else eliminated
  • GOOD_TILL_CANCEL (Good till Cancel) - Order remains working until cancelled
  • GOOD_TILL_DATE (Good till Date) - Order remains working until the end of the trading session of the local market date specified in the ExpirationDate field.
ALWAYS
13→ entities
14→ → customerAccountIdCustomer Account IDstring
ALWAYS
15→ → customerOriginTypeCustomer Origin TypeoriginType
  • CUSTOMER (Customer)
  • HOUSE (House)
OPTIONAL
16→ → customerTypeCustomer TypecustomerType
  • MEMBER_OWN (Member Own) - Applies to orders entered or trades executed by an individual member for their own account, for an account they controls, or for an account in which they have an ownership or financial interest. However, transactions initiated and executed by a member for the proprietary account of a member firm must be designated as Member Other Member transactions.
  • MEMBER_PROPRIETARY (Member Proprietary) - Applies to orders entered or trades executed for the proprietary accounts of a member firm, including Rule 106.H., I., N., R. and S. firms.
  • ON_BEHALF_INDIVIDUAL (On-Behalf Individual) - Applies to orders entered by a member or a nonmember terminal operator for the account of another individual member or an account controlled by such individual member.
  • OTHER (Other) - Applies to all orders and transactions not included in any of the defined categories. These typically are orders entered by or on behalf of nonmember entities.
OPTIONAL
17→ → executingFirmIdExecuting Firm IDstring
ALWAYS
18→ → senderCountrySender Countrystring
ALWAYS
19→ → senderStateSender Statestring
OPTIONAL
20→ expirationDtExpiration Datedate
CONDITIONAL
Criteria
  • ALWAYS when payload.durationType = GOOD_TILL_DATE
21→ instrument
22→ → glbxSecurityIdGlobex Security IDint32
ALWAYS
23→ manualIndManual IndicatoryesNoIndicator
  • NO (No) - No
  • YES (Yes) - Yes
ALWAYS

Indicates whether the order was generated by automated trading logic.

24→ memoMemostring
OPTIONAL
25→ minimumQtyIntMinimum Quantity Integerint32
OPTIONAL
26→ pricePriceprice
CONDITIONAL
Criteria
  • ALWAYS when payload.type IN (LIMIT, STOP_LIMIT)
27→ qtyIntQuantity Integerint32
ALWAYS
28→ sideIndSide IndicatormarketSideIndicator
  • BUY (Buy) - Identifies a buy side order
  • CROSS (Cross)
  • SELL (Sell) - Identifies a sell side order
ALWAYS
29→ statusStatusorderStatus
  • NEW (New)
  • UNDEFINED (Undefined)
ALWAYS
30→ stopPriceStop Priceprice
CONDITIONAL
Criteria
  • ALWAYS when payload.type IN (STOP, STOP_LIMIT)
31→ transactionTimeTransaction TimedateTime
ALWAYS
32→ typeTypeorderType
  • LIMIT (Limit) - A Limit order defines the upper price limit at which to buy an instrument and lower price limit at which to sell an instrument. The price limit is defined in the Price field. If the price is not immediately available, the Limit order will rest until filled or cancelled.
  • MARKET (Market) - A Market order with protection is filled within a pre-defined range of prices referred to as the protected range. For buy orders, protection points are added to the current best offer price to calculate the protection price limit. For sell orders, protection points are subtracted from the current best bid price.
  • MARKET_TO_LIMIT (Market to Limit) - A Market-limit order is executed at the best price available in the market. If the market-limit order can only be partially filled, the order becomes a limit order and the remaining quantity remains on the order book at the specified limit price.
  • STOP (Stop) - A Stop order is an order which, when accepted, does not immediately go on the book, but must be "triggered" by a trade in the market at the price level submitted with the order. A Stop order goes on the book as a Market order once triggered.
  • STOP_LIMIT (Stop Limit) - A Stop order is an order which, when accepted, does not immediately go on the book, but must be "triggered" by a trade in the market at the price level submitted with the order. A Stop-Limit order goes on the book as a Limit order once triggered.
ALWAYS
33→ venueExecutionIdVenue Execution IDstring
ALWAYS
34→ venueOrderIdVenue Order IDstring
ALWAYS

Output - Submit Order Response - Error

Fields

RefFieldNameData TypeValuesUsageDescription
1errors[]
2→ codeCodestring
ALWAYS
3→ messageMessagestring
ALWAYS
4→ referenceFieldReference Fieldstring
OPTIONAL
5header
6→ messageTypeMessage TypemessageType
  • ORDNEWRJ (Order New Reject)
ALWAYS
7→ requestIdRequest IDstring
ALWAYS

A unique identifier for the request provided by the client for correlation.

8→ sentTimeSent TimedateTime
ALWAYS

Timestamp of the message leaving the producing application.

9→ sequenceNbrSequence Numberstring
ALWAYS
10payload
11→ customerOrderIdCustomer Order IDstring
OPTIONAL
12→ transactionTimeTransaction TimedateTime
OPTIONAL



How was your Client Systems Wiki Experience? Submit Feedback

Copyright © 2024 CME Group Inc. All rights reserved.