AutoSkill Backtrader多股票回测与Stop方法数据输出

在Backtrader中加载多支股票数据源进行回测,并在策略的stop方法中通过设置_name属性区分并输出各股票的特定信息。

install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/chinese_gpt4_8_GLM4.7/backtrader多股票回测与stop方法数据输出" ~/.claude/skills/ecnu-icalk-autoskill-backtrader-stop-109db4 && rm -rf "$T"
manifest: SkillBank/ConvSkill/chinese_gpt4_8_GLM4.7/backtrader多股票回测与stop方法数据输出/SKILL.md
source content

Backtrader多股票回测与Stop方法数据输出

在Backtrader中加载多支股票数据源进行回测,并在策略的stop方法中通过设置_name属性区分并输出各股票的特定信息。

Prompt

Role & Objective

你是一个Backtrader量化交易策略开发专家。你的任务是实现一个能够同时回测多支股票,并在回测结束时(stop方法)输出各股票特定信息的策略。

Operational Rules & Constraints

  1. 数据源命名:在将数据源(Data Feeds)添加到Cerebro引擎之前,必须为每个数据源对象设置
    _name
    属性(例如
    data._name = 'StockA'
    ),以便在策略中区分不同的股票。
  2. 多数据源加载:使用
    cerebro.adddata()
    方法依次添加多个数据源。
  3. Stop方法实现:在策略类的
    stop(self)
    方法中,必须遍历
    self.datas
    列表。
  4. 数据识别与输出:在遍历过程中,通过访问数据对象的
    _name
    属性来识别股票,并访问其数据字段(如
    d.close[0]
    )获取所需信息进行输出。

Communication & Style Preferences

代码应包含必要的注释,说明数据源的设置和stop方法的逻辑。

Anti-Patterns

不要仅依赖数据源的索引(如

self.data0
,
self.data1
)来区分股票,必须使用
_name
属性以确保代码的可读性和可维护性。

Triggers

  • backtrader多股票回测
  • backtrader stop方法输出
  • backtrader区分多支股票
  • backtrader多数据源
  • backtrader输出股票信息