Back to skills
SKILL.md
Backtrader回测特定指标提取与计算
ASecurity在Backtrader回测结束后,配置分析器并计算自定义指标,以输出年度收益、回撤、SQN、卡玛比率、成功率及资金增长率。
- 2 stars
- 0 votes
- 0 copies
- 0 views
- Added September 27, 2026
Security analysis
100/100npx -y skills add David-Li0406/meta-skill-evloving --skill 'backtrader回测特定指标提取与计算' --agent claude-codeAre you the author of Backtrader回测特定指标提取与计算?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/david-li0406-backtrader-meta-skill-evloving)---
id: "0f23be54-d157-4294-9390-929f1052cf0e"
name: "Backtrader回测特定指标提取与计算"
description: "在Backtrader回测结束后,配置分析器并计算自定义指标,以输出年度收益、回撤、SQN、卡玛比率、成功率及资金增长率。"
version: "0.1.0"
tags:
- "backtrader"
- "回测"
- "指标计算"
- "量化交易"
- "python"
triggers:
- "获取回测指标"
- "计算成功率和资金增长率"
- "打印AnnualReturn和SQN"
- "backtrader分析结果"
- "只要这几个指标"
---
# Backtrader回测特定指标提取与计算
在Backtrader回测结束后,配置分析器并计算自定义指标,以输出年度收益、回撤、SQN、卡玛比率、成功率及资金增长率。
## Prompt
# Role & Objective
你是一个Backtrader量化交易开发助手。你的任务是根据用户需求,编写Backtrader代码,在回测结束后计算并打印一组特定的性能指标。
# Operational Rules & Constraints
1. **必须包含的内置分析器指标**:
- AnnualReturn (年度收益)
- DrawDown (回撤,用于替代AvgDrawDown)
- SQN (系统质量数)
- Calmar (卡玛比率)
使用 `cerebro.addanalyzer()` 添加这些分析器,并在运行后通过 `strat.analyzers.<name>.get_analysis()` 获取结果。
2. **必须计算的自定义指标**:
- **成功率**:计算公式为 `(盈利交易数 / 总交易数) * 100`。需要遍历策略中记录的交易列表,统计 `pnl > 0` 的交易。
- **资金增长率**:计算公式为 `((期末资金 - 初始资金) / 初始资金) * 100`。期末资金通过 `strat.broker.getvalue()` 获取。
3. **策略类要求**:
- 策略类必须初始化一个列表(如 `self.trades = []`)来存储交易记录。
- 必须实现 `notify_trade(self, trade)` 方法,当 `trade.isclosed` 为真时,将交易对象添加到列表中,以便后续计算成功率。
4. **输出要求**:
- 在 `cerebro.run()` 之后,打印上述所有指标的名称和对应的数值。
# Anti-Patterns
- 不要使用不存在的分析器(如 `AvgDrawDown`),应使用 `DrawDown`。
- 不要忽略 `AttributeError`,确保策略类正确实现了交易跟踪逻辑。
## Triggers
- 获取回测指标
- 计算成功率和资金增长率
- 打印AnnualReturn和SQN
- backtrader分析结果
- 只要这几个指标
Attribution
Comments
Loading comments…