Discover and explore top open-source AI tools and projects—updated daily.
High-frequency trading framework for research
Top 99.4% on SourcePulse
This repository provides a High-Frequency Trading (HFT) framework for research, specifically supporting the paper "A reinforcement learning approach to improve the performance of the Avellaneda-Stoikov market-making algorithm." It enables researchers to develop and backtest trading algorithms using L2 tick data with a unified codebase for both backtesting and live trading, interfacing with markets via Java and Python connectors.
How It Works
The framework utilizes a modular architecture with Connectors for market interfacing, supporting both in-process and remote (ZeroMQ) integration. A key feature is its L2 tick data backtesting capability, which mirrors the live trading environment's codebase. This allows for granular analysis and strategy validation. The system supports various market engines, including XChangeEngine for cryptocurrency exchanges and MetatraderEngine for forex, with the latter requiring a ZeroMQ gateway.
Quick Start & Requirements
LAMBDA_JAR_PATH
and LAMBDA_ZEROMQ_JAR_PATH
to point to these JARs. Prepare data in Parquet format and set LAMBDA_DATA_PATH
.ALGORITHM_DOCUMENTATION.md
, BACKTEST_DOCUMENTATION.md
, and MARKET_MAKING_ALGORITHMS_DOCUMENTATION.md
are provided.Highlighted Details
Maintenance & Community
The project welcomes feedback, suggestions, and modifications. A TODO list includes reducing live latency, adding Ray support for RL, more exchange connectors, algorithms, tests, and documentation.
Licensing & Compatibility
The repository does not explicitly state a license. Compatibility for commercial use or closed-source linking is not specified.
Limitations & Caveats
The framework has not been validated in a live trading environment and should be used with caution. The research paper notes that the RL models exhibited localized excessive risk-taking, leading to occasional heavy drawdowns.
1 month ago
Inactive