| StartOfMessage | 0 | 2 | Binary |
B0 E3 (58288) |
| MessageLength | 2 | 2 | Binary |
8D 00 (141) |
| MessageType | 4 | 2 | Binary |
F0 03 (1008) |
| MatchingUnit | 6 | 1 | Binary | Must be zero or correct unit |
| Reserved | 7 | 1 | Binary | Must be zero |
| SequenceNumber | 8 | 4 | Binary | The sequence number for this message |
| ClOrdId | 12 | 20 | Text |
- Unique Id chosen by the client. Characters in the ASCII range 33-126 are allowed, except for comma, semicolon, and pipe.
- If the ClOrdId matches a live order, the order will be rejected as duplicate. A leading tilde (~) cannot be sent on any ClOrdId and will result in a reject. These are reserved for internal use by CFE and could be received as a result of a CFE-generated ClordId.
- Sent to the OCC in the OrderId field.
- Note: CFE only enforces uniqueness of ClOrdId values among currently live orders, which includes long-lived GTC and GTD orders. However, using unique ClOrdId values is strongly recommend.
|
| Side | 32 | 1 | Text |
|
| OrderQty | 33 | 4 | Binary | Order quantity. System limit is 999,999 contracts. |
| ClearingFirm | 37 | 4 | Alpha |
- EFID that will clear the trade. Port attribute value of 'Default EFID' is used if not provided.
- Sent to OCC in Exec Broker field.
|
| ClearingAccount | 41 | 4 | Text |
- Supplemental identifier. Recorded and made available in execution reports. Available via Drop feeds.
- This field can be blank or populated with an optional four character string, except for comma, semicolon, and pipe.
- This field is not sent to the OCC.
|
| Price | 45 | 8 | BinaryPrice |
- Limit price. Four implied decimal places.
- Required for limit orders (OrdType = 2). If specified on market order (OrdType = 1), the order will be rejected.
- Orders will be rejected if Price does not fall on the applicable minimum trading increment.
- For all contracts other than Trade at Settlement contracts, simple orders will be rejected if Price is less than or equal to zero, or greater than or equal to 100,000. For Trade at Settlement (TAS) contracts, simple orders will be rejected if Price is outside the price limits presented in the contract specification.
- Spread orders will be rejected if Price is outside the price limits implied by the spread instrument definition and constituent instrument min and max prices.
|
| OrdType | 53 | 1 | Text |
-
1
=
Market
-
2
=
Limit (default)
-
4
=
Stop Limit (Futures only)
- Market implies TimeInForce of IOC (3). Stop Limit orders must have a TimeInForce of DAY (0), GTC (1), or GTD (6).
|
| TimeInForce | 54 | 1 | Text |
-
0
=
Day (Expires at the end of the business day).
-
1
=
GTC (Good ‘till Cancel. Order remains until cancelled or contract expires).
-
3
=
IOC (Portion not filled immediately is cancelled. Market orders are implicitly IOC).
-
4
=
FOK (An IOC where the entire size must be filled, else the order will be cancelled back).
-
6
=
GTD (Good ‘till Date-Time Expires at the date-time specified in the ExpireTime field).
|
| MinQty | 55 | 4 | Binary |
- Minimum fill quantity for IOC orders. Ignored for other Simple instrument orders.
- Not supported for Spread instruments. Spread instrument orders with specified MinQty will be rejected.
|
| Symbol | 59 | 8 | Alphanumeric |
- Simple Instruments can be specified by providing the mapped symbol format in the Symbol field or by providing the product name (e.g., "VX") in the Symbol field and maturity date in the MaturityDate field. Responses to the TPH will contain the instrument specification in the manner that was provided on the associated new order specification (e.g., either Symbol Id or Product and MaturityDate).
- The Symbol field for Spread instrument related messages will always contain mapped symbol Id as product and maturity date does not completely specify the Spread instrument.
|
| Capacity | 67 | 1 | Text |
-
C
=
Customer
-
F
=
Firm
- The Capacity refers to the OCC account type. A value of "C" denotes an account that clears in the Customer range at OCC. A value of "F" denotes an account that clears in the Clearing Firm range at OCC.
|
| Account | 68 | 16 | Text |
- Unique account identifier associated with an order. This field will be reflected back on execution reports associated with this order.
- The first 10 characters are sent to the OCC in the Account # field. The entire 16 character string will appear in the optional CM Data field. Valid characters include ASCII 32-126.
|
| PreventMatch | 84 | 3 | Text |
- Three characters:
- 1st character - MTP Modifier:
-
N
=
Cancel Newest
-
O
=
Cancel Oldest
-
B
=
Cancel Both
- 2nd character - Unique Id Level:
-
F
=
Prevent Match at Firm(TPH) Level
-
M
=
Prevent Match at EFID Level
-
N
=
None (do not prevent match at any level)
- 3rd character - Trading Group Id (optional):
- TPH specified alphanumeric value 0-9, A-Z, or a-z.
- The unique Id level (character 2) of both orders must match to prevent a trade. If specified on both orders, Trading Group Id (character 3) must match to prevent a trade.
- Note that in the event of a Spread order match with a Simple order, the Spread order will always be cancelled irrespective of the 1st character value.
- On New Orders, an empty PreventMatch string (NUL filled) results in default Port Attribute settings applied.
|
| ExpireTime | 87 | 8 | DateTime | Required for TimeInForce = 6 orders, specifies the date-time (in UTC) that the order expires. |
| MaturityDate | 95 | 4 | Date |
- When specifying the Symbol for a
New Order message the user can specify the mapped symbol identifier in the Symbol field. Alternatively, the product class (e.g., "VX", "VXT", etc.) can be supplied for the Symbol field and the MaturityDate field is used to specify the expiration date of the symbol within the specified product class.
- If a value is provided for MaturityDate, the Symbol field must correspond to a valid product or the order will be rejected with reason code C (Unknown Product Name). If an invalid MaturityDate is provided, the order will be rejected with reason code B (Unknown Maturity Date).
|
| OpenClose | 99 | 1 | Text |
- Indicates status of client position in a trade resulting from the order.
-
O
=
Open
-
C
=
Close
-
N
=
None
- NUL (0x00) = None
|
| CMTANumber | 100 | 4 | Binary |
- CMTA Number of the firm that will clear the trade. Must be specified for CMTA orders and left unspecified for non-CMTA orders.
- Sent to the OCC in the CMTA CM# field.
|
| StopPx | 104 | 8 | BinaryPrice | Stop price. Required if OrdType = 4 (Stop Limit). Stop Limit orders will only be triggered off Last Sale Eligible trades. |
| CustomGroupId | 112 | 2 | Binary | Used to group orders for use in mass cancels where multiple orders can be cancelled by specifying a list of CustomGroupIds. A zero value is treated as "no CustomGroupIds". |
| CtiCode | 114 | 1 | Text |
- Valid values: 1, 2, 3, 4
-
1
=
CTI 1: Transactions initiated and executed by an individual TPH for the TPH’s own account, for an account the TPH controls, or for the account in which the TPH has an ownership or financial interest.
-
2
=
CTI 2: Transactions executed for the proprietary account of a clearing TPH or non-clearing TPH.
-
3
=
CTI 3: Transactions where an individual TPH or authorized trader executes for the personal account of another individual TPH, for an account the other individual TPH controls or for an account in which the other individual TPH has an ownership or financial interest.
-
4
=
CTI 4: Any transaction not meeting the definition of CTI 1, 2 or 3. (These should be non-TPH customer transactions).
|
| ManualOrderIndicator | 115 | 1 | Text |
-
Y
=
Manual order entry
-
N
=
Automated order entry
|
| OEOID | 116 | 18 | Text |
- Identifies the Order Entry Operator responsible for this message.
- Min length 3, max length 18. Values in ASCII range 33-126 except comma, semicolon, and pipe are permissible.
|
| FrequentTraderId | 134 | 6 | Alphanumeric | Supplemental customer identifier used for billing related programs. |
| CustOrderHandlingInst | 140 | 1 | Text |
- Execution source code provided during order entry to describe broker service. A default value can be set using the ‘Default Customer Order Handling Instruction’ port attribute.
-
W
=
Desk (high touch)
-
Y
=
Electronic
-
C
=
Vendor-provided platform, billed by Executing Broker
-
G
=
Sponsored Access via Exchange API or FIX, provided by executing broker
-
H
=
Premium algorithmic trading provider, billed by executing broker
-
D
=
Other, including other-provided screen
- NUL (0x00) = Apply port default (initially 'Y')
|
| CountryCode | 141 | 2 | Text | Identifies the country code of the person or system submitting the order using the ISO 3166 two-character code (must be entered using uppercase letters only). An order with a country code for a comprehensively sanctioned country will be rejected. |