FIX Trading Community

 

 Remember me

Register  |   Lost password?

ECNs, Exchanges

Discussions > ECNs, Exchanges > How do matching engines determine order of order entry into order book ?

How do matching engines determine order of order entry into order book ?

Complete message thread from old site

Mahesh Kumaraguru
1 March 2011 9:55pm

How do matching engines determine order of order entry into order book especially in the scenario of multiple orders for same security arriving at the same time at the FIX gateway? My understanding is that matching engine is multiThreaded so the order of order entry into the respective order book is always determinate http://fixprotocol.org/discuss/read/ad26154c

Question(s) : Is my assumption correct ? If not how do exchange matching engines determine order of order entry into order book for purposes of liquidity adder / remover based fee pricing ? Any tips / best practices appreciated :-)

Regards,
K. Mahesh

FIX Trading Community
12 July 2011 10:17am

[ original email was from Mark Reece - mark.reece@hsbcib.com ]
In my experience, Matching Engines may be multi-threaded in some respects, but ultimately, there will be a single threaded entry point which acts as a sequencer. For throughput, this needs to be a short as possible since all orders are gated through it, so determining the sequence for order processing - this is the front door to the actual matching process.

There are lots of algorithms which could then be used to fan out the processing of orders. There is also the possibility of dividing incoming orders according to price levels (after all, only orders priced in a narrow range will execute - the rest just need to get on to the book in the correct sequence for the limit price.

But most that I have seen process the order (for executions etc) as it passes through the single threaded piece.

Hope that is useful.

Mark Reece

> How do matching engines determine order of order entry into order book especially in the scenario of multiple orders for same security arriving at the same time at the FIX gateway? My understanding is that matching engine is multiThreaded so the order of order entry into the respective order book is always determinate http://fixprotocol.org/discuss/read/ad26154c
>
> Question(s) : Is my assumption correct ? If not how do exchange matching engines determine order of order entry into order book for purposes of liquidity adder / remover based fee pricing ? Any tips / best practices appreciated :-)
>
> Regards,
> K. Mahesh