Order Cancel/Replace Request

Only Price, OrderQty, OrdType, MaxFloor, and StopPx may be adjusted. OrdType may be adjusted from Limit to Market (market and stop/stop limit orders are not supported during GTH or Curb sessions).

  • Time priority is maintained on an order or quote modification if there is a decrease in OrderQty with no other changes.
  • Time priority is maintained on an order modification in the following cases:
    • An update to StopPx on an unelected stop order with no other changes
    • An update to MaxFloor with no other changes
  • An order combining two or more of the specific items above does not lose priority.
  • Time priority is lost in the following cases:
    • An order involving one of the items above and changes to any other attribute.
    • A quote modification decreasing size and changes to any other attribute.
    • An order or quote modification with no change to any attribute.

Other fields (including ExecInst) will be ignored, and the value from the original order will be re-used. Note that when a Day ISO is modified, the ISO designation is applied to the new order.

Changes in OrderQty result in an adjustment of the current order’s OrderQty. The new OrderQty does not directly replace the current order’s LeavesQty. Rather, a delta is computed from the current OrderQty and the replacement OrderQty. This delta is then applied to the current LeavesQty. If the resulting LeavesQty is less than or equal to zero, the order is cancelled. This results in safer behavior when the replace request overlaps partial fills for the current order, leaving the user in total control of the share exposure of the order.

MaxFloor if not specified is preserved from the original order and applied to the new size and price. A change in MaxFloor takes effect on the next reserve reload.

A Cancel/Replace message should not be issued until the ack for the previous Cancel/Replace message (or the acknowledgement for the first Cancel/Replace message) for that order has been received. The FIX handler will reject a new Cancel/Replace message if it has not seen the prior Cancel/Replace message from the Matching Engine.

Cancel/Replace message requests that merely reduce OrderQty may be overlapped if the existing ClOrdID is re-used. This is the only case where re-use of the existing ClOrdID is allowed.

A maximum of 1,295 Cancel/Replace message requests may be made to a single order each trading day. Once the 1,295th modification is made, the next user-generated message on the order should be an Order Cancel message request.

Firms are advised to always send OnBehalfOf (115) on all Cancel/Replace requests as port level defaults are not honored on these messages.

Table 1. Order Cancel/Replace Request Message
TagField NameReq’dDescription
35Standard Message HeaderYMsgType= G
97PossResendN
  • Y=Indicates an application level resend. If the ClOrdID does not indicate an already pending Cancel/Replace, the cancel is treated as normal. If ClOrdID does indicate an already pending Cancel/Replace then the resent Cancel/Replace is ignored.
  • N=(Default) indicates a new cancel.
1AccountNIgnored - value preserved from original order
11ClOrdIdY
  • ID chosen by user. 20 characters or less. Characters in ASCII range 33-126 are allowed, except for comma, semicolon, and pipe.
  • A leading tilde (~) cannot be sent on any ClOrdId and will result in a reject. These are reserved for internal use by Cboe and could be received as a result of a system-generated ClOrdId.
  • Duplicate order ClOrdIds will be rejected (or ignored if PossResend = Y).
41OrigClOrdIDY*
  • ClOrdID of the order to replace. In the case of multiple changes to a single order, this will be the ClOrdID of the most recent accepted change.
  • *Either OrigClOrdID or OrderId must be populated.
37OrderIdNOrderId supplied by Cboe on the order acknowledgement.
60TransactTimeYTime Cancel/Replace initiated/released.
55SymbolNIgnored - value preserved from original order
77OpenCloseNIgnored - value preserved from original order
200MaturityMonthNIgnored - value preserved from original order
205MaturityDayNIgnored - value preserved from original order
201PutOrCallNIgnored - value preserved from original order
202StrikePriceNIgnored - value preserved from original order
54SideNMust match original order.
38OrderQtyY
  • Number of contracts for order.
  • This will modify the OrderQty of the current order; it does not directly set the remaining quantity.
40OrdTypeN
  • Defaults to original order value if not sent.
  • 1=Market
  • 2=Limit
  • 3=Stop
  • 4=Stop Limit
  • May replace Limit with Market or Stop with Stop Limit and vice versa, but otherwise must match original order, if sent. Note market and stop/stop limit orders are not supported during GTH or Curb sessions.
44PriceYLimit Price. Order rejected if priced finer than the minimum trading increment for the option.
18ExecInstNIgnored. Value preserved from original order
111MaxFloorNIf specified, the displayed quantity of a reserve order may be changed on the next reload.
99StopPxNOptional. Defaults to original order if not sent. Stop/Stop Limit orders will only elect based off of RTH quotes and trades.
9619CancelOrigOnRejectN
  • N=(Default) Leave original order alive.
  • Y=Cancel original order if replacement fails (an unsolicited cancel report will be sent for original order in this case).
7933
  • RoutingFirmID
N
  • Used to optionally convey the routing firm of the order.
  • Required if RoutingFirmID is populated on New Order Single or New Order Multileg message.
25004OEOID (effective 12/14/26)N
  • Required for complex instruments with futures legs.
  • Identifies the Order Entry Operator responsible for this message.
  • Minimum and maximum length is 3 and 18 characters, respectively.
  • Characters in ASCII range 33-126 are allowed, except for comma, semicolon, and pipe.
1028ManualOrderIndicator (effective 12/14/26)N
  • Required for complex instruments with futures legs.
  • Y = Manual order entry
  • N = Automated order entry
Standard Message TrailerY
Cboe Titanium U.S. Options FIX Specification - Order Cancel/Replace Request | Cboe