polakowo/vectorbt

The backtesting engine that gives you an unfair advantage. Run thousands of trading ideas before others finish one.

解决的问题

VectorBT 解决了传统回测效率低下的问题,传统方法通常一次只能对一个策略进行数据列循环处理。这种缓慢的过程使得大规模参数优化和网格搜索变得耗时且对研究人员来说不切实际。

运作原理

VectorBT 不使用迭代循环,而是采用向量化方法。它将数千种策略配置打包到 NumPy 数组中并同时处理。为了最大化性能,它利用 Numba 进行即时编译 (JIT),并提供可选的 Rust 引擎来消除 JIT 开销,将数小时的网格搜索缩短至几秒钟。

目标对象

它专为金融研究人员、量化交易员和 AI 代理设计,这些用户需要在多种资产和时间框架下进行高速实验和大规模回测。

特色亮点

  • 向量化回测: 使用 pandas、NumPy 和 Numba 进行高性能策略研究。
  • 大规模参数扫描: 支持灵活的广播机制,可一次测试数千种窗口组合或随机策略。
  • 全面分析: 提供详细的投资组合绩效指标,包括回撤、胜率以及 Sharpe/Sortino 比率。
  • 交互式可视化: 与 Plotly 和 Jupyter widgets 集成,用于热图、散点图和动态金融图表。
  • 机器学习就绪: 包含稳健性测试、向前走优化 (walk-forward optimization) 以及机器学习工作流程的标签生成。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目