Imported from previous forum
Does FIX 4.2 allow following two actions?
-
sending Order Cancel Request (msgType=F) for pending new order?
e.g.:
time 1: sending Order - Single (msgType=D)
time 2: sending Order Cancel Request (msgType=F)
(* no execution report is received between time 1 and time 2) -
sending Order Cancel Request (msgType=F) for pending replace order?
e.g.:
time 1: sending Order - Single(msgType=D)
time 2: receiving Execution Report(msgType=8,execType=new,ordStatus=new)
time 3: sending Order Cancel/Replace Request (msgType=G)
time 4: sending Order Cacnel Request (msgType=F)
(* no execution report is received between time 3 and time 4)
Lok,
I am not sure you’d want to send cancel requests in the scenarios you describe. While not technically prohibited, it would be good for an application to wait for a “positive” response before proceeding. “Positive” means (1) an execution report with order status = new, and (2) an execution report with order status = replaced.
It is possible to “rapid fire” replace requests (see also order state change matrices D16 and D17 in the FIX 4.2 specifications), but I believe waiting for a positive response is the cleaner way to implement.
You may even consider GUI validation (if your application has a GUI) such that sending a cancel or replace request on orders in some form of pending state (unacknowledged, pending new, pending cancel, pending replace) is not allowed for the user.
–ws
Does FIX 4.2 allow following two actions?
sending Order Cancel Request (msgType=F) for pending new order?
e.g.: time 1: sending Order - Single (msgType=D) time 2: sending Order
Cancel Request (msgType=F) (* no execution report is received
between time 1 and time 2)sending Order Cancel Request (msgType=F) for pending replace order?
e.h.: time 1: sending Order - Single(msgType=D) time 2: receiving
Execution Report(msgType=8,execType=new,ordStatus=new) time 3:
sending Order Cancel/Replace Request (msgType=G) time 4: sending
Order Cacnel Request (msgType=F) (* no execution report is received
between time 3 and time 4)
[ original email was from Carfield Yim - carfield.w.yim@jpmorgan.com ]
> Does FIX 4.2 allow following two actions?
- sending Order Cancel Request (msgType=F) for pending new order?
Allowed, the order should be cancelled immediation, in fact that why 35=F have a case that 37=NONE
- sending Order Cancel Request (msgType=F) for pending replace order?
e.h.: time 1: sending Order - Single(msgType=D) time 2: receiving
Execution Report(msgType=8,execType=new,ordStatus=new) time 3:
sending Order Cancel/Replace Request (msgType=G) time 4: sending
Order Cacnel Request (msgType=F) (* no execution report is received
between time 3 and time 4)
Can refer to the Appendix D
Order State Change Matrices of the spec. about this.