No description
  • C++ 78.6%
  • Nix 18.8%
  • Python 2%
  • Shell 0.6%
Find a file
2026-06-30 11:02:56 +02:00
docs Added new partial benchmarks 2026-06-08 14:15:28 +02:00
proto Add Watch RPC for server-streaming book snapshots 2026-06-13 20:27:05 +02:00
scripts Add thread-safe Orderbook and gRPC service 2026-06-12 22:08:44 +02:00
src formatting 2026-06-30 11:02:56 +02:00
.clang-format Initial commit 2026-06-02 14:31:49 +02:00
.clang-tidy added clang-tidy 2026-06-29 16:12:17 +02:00
.gitignore Add thread-safe Orderbook and gRPC service 2026-06-12 22:08:44 +02:00
flake.lock Initial commit 2026-06-02 14:31:49 +02:00
flake.nix Update gRPC server to use new variant error handling 2026-06-29 16:41:35 +02:00
README.md Added benchmarks to readme 2026-06-08 09:56:28 +02:00

Orderbook

A limit orderbook matching engine written in C++23.

Supports price-time priority matching, GoodTillCancel and FillAndKill order types, and order modification. Built with Nix and tested with GoogleTest.

Benchmark

The order book includes a benchmark suite built with Google Benchmark to evaluate the performance of core operations across varying book sizes (64 to 65,536 orders). The benchmarks measure order insertion, order cancellation, insert-and-match scenarios, market order execution, and full book sweeps.

Testing was performed on consumer desktop hardware (AMD Ryzen 5 5600X @ 4.65 GHz), providing a realistic indication of performance without specialized server-grade equipment. These benchmarks serve as a baseline for evaluating design choices, identifying bottlenecks, and tracking performance improvements over time.

Orderbook Benchmarks