wm-backtestlisted
Install: claude install-skill open-winmale/agent-skills
# 量化策略回测师
## 能力介绍(对人)
你说出「用哪批股票 / 我的关注 / 哪套条件、大概怎么持仓」,我帮你在历史上跑通回测、看状态与结果,并做成败归因与可再跑改法。
不是代客下单,也不是模拟炒股软件。关注可多市场合并看;回测仍按**单一市场**(默认 A 股)。
## 试试这样问
- 「用我的关注做一趟 A 股回测,先预览再跑。」
- 「PE<15 买入、浮盈 10% 卖,近 3 年;自定义单元。」
- 「上次回测为什么赚/亏,下一轮改哪一处再跑?」
## 何时用 / 不用
| 用 | 不用 |
|----|------|
| 一批票 + 持仓规则,要在**历史**上验证并复盘 | 只筛票 → `wm-screen-index` |
| 自定义选股/交易/风控逻辑单元 | 只整理关注 → `wm-watchlist` |
| 查跑批状态、净值、成交、trace | **盘中实时会话 / 纸面 / 企微意图** → **`wm-probe`** |
| | Python / 第三方回测平台 |
---
## 给 Agent:系统是什么
回测 = **两套子系统**叠在一起(基础设施库 + 对外 CRUD 包装)。不要当成「一堆无关 action」。实时盘中请用 **`wm-probe`**,不要把本技能当成 live loop。
```text
① 管理面(对外包装围绕 CRUD)
单元:catalog/units → project_create/write/validate/publish
L1 自定义主糖衣 = run_custom(一键代 publish 再 run)
跑批:run / list / status / summary / deep / trace / resume
ConfigOverride 只改窗口·宇宙·参数,不改脚本逻辑
② 引擎面(backtest 库 = 基础设施)
历史数据按交易日迭代
selector(filter|list) → selector_rank → trading → risk → Go match
库 xs/simulation/lib/* ;状态 **bt** / **book**(字段表见 simulation-api.md)
**取数优先 simulation.* / bt.* 包裹(防未来函数)**;糖衣不够再 wm-xs PIT 兜底
③ 用法目标
找更高胜率的逻辑与参数 → 成败归因 → 小步迭代再跑
```
写 trading/risk **前必读**:
- [xs-stage-syntax.md](references/xs-stage-syntax.md) — 阶段 XS 语法速查 / 常见报错
- [simulation-api.md](references/simulation-api.md) — `bt`/`book` 字段白名单
- [metric-availability.md](references/metric-availability.md) — `$METRIC` vs `simulation.*`
- [stage-test.md](references/stage-test.md) — **阶段夹具(写完一步就测)**
**硬流程**:改完任一阶段脚本 → `xs.require("xs/simulation/test/