// PROJECT · Active · Oct 2026 – Present
QUANT – NASDAQ ITCH 5.0 Feed Handler
C++20 feed handler for NASDAQ TotalView-ITCH 5.0 binary market data.
Independent
Overview
QUANT is a NASDAQ TotalView-ITCH 5.0 feed handler being written in C++20, working against a full trading day of NASDAQ's ITCH 5.0 sample data (12/30/2019, about 8.3 GB uncompressed). The groundwork is in place: a CMake build around a header-only itch library, GoogleTest wired into ctest, strict compiler warnings, and AddressSanitizer/UBSan on Debug builds. Message decoding is the next step.
What I did
- Building a NASDAQ TotalView-ITCH 5.0 feed handler in C++20, structured as a header-only itch library (CMake INTERFACE target) with a separate GoogleTest test target.
- Compiling the library with -Wall -Wextra -Wpedantic -Wconversion, and running Debug builds under AddressSanitizer and UndefinedBehaviorSanitizer so out-of-bounds reads and bad shifts fail at runtime instead of passing silently.
- Pulling GoogleTest v1.17.0 in at configure time with FetchContent and registering tests through gtest_discover_tests so they run under ctest; no test cases are written yet.
- Hand-encoded a 38-byte, length-prefixed, big-endian ITCH 5.0 Add Order message for AAPL as the first parser test fixture.
- Documented sourcing a full trading day of NASDAQ ITCH 5.0 sample data (12/30/2019; ~3.5 GB compressed, ~8.3 GB raw) and kept it out of version control.
Architecture
- FeedHandler/: CMake 3.20+ project, C++20 required, compile_commands.json exported.
- itch: header-only INTERFACE library under include/itch/; endian.hpp is reserved for big-endian field readers (empty as of the first commit).
- itch_tests: GoogleTest v1.17.0 (FetchContent), linked to gtest_main, discovered by ctest.
- Debug builds: -fsanitize=address,undefined with frame pointers kept.
- ITCH_READER.cpp: reader for the raw ITCH 5.0 file, listed in the README as work in progress (not yet committed).
- Input: NASDAQ's 12/30/2019 ITCH 5.0 sample file in a git-ignored data/ directory.
Stack
- C++
- CMake
- GoogleTest
- NASDAQ TotalView-ITCH 5.0