Skip to main content

Cboe Futures Trade Connector

Features

fix-cfeConnector Key
Instruments
FUTURESYNTHETIC
Request Types
SUBMITCANCELREPLACE
Order Types
LIMITMARKETSTOP_LIMIT
Time In Force
DAYGTCIOCFOKGTD
Order ID Mapper
SEQUENCE
Order Status Request
Cancel On Disconnect
Commission
Post Only
Fast Cancel
Fast Replace

Notes

Documentation

Clearing Account Type

ConfigTag 204Description
CUSTOMERCOrder placed by customer.
FIRMFOrder placed by the firm.

Order Handling

ConfigTag 1031Description
DESKWDesk
ELECTRONICYElectronic (Default)
VENDOR_PROVIDED_PLATFORMCVendor provided platform Billed by Executing Broker
SPONSORED_ACCESSGSponsored Access via exchange API
ALGO_ENGINEHPremium Algorithmic trading provided by executing broker
OTHERDOther

Position Effect

Indicates whether the resulting position after a trade should be an opening position or closing position.
Used for omnibus accounting - where accounts are held on a gross basis instead of being netted together.

ConfigTag 77Description
OPENOOpen
CLOSECClose
NONENNone

Customer Order Capacity

ConfigTag 9702Description
CTI_11CTI 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.
CTI_22CTI 2: Transactions executed for the proprietary account of a clearing TPH or non-clearing TPH.
CTI_33CTI 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.
CTI_44CTI 4: Any transaction not meeting the definition of CTI 1, 2 or 3. (These should be non-member customer transactions).

Self-Match Prevention

Config ValueDescription
CANCEL_TAKINGCancel aggressing order
CANCEL_RESTINGCancel resting order
CANCEL_BOTHCancel both aggressing and resting orders

Tag 7928 value description

CFE Match Trade Prevention: 3 characters (not space separated):

1st character — MTP Modifier:

  • N = Cancel Newest
  • O = Cancel Oldest
  • B = Cancel Both

2nd character — Unique ID Level:

  • F = Prevent Match at CFE Exchange 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.
On New Orders, an empty PreventMatch string (NUL filled) results in default Port Attribute settings applied.

Risk Reset

Tag 7692Description
SProduct-level risk/lockout reset (Futures only)
FFirm-level risk/lockout reset (Futures only)
CCustomGroupID lockout reset (Futures only)
RProduct-level risk/lockout reset (Options only)
IFirm-level risk/lockout reset (Options only)
DCustomGroupID lockout reset (Options only)

Symbology

Links

Schedule

FIX sessions are available starting Sunday at 10:30 a.m. CT.
Sessions disconnect daily between 4:05 and 4:45 p.m. CT for a daily restart, which resets all sequence numbers for the next trading segment.
On Friday, sessions disconnect at approximately 4:05 p.m. CT and remain available for connectivity testing (e.g. telnet) until startup the following Sunday.

Configuration

Connector settings

ParameterDefault ValueDescription
accountDefault value for Account(1) tag.
useAccountfalseThe flag to define whether to use order account in preference of default account.
targetSubIdPRODPossible values: TEST - for test env, PROD - for production.
senderSubIdUsed by internal Cboe Systems to determine order sender.
clearingAccountTypeCUSTOMERThe capacity for the order. Possible values: CUSTOMER, FIRM.
customerOrderCapacityCTI_1Possible values: CTI_1,CTI_2,CTI_3,CTI_4.
senderLocationIdUSIdentifies 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..
selfMatchPreventionInstructionDefines the strategy of dealing with matching orders if SMP is triggered. Valid values: CANCEL_RESTING, CANCEL_TAKING, CANCEL_BOTH.
selfMatchPreventionScopeNONEUnique ID Level. Valid values: NONE, EFID_LEVEL, TPH_LEVEL.
selfMatchPreventionIdTrading Group ID (optional): TPH-specified alphanumeric value 0-9, A-Z, or a-z.
useTraderfalseSend order's operator.
operatorIdentifies the Order Entry Operator responsible for this message.
clearingAccountClearing account.
positionEffectNONEIndicates status of client position. Possible values: OPEN,CLOSE,NONE.
orderHandlingELECTRONICExecution source code provided during order entry to describe broker service. Possible values: DESK,ELECTRONIC,VENDOR_PROVIDED_PLATFORM,SPONSORED_ACCESS,ALGO_ENGINE,ELECTRONIC.
discardOnReconnectfalseDiscard open order upon reconnect.

Supported order attributes

KeyDescription
1Account(1).
25004OrderEntryOperatorId(25004). Order entry operator.
47OrderCapacity(47). The capacity for the order. C - Customer, F - Firm.
77OpenClose(77). Indicates status of client position. O - Open, C - Close, N - None (same as not present).
1031CustOrderHandlingInst(1031). See Order Handling.
9702CTICode(9702). See Customer Order Capacity.
439CMTANumber(439). CMTA Number of the firm that will clear the trade. Must be supplied for CMTA orders and left unspecified for non- CMTA orders. Sent to the OCC in the CMTA CM# field.
440ClearingAccount(440).
6097PossResend(97). Y - Indicates an application level resend and is NOT supported. N - Default. Indicates a new order.
7928PreventMatch(7928). CFE Match Trade Prevention: 3 characters (not space separated).
7692RiskReset(7692). See Risk Reset.
7699CustomGroupID(7699). Optional TPH-specified ID for the order.
21097FrequentTraderID(21097). Supplemental customer identifier used for billing related programs. 6 character alphanumeric (0-9, A-Z, or a-z ) value.

Config sample

connectors {
CFE : ${template.connector.fix.cfe} {
settings : {
host = "<HOST>"
port = <PORT>

senderCompId = "<SENDER_COMP_ID>"
targetCompId = "CFE"
senderSubId = "<SENDER_SUB_ID>"

account = "<ACCOUNT>"
useAccount = false

operator = "<OPERATOR>"
senderLocationId = "US"
useTrader = false

orderCapacity = ORDER_CAPACITY
ctiCode = CTI_CODE
orderHandling = ELECTRONIC
}
}
}

Tools

Audit Log Generator

AuditLog generator processes connector's logs and produces Audit Trail document.

ArgArg ShortRequiredDescription
--connector-cYesConnector ID
--owner-nYesCFE access port owner name
--env-vYesIndependent Software Vendor (“ISV”)
--tracking-number-tYesRegulatory request tracking number as provided by CFER
--output-dir-oNoPath where logs will be generated. Default is $EMBER_WORK/audit
--start-date-bNoThe date from which files should be accepted. If omitted, the current date applies. Ignored when --files is specified. Format: yyyyMMdd
--end-date-eNoThe date until which files are accepted. If omitted, the current date applies. Ignored when --files is specified. Format: yyyyMMdd
--files-fNoList of files that should be converted. Comma-separated.
--help-hNoPrint usage help.
docker compose exec ember /opt/deltix/ember/lib/custom/tools/cfe-audit-log -c CFE -n OWNER -v ISV -t 001 -f CFE-2025-10-01.5.messages