开源框架

Backtrader 还是 vectorbt?

如果你在意订单层面的真实性(止损、部分成交、复杂的持仓规则),或者要移植现成的规则化系统,选 Backtrader;如果需要快速测试成千上万组参数,选 vectorbt。很多人先用 vectorbt 做原型,再在事件驱动引擎里验证最终规则。

逐项对比

Backtradervectorbt
类别回测库回测库
简介事件驱动的 Python 回测和实盘库,社区很大。基于 pandas 和 NumPy 的向量化回测,专门用来快速测试成千上万组参数。
适合谁入门学回测、订单逻辑复杂的策略,以及移植 MT4/MT5 EA 这类规则化系统。在日线或日内数据上做研究、扫参数,速度比订单细节更重要的场景。
语言PythonPython
许可证GPL-3.0Apache-2.0 + Commons Clause
GitHub Star23.7k9.8k
最近提交2024-08-192026-11-08
最新版本—v1.2.0 (2026-10-19)
状态停滞活跃

GitHub 数据截至 2026-11-10。状态:活跃 = 最近 90 天有提交,放缓 = 最近一年有提交,停滞 = 更早,已归档 = 只读。

优点 · 局限

Backtrader

优点

  • 逼真的事件驱动模拟:挂单、止损、部分成交、手续费都能处理
  • 示例和社区问答非常多
  • 一个策略里可以同时用多个品种、多个周期

局限

  • 和向量化回测库比,大规模参数扫描很慢
  • 已不再积极维护;新版 Matplotlib 下画图可能出问题
  • 实盘接口比较老旧

vectorbt

优点

  • 非常快:可以一次跑完整个参数网格
  • 统计指标丰富,图表可交互
  • 直接用 pandas 数据

局限

  • 依赖路径的逻辑(移动止损、跟持仓有关的规则)写起来比较别扭
  • 学习曲线陡,API 很大
  • 许可证是 Apache 2.0 加 Commons Clause,限制把它当服务出售

怎么选

如果你在意订单层面的真实性(止损、部分成交、复杂的持仓规则),或者要移植现成的规则化系统,选 Backtrader;如果需要快速测试成千上万组参数,选 vectorbt。很多人先用 vectorbt 做原型,再在事件驱动引擎里验证最终规则。

全部框架 · 介绍是我们自己的总结,可能落后于各项目的官方文档。用于产品前请先确认项目的许可证。以上内容不构成投资建议。

订阅每周 Arena 周报

每周一封邮件:排名变化、新信号和新研究。不发垃圾邮件,随时可以退订。