Aggregation Rules

 

If for one symbol there are two or more checkboxes ticked, the prices from all the ticked LPs will be aggregated, i.e. the matching engine aggregates the price band volumes on each level of the order book.

When the matching engine receives an order, it can be split across all LPs in the aggregated order book to provide execution according to the order rules.

If an LP fully or partially rejects an order due to lack of liquidity, margin insufficiency or other reasons (you can always check the reason for rejection in FIX messages available via the Cloud Portal), the matching engine after receiving the rejection report from this LP will send the order to the remaining quantity of the partially filled order to the LP with the next available best price and, if rejected again, will keep sending it to the rest of LPs in the order book for a pre-defined timeout period or until the order is filled.

 

Market order execution

 

A market order with a volume equal to or less than the volume available on the top of the book will be sent to the LP providing the TOB price. If the named LP does not provide enough volume to fill the market order, the matching engine will be sent the remaining volume to the LP providing the next available price. As a result, the client market order will be executed with several LPs and the volume-weighted average price (VWAP) will be confirmed to the client.

Thus, a market order is executed with an LP providing the best price or ‘sweeps’ the order book.

 

Limit order execution

 

Before sending a limit order to an LP, the matching engine checks the last available price in its internal order book to see if there’s an LP providing the requested price at the moment. If the requested (or a better) price is not available in the internal order book, the client limit order is rejected.

Additionally, if a client’s open trade was executed with 1 LP, it is not necessarily that the closing trade will be executed with the same LP. All orders follow the same execution logic in the aggregation as described above.