New Complex Instrument Message Fields (C1, C2, and EDGX Only)
A New Complex Instrument message is used to request that the system create a complex strategy. The resulting symbol (if accepted by the system) will be returned in a Complex Instrument Accepted message; a Complex Instrument Rejected message will be sent if it is not accepted. All legs must have the same underlying product which can be different OSI Roots (i.e. XYZ and XYZ1).
A ClearingFirm must be sent on each New Complex Instrument message unless a Default Executing Firm ID is set at the port-level.
Permitted input optional fields are described in New Complex Instrument (C1, C2, and EDGX Only).
| Field | Offset | Length | Data Type | Description | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| StartOfMessage | 0 | 2 | Binary | Must be
0xBA 0xBA. | ||||||||||||||||||||||||
| MessageLength | 2 | 2 | Binary | Number of bytes for the message, including this field but not including the two bytes for the StartOfMessage field. | ||||||||||||||||||||||||
| MessageType | 4 | 1 | Binary |
0x4C | ||||||||||||||||||||||||
| MatchingUnit | 5 | 1 | Binary | Always 0 for inbound (Member to Cboe) messages. | ||||||||||||||||||||||||
| SequenceNumber | 6 | 4 | Binary | The sequence number for this message. | ||||||||||||||||||||||||
| ClOrdID | 10 | 20 | Text |
| ||||||||||||||||||||||||
| NumberOfNewComplexInstrumentBitfields | 30 | 1 | Binary | Bitfield identifying which bitfields are set. Field values must be appended to the end of the message. | ||||||||||||||||||||||||
| NewComplexInstrumentBitfield¹ | 31 | 1 | Binary | Bitfield identifying fields to follow. | ||||||||||||||||||||||||
| …. | ||||||||||||||||||||||||||||
| NewComplexInstrumentBitfieldᶯ | 1 | Binary | Last bitfield. | |||||||||||||||||||||||||
| NoLegs | 1 | Binary |
| |||||||||||||||||||||||||
Repeating Group ComplexLeg must occur the number of times specified in NoLegs. Each field occurs in each group, in order as shown below. Optional fields occur only if corresponding bits in bitfields are set.
| ||||||||||||||||||||||||||||
| Optional fields… | Optional fields as set in the bitmap. Note, optional fields that occur in the repeating groups appear above, repeating per group, not within this block. | |||||||||||||||||||||||||||
| Field Name | Hexadecimal | Notes |
|---|---|---|
| StartOfMessage |
BA BA | Start of message bytes. |
| MessageLength |
61 00 | 97 bytes |
| MessageType |
4C | New Complex Instrument |
| MatchingUnit |
00 | Always 0 for inbound messages |
| SequenceNumber |
64 00 00 00 | Sequence number 100 |
| ClOrdID |
41 42 43 31 32 33 00 00 00 00
00 00 00 00 00 00 00 00 00 00 | ABC123 |
| NumberOfNewComplex InstrumentBitfields |
01 | One bitfield to follow |
| NewComplexInstrumentBitfield1 |
0F | LegCFICode, LegMaturityDate, LegStrikePrice, ClearingFirm |
| NoLegs |
02 | Two legs |
| LegSymbol |
4D 53 46 54 00 00 00 00 | MSFT |
| LegCFICode |
4F 43 00 00 00 00 | OC = Option Call |
| LegMaturityDate |
EF DB 32 01 | 2011-03-19 |
| LegStrikePrice |
98 AB 02 00 00 00 00 00 | 17.50 |
| LegRatioQty |
02 00 00 00 | Ratio of 2 |
| LegSide |
31 | Buy |
| LegSymbol |
4D 53 46 54 00 00 00 00 | MSFT |
| LegCFICode |
4F 50 00 00 00 00 | OP = Option Put |
| LegMaturityDate |
F6 DB 32 01 | 2011-03-26 |
| LegStrikePrice |
30 E6 02 00 00 00 00 00 | 19.00 |
| LegRatioQty |
01 00 00 00 | Ratio of 1 |
| LegSide |
32 | Sell |
| ClearingFirm |
54 45 53 54 | TEST |





