FIX.4.0 Pending Cancel Ack message

Imported from previous forum

[ original email was from Heribert Steuer - steuer@stockmanagement.de ]
Hello there,

i´d like to know the standart compliant value
of the OrdStatus field for a pending cancel ack
message which is sent in return for an Order Cancel Request message.
Two parties we communicate with return 2 different values. One returns 6, the other 0.

So, if we issue an Order Cancel Request, what would be the correct value of the OrdStatus(39) field for the acknowledgement message that we should receive ?

regards,
Heri

[ original email was from Ryan Pierce - rpierce@taltrade.com ]
> i´d like to know the standart compliant value
> of the OrdStatus field for a pending cancel ack
> message which is sent in return for an Order Cancel Request message.
> Two parties we communicate with return 2 different values. One returns 6, the other 0.
>
> So, if we issue an Order Cancel Request, what would be the correct value of the OrdStatus(39) field for the acknowledgement message that we should receive ?

0, but note that the ClOrdID is the ClOrdID of the CANCEL, not the order.

FIX 4.0 contains an appendix of a small number of state change matricies. Those state change matricies specify that if ClOrdID=X is an order, and ClOrdID=Y is a cancel, then the status of the order (X) becomes 6 (Pending Cancel/Replace) and the status of the cancel (Y) becomes 0 (New). However, the appendix lists asterisks defining which message is sent in reply, and which isn’t sent unless the client sends a status request. The spec requires that ClOrdID=Y, OrdStatus=0 be sent. If the client sends a status request on ClOrdID=X, then ClOrdID=X OrdStatus=6 would be returned.

Note that many firms ignore the appendix and send ClOrdID=X OrdStatus=6 instead.

FIX 4.1 eliminates these ambiguities by coupling both ClOrdID and OrigClOrdID in the same message. In FIX 4.1, ClOrdID=Y OrigClOrdID=X OrdStatus=6 ExecType=6.