Responding to a cancel replace

Imported from previous forum

[ original email was from Anselm Fernandez - anselm.fernandez@flextrade.com ]
In FIX 4.0, for responding to a cancel replace request, which method is valid:

  1. First sending 39=6 (pending) and then 39=0 (new)

or

  1. First sending 39=6 (pending) and then 39=5 (replaced)

Appendix D is the FIX 4.0 specification contains the sequence from the broker’s point of view for this scenario is the last table. It appears that it should be 39=0, but I see most implementations with 39=5.

Which method is in alignment with the specification?

In FIX 4.2

  1. New Order comes in: OrdStatus=39 Value 0 (New)
  2. User requesting to lower the order quantity:
    a) first MsgType=35 Value G,
    b) second MsgType=35 Value 8, OrdStatus=39 Value E (Pending Replace)
  3. Final Message: OrdStatus=39 Value 0 (New)

In FIX 4.0, for responding to a cancel replace request, which method is valid:

  1. First sending 39=6 (pending) and then 39=0 (new)

or

  1. First sending 39=6 (pending) and then 39=5 (replaced)

Appendix D is the FIX 4.0 specification contains the sequence from the
broker’s point of view for this scenario is the last table. It appears
that it should be 39=0, but I see most implementations with 39=5.

Which method is in alignment with the specification?

The method of giving precedence to Pending Cxl/Replace or Replaced over 39=0 is the most widely accepted one. This is in line with the later Fix versions 4.1, 4.2 and above. If the order is in Pending New status & a cxl/Replace has been recieved, the Broker has to immediately acknowledge the request (39=6) followed by a Replaced ER(39=5). The status of “Replaced” acknowledges the fact the the order has been accepted by the Broker.

Although, the below mentioned flow is as per FIX, few FIX engines reject a cancel or replace req when the order is the pending new status.Either ways, it is fine as long as it is acceptable for both the client and the broker.

Srivatsa.

The method of giving precedence to Pending Cxl/Replace or Replaced over
39=0 is the most widely accepted one. This is in line with the later
Fix versions 4.1, 4.2 and above. If the order is in Pending New status
& a cxl/Replace has been recieved, the Broker has to immediately
acknowledge the request (39=6) followed by a Replaced ER(39=5). The
status of “Replaced” acknowledges the fact the the order has been
accepted by the Broker.