[This message was posted by John Prewett of Lava Trading 
<[email protected]> to the "4.2 Changes" discussion forum at 
http://fixprotocol.org/discuss/5. You can reply to it on-line at 
http://fixprotocol.org/discuss/read/a1cf4d39 - PLEASE DO NOT REPLY BY MAIL.]

Now that I have more of the picture, maybe you want to consider this:

1.  When the customer sends in a NewOrderSingle, respond with an 
ExecReport(PendingNew).
2.  When the customer sends in a CancelReplaceRequest against an original 
order, issue an ExecReport(new) on the original order and an 
ExecReport(pendingReplace) on the replacement version.
3.  When the customer sends in a CancelReplaceRequest against a previous 
replacement order, issue an ExecReport(replaced) for the previous replacement 
order and an ExecReport(pendingReplace) for the new replacement version.
4.  When the customer sends in a CancelRequest against an original order, issue 
an ExecReport(new) against the original order and an ExecReport(canceled) for 
the CancelRequest.
5.  When the customer sends in a CancelRequest against a replacement order, 
issue an ExecReport(replaced) against the replacement order and then an 
ExecReport(Canceled) for the CancelRequest.

In the above manner, you have never actually confirmed the latest version of an 
order, so you can ultimately send a NewOrderSingle to the market when it 
becomes available with the most recent version of an order and take the 
following actions, depending on the market's response:
A.  If the market accepts the order and the order was the original version, 
issue an ExecReport(new).
B.  If the market rejects the order and the order was the original version, 
issue an ExecReport(rejected).
C.  If the market accepts the order and the order was actually a replacement 
version, issue an ExecReport(replaced).
D.  If the market rejects the order and the order was a replacement version, 
this is the only tricky scenario.  You must issue an unsolicited cancel on the 
previous version of the order, followed by a CancelReject for the replacement 
version.

I believe this removes any liability as a result of your system actually 
accepting an order.  You only accept an order when the next version is 
submitted.

I hope this helps.

JohnP

[You can unsubscribe from this discussion group by sending a message to 
mailto:[email protected]]

--

You received this message because you are subscribed to the Google Groups 
"Financial Information eXchange" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/fix-protocol?hl=en.


Reply via email to