Order Entry API V2 - Create Instrument

Submit new tradeable instrument request
URL/instruments
HTTP MethodPOST
Version2.0.0
Contents

Request

Body

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→ requestIdRequest IDString
REQUIRED

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

6→ sentTimeSent TimeDateTime
REQUIRED

Timestamp of the message leaving the producing application.

7payload
8→ 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
9→ entities
10→ → customerAccountIdCustomer Account IDString
  • Length: 1 - 12
REQUIRED
11→ → customerOriginTypeCustomer Origin TypeOriginType
  • CUSTOMER (Customer)
  • HOUSE (House)
REQUIRED
12→ → 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
13→ → executingFirmIdExecuting Firm IDString
  • Length: 1 - 10
REQUIRED
14→ → operatorIdOperator IDString
  • Length: 1 - 18
REQUIRED
15→ → senderCountrySender CountryString
  • Length: 1 - 2
REQUIRED
16→ → senderStateSender StateString
  • Length: 2 - 2
OPTIONAL
17→ legs[]
18→ → deltaLeg DeltaDecimal
OPTIONAL
19→ → glbxSecurityIdLeg Globex Security IDInteger
REQUIRED
20→ → ratioQtyIntLeg Ratio Quantity IntegerInteger
OPTIONAL
Criteria
  • ALWAYS when payload.strategyRequestType = COMBO
  • OPTIONAL when payload.strategyRequestType = COVERED
21→ → referencePriceLeg Reference PricePrice
OPTIONAL
22→ → sideIndLeg Side IndicatorMarketSideIndicator
  • BUY (Buy) - Identifies a buy side order
  • CROSS (Cross)
  • SELL (Sell) - Identifies a sell side order
REQUIRED
23→ manualIndManual IndicatorYesNoIndicator
  • NO (No) - No
  • YES (Yes) - Yes
REQUIRED

Indicates whether the instrument was generated by automated trading logic.

24→ strategyRequestTypeStrategy Request TypeStrategyRequestType
  • COMBO (Combination)
  • COVERED (Covered)
REQUIRED

Response - 201

Body

RefFieldNameData TypeValuesUsageDescription
1header
2→ requestIdRequest IDstring
ALWAYS

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

3→ sentTimeSent TimedateTime
ALWAYS

Timestamp of the message leaving the producing application.

4payload
5→ autoQuoteIndAuto-Quote IndicatoryesNoIndicator
  • NO (No) - No
  • YES (Yes) - Yes
ALWAYS
6→ contractPeriodContract Periodstring
OPTIONAL
7→ entities
8→ → operatorIdOperator IDstring
ALWAYS
9→ → senderCountrySender Countrystring
ALWAYS
10→ → senderStateSender Statestring
OPTIONAL
11→ glbxGoodTillIndGlobex Good Till IndicatoryesNoIndicator
  • NO (No) - No
  • YES (Yes) - Yes
OPTIONAL
12→ glbxGroupIdGlobex Group IDstring
OPTIONAL
13→ glbxSecurityIdGlobex Security IDint32
OPTIONAL
14→ legs[]
15→ → deltaLeg Deltadecimal
OPTIONAL
16→ → glbxSecurityIdLeg Globex Security IDint32
ALWAYS
17→ → ratioQtyIntLeg Ratio Quantity Integerint32
OPTIONAL
18→ → referencePriceLeg Reference Priceprice
OPTIONAL
19→ → sideIndLeg Side IndicatormarketSideIndicator
  • BUY (Buy) - Identifies a buy side order
  • CROSS (Cross)
  • SELL (Sell) - Identifies a sell side order
ALWAYS
20→ manualIndManual IndicatoryesNoIndicator
  • NO (No) - No
  • YES (Yes) - Yes
ALWAYS

Indicates whether the instrument was generated by automated trading logic.

21→ priceQuoteCcyPrice Quote Currencycurrency
 Click here to expand...
  • AUD (Australian Dollar)
  • BRL (Brazilian Real)
  • CAD (Canadian Dollar)
  • CHF (Swiss Franc)
  • CLP (Chilean Peso)
  • CNH (Chinese Offshore)
  • CNY (Chinese Yuan)
  • COP (Colombian Peso)
  • CZK (Czech Koruna)
  • DKK (Danish Krone)
  • EUR (Euro)
  • GBP (British Pound)
  • GLD (Gold)
  • HKD (Hong Kong Dollar)
  • HUF (Hungarian Forint)
  • IDR (Indonesian Rupiah)
  • ILS (Israeli Shekel)
  • INR (Indian Rupee)
  • ISK (Icelandic Krona)
  • JPY (Japanese Yen)
  • KRW (Korean Won)
  • MXN (Mexican Peso)
  • MYR (Malaysian Ringgit)
  • NOK (Norwegian Krone)
  • NZD (New Zealand Dollar)
  • PEN (Peruvian Neuvo Sol)
  • PHP (Philippine Peso)
  • PLN (Polish Zloty)
  • RON (Romanian Leu)
  • RUB (Russian Ruble)
  • SAR (Saudi Riyal)
  • SEK (Swedish Krona)
  • SGD (Singapore Dollar)
  • THB (Thai Baht)
  • TRY (Turkish Lira)
  • TWD (Taiwan New Dollar)
  • UAH (Ukrainian Hryvnia)
  • USD (US Dollar)
  • ZAR (South African Rand)
OPTIONAL
22→ secTypeSecurity TypesecurityType
  • FUT (Future)
  • MLEG (Multi-Leg)
  • OPT (Option)
OPTIONAL

Response - 400

Body

RefFieldNameData TypeValuesUsageDescription
1errors[]
2→ codeCodestring
 Click here to expand...
  • 1 - {Unclassified error message}
  • 100 - Request is invalid: {Error Message}
  • 1003 - Orders may not be entered while the market is closed Orders may not be entered while the market is paused Orders may not be canceled while the market is closed Orders may not be canceled while the market is paused
  • 101 - {Field} is not present
  • 102 - {Field} has an incorrect value: {Value}
  • 103 - {Field} is invalid
  • 2048 - The order was submitted with a different SenderCompID than the requesting cancel
  • 2051 - The Order was submitted with a different side than the requesting Cancel
  • 7024 - Order cannot be modified or cancelled while the market is in No Cancel
  • 7027 - Order type not permitted while the market is reserved
  • 7029 - Orders may not be entered while the market is forbidden
ALWAYS
3→ messageMessagestring
ALWAYS
4header
5→ requestIdRequest IDstring
ALWAYS

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

6→ sentTimeSent TimedateTime
ALWAYS

Timestamp of the message leaving the producing application.

Response - 403

Body

RefFieldNameData TypeValuesUsageDescription
1errors[]
2→ codeCodestring
 Click here to expand...
  • 1 - {Unclassified error message}
  • 100 - Request is invalid: {Error Message}
  • 1003 - Orders may not be entered while the market is closed Orders may not be entered while the market is paused Orders may not be canceled while the market is closed Orders may not be canceled while the market is paused
  • 101 - {Field} is not present
  • 102 - {Field} has an incorrect value: {Value}
  • 103 - {Field} is invalid
  • 2048 - The order was submitted with a different SenderCompID than the requesting cancel
  • 2051 - The Order was submitted with a different side than the requesting Cancel
  • 7024 - Order cannot be modified or cancelled while the market is in No Cancel
  • 7027 - Order type not permitted while the market is reserved
  • 7029 - Orders may not be entered while the market is forbidden
ALWAYS
3→ messageMessagestring
ALWAYS
4header
5→ requestIdRequest IDstring
ALWAYS

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

6→ sentTimeSent TimedateTime
ALWAYS

Timestamp of the message leaving the producing application.

Response - 500

Body

RefFieldNameData TypeValuesUsageDescription
1errors[]
2→ codeCodestring
 Click here to expand...
  • 1 - {Unclassified error message}
  • 100 - Request is invalid: {Error Message}
  • 1003 - Orders may not be entered while the market is closed Orders may not be entered while the market is paused Orders may not be canceled while the market is closed Orders may not be canceled while the market is paused
  • 101 - {Field} is not present
  • 102 - {Field} has an incorrect value: {Value}
  • 103 - {Field} is invalid
  • 2048 - The order was submitted with a different SenderCompID than the requesting cancel
  • 2051 - The Order was submitted with a different side than the requesting Cancel
  • 7024 - Order cannot be modified or cancelled while the market is in No Cancel
  • 7027 - Order type not permitted while the market is reserved
  • 7029 - Orders may not be entered while the market is forbidden
ALWAYS
3→ messageMessagestring
ALWAYS
4→ referenceFieldReference Fieldstring
OPTIONAL
5header
6→ requestIdRequest IDstring
ALWAYS

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

7→ sentTimeSent TimedateTime
ALWAYS

Timestamp of the message leaving the producing application.




How was your Client Systems Wiki Experience? Submit Feedback

Copyright © 2024 CME Group Inc. All rights reserved.