diff --git a/deploy/profile-scripts/mr_scanner.py b/deploy/profile-scripts/mr_scanner.py index 5d5c89c1..e9851cbd 100644 --- a/deploy/profile-scripts/mr_scanner.py +++ b/deploy/profile-scripts/mr_scanner.py @@ -358,7 +358,7 @@ def main(): print(f"[MR] {datetime.now().strftime('%H:%M')} v_mr 实盘扫描开始", flush=True) - # ── regime 门控 + 大盘 ADX(负面因子用)── + # ── regime 门控 + 大盘 ADX(负面因子用 + 甜区门控 2026-08-03 12维发现)── regime = load_regime() mkt_adx = None if regime: @@ -370,6 +370,14 @@ def main(): return if rg not in ("trend_down", "choppy"): print(f" ⚠ --force 强制扫描(当前 {rg})", flush=True) + # 12维框架验证(2026-08-03): 弱市深超跌edge的前提是大盘ADX∈[25,30](甜区) + # ADX<20 avg+1.63% / 20-25 -1.24% / 25-30 +4.89% / 30-40 -0.04% / >=40 -0.10% + # 非甜区时 v_mr 信号质量显著下降,默认跳过(--force 可强制) + if mkt_adx is not None and not (25 <= mkt_adx < 30) and not force: + print(f" ⏭ 大盘ADX={mkt_adx:.1f} 非甜区[25,30)(12维验证:强跌/弱跌市超跌信号质量差),跳过", flush=True) + return + if mkt_adx is not None and not (25 <= mkt_adx < 30): + print(f" ⚠ --force 强制扫描(当前ADX={mkt_adx:.1f} 非甜区)", flush=True) else: print(" ⚠ market_regime 不可用,默认执行扫描(v_mr 全市场可用)", flush=True) diff --git a/docs/v_mr_strategy.md b/docs/v_mr_strategy.md index 8b8b313b..6371e61e 100644 --- a/docs/v_mr_strategy.md +++ b/docs/v_mr_strategy.md @@ -244,3 +244,33 @@ r = lab.run_mr_backtest('v_mr', '2016-07-01', '2026-07-24', 913000, save=True, u ### 12.5 方法论教训 - 六步方法论第6步"合格评估"必须包含**普适性硬标准**(去极端年后 avg>0 + 覆盖≥80月 + 正贡献≥7年),只看整体 avg/胜率会被极端年份欺骗 - 回测 10 年含 2018 这种极端年,任何"深跌反弹"类策略都会被拉高指标造成假象——必须做去极端年稳健性检查 + + +## 13. 12维框架深挖:大盘ADX择时是弱市edge的关键前提(2026-08-03) + +> 按老莫 12 维分析理论(大盘/行业/个股 × 消息/基本/技术/资金)系统验证,发现第 2 步"个股技术无区分"的根因是遗漏了【大盘技术面】维度。 + +### 13.1 核心发现:大盘 ADX 是弱市择股的分层器 + +全市场 10 年弱市日(大盘MA20下)按大盘 ADX 分桶,60日收益: +| 大盘ADX桶 | 样本 | avg60日 | wr | 赢家率(≥26.4%) | +|-----------|------|---------|-----|----------------| +| <20 | 118670 | +1.63% | 45.6% | 9.8% | +| 20-25 | 30113 | -1.24% | 39.6% | 6.3% | +| **25-30** | **54202** | **+4.89%** | **51.0%** | **14.7%** | +| 30-40 | 74666 | -0.04% | 41.4% | 8.2% | +| ≥40 | 85291 | -0.10% | 42.2% | 10.0% | + +**甜区 = 弱市 + 大盘ADX∈[25,30]**(趋势刚转弱/盘整初期):avg +4.89%(年化≈30%)、wr 51%、赢家率 14.7%,远超其他区间。 + +### 13.2 甜区内叠加个股超跌因子(12维:大盘技术 × 个股技术) +| 组合 | avg60日 | 去2018 | 正年 | +|------|---------|--------|------| +| 甜区(基线) | +1.67% | +2.19% | 5/11 | +| 甜区+bias60<-20 | +4.77% | +6.78% | 9/11 | +| **甜区+bias60<-20+RSI<30** | **+5.04%** | **+5.67%** | **10/11** | + +### 13.3 结论与落地建议 +- **弱市"深超跌反弹"的 edge 真实存在,但前提是大盘 ADX∈[25,30]**——这是 v_mr 缺失的大盘前置条件(v_mr 用 mkt_mode='any',任何弱市都扫,信号被 ADX≥30 的强跌市污染) +- **落地建议**:现有 v_mr 扫描器加入大盘 ADX 门控(仅 ADX∈[25,30] 时扫描),提升单笔质量 +- **局限**(诚实):单笔 edge +5.67% 真实但薄,信号密集且无排序因子,组合层面年化仅 3%(2018外)——**不足以上线为独立实盘策略**,价值在"认知 + 门控改进"