Backtesting Frameworks

Backtesting Frameworks, only support backtesting

RepoSiteStarsIssuesContributorsVersionLast PublishForksWatchers
vectorbt (opens in a new tab) (opens in a new tab)438510613620124
bt (opens in a new tab) (opens in a new tab)22727628v1.1.02024-08-0642991
pybroker (opens in a new tab) (opens in a new tab)204233v1.2.42024-09-2225534
backtesting.py (opens in a new tab) (opens in a new tab)5501179181066124

vectorbt

PyPIPyPI downloadsPyPI - Support Python Versions
Find your trading edge, using the fastest engine for backtesting, algorithmic trading, and research.
About

Vectorbt is a Python package for quantitative analysis that takes a novel approach to backtesting: it operates entirely on pandas and NumPy objects, and is accelerated by Numba to analyze any data at speed and scale. This allows for testing of many thousands of strategies in seconds.

Core Features
  • Vectorized Backtesting: Executes backtests in seconds by operating directly on Pandas and NumPy objects, optimized further with Numba
  • Technical indicators: Most popular technical indicators with full Numba support. Out-of-the-box support for 99% indicators in Technical Analysis Library, Pandas TA, and TA-Lib thanks to built-in parsers
  • Performance Optimization: Facilitates hyperparameter optimization and bulk strategy testing with minimal computational overhead
  • Interactive Visualization: Supports interactive charting with Jupyter Notebooks for in-depth analysis and visualization of trading strategies
  • Notifications: Telegram bot based on Python Telegram Bot

bt

PyPIPyPI downloadsPyPI - Support Python Versions
bt - flexible backtesting for Python
About

bt is a flexible backtesting framework for Python used to test quantitative trading strategies.

Core Features
  • Tree Structure: The tree structure facilitates the construction and composition of complex algorithmic trading strategies that are modular and reusable
  • Algorithm Stacks: Algos and AlgoStacks are another core feature that facilitate the creation of modular and reusable strategy logic
  • Transaction Cost Modeling: Through the use of a commission function and instrument-specific, time-varying bid/offer spreads passed to the Backtest
  • Fixed Income: Strategies can include coupon-paying instruments such as bonds, unfunded instruments such as swaps, holding costs, and the option for notional weighting
  • Charting and Reporting: bt also provides many useful charting functions that help visualize backtest results
  • Detailed Statistics: bt calculates a bunch of stats relating to a backtest and offers a quick way to compare these various statistics across many different backtests via Results' display methods.

pybroker

PyPIPyPI downloadsPyPI - Support Python Versions
Algorithmic Trading in Python with Machine Learning
About

PyBroker is a Python framework is designed for developing algorithmic trading strategies, with a focus on strategies that use machine learning.

Core Features
  • A super-fast backtesting engine built in NumPy and accelerated with Numba.
  • The option to train and backtest models using Walkforward Analysis, which simulates how the strategy would perform during actual trading.
  • More reliable trading metrics that use randomized bootstrapping to provide more accurate results.
  • Caching of downloaded data, indicators, and models to speed up your development process.
  • Parallelized computations that enable faster performance.

backtesting.py

PyPIPyPI downloadsPyPI - Support Python Versions
:mag_right: :chart_with_upwards_trend: :snake: :moneybag: Backtest trading strategies in Python.
About

Backtesting.py is a Python framework for inferring viability of trading strategies on historical (past) data.

Core Features
  • Built on top of cutting-edge ecosystem libraries (i.e. Pandas, NumPy, Bokeh) for maximum usability
  • Vectorized or event-based backtesting: Signal-driven or streaming, model your strategy enjoying the flexibility of both approaches
  • Interactive visualization: Simulated trading results in telling interactive charts you can zoom into
  • Composable strategies: Contains a library of predefined utilities and general-purpose strategies that are made to stack
  • Built-in optimizer: Test hundreds of strategy variants in mere seconds, resulting in heatmaps you can interpret at a glance