backtesting-engineslisted
Install: claude install-skill howard-lynn-ye/fin-skills
# Backtesting engines
Two things decide this choice: **what the engine models honestly**, and **what licence you can
live with**. Speed is almost never the binding constraint — a fast wrong answer is worse than a
slow right one.
Before trusting any result from any engine, run the audit in `research-integrity-guards`.
## 1. Pick an engine
| Task | Engine | Why |
|---|---|---|
| Sweep 10k parameter combos, one or few assets | **vectorbt** | Vectorized/Numba, seconds not hours. 🚨 **Same-bar fill by default — see §2.1** |
| Single-asset TA strategy, honest by default | **backtesting.py** | Next-open market fills, pessimistic SL-before-TP. **AGPL-3.0** |
| Serious event-driven, multi-venue, backtest→live | **nautilus_trader** | Rust core, L2/L3 book, latency + fill models, same code both ways. **LGPL-3.0. Needs Python ≥3.12** |
| US equity cross-sectional / factor research | **zipline-reloaded** | Real volume-limited partial fills, splits/divs/**delistings**, Pipeline. Maintenance-only |
| ML strategies with walk-forward + bootstrap | **PyBroker** | Walk-forward and bootstrapped metrics built in |
| Asset-allocation / weight strategies | **bt** | Tree-of-algos rebalancing. Not an order-level simulator. MIT |
| Institutional all-asset, willing to pay | **QuantConnect LEAN** | Deepest reality modelling in OSS; map/factor files handle ticker changes + delistings |
| Crypto retail bot, live-first | **freqtrade** | 🥇 **Best bias-detection tooling in the field** (§4). GPL-3.0 |
*