# 策略复盘闭环系统设计

> 版本: v1 | 最后更新: 2026-06-24
> 核心理念：每条策略建议都必须有回头检查，用实际结果驱动策略逻辑进化。

## 一、现状

| 环节 | 状态 |
|------|------|
| 策略生成 | ✅ `strategy_lifecycle.py` 按规则生成买入区/止损/止盈 |
| 策略评估 | ✅ 日评估六维分析每条策略的当前状况 |
| 策略重评 | ✅ 过期/偏离时自动触发重评 |
| **成功率追踪** | ❌ 有 `accuracy_stats` 空表，从未写入 |
| **复盘归因** | ❌ 没有"回头看"机制 |
| **策略逻辑修正** | ❌ 评估结果从不反馈到生成规则 |
| **验证测试** | ❌ 改完规则没有验证环节 |

## 二、闭环设计

```
生成策略 → 执行/等待 → 回头看(复盘) → 归因分析 → 修正策略逻辑 → 验证 → 部署
                                          ↑                      |
                                          └──── 迭代循环 ───────┘
```

### 环节1：回头看（复盘）

每条策略/建议在生成后 T+5、T+20、T+60 三个时间点回头检查：

| 检查点 | 时机 | 判断标准 |
|--------|------|---------|
| T+5 | 5个交易日后 | 止损触发？止盈触发？价格走向是否正确？ |
| T+20 | 一个月后 | 中期趋势验证。买入区是否有效？ |
| T+60 | 三个月后 | 长期逻辑验证。大方向判断是否正确？ |

判断分类：
- ✅ **正确**：价格朝预期方向走了 > 止损/止盈间距的 50%
- ⚠️ **部分正确**：方向对了但幅度不够，或方向对但时机差
- ❌ **错误**：方向错了，或止损被打后价格反转了
- ⏳ **待定**：还在运行中，未到判断时点

### 环节2：归因分析

对 ❌ 错误 和 ⚠️ 部分正确 的做根因分类：

| 失败模式 | 判断条件 | 修复方向 |
|----------|---------|---------|
| 止损过紧 | 价格跌破止损 < 3天后回到买入区 | 放宽止损到强支撑 × 0.95 |
| 入场过早 | 买入后继续跌 > 入场点 10% 才反弹 | 买入区下移，等缩量确认 |
| 止盈过近 | 价格突破止盈 < 5天后继续涨 > 15% | 止盈放到更高阻力位 |
| 方向看错 | 价格持续朝反方向走 | 检查多周期趋势判断逻辑 |
| 情景错配 | 策略假设的情景与实际不符 | 加入情景过滤条件 |
| 信号误判 | timing_signal 信号错误 | 修正信号合成逻辑 |
| 行业拖累 | 个股选对了但行业暴跌 | 加入行业动量过滤 |

### 环节3：策略逻辑修正

归因结果反馈到策略生成规则的几个层面：

1. **prompt_manager 规则更新** — 止损/止盈/买入区的生成规则
2. **timing_signal 合成权重调整** — 各因子的权重
3. **股票分类规则调整** — 什么情况归为弱势/深套/短炒
4. **情景判定阈值调整** — detect_scenario 的参数

### 环节4：回测验证

修正后的规则用历史数据跑模拟，对比新旧规则的成功率：

```
模拟方式：取过去60天的数据
1. 用旧规则生成每条策略 → 计算成功率
2. 用新规则生成同样股票的策略 → 计算成功率
3. 对比：新规则是否 > 旧规则 +5%？
4. 如果是 → 部署新规则
5. 如果不是 → 继续调整
```

## 三、参考来源

知识库中有多篇量化分析文章可以参考：
- 止损/止盈的统计学最优位置
- 多因子信号合成的权重分配方法
- 不同市场环境下的策略参数调优
- 回测验证的方法论和陷阱（过拟合/幸存者偏差）

## 四、实施路线

### Phase 1（本session）
- 策略复盘脚本：遍历 active 策略，检查实际结果，写入 accuracy_stats
- 归因分析：对失败策略分类失败模式
- 初步报告：当前策略整体成功率 + 常见失败模式

### Phase 2（后续）
- 策略逻辑修正：根据归因调整 prompt_manager 规则
- 回测验证：用历史数据验证新规则
- 知识库文章萃取：从量化分析文章中提取可用因子
- 持续迭代：每周跑一次复盘，持续优化
