This project implements a high-frequency trading (HFT) order book system utilizing FPGA acceleration to achieve low latency and high throughput. The order book is designed to handle real-time market data and execute trades efficiently. The FPGA processes latency-sensitive tasks such as market data handling and initial order validation, while the CPU handles complex order matching, risk checks, and trade execution.
- High Performance: Leveraging FPGA for real-time data processing.
- Low Latency: Optimized for high-frequency trading.
- Scalable Architecture: Efficient handling of high volume of orders and updates.
- Risk Management: Built-in risk checks and validations.
- Real-time Analytics: Monitoring system performance and market conditions.
- Resilient Design: State persistence and recovery mechanisms.
-
Market Data Handler (FPGA)
- Parses and normalizes incoming market data.
- Handles initial data filtering and preprocessing.
-
Order Entry Handler (FPGA)
- Receives and pre-processes incoming orders.
- Performs basic validation checks.
-
Order Management System (CPU - C++)
- Maintains the state of the order book.
- Processes and matches orders.
- Executes trades and handles risk management.
-
FPGA Communication Layer (CPU - C++)
- Manages data exchange between the CPU and FPGA via PCIe/DMA interface.
-
Trade Execution and Reporting (CPU - C++)
- Executes matched trades and generates reports.
-
Monitoring and Logging (CPU - C++)
- Monitors system performance.
- Logs significant events and transactions.
- Endrias Project Final Report. Retrieved from MIT.
- HFT Book Builder. Retrieved from Columbia University.
- Virtual FPGA Lab. Retrieved from GitHub.