[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/21dbcfbb - PLEASE DO NOT REPLY BY MAIL.]
This model is somewhat dangerous when it comes to covering all the state transitions, but I don't see why it couldn't be made to work with some leniency from the entities that send you orders. Having already issued ExecReport(ExecType=Replaced), it would not be appropriate to subsequently issue an ExecReport(ExecType=Rejected) as you stated. I believe that an unsolicited cancel of the order would be the only option under these circumstances. Please beware that some buy-side software gets upset when it receives an unsolicited cancel as this is generally an abnormal situation. What I'm wondering about is why you acknowledge the orders. Have you considered using ExecReport(ExecType=Pending New) as a response for the original order and ExecReport(ExecType=Pending Replace) as a response for the replacement order? If you did this, you could then forward the orders and replace requests when the execution venue subsequently becomes available and relay the responses back to your buy side customers. In this respect, you would be acting as a FIX store-and-forward device. Lastly, you haven't mentioned how you handle what happens when: 1. The orders are still flowing and the market now becomes available. Do you still pre-acknowledge orders? 2. The buy-side sends two (or twenty-two) replace requests prior to market open. 3. Handling of cancel requests. 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.
