Broka is a multithreaded C++ order book implementation that supports numerous order types. It was created as a learning project, and is certainly not intended for consequential use.
The primary API supports the following actions:
- Place an order
- Cancel an order
- Modify an order
- Retrieve basic order book data (e.g., total number of outstanding orders, quantity at each side/price level)
Five order types are currently supported:
- Day (not well-tested)
- Fill or kill
- Good 'til cancelled
- Immediate or cancel
- Market
- C++20 compiler
- CMake 3.20 (can probably use 3.12+ but only 3.20 has been tested)
- Make (any recent version should be fine)
- Build the CMake targets:
make
- Run the tests:
make test
- Clean the build directory:
make clean