A Python framework for developing and backtesting algorithmic trading strategies with machine learning.
PyBroker is a Python framework for developing algorithmic trading strategies with a focus on machine learning integration. It provides tools for creating trading rules, building models, backtesting strategies, and evaluating performance using reliable metrics. The framework solves the problem of building and testing data-driven trading systems efficiently and accurately.
Quantitative traders, algorithmic trading developers, and data scientists who want to create, test, and deploy trading strategies using Python and machine learning techniques.
Developers choose PyBroker for its high-performance backtesting engine accelerated with Numba, integrated support for machine learning model training and walkforward analysis, and reliable bootstrapped metrics that provide more accurate strategy evaluation compared to basic backtesting tools.
Algorithmic Trading in Python with Machine Learning
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Built with NumPy and accelerated by Numba, enabling fast strategy evaluation as emphasized in the key features for efficient development.
Supports model training and walkforward analysis, allowing realistic simulation of trading conditions with ML models, as shown in the model-based strategy example.
Uses bootstrapped metrics to provide more accurate trading statistics, reducing overfitting and improving strategy evaluation reliability.
Caching system for data, indicators, and models speeds up backtesting, and parallelized computations enhance performance for multi-instrument strategies.
The Apache 2.0 with Commons Clause license may impose limitations on commercial use or redistribution, as indicated by the license badge, potentially affecting some projects.
Requires Python 3.9 or higher, which could be a barrier for environments with older Python versions or legacy systems.
Parallelized computations and walkforward analysis can be resource-intensive, requiring significant memory and CPU for large datasets or complex models.