Execution Report

Please note that Execution Reports with ExecType (150) = M are responses to Mass Cancel requests. Mass Cancel Execution Reports are compact and will only carry fields as stated in the description of ExecType that follows.

The MultilegReportingType (442) field can be used to determine whether a fill or partial fill corresponds to a Spread instrument, a Single leg instrument that is part of a Spread instrument execution or a Single leg instrument fill only (field will not be present in this case). Similarly, the SecondaryExecID (527) field can be used to distinguish Single leg instrument executions from Spread instrument executions and to identify Single leg instrument executions that comprise a Spread instrument execution.

  • If the SecondaryExecId (527) field is not present, the Execution Report is associated with a Simple instrument.
  • If the SecondaryExecId (527) field is present and is identical to the ExecId (17) field, the Execution Report represents a Spread instrument execution for which associate individual leg Execution Reports will follow.
  • If the SecondaryExecId (527) field is present and not identical to the ExecId (17) field, the Execution Report represents a Simple instrument execution that comprises a Spread execution and the SecondaryExecId (527) field is set to the ExecId (17) field of the associated Spread execution.

For executions involving Spread orders, if both sides of a complex/spread trade are on the same order entry session, Cboe does not guarantee that the leg executions will not be interleaved between sides.

TagField NameDescription
35Standard Message HeaderMsgType=8
52SendingTimeGMT date-time that Execution Report was sent by CFE.
75TradeDate
  • Business date of the Execution Report.
  • Note that on CFE, TradeDate is not always the same as the calendar date. For example, the VX/VT products open for trading on the calendar day prior to the associated business date or TradeDate. Executions that occur after the open and before midnight will have a TradeDate that is not the same as the calendar date of the execution.
20ExecTransType
  • 0 = New
  • 1 = Cancel
  • 2 = Correct
  • 3 = Status
  • 2 (Correct) is used for post-Settlement Execution Reports that update Trade At Settlement (TAS) trades with settlement offset prices and symbol changes as appropriate.
  • 3 (Status) is used for Carried Order Restatements if associated port attribute is set.
17ExecID
  • Day-unique ID of execution message. Will be zero when ExecTransType = 3.
  • Sent to the OCC in the Trade ID field.
527SecondaryExecID
  • Field indicates whether a fill or partial fill (ExecType (150) = 1 or 2) is a Spread instrument fill or a Simple instrument fill that comprises a Spread execution.
  • If SecondaryExecID (527) is not present, the fill is a Simple instrument fill only.
  • If SecondaryExecID is present and is the same as the ExecID (17) the fill represents a Spread execution for which associated Simple instrument fills will follow.
  • Simple instrument fills associated with a Spread execution will contain a SecondaryExecID matching the ExecID of the associated Spread execution.
442MultilegReportingType
  • 1 = Simple instrument execution
  • 2 = Simple instrument execution that is part of a Spread instrument execution.
  • 3 = Spread instrument execution.
19ExecRefIDOnly present when ExecTransType = 1 (Cancel) or 2 (Correct). Refers to the ExecID of the message being cancelled or corrected.
150ExecType
  • Reason for this execution report:
  • 0 = New (acknowledgement of new order)
  • 1 = Partial Fill
  • 2 = Fill
  • 4 = Canceled
  • 5 = Replaced
  • 8 = Rejected
  • D = Restated
  • M = Mass Cancel Complete
  • For Standard FIX Drop, only ExecType = 1 (Partial Fill), 2 (Fill), and D (Restated) Execution Reports will be sent. For Order by Order FIX Drop, all ExecTypes will be sent. See FIX Drop Port information in FIX Drop Port Attributes.
  • When responding to a Mass Cancel request, ExecType = M. This indicates that the only tags present in this message are the following:
  • Standard Message Header (35)
  • SendingTime (52)
  • ExecTransType (20)
  • ExecType (150)
  • MassCancelID (7695)
  • CancelledOrderCount (7696)
378ExecRestatementReason
  • Only present when 150=D
  • 1 = GTC and GTD Restatement
  • 4 = State Change
  • 5 = Reduction of OrdQty
  • 1 is used for GTC and GTD Carried Order Restatements if associated port attribute is set.
  • 4 is used for post-Settlement Execution Reports that update Trade At Settlement (TAS) trades with settlement offset prices and symbol changes as appropriate. Restatements of Day orders on intraday system starts (for example, during holidays involving multiple trading segments for a day) will also use 4.
828TrdType
  • If present, the Execution represents a Block or an ECRP trade.
  • 1 = Block Trade
  • 2 = ECRP Trade
  • Block and ECRP trades will only appear on Standard FIX DROP connections and not on Order-By-Order DROP connections or FIX sessions.
11ClOrdID
  • ClOrdID of the order being accepted, executed or rejected.
  • -or-
  • ClOrdID of the cancel or replace request.
  • -or-
  • ClOrdID of the order subject to unsolicited cancel
  • (OrigClOrdID will not be present).
41OrigClOrdIDClOrdID of the order being cancelled or replaced (for a solicited Cancel or Cancel/Replace, otherwise not present).
37OrderId
  • OrderId (supplied by CFE).
  • Sent to the OCC in the Exchange Data field.
382NoContraBrokersOnly present on trades. Always 1
375ContraBrokerOnly present on trades. Always CFE
39OrdStatus
  • State of order:
  • 0 = New
  • 1 = Partially Filled
  • 2 = Filled
  • 4 = Canceled
  • 5 = Replaced
  • 6 = Pending Cancel
  • 8 = Rejected
  • A = Pending Ack
  • B = Calculated
  • E = Pending Replace
  • For FIX Drop, only ‘1’ or ‘2’ will be sent and will always equal ExecType (150). For Order by Order FIX Drop, all execution information will be sent.
  • OrderStatus (39) will always = B for TAS post-settlement restatements.
103OrdRejReason
  • Optional when ExecType is Rejected (8):
  • 0 = Broker option
  • 1 = Unknown symbol
  • 2 = Exchange closed
  • 3 = Order exceeds limit
  • 5 = Unknown order
  • 6 = Duplicate order
  • 8 = Stale order
1AccountCopied from order (available in FIX DROP)
59TimeInForce
  • Copied from order unless overridden by the system. For example, Market orders are implicitly IOC.
  • Post-settlement restatement messages for TAS executions for which the associated order was submitted with TimeInForce = 4 (FOK) will include TimeInForce = 3 (IOC).
126ExpireTimeCopied from order
110MinQtyCopied from order
439CMTANumberCopied from order
440ClearingAccountCopied from order
55Symbol
  • Copied from order
  • For FIX DROP and Order by Order DROP only, Execution Reports for Futures will always contain "Expiration Symbology" in fields Symbol (55), MaturityMonth (200), and MaturityDay (205). Symbol will always contain the Product identifier associated with the traded instrument (e.g., ‘VX’). MaturityMonth and MaturityDay specify the expiration of the traded instrument.
  • Note if MultilegReportingType (442) is set to 3 (i.e., Spread execution), Expiration Symbology does not uniquely identify the traded option instrument, and in this case both Symbol (55) and SecurityID (48) contain the 6 character mapped SymbolID of the traded spread instrument.
  • (Options only), SecurityDesc (107) and Symbol (55) are always populated for simple instruments. Symbol (55) will contain the 6-character mapped Symbol ID. Complex/spread instruments will only include Symbol (55).
200MaturityMonth
  • Copied from order (Futures only).
  • For FIX DROP and Order by Order DROP Execution Reports, MaturityMonth (200) specifies the month component of the expiration date of the traded instrument.
  • For Spread executions (i.e., MultilegReportingType (442) = 3), MaturityMonth (200) is not included since Symbol (55) contains mapped SymbolID and not Expiration symbology.
205MaturityDay
  • Copied from order (Futures only).
  • For FIX DROP and Order by Order DROP Execution Reports, MaturityDay (205) specifies the day component of the expiration date of the traded instrument.
  • For Spread executions (i.e., MultilegReportingType (442) = 3), MaturityDay (200) is not included since Symbol (55) contains mapped SymbolID and not Expiration symbology.
107SecurityDesc (Options only)Long format description of Options instrument (e.g. "UX1A/K4 C2000").
48SecurityID (Futures only)Present only for FIX DROP and Order by Order DROP Execution Reports. Field will always contain the associated symbol using the 6-character mapped symbol id.
142SenderLocationIDCopied from order
167SecurityTypeCopied from order
54SideCopied from order
38OrderQty
  • Copied from order
  • Field not present on TAS post-settlement restatements.
424DayOrderQtyFor GTC and GTD orders only. Contracts remaining to be filled for the order at the beginning of the current business day (i.e., OrderQty - CumQty at the end of the previous business day).
14CumQty
  • Cumulative quantity of contracts executed for the order over life of the order, which may be multiple business days in the case of GTC and GTD orders.
  • Populated for leg fills related to complex executions.
425DayCumQtyFor GTC and GTD orders only. Cumulative quantity of contracts executed for the order during the current business day.
151LeavesQty
  • Quantity of contracts or spread instruments still open for further execution. Will be zero if order is dead, otherwise will be (OrderQty -CumQty).
  • Note: It is possible for LeavesQty to be zero when ExecType = 5 indicating that the order is dead.
  • Field not present on TAS restatements.
32LastShares
  • Quantity of contracts traded on this fill (zero for nonfills).
  • Must request opt-in at firm or port level for "Report MTP Fields" to receive this field on a MTP triggered cancel/restatement where both sides were cancelled. LastShares is set to the number of contracts that would have been matched in the event of cancel on account of MTP.
44PriceCopied from order
31LastPx
  • Price of this fill (zero for non-fills).
  • Must request opt-in at firm or port level for "Report MTP Fields" to receive this field on a MTP triggered cancel/restatement where both sides were cancelled. LastPx is set to the price at which LastShares would have matched in the event of cancel on account of MTP.
6AvgPxAverage price of executions for this order weighted by trade size. Zero if CumQty is zero or if a leg fill related to a complex execution.
426DayAvgPxFor GTC and GTD orders only. Average price per contract of executions on current business date (TradeDate). Zero if DayCumQty is zero.
99StopPxCopied from order
198SecondaryOrderIDPresent on a MTP triggered cancel. Must request opt-in at firm or port level for "Report MTP Fields" to receive this field.
9730TradeLiquidityIndicator
  • Present for acknowledgements and fills (150 = 0, 150 = 1 or 150 = 2):
  • 1st Character
  • A = Trade Added Liquidity
  • R = Trade Removed Liquidity
  • C = Market opening/re-opening trade
  • 2nd Character (must opt-in to receive)
  • U = Qualifying Market Turner order. Only sent when first character value = A.
  • State Change Tracking
  • Order acks (150=0), modify acks (150=5) and restatements (150=D with 378=4 or 378=1) will carry 9730 messages defined as follows:
  • A = Zero or more immediate partial remove fills followed by posting.
  • AU = Zero or more immediate partial remove fills followed by posting as market turner.
  • R = Zero or more immediate partial remove fills followed by a cancel (or full fill).
9882FeeCodeSpecific fee code associated with execution. See the Fee Schedule for the respective market for possible values.
9617ModifySequenceFIX Drop only. Base 36. Number of times order has been replaced.
9688OrigCompIDFIX Drop only. TargetCompID of original FIX exec report FIX Drop port must be configured to send this optional field.
9689OrigSubIDFIX Drop only. TargetSubID of original FIX exec report FIX Drop port must be configured to send this optional field.
60TransactTimeGMT date-time that transaction occurred
58TextIf present, indicates reason for reject or cancel. Format is one letter reason code followed by colon and space followed by free form text (e.g., "N: No Liquidity at price"). See Reason Codes for a list of valid reason codes.
7695MassCancelIDMass cancel ID provided when ExecType = M (Mass Cancel Complete) indicating a Mass Cancel operation has completed.
7696CancelledOrderCountNumber of orders cancelled from a Mass Cancel request.
9702CTICodeCopied from order
1028ManualOrderIndicatorCopied from order
25004OEOIDCopied from order
47OrderCapacityCopied from order if provided
77OpenCloseCopied from order
21050ClearingPrice
  • Present in restatement execution reports in which the originally reported fill price (LastPx (31)) is transformed prior to clearing.
  • TAS executions are reported at the time of execution as a differential to the contract settlement price. Post-settlement the execution price offset with the contract settlement price and reported in the ClearingPrice (21050) field of the restatement.
21053ClearingSymbol
  • Present in restatement Execution Report message in which the symbol associated with execution at the time of the execution (Symbol (55)) is transformed prior to clearing.
  • Present only in restatement Execution Report messages for TAS instruments for which the execution clears with a different symbol than the symbol from the original Execution Report. Field contains the new mapped symbol ID that will used for clearing.
  • For TAS restatement Execution Report messages, the field will contain the mapped symbol ID of the standard futures instrument (i.e. "VX") with same expiration as the originally traded TAS instrument.
21097FrequentTraderIDCopied from order
1031CustOrderHandlingInstCopied from order
  • 555
  • Repeating Group
NoLegs (Options only) Copied from order
564 LegPositionEffect (Options only) Copied from order
Standard Message Trailer
Cboe Titanium Cboe Futures Exchange FIX Specification - Execution Report | Cboe