The LinkID field may be used by the Taker to group Orders together.
Currently supported workflows include:
A shared LinkID may be populated across multiple QuoteRequest messages by the ECN/Taker counterparty. This is typically used to request Batch pricing and trading across multiple SecurityTypes and/or Symbols, as supported in fxall_quicktrade_maker, for example.
The end of the Batch QuoteRequest set is signalled by an EndMarker message containing the same LinkID value.
As of 2023.07.06.WE, Whisperer also implements LinkIDs for Order modification workflows, to assist Client and MarketFactory support teams.
At present, Client-provision of this field is optional for Orders workflows, but preferred since the explicit grouping of chains of orders also greatly simplifies production support tasks where the full context for any order-related enquiry is needed.
A Client may also have additional use-cases where they may prefer individual orders to be grouped, for example to identify the individual originating Algos or Strategies.
Client population of this field ensures a direct linkage across all related messages from the Client to Whisperer, i.e.:
NewOrderMultilegMultilegCancelReplaceRequestOrderCancelRequestExecutionAckIf the Client does not populate the LinkID in their NewOrderMultileg, Whisperer will use the ClOrdID as a default value. Any LinkID provided in subsequent messages must match that used for the initial NewOrderMultileg, otherwise the message will be rejected.
Whisperer maintains the LinkID through the subsequent Order life-cycle. This ensures that all related messages from Whisperer to the Client are always directly linked, i.e.:
ExecutionReportOrderCancelRejectOrderTimeoutAt present this functionality is restricted to those venues that allow order modification, i.e.:
|