docs: CHANGELOG追加2026-08-12超跌策略回测框架扩展记录

This commit is contained in:
hmo
2026-08-12 06:16:23 +08:00
parent 0b50977a31
commit 3caefc5652
+36
View File
@@ -1,3 +1,39 @@
## 2026-08-12 — 超跌策略回测框架全面扩展(v_weak/v_oversold 回测支持)
### 背景
v_weak(实盘)+ p_oversold(新策略)需研究 Tab 展示真实回测数据。原 run_backtest 用 compute_single_score 逐窗口评分,单股 161 秒(全市场 4000 股不可行);超跌策略研发时用的是 run_mr_backtestO(N) 门槛过滤)+ step27-49 pandas 管道(年化 18.57%)。
### 修改
1. **strategy_lab.py 性能修复**
- `prepare_sector_context` ADX 计算 O(N²)→O(N)calc_trend_strength 移到板块外层循环,296板块×490天卡死→0.95秒)
- `_get_external_factors` 改预加载模式(prepare_external_context 一次载入基本面分位/行业动量/新闻,消除循环内逐日查库——403万行 news 全表扫是卡死根因)
2. **calc_factors 加超跌因子**bias60/dist_lo20/r5f/vol_shrink/close_upma60 已在 bars 里)
3. **pass_filters 加因子检查**bias60/dist_lo20/r5f/vol_shrink/mkt_rsi/mkt_dd60/mcap_q/pe_q/news3/sec_ret20
4. **_load_index_ctx 加大盘 RSI/DD60**mkt_rsi/mkt_dd60p_oversold 门控)
5. **run_mr_backtest 扩展**:支持外部因子过滤 + tp_pct=None 兜底 + 外部因子记录
6. **注册**v_weakv_mr 研发参数:bias_max=-10单边/rsi_max=42/ret_max=-15/mom20_max=5/amount_max=15/rsi_delta_min=2/mkt_mode=any)、v_oversold12维因子 mr config
7. **scripts/research/step49_save_to_research.py**:复现 v5 定稿(年化 18.57%)并保存 strategy_research(支持 10y/5y/2y
8. **evolution/evolution_api.py**baseline 改 v_weak/v_oversold;组合 Tab members 查询兼容 v_oversold(研究名)
### 回测结果(2026-08-12 复现)
| 策略 | 10y | 5y | 2y |
|------|-----|-----|-----|
| v_weak | 21697笔/53.6%/cagr11.7%/dd25.4% | 5297笔/49.6%/cagr7.7%/dd24.7% | 1872笔/42.0%/cagr4.3%/dd18.0% |
| v_oversold | 200笔/53.5%/cagr18.6%/dd32.4% ✅复现 | 122笔/59.8%/cagr27.4%/dd32.4% | 34笔/76.5%/cagr37.9%/dd17.7% |
> v_oversold 10y 完全复现研发 v5 定稿(年化18.57%/回撤-32.4%/873信号/分年净值一致)。
### 效果
- 研究 Tabv_weak/v_oversold 标记 current,展示真实回测数据 ✅
- 组合 Tabp_oversold 显示 10y cagr 18.6%(不再"待回测")✅
- 进化模块 baselinev_weak/v_oversold ✅
- 性能:10y 全市场回测 280-420 秒(可接受)
> 执行:Sisyphus (小小莫)
> 待办:部署步骤 2-6(dry-run/管道验证/全链路/健康监控/观察期)待老莫批准
---
## 2026-07-19 — XMPP bot 递归重连修复
### 根因