Ultra-low-latency market data → LOB → strategy → paper broker, in modern C++20. Strict warnings, exceptions/RTTI disabled, sanitizer presets, LTO-ready. Third-party via CPM.cmake.
- C++20, GCC/Clang, CMake ≥ 3.22, Ninja
- Warnings-as-errors,
-fno-exceptions,-fno-rtti, hidden visibility - Options:
FLASHFLOW_ASAN,FLASHFLOW_TSAN,FLASHFLOW_LTO,FLASHFLOW_DEV - Lightweight deps via CPM:
fmt,spdlog(header-only, external fmt),doctest,nanobench - Core components (lock-free SPSC ring & LOB) live in our codebase
git clone <your_repo_url> FlashFlow && cd FlashFlow
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DFLASHFLOW_LTO=ON -DFLASHFLOW_DEV=OFF
cmake --build build