libtrading/libtrading
FreeLibtrading, an ultra low-latency trading connectivity library for C and C++.
FreeFree tier
About libtrading/libtrading
Libtrading is an open source C/C++ API for building ultra low-latency trading applications. It implements network protocols for communicating with exchanges, dark pools, and other trading venues. The library supports FIX, FIX/FAST, and proprietary protocols such as ITCH and OUCH used by NASDAQ. Features include a C API, high performance, low latency, FIX dialect support, and SystemTap/DTrace probes. The repository includes tools like fix_server and fix_client for testing and performance measurement. Licensed under the 2-clause BSD license.
Key Features
Open source API for high-performance, low-latency trading applications
Supports FIX, FIX/FAST, ITCH, and OUCH protocols
C API with FIX dialect support
SystemTap/DTrace probes for monitoring
Includes performance measurement tools (fix_server, fix_client)
Tested round-trip latency: FIX min/avg/max = 15.0/16.8/129.0 μs
Pros & Cons
Pros
- Open source and free to use
- Ultra low-latency performance (microsecond-level round trips)
- Supports multiple industry-standard and proprietary protocols
- Includes SystemTap/DTrace probes for profiling
- Active community and contributors
- BSD license allows commercial use
Cons
- Limited to C and C++ languages
- Requires deep understanding of trading protocols and exchange specifications
- Performance depends heavily on hardware and kernel tuning
- Documentation may be sparse for beginners
- No built-in graphical interface
Best For
Communicating with exchanges, dark pools, and other trading venuesBuilding custom trading applications and order management systemsPerformance testing and benchmarking of trading connectivityEducational tool for learning low-latency trading protocols
FAQ
What protocols does libtrading support?
Libtrading supports FIX, FIX/FAST, and proprietary protocols such as ITCH and OUCH used by NASDAQ.
What is the license for libtrading?
Libtrading is distributed under the 2-clause BSD license.
How can I measure the performance of the FIX engine?
Use the included tools: start fix_server with -m 1 -p 7070, then run fix_client with -n 100000 -m order -p 7070 -h localhost to see round-trip latency statistics.
Is there any official website for libtrading?
The project's website is libtrading.org.