If I am routing an order to a venue/broker trading platform/exchange that can potentially route the order on for execution on another venue what are the appropriate tags to report both the venue that the order is sent to but also the venue of actual execution?
If we use LastMarket (Tag 30) for the indication of the execution venue when 150=F and 30= the routing venue for 150=0 but out counterparty connection needs the info as to the routed venue when the trade is booked we need a tag to indicate the routing venue.
IS it sufficient to indicate this in ExDestination (Tag 100)?
Seeking guidance on best practice.
We have opted to use the Party Role 73 Execution Venue to identify the System that we routed the order to and that took the decision to route to an away market. This means that LastMarket stays consistent and is always the representation of the venue/exchange that the order was actually traded on while the routed to venue that took the decision is contained in the Party ID for role 73.
Hi Darik,
I was not able to weigh in earlier and will do so now. FIX is fundamentally between two parties and there is no general approach to conveying identical information from flows prior to the first party and/or after the second party. The solutions are always for specific use cases, e.g. SecondaryOrderID(198) or SecondaryExecID(527) to convey two system order / execution identifiers when an order is routed beyond the initial place of submission.
The concept of an away market has been added to FIX with EP112 (https://www.fixtrading.org/extension-packs/) with PartyRole(452)=94. The use case was for a market to route the order to another market for execution. Similarly, EP139 added PartyRole(452)=99 to identify an originating market for an order. You could use that for the market that decided to route the order to an away market. PartyRole(452)=73 has no such connotation and is generic. However, you can always use your spec (Rules of Engagement) to give 73 the same semantic. It should only then not be used for a different semantic when there is no routing involved.
I agree to maintain the semantic of LastMkt(30) to be the actual place of execution. The field description says: Market of execution for last fill, or an indication of the market where an order was routed.
Regards,
Hanno.