Skip to main content
Use OrderCancelRequest (35=F) to cancel an active order. Use OrderCancelReplaceRequest (35=G) to amend quantity or price for an active order.

Cancel request fields

TagNameReqTypeDescription
41OrigClOrdIDYStringOriginal client order identifier of the order being cancelled.
11ClOrdIDYStringNew client identifier for the cancel request.
55SymbolYStringSymbol code of the original order.
54SideYCharOriginal order side. Use 1=Buy or 2=Sell.
60TransactTimeYUTCTimestampTime when the cancel request is created.

Cancel response flow

StepResponse
Cancel request is invalidOrderCancelReject (35=9) with the current order status and rejection detail.
Cancel request is accepted for processingExecutionReport (35=8) with OrdStatus (39)=6 and ExecType (150)=6 for pending cancel.
Cancel succeedsExecutionReport (35=8) with OrdStatus (39)=4 and ExecType (150)=4 for canceled.
Cancel fails after acceptanceOrderCancelReject (35=9) with the current order status and rejection detail.

Replace request fields

TagNameReqTypeDescription
41OrigClOrdIDYStringOriginal client order identifier of the order being amended.
11ClOrdIDYStringNew client identifier for the replace request.
55SymbolYStringSymbol code. This value must match the original order.
54SideYCharOrder side. This value must match the original order.
60TransactTimeYUTCTimestampTime when the replace request is created.
38OrderQtyYQtyNew total order quantity.
40OrdTypeYCharOrder type. This value is required in the message and cannot change the original order type.
44PriceYPriceNew order price.
59TimeInForceNCharOrder validity. This value cannot change the original validity for unsupported combinations.
200MaturityMonthYearNCharContract month in YYYYMM format when required by the symbol contract.
167SecurityTypeNCharSecurity type when required. Use the value assigned for the session; FUT denotes futures.

Replace response flow

StepResponse
Replace request is invalidOrderCancelReject (35=9) with the current order status and rejection detail.
Replace request contains no change in price or quantityOrderCancelReject (35=9).
Replace request attempts to change order type or validity when not allowedOrderCancelReject (35=9).
Replace request is accepted for processingExecutionReport (35=8) with OrdStatus (39)=E and ExecType (150)=E for pending replace.
Replace succeedsExecutionReport (35=8) with ExecType (150)=5 for replaced. OrdStatus (39) follows FIX 4.2 order-status precedence.
Replace fails after acceptanceOrderCancelReject (35=9) with the current order status and rejection detail.

Priority handling

AmendmentPriority behavior
Price changesMatching priority is reset.
Quantity decreases onlyMatching priority is retained.
Quantity increasesMatching priority is reset.

Validation notes

RuleDescription
Original order referenceOrigClOrdID (41) must reference an order that can be cancelled or amended.
One pending actionA new cancel or replace request is rejected when the target order already has a pending cancel or replace request.
Immutable fieldsSymbol (55), Side (54), and the original order identity must remain unchanged.
Completed ordersFilled, cancelled, rejected, or expired orders cannot be cancelled or amended.
Session restrictionsCancel and replace requests are permitted only in trading-session states that allow the action.