快速策略回测
用历史 OHLCV 数据验证策略表现,支持现金、佣金与订单撮合参数,回测速度快。
它把「策略想法 → Python 策略类 → 历史数据回测 → 参数优化与结果评估」整理成一条可复现的量化研究链路,让单标的策略验证更轻量。
用历史 OHLCV 数据验证策略表现,支持现金、佣金与订单撮合参数,回测速度快。
内置优化器(基于 SAMBO),对策略参数做网格搜索,并用热力图直观呈现结果。
基于 bokeh 输出交互式图表,交易结果以 Series/DataFrame 返回便于二次分析。
首页只保留理解所需的三步,详细流程见架构页与首次运行页。
pip install backtesting 安装后,准备一个 Open/High/Low/Close/Volume 列的 DataFrame。
继承 Strategy 类,在 init 计算指标、在 next 写买卖逻辑,用 Backtest.run 执行回测。
通过 plot 看交互图、通过 stats 看收益/回撤等指标,再用 optimize 做参数优化;回测结果不构成收益保证。
同一个研究目标,两种准备成本。完整对比见对比子页。
灵活度高,但环境、数据与指标都需要自己维护。
# 1. 安装
pip install backtesting
# 2. 写策略(SmaCross 双均线)
class SmaCross(Strategy):
def init(self):
self.ma1 = self.I(SMA, self.data.Close, 10)
self.ma2 = self.I(SMA, self.data.Close, 20)
def next(self):
if crossover(self.ma1, self.ma2):
self.buy()
elif crossover(self.ma2, self.ma1):
self.sell()
# 3. 回测
bt = Backtest(GOOG, SmaCross, cash=10_000, commission=.002)
stats = bt.run()
# 4. 查看结果
bt.plot()Skill 的数据源、Token、网络与市场覆盖各不相同;不代表 Backtesting.py 已集成 EasyClaw。
Backtesting.py 是基于 Python 的开源交易策略回测库,通过 Backtest 与 Strategy 两个核心类组织回测、参数优化与可视化。
需要。它是库而非软件,需用 Python 继承 Strategy 类编写策略、准备数据并运行脚本,面向有 Python 与量化经验的用户。
无已证实集成。Backtesting.py 与 EasyClaw 没有官方集成证据;EasyClaw 内置的是量化研究类 Skill(量化分析、财经数据、选股、技术分析等),两者是独立路线。
支持任意 OHLC(V) 蜡烛数据(Open/High/Low/Close/Volume 列),内置示例数据 GOOG,也可接入 pandas/tushare 等数据源,详见数据页。
回测结果仅代表历史表现,涉及数据、参数与市场环境假设,不构成收益保证或投资建议。