Open source limit order book matching engine from OCI
- Low-level components for order matching and aggregate depth tracking
- Memory-efficiency: minimal copying of data to internal structures
- Speed: between 1.2 million and 1.5 million inserts per second. See full performance history.
- Works with or without aggregate depth tracking
- Optional aggregate depth tracking to any number of levels (static) or BBO only
- Works with smart or regular pointers
- Preserves your order model, requiring only trivial interface
- Preserves your identifiers for securities, accounts, exchanges, orders, fills
- Use your threading system (or be single-threaded)
- Use your synchronization method
- MPC for cross-platform builds
- BOOST for unit testing only
Make sure the $BOOST_ROOT environment variable is set, then open a shell
$ cd liquibook $ . env.sh $ mwc.pl -type make liquibook.mwc $ make depend $ make all
Make sure the %(BOOST_ROOT) environment variable is set, then open the Visual Studio Command Prompt of choice (this example is for Visual Studio 2010):
> cd \liquibook > winenv.bat > mwc.pl -type vc10 liquibook.mwc
Then in the same window, start Visual Studio from the command line, opening liquibook.sln (This example is the Visual Studio 2010 Express Edition):
> "%VS100COMNTOOLS%\..\IDE\VCExpress.exe" liquibook.sln
See other build notes.