Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Show HN: C++ order book matching engine (3.2M orders/SEC, ~320ns) (github.com/eelixir)
5 points by tjwells 25 days ago | hide | past | favorite | 3 comments


I’m a student interested in market microstructure and low-latency systems. I built Mercury to learn how matching engines work under the hood.

It’s a single-threaded C++ engine that achieves ~320ns insertion latency and 3.2m+ orders/sec throughput.

Technical details:

Memory: Everything is pre-allocated. No new/malloc on the hot path.

Data Structures: I wrote a custom Robin Hood hash map and intrusive lists to keep order management O(1) and cache-friendly.

Architecture: It includes a pre-trade risk check and a backtester.

The code is obviously not production-ready for a real exchange, but I’d love feedback on the C++ implementation and memory layout.

Repo: https://github.com/eelixir/mercury


Looks super interesting! Does it have support for auction mechanics (e.g. dutch auction)?


currently it just handles standard limit and market orders, with price-time priority




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: