- 新增 strategy_research_methodology.md(由果及因/12维/铁律/支撑压力规范) - 新增 predictive_oversold_strategy.md(v5定稿,年化18.57%) - 新增 deployment-plan-predictive-oversold.md(整合部署计划) - 归档 docs/research/(63份研究过程文档)+ scripts/research/(19个研究脚本) - 更新 docs/README.md 文档中心(策略研究章节)
50 KiB
MoFin 低回撤组合策略研究(2026-08-06 夜间)
一句话结论
老莫的怀疑成立:v_next4 不是全市场策略,只能算“267 跟踪池内的趋势袖珍策略”;v_mr/v_mr_sel 已被自家六步法证伪;当前最合理的低回撤组合不是再造一个新策略,而是执行“S1(v_weak) + S2(恐慌买) 为核心,v_next4 仅作池内趋势卫星仓,组合层加波动/回撤闸门”的架构。
1. 证据链(最关键)
1.1 v_next4:未经过 3/6/12 全市场验证,且全市场推广失败
docs/v_mr_strategy.md§27.1 明确发现:v_next/v_next3/v_next4 的全部历史 2y/5y/10y 回测都跑在扩表前小库上,A 股仅约 267 只(MoFin 实盘跟踪池)。- §27.2 全市场复跑:池内 wr 61.1%/3槽组合 +23.1%,全市场 wr 35.9%/3槽组合 -34.3%。结论原文:v_next4 是“池内有效策略”,不是“全市场策略”。
- strategy_research 佐证:id=277
v_next4total_stocks_screened=267;而 v_mr/v_weak/S2 均为 4000+ 全市场口径。 - 结论:v_next4 不应再被表述为“已全市场验证”。对实盘跟踪池可用,但不能外推到全市场。
1.2 v_mr/v_mr_sel:不是“高回撤但有效”,而是被证伪
docs/v_mr_strategy.md§12:v_mr 基线 avg +3.34% 靠 2018 超级熊市 10163 笔(47%)撑起;去 2018 后 avg +2.14%/wr 49.8%,接近掷硬币。- v_mr_sel 144 笔中 2018-10 三天占 78 笔(54%),覆盖仅 14/120 月;也是一次行情产物。
- §12.4 结论原文:弱市最好的策略是仓位管理,不是选股。
- §34.2 实盘扫描器已从 v_mr 精选版切换到 v_weak;v_mr 仅保留为历史/管道槽位名。
1.3 当前已验证的最低回撤核心:S1 + S2 策略家族
- §39.3 S2=恐慌买超跌:大盘 RSI<25 + 个股 bias60<-6.8 + r5f<-10 + dist_lo20>=10;3261 信号 / avg +16.6% / wr 85.6%。
- §39.4 S1+S2 组合:S1(v_weak) 234 笔 + S2 3261 笔,8槽组合 +344.9% / 年化 18.7% / 回撤 15.7%,且信号零重叠。
- §40.2 当前实盘全景:S1/S2/v_next4 三引擎按门控休眠;强跌市全空仓是设计行为。
- 最新市场状态(2026-08-05):
market_regime= above_ma20=0, ADX=28.2, regime=trend_down。ADX 已回落到 S1 甜区 [25,30] 附近,重点观察 S1 是否开始出信号;S2 需大盘 RSI<25,v_next4 需收复 MA20。
2. 夜间复测:低回撤 overlay(存储交易重放,非新全市场扫描)
口径说明:从 strategy_research 已存 trades + stock_daily 重建日度净值,费率近似双边 0.2%。这是组合层 overlay 复测,不是重新发明策略,也不是 v_next4 的全市场重构。v_next4 仍只能按 267 池口径解读。
| 组合 | 全周期 total/CAGR/DD | 近12月 total/DD | 近6月 total/DD | 近3月 total/DD | 判断 |
|---|---|---|---|---|---|
| SINGLE v_next4(池内) | 41.1% / 3.8% / 60.4% | 44.4% / 47.1% | 44.4% / 47.1% | 19.0% / 47.1% | 近段强,但回撤不可接受;只能卫星仓 |
| SINGLE v_mr | 141.4% / 10.0% / 40.9% | -25.5% / 34.6% | -22.1% / 24.0% | -9.5% / 14.8% | 已证伪,不用 |
| SINGLE v_mr_sel | 66.2% / 5.7% / 23.6% | -6.4% / 14.5% | -6.6% / 14.5% | -8.8% / 8.8% | 已证伪,不用 |
| SINGLE v_weak(S1) | 110.7% / 8.4% / 15.8% | 1.1% / 0.7% | -0.6% / 0.7% | -0.4% / 0.7% | 低回撤核心,但非甜区休眠 |
| SINGLE s2_panic(S2) | 71.8% / 6.0% / 8.7% | 0.0% / 0.0% | 0.0% / 0.0% | 0.0% / 0.0% | 极端恐慌期权,未触发就空仓 |
| A = S1+S2 等权 | 92.3% / 7.3% / 10.6% | 0.5% / 0.3% | -0.3% / 0.3% | -0.2% / 0.3% | 全周期最稳;近段休眠是特性不是 bug |
| B = A + v_next4 等权 | 90.5% / 7.2% / 25.7% | 17.1% / 18.6% | 16.5% / 18.6% | 9.2% / 18.6% | 近段收益来自 v_next4,但 DD 明显抬升 |
| D = B + 15% 波动目标 | 78.8% / 6.5% / 24.0% | 14.9% / 12.2% | 14.3% / 12.2% | 7.4% / 12.2% | 有效压近段回撤,但全周期仍被 v_next4 污染 |
| E = B + 16% 回撤预算 | 33.2% / 3.2% / 8.3% | 10.5% / 9.2% | 9.9% / 9.2% | 3.0% / 9.2% | 回撤压住,但长期收益被掐死;只适合危机油门 |
| F = D + E | 31.9% / 3.0% / 8.3% | 12.8% / 9.5% | 12.1% / 9.5% | 5.4% / 9.5% | 近6月风险调整最好(sharpe 1.71),但不能长期常开 |
补充:逆波动动态权重(C)在本口径下失败,全周期 DD 62.2%,不采用。原因不是理念错,而是 v_next4 与 S1/S2 的收益时间结构完全不同,简单逆波动会在错误时段把权重切给高回撤池内趋势袖珍仓。
3. 最终建议架构(可直接落地)
3.1 核心仓:S1 + S2,保持家族并发,不做互斥切换
- S1(v_weak):大盘 MA20 下 + ADX∈[25,30] + 深超跌/急跌/缩量收阳。定位:弱市甜区主引擎。
- S2(panic):大盘 RSI14<25 + 强势票恐慌错杀。定位:极端恐慌期权。
- 强跌市(ADX>30 且未恐慌):空仓等待。当前 2026-08-05 ADX=28.2 已回到甜区边缘,重点看 mr_scanner 是否开始出 S1 候选。
3.2 卫星仓:v_next4 只保留为“跟踪池趋势袖珍仓”
- 仅当大盘收复 MA20 才允许激活;只扫 MoFin 跟踪池(267 池),不得宣称全市场有效。
- 仓位上限建议:总组合 10-15%,且必须套组合层闸门;没有闸门不上线。
- 若未来要“全市场趋势策略”,必须按 §27.4 另立课题重构,不能拿池内 v_next4 直接外推。
3.3 组合层闸门(用 D/F,不用常开 E)
- 波动目标:组合层目标年化波动 15%,只降仓不加杠杆。近 3/6/12 月复测中,B 的 DD 从 18.6% 压到 12.2%。
- 回撤预算:建议预算 12-16%。DD≥50% 预算:停止新开仓/减半;DD≥80%:清空风险仓;DD≥100%:硬停并人工复核。复位条件必须事先写死:要么 regime 改变,要么 20 个交易日后且 DD 回到 25% 预算内。
- A 股执行约束必须进模型:T+1、涨跌停不可成交、印花税卖出 0.05%、滑点;否则 kill switch 在极限日只是纸面有效。
3.4 清理与展示
- Dashboard/文档里所有 “v_mr” 展示名应改为 “S1 v_weak(原 v_mr 管道)”,避免老莫/知微误以为 v_mr 仍有效。
- v_next4 卡片继续保留“适用池:系统跟踪池 267”警告;建议再加一行:未通过全市场 3/6/12 验证,禁止外推。
- v_mr/v_mr_sel 标记为“已证伪/仅历史参考”,不进入任何默认组合权重。
4. 明确不要做
- 不要把 v_next4 当作全市场趋势主力;它是池内策展策略。
- 不要复活 v_mr/v_mr_sel 作为常规弱市策略;它们被 2018 极端年撑起。
- 不要常开硬回撤 kill-switch;它会压 DD 到 8-10%,但把长期收益掐到 3% 左右。只作为危机油门/人工复核触发器。
- 不要在没加 A 股 T+1/涨跌停成交约束前,相信任何“止损/熔断”回测数字。
5. 下一步(按优先级)
- 今天先看 ADX=28.2 是否触发 S1 扫描;若出候选,检查 mr_scanner 是否严格按 v_weak 六条件执行。
- 给组合页加“卫星仓上限 + 波动目标 + 回撤预算”三行状态:当前卫星仓=v_next4 休眠,闸门=armed。
- 若要做全市场趋势策略,开独立课题:池子策展机制抽象化 + CPCV/purged embargo + DSR(n_trials) 验证;不从 v_next4 直接外推。
- 技术面沉淀:把本报告结论回写到
docs/v_mr_strategy.md§41(建议新增):最终组合 = S1+S2 核心 / v_next4 池内卫星 / 组合层 D/F 闸门 / v_mr 证伪归档。
6. 产物位置
- 本地报告:
daily/调研笔记/2026-08-06-MoFin-低回撤组合策略研究.md - 远程复测:
/tmp/mofin_combo_overlay_report.md、/tmp/mofin_combo_overlay_metrics.json - 复测脚本:
temp/combo_overlay_resim.py(本地)、/tmp/combo_overlay_resim.py(246) - 证据文档:
/home/hmo/MoFin/docs/v_mr_strategy.md§12/§27/§34/§35/§39/§40;strategy_researchid=277/285/286/287/288
7. 更正:3/6/12 不是月份,是「3次重评 / 6步推导 / 12维全评」
老莫纠正:我说的 3/6/12 是 3次重评(选股初评→入场重评→出场重评) + 6步推导(研究流程) + 12维全评(大盘/行业/个股 × 消息/基本/技术/资金)。此前我把 3/6/12 理解成 3/6/12 个月,方向错了。以下按正确口径重审。
7.1 硬标准重审结果(qualify_stats 实测,来自已存 trades)
| 候选 | 笔数 | 覆盖月数 | 正贡献年(≥5笔) | 全样本 avg/wr | 去2018 avg/wr | 结论 |
|---|---|---|---|---|---|---|
| v_weak(S1) 现行限量版 | 234 | 28/80 ✗ | 7/10 | +7.17% / 62.4% | +8.02% / 64.8% | 质量达标,覆盖不达标 |
| s2_panic(S2) | 3261 | 11/80 ✗ | 5/10 | +16.61% / 85.6% | +16.87% / 86.3% | 覆盖与正年双不达标,只配做恐慌 overlay |
| S1+S2 家族(限量) | 3495 | 38/80 ✗ | 7 | +15.97% / 84.0% | +16.50% / 85.4% | 家族也救不了覆盖 |
| S1+S2+v_next4(限量) | 3598 | 50/80 ✗ | 9 | +15.91% / 83.4% | +16.41% / 84.7% | 覆盖仍不足 |
| v_next4(池内267) | 103 | 池内 | — | 池内 wr63.1 | 全市场 wr35.9/3槽-34% | 非全市场,不得外推 |
| v_mr / v_mr_sel | 21690 / 144 | — | — | 去2018 掷硬币 / 2018-10占54% | — | 已证伪 |
7.2 关键发现:限量版「每月≤8/≤30」压住了回撤,也压死了覆盖
- docs §14 v_weak_final 不限量版:2,649 笔 / 100 月覆盖 / avg+10.66% / 去2018+5.60% / 正年 9/11,但 5槽组合 DD 32%。
- docs §16/§21 限量版(每月≤8→最终每月≤30):234 笔 / 仅 28 月覆盖 / avg+7.17% / DD 16.4%。
- 即:质量与覆盖是同一个信号池,靠“砍信号数”压回撤 = 把覆盖一起砍掉,永远过不了 80 月硬标准。
- 结论:真正可用的做法不是限量,而是“恢复全量信号池保证覆盖 + 用组合层(槽位/波动目标/回撤预算)控回撤”。
7.3 3+12 在实盘管线的实际落地点(审计结果)
- Stage1 选股:mr_scanner(v_weak 六条件 + 大盘MA20下 + ADX∈[25,30] 甜区)、s2_scanner(大盘RSI<25 + 三条件)——已自动化。
- Stage2 入场重评:v_weak = 信号日收阳 + 缩量(vol5/vol20<1.0),已在 mr_scanner 内实现;S2 无独立入场重评。
- Stage3 出场重评:缺口。mr_scanner/s2_scanner 只写候选,实际出场决策由下游 watchlist 的 12维重评(batch_reassess/per_stock_reassess)接管,但这是 LLM 过程,不是可回测的确定性规则。§37 已证明“卖点在趋势市是概率倾斜不是确定规则”——需要把 Stage3 做成“机械兜底 + 12维重评倾斜”的双层规则并回测。
7.4 真正可用的 go/no-go(最终建议)
| 候选 | go/no-go | 条件 |
|---|---|---|
| v_weak 不限量池(§14 2649笔) | GO(唯一接近可用的核心) | 恢复全量信号池保覆盖;组合层用 DD预算/波动目标/槽位控回撤,不再砍信号数;先把 2649 笔 + 组合层闸门跑一遍 10y + 去2018 |
| S2 恐慌买 | GO(仅作 overlay) | 只在大盘RSI<25 极端日叠加,不独立上量;定位=危机期权,不要求正年≥7 |
| v_next4 | CONDITIONAL | 仅池内趋势卫星仓 10-15% + 组合层闸门;禁止宣称全市场;要转全市场须另立重构课题 |
| v_mr / v_mr_sel | NO-GO | 归档为历史参考,Dashboard 改名 S1,杜绝误用 |
7.5 下一步(按 3+6+12 重新立项)
- 重跑 v_weak 不限量池 + 组合层控回撤:2649 笔(100月) 为 Stage1 池,组合层加 15% 波动目标 + 12-16% DD 预算 + 槽位优化,目标 = 覆盖≥80月 ∧ 去2018 avg>0 ∧ 正年≥7 ∧ DD≤18。这是唯一能同时过 6步硬标准的路径。
- 把 Stage3 做成确定性规则:机械兜底(tp30/sl12/hold40) + 12维重评倾斜(如大盘转坏/资金流出/放量滞涨才提前离场),并用 §37 的“该卖/该持有”标注法回测,给出可执行、可复现的出场表。
- 建立 go/no-go 检查清单:六步每一步有全市场验证 + 3次重评均有规则可回测 + 12维数据无缺口 + 硬标准(去极端年/覆盖/正年) + CPCV(purging+embargo)/DSR(n_trials) + T+1/涨跌停成本模型。任何新策略不达标不上线。
8. 不限量池全市场重跑(2026-08-06 09:43 实测)
8.1 跑了什么
- 复刻 mr_scanner 六条件(bias60∈[-35,-20) / RSI≤25 / 5日急跌≤-3% / 距20日低点<5% / 收阳 / 缩量),去掉每月上限,2016-07-01~2026-07-24 A股全市场(3980只),次日开盘价入场,tp30/sl12/40日。
- 大盘门控:上证 MA20 下方 + ADX∈[25,30](ADX 已与
backtest_framework.calc_trend_strength对齐)。 - 输出三个池:stage1(无距前低无确认)、stage1b(+距前低)、stage12(+距前低+收阳缩量确认)。
8.2 实测硬标准(全市场,非池内)
| 池 | 笔数 | 覆盖月数/80 | 正年/10 | 全样本 avg/wr | 去2018 avg | 组合8槽 10y total/DD |
|---|---|---|---|---|---|---|
| stage1(≈§14不限量口径) | 6609 | 57 ✗ | 7 | +0.38% / 39.8% | +0.66% | -13.3% / 18.2% |
| stage1b(+距前低) | 6013 | 57 ✗ | 7 | +0.17% / 39.4% | +0.33% | -7.8% / 17.3% |
| stage12(+收阳缩量确认) | 522 | 41 ✗ | 5 | -1.30% / 36.8% | +0.41% | -8.3% / 13.8% |
8.3 三个关键发现
- “放量保覆盖”假设被证伪:把每月上限去掉后,信号池从 234 涨到 6609,但覆盖只有 57 个月(仍<80),且单笔 avg 只剩 +0.38%、wr 39.8%——edge 在放宽时消失。文档 §14 的 +10.66%/wr68.4%/100月 在当前可复现口径下复现不出来(差异疑点:文档引擎用 Wilder RSI,本复现用 SMA RSI;建议用引擎严格核对,但不改变“覆盖不达标”的结论)。
- 组合层闸门救不了负/弱期望池:base 8槽 10y 全是负收益;加 DD预算/波动目标只压 DD 不产生 alpha(D/E/F 在近 12 月把 DD 压到 0.7%,但收益也归零)。这再次印证 §38.4:池子质量是前提,3+12 只是加成。
- 现有策略没有一个过全部硬标准(已确认):v_weak 28/80 覆盖 ✗、S2 11/80 ✗、v_next4 池内 ✗、v_mr 去2018 ✗。“真正可用”不是挑一个现成的,而是要重新推导出覆盖≥80月且单笔为正的池子。
8.4 最终 go/no-go(2026-08-06)
| 候选 | 判定 | 理由与使用方式 |
|---|---|---|
| v_weak 现行 234(DB 权威口径) | GO(小仓位精选仓) | 质量唯一达标(wr62.4/去2018+8.02),但覆盖 28 月;只能当“甜区精选信号仓”,配组合层闸门,不能当全覆盖主策略 |
| S1+S2+v_next4 家族 | GO(叠加层) | 家族覆盖 38→50 月仍<80,但危机期权+趋势袖珍仓在近段有效;全部走闸门 |
| 不限量池(stage1/1b/12) | NO-GO | 放量后 edge 消失,覆盖仍<80;说明不是“上限砍了覆盖”,是池子本身没有稳定 alpha |
| v_next4 | CONDITIONAL | 仅池内卫星仓,禁止外推全市场 |
| v_mr / v_mr_sel | NO-GO | 已证伪归档 |
8.5 下一步(唯一能过硬标准的路径)
- 以引擎为底做参数网格(不是当前近似复现):对 RSI 档(≤25/≤30/≤35) × bias 带(上界-20/-25/-30) × ADX 带([25,30]/[25,35]/[30,35]) × 确认(无/收阳/缩量) × 每月上限(无/20/30) 做全市场回测,目标 = 覆盖≥60月 ∧ wr≥55% ∧ 去2018 avg>0 ∧ 组合DD≤18。先看是否存在这样的参数格;不存在则承认“该形态无可用策略”。
- 核对 RSI 口径:用
backtest_framework.calc_rsi(Wilder)替换本复现的 SMA RSI 再跑一遍 stage1,确认文档数字是否可复现——这一步是前提,否则所有对比都悬空。 - 若网格无解,接受现状:弱市无全覆盖可实盘 alpha,仓位管理就是策略(§12.4/§38.4 结论强化)。
9. 12维状态空间全市场先验挖掘(2026-08-06 10:35 实测,重做第2步)
老莫质疑:因子选择(正面+负面)没走 12 维思维。本次在弱市日(大盘MA20下,1095天)全市场 374.9 万个股-日样本上,对 大盘/行业/个股 × 技术/资金/消息 建面板,逐个因子档 vs 全市场随机基线做先验对照。基本面无历史数据,跳过。
基线:弱市全市场随机 avg60=1.83% / wr45.6% / 赢家率(≥26.4%)=11.0% / 去2018=2.59%
9.1 大盘维度(技术):v_weak 的 ADX 甜区被否定
| 大盘状态 | n | avg60 | wr | 赢家率 | 去2018 |
|---|---|---|---|---|---|
| 大盘RSI <20 | 3997 | +20.09% | 88.4% | 27.3% | +20.09% |
| 大盘RSI 20-25 | 67845 | +14.34% | 62.6% | 26.9% | +19.68% |
| 大盘RSI 25-30 | 173913 | +3.37% | 48.9% | 13.1% | +5.85% |
| 大盘ADX [25,30](v_weak甜区) | 339526 | -0.79% | 40.6% | 8.5% | +0.53% |
| 大盘ADX ≥40(强跌) | 1136033 | +4.82% | 49.7% | 15.0% | +5.43% |
结论:弱市里真正的大盘正面状态是「大盘RSI<25 恐慌」(avg+14~20%),不是 ADX∈[25,30] 甜区(全市场先验下为 -0.79%,负贡献)。v_weak 的大盘门控选错了状态。
9.2 恐慌日(RSI<25) 内:个股维度方向也相反
| 恐慌日 × 个股 | n | avg60 | wr | 赢家率 | 去2018 |
|---|---|---|---|---|---|
| bias 超跌<-20% | 13349 | +11.56% | 61.5% | 22.8% | +19.74% |
| bias [-20,0) | 48483 | +13.58% | 64.2% | 25.4% | +17.77% |
| bias ≥0(不超跌) | 10010 | +24.02% | 66.8% | 40.2% | +28.11% |
| dist_lo20 贴低<5% | 52411 | +14.13% | 66.4% | 25.2% | +17.26% |
| dist_lo20 5-10% | 11360 | +16.66% | 59.3% | 32.2% | +31.15% |
| dist_lo20 强势≥10% | 8071 | +15.27% | 55.6% | 30.7% | +24.59% |
| 行业MA20上 | 3431 | +39.96% | 87.4% | 61.5% | +40.48% |
| 行业MA20下 | 65534 | +13.46% | 63.0% | 25.3% | +18.43% |
| 有新闻 | 29678 | +24.07% | 77.6% | 38.1% | +25.01% |
| 无新闻 | 42164 | +8.04% | 54.5% | 19.1% | +14.21% |
| 恐慌+超跌×无情绪 | 33872 | +4.51% | 51.4% | 14.7% | +10.63% |
9.3 关键组合判断(12维重推第2步结论)
- 真正的大盘正面格 = 恐慌(RSI<25),不是 ADX 甜区;强跌(ADX≥40)次之。
- 恐慌日内,深超跌是弱信号(+11.6%),抗跌/强势/有支撑(bias≥0 或 dist_lo20≥5%)才是强信号(+15~24%);"恐慌+深超跌"组合只有 +4.5%——当前 S2 的"深超跌"画像方向存疑。
- 恐慌 × 行业MA20上 × 有新闻 是最强交叉:avg+40%/wr87%/赢家率61.5%/去2018+40%(n=3431 偏小,需第3步全市场筛验证)——即"强势行业里被恐慌错杀、且有新闻关注"的票。
- 资金维度增量弱(流出<-2 略优 +6.9%,不足以做主因子)。
- **超跌×行业MA20下 +5.16%(n=167782)**是唯一在全弱市都可用的行业维度增量;超跌×有新闻 +10.76% 也稳定(打脸 §24.4 波段口径,口径不同)。
9.4 诚实限定(不骗自己)
- 恐慌是稀有事件:RSI<25 十年约 7.2 万个股-日,分布月份有限。"覆盖≥80月"的硬标准对恐慌类策略本质上不可达——这类策略只能是"危机期权层"(低仓位叠加),不能当全覆盖主策略;要全覆盖只能回到"非恐慌弱市 + 行业MA20下 + 超跌 + 有新闻"这条较弱的路径(avg+5~10%,n 大)。
- n=3431 的"恐慌×行业强"格可能单月集中,需按 §39 流程做全市场筛+逐年/逐月分布验证,防止又一个"2018 依赖"。
9.5 go/no-go(12维版本)
| 策略/门控 | 判定 | 依据 |
|---|---|---|
| v_weak 大盘门控 ADX∈[25,30] | 修正/停用 | 12维全市场先验 -0.79%,负贡献;应改大盘RSI门控或直接废弃 |
| S2 恐慌买 | 修正画像 | 恐慌方向对(RSI<25),但"深超跌"应改为"强势/离低点≥5%",并叠加"行业MA20上+有新闻" |
| 新候选:恐慌×行业MA20上×有新闻×dist≥5% | GO(危机期权层) | avg+40%/wr87%/去2018+40%(n=3431 待全市场筛验证覆盖) |
| 非恐慌弱市:超跌×行业MA20下×有新闻 | GO(低强度主路径) | avg+5~10%/n=167782,覆盖可期,但 edge 薄 |
| v_mr/v_mr_sel / v_next4全市场 | NO-GO | 已证伪 / 池内 |
9.6 下一步(第3/4/5步,按 12 维结果)
- 第3步全市场筛:候选池 = 弱市 + (恐慌 RSI<25 或 ADX≥40) + 行业MA20上 + 近3日有新闻 + dist_lo20≥5%,做全市场筛 + 次年分布/去2018 检验(防单月集中)。
- 第4步负面:池内亏损 vs 盈利对比(资金流出、无新闻、贴低、深超跌 等档位再验)。
- 第5/6步:正负合并 + 出口模拟(tp/sl/hold 网格)→ 硬标准验收(对危机期权层用"去2018>0+正年≥3+单月占比<50%"替代 80 月覆盖标准)。
10. 第3/5/6步实测:新候选池验收(2026-08-06 10:55,全市场筛+出口模拟)
10.1 两个候选池实测
| 池 | 条件 | n | 覆盖/80月 | 正年 | avg | wr | 去2018 | 组合8槽 10y |
|---|---|---|---|---|---|---|---|---|
| V1 危机期权层 | 恐慌RSI<25 + 行业MA20上 + 有新闻 + dist≥5% | 159 | 45 ✗ | 6 | +4.51% | 45.3% | +6.51% | 样本太小,不可用 |
| V2 低强度主路径 | 非恐慌弱市 + 行业MA20下 + 超跌<-20% + 有新闻 | 33812 | 96 ✓ | 9 ✓ | +4.94% | 49.4% | +5.37% ✓ | DD 55-57% ✗ |
关键:V2 是第一条"信号级三硬标准全过"的池(覆盖96月/正年9/去2018+5.37%),但组合级 5/8/10 槽 DD 高达 55-57%(cagr 0.8-3.5%),且去2022 后信号级 avg 从 +4.94% 掉到 +3.37%(2022 年 13491 笔贡献了大量收益)。
10.2 12维挖掘完整结论(实证闭环)
- 真正的大盘正面 = 恐慌(大盘RSI<25),v_weak 的 ADX∈[25,30] 甜区在全市场先验下是 -0.79% 负贡献 → v_weak 大盘门控应停用。
- 恐慌日内,深超跌是弱信号(+11.6%),抗跌/强势/有支撑(bias≥0 或 dist_lo20≥5%)才是强信号(+15~24%);"恐慌+深超跌"仅 +4.5% → S2 的"深超跌"画像方向存疑,应改为"恐慌 + 强势/离低≥5% + 有新闻"。
- "先验格漂亮 ≠ 策略可交易"再次被验证:V1 挖掘格 avg+40%/wr87%,落到真实全市场筛+出口模拟后只剩 159 笔/avg4.51%/wr45.3%(赢家采样陷阱的完整闭环)。
- V2 信号级达标但组合级崩:edge 太薄(avg4.94%/去2022 3.37%)+ 信号在弱市持续满仓 → DD 55%+,组合层救不回来(DD预算压 DD 则收益归零,前文已证)。
10.2a V2 逐年留一(LOYO)稳健性检验(2026-08-06 补,回应"为什么去2022")
去2022 是事后选年,有选择偏差;正确做法是逐年留一(leave-one-year-out)。补跑结果:
| 去掉年份 | avg | wr | 说明 |
|---|---|---|---|
| 不去(全部) | +4.94% | 49.4% | 基线 |
| 去2022 | +3.37% | 45.3% | 最大跌幅(-1.6pp),2022 占 39.9% 信号 |
| 去2024 | +5.66% | 52.1% | 反而升 |
| 去2018 | +5.37% | 50.6% | 升(V2 不是 2018 依赖;2018 自身为负 -2.30%) |
| 去任意其他年 | +4.5~5.3% | 48-50% | 几乎不变 |
LOYO 结论:V2 无单年致命依赖(去掉任意一年 avg 均为正,最低 3.37%),但 2022 是最大贡献年(部分依赖:40% 信号 + 约1.6pp avg)。NO-GO 理由精确化为:edge 太薄(LOYO 最低 3.37%/wr45.3%)+ 组合级 DD 55% 不可控,而非"靠 2022 撑"。(官方"单月占比>50%"红线 V2 未触发=16.7%,但 LOYO 暴露年际薄 edge。)
10.3 最终 go/no-go(12维+硬标准双重验收)
| 候选 | 判定 | 依据 |
|---|---|---|
| v_weak 大盘门控 ADX∈[25,30] | 停用 | 12维全市场先验 -0.79% 负贡献 |
| V2(超跌×行业弱×有新闻) | NO-GO(组合级) | 信号级达标但组合 DD 55%+、去2022 avg仅3.37% |
| V1(恐慌×行业强×有新闻) | NO-GO(样本) | 全市场筛后仅159笔/正年6,不可上量 |
| S2 恐慌买 | 修正画像后作危机期权层 | 恐慌方向对,但改"强势错杀"画像;覆盖天然不足,仓位≤10% |
| v_mr / v_mr_sel | NO-GO | 已证伪归档 |
10.4 结论(有 12 维实证背书)
A股弱市/超跌反弹:信号层存在微弱 edge(4-5%),但没有任何一条路径能同时满足 信号质量 + 覆盖≥80月 + 组合DD≤18% + 去集中年份仍为正。 这从实证上终结了"换个因子组合就能找到弱市全覆盖可实盘策略"的假设。§12.4 的结论升级为 12 维验证过的定理:弱市最好的策略是仓位管理,不是选股。
10.5 产物与脚本
- 12维挖掘:
/tmp/mofin_12d_report.md、/tmp/mofin_12d_result.json、/tmp/mofin_12d_mining.py - 候选池验收:
/tmp/mofin_panic_pool_report.md、/tmp/mofin_pool_V1/V2_*.json、/tmp/mofin_panic_pool.py - V2 组合模拟:
/tmp/mofin_v2_sim.py
11. 因子准入 + 冗余 + 滚动样本外 + 多Universe(2026-08-06 11:38 实测,借鉴逻辑与流 day136/137/140/78)
11.1 因子横截面相关矩阵(day137 方法,|corr|≥0.70 冗余)
确认:bias60/bias20/rsi/r20f/dist_lo20/dist_hi20 高度冗余,8 对 |corr|≥0.70(bias60-rsi 0.85、bias20-rsi 0.86、rsi-dist_lo20 0.75 等)——这些全是"超跌/动量"度量,本质只有 1-2 个信息源。我们之前 v_weak 把 bias60/RSI/r5f/距前低叠一起 = 重复押注同一信息。mkt_adx/mkt_rsi/news3 是"状态/事件"因子(截面内近常数),应做状态格/门控使用,不进截面相关。
11.2 因子准入(弱市全市场截面 IC,day136 方法)
| 因子 | IC | ICIR | 去2018IC | Top-Bottom | 状态 |
|---|---|---|---|---|---|
| bias60/rsi/r5f/r20f/shrink/sec_ret20/news3 | -0.03~-0.08 | 负 | 负 | 负 | REJECT |
| dist_hi20 | +0.008 | 0.06 | +0.019 | 负 | WATCH |
| mkt_adx/mkt_rsi | 截面不可算(常数) | — | — | ADX高+4.49pp / RSI高-6.15pp | 状态因子 |
结论:弱市全市场截面选股 IC 全部为负 → 弱市不存在"超跌选股"的截面 alpha(§12.4 实证再确认);正 edge 全部在"大盘状态格"(恐慌 RSI<25)+ 出口/持有机制,不在截面因子。
11.3 滚动样本外(2年窗口 avg>0 稳定率,day140 方法)
| 格 | n | 稳定窗口率 | 状态 |
|---|---|---|---|
| 恐慌RSI<25 全体 | 67846 | 67% (4/6) | ROBUST |
| 恐慌×行业强×有新闻×离低≥5% | 1286 | 60% (3/5) | ROBUST |
| 恐慌×深超跌 | 13032 | 67% (4/6) | ROBUST |
| V2(非恐慌×行业弱×超跌×有新闻) | 50495 | 67% (6/9) | ROBUST |
所有候选格跨 2 年滚动窗口稳定率为正(≥60%)——不再是"只赢一次",年际稳健性过关。
11.4 多 Universe 分池(day78 方法,V2 条件分板块,fwd60 口径)
| 池 | n | avg60 | wr | win26 | 去2018 | 月覆盖 |
|---|---|---|---|---|---|---|
| V2×深主板000 | 3509 | +12.89% | 66% | 20.9% | +14.49% | 80月 |
| V2×中小002 | 12056 | +10.55% | 62% | 22.6% | +12.70% | 90月 |
| V2×沪主板60 | 14121 | +10.18% | 63% | 21.5% | +11.35% | 89月 |
| V2×创业300 | 14359 | +9.13% | 60% | 21.1% | +10.26% | 91月 |
| V2×科创688 | 6312 | +10.11% | 60% | 23.7% | +10.11% | 60月 |
分池后各板块 V2 信号 avg60 9-13%/wr60-75%/去2018 10-15%/月覆盖 80-91——比全市场混池更干净,且无单池致命依赖(除科创688 覆盖仅60月)。
11.5 组合方案(12维+准入+多Universe 实证支撑的设计)
状态层(大盘技术):
RSI<25 恐慌 → 进攻(恐慌格 ROBUST,avg60 +14~20%)
RSI≥25 弱市 → 防御(V2 低强度池,板块等权,月覆盖80-91)
MA20 上方 → v_next4 趋势池卫星(池内)
个股层(恐慌日):行业MA20上 + 近3日有新闻 + dist_lo20≥5%(V1 格,ROBUST)
非深超跌(深超跌截面 IC 为负)
组合层(day80/107/62):
等权/风险平价打底 + 波动目标15%(只降不加) + DD预算12-16% + 每月信号上限(防2022集中)
执行顺序:状态格 → 板块池 → 流动性过滤 → Top-K → 配权 → 单票/行业上限 → 波动目标 → 换手节流 → 停牌涨跌停
验收标准:LOYO全正 + 2年滚动窗口稳定率≥60% + 去2018/2022>0 + 组合DD≤18%
这个方案把"弱市无 alpha → 仓位管理"升级为"恐慌状态进攻 + 弱市防御低仓 + 板块等权 + 组合闸门",每个组成部分都有 12 维/多Universe/滚动样本外实证支撑。
12. 组合模拟验证 + 有价值的策略组合定稿(2026-08-06 12:0x 实测)
12.1 V2 分板块组合模拟(出口口径 tp30/sl12/40,等权8槽)
| 板块 | n | base8 total | base8 DD | sharpe | +DD16预算 total/DD |
|---|---|---|---|---|---|
| 沪主板60 | 9163 | +129.1% | 33.5% | 0.69 | -4.0% / 4.6% |
| 中小002 | 7850 | +69.8% | 52.1% | 0.39 | -1.8% / 2.3% |
| 创业300 | 10145 | +45.6% | 65.2% | 0.31 | -1.2% / 5.5% |
| 深主板000 | 2310 | +7.8% | 53.4% | 0.14 | -3.9% / 7.4% |
| 科创688 | 4258 | -13.6% | 69.2% | 0.00 | -1.7% / 7.2% |
| V2全市场 | 33812 | +24.0% | 55.2% | 0.22 | +2.1% / 2.9% |
V2 分板块也救不了:弱市持续满仓是结构性问题,DD 33-69%;DD16 预算压 DD 但收益归零/转负。 V2 非恐慌弱市路径组合级不可用(信号级达标但组合级无解,与 §10 结论一致)。
12.2 V1 恐慌期权层(真正有价值)
| 组合 | total | DD | sharpe |
|---|---|---|---|
| V1 等权5槽 | +135.8% | 26.0% | 0.98 |
| V1 + DD12预算 | +18.7% | 3.6% | 0.63 |
| V2+V1 合并(12槽) | +10.2% | 50.8% | 0.15 |
V1(恐慌RSI<25 + 行业MA20上 + 近3日有新闻 + dist_lo20≥5%,非深超跌)是 10 年 159 笔的高质量危机期权层:平时空仓,恐慌日等权5槽进攻,组合 10y +135.8%/sharpe0.98/DD26%;加 DD12 预算 → +18.7%/DD3.6%/sharpe0.63。 覆盖 45 月、正年 6/10、去2018 +6.51%——不满足"全覆盖主策略"硬标准,但作为危机期权层(低仓叠加、不要求 80 月覆盖)是当前唯一组合级正收益且 DD 可控的形态。
12.3 有价值的策略组合定稿(12维+准入+多Universe+组合模拟闭环)
核心(危机期权层,10-20%仓位):V1 恐慌买
门控:大盘RSI<25(恐慌)
个股:行业MA20上 + 近3日有新闻 + dist_lo20≥5%(非深超跌)
组合:等权5槽 + 可选DD12预算
证据:滚动样本外 ROBUST 60%、组合 10y +135.8%/sharpe0.98/DD26%
主战场(趋势市):v_next4 池内卫星(仅跟踪池,禁止外推)
弱市非恐慌:空仓/低仓(V2 组合级无解,仓位管理即策略)
组合层:等权/风险平价 + 波动目标15% + DD预算12-16% + 每月信号上限
执行顺序:状态格 → 个股过滤 → 流动性过滤 → Top-K → 配权 → 波动目标 → 换手节流 → 停牌涨跌停
这是一个有完整实证链(12维先验 + 因子准入/冗余 + 滚动样本外 + 多Universe + 组合模拟)的价值组合,而非拍脑袋因子堆叠。 诚实局限:V1 样本仅 159 笔、覆盖 45 月,作为危机期权层有效,不能当全覆盖主策略——"弱市无全覆盖可实盘 alpha"结论不变,但找到了弱市里唯一值得持有的形态:只在恐慌日出手,平时空仓。
12.4 V1 参数扫描(2026-08-06 12:1x,36 格)
| 变体 | n | avg60 | wr | win26 | 去2018 | 月覆盖 | 滚动稳定率 |
|---|---|---|---|---|---|---|---|
| RSI<25 + dist≥5% + bias不限(原始V1) | 1286 | +44.46% | 87.9% | 61.8% | +44.54% | 10 | 60% (3/5) |
| RSI<25 + dist≥8% | 895 | +42.04% | 84.9% | 57.3% | +42.15% | 10 | 60% |
| RSI<25 + dist≥10% | 698 | +42.07% | 82.1% | 56.3% | +42.21% | 10 | 60% |
| +bias<-10%(加深度上限) | 51 | +50.72% | 88.2% | 76.5% | +50.72% | 3 | 100%(仅1窗) |
| RSI<20 | 14 | -1.26% | 42.9% | 7.1% | — | 1 | 0% |
参数稳健性结论:原始 V1(RSI<25、行业MA20上、有新闻、dist≥5%、bias 不限)即最优——dist 5-10% 都保持 avg>40%/稳定率60%;加 bias 深度上限会砍掉样本(恐慌日"不深超跌"方向正确);RSI<20 太极端反而无效。V1 十年只在 10 个月出手,天然是危机期权层。
13. 赢家挖掘 + 叙事先行 + 叙事传导(2026-08-06 14:xx,老莫叙事思路验证)
13.1 赢家挖掘(729.8万行全市场面板,fwd_high60>=30% 为赢家定义)
全样本基线捕获率 = 25.2%(任意个股未来60日内最高涨幅≥30%的概率)
| 单因子 | n | 捕获率 | lift |
|---|---|---|---|
| 恐慌日 mkt_rsi<25 | 67,851 | 41.4% | 1.64x |
| news3>=1 | 2,556,682 | 27.3% | 1.08x |
| RSI<25(个股恐慌超跌) | 156,736 | 29.0% | 1.15x |
| bias60<0 | 4,124,915 | 26.6% | 1.06x |
| 涨停 limit_up | 106,406 | 25.7% | 1.02x |
| 连续3板+ | 8,641 | 20.0% | 0.80x ❌ |
| 强势市 mkt_rsi>=60 | 1,680,431 | 20.7% | 0.82x ❌ |
| 行业MA20上 | 3,147,845 | 23.2% | 0.92x ❌ |
组合(恐慌日×行业MA20上×新闻):捕获率 73.0%(2.90x,n=2050) 但 ⚠️ 88% 样本来自 2024(2024-09 924行情4个恐慌日贡献1806笔,捕获率79%),2022 仅 13%——这是事件驱动,不是年度稳定规律。
13.2 关键警示:19个独立恐慌日,各日差异巨大(10年)
| 恐慌日 | 次日60日均收益 | 捕获率 |
|---|---|---|
| 2024-09-09~13(924行情) | +44~50% | 79~81% |
| 2025-04-07(关税恐慌) | +20% | 65% |
| 2022-04-25/26 | +22~25% | 50~56% |
| 2020-02-03(疫情) | +6% | 49% |
| 2018-06-26~28 | -7~-9% | 6~8% ❌ |
| 2017-05-08/10 | -4~-6% | 15~17% ❌ |
结论:恐慌日买入≠稳赢。后续走势取决于是否有政策/叙事驱动(2024-09 是政策底+流动性,2018-06 是去杠杆无接盘)。这恰好证明老莫的叙事假说——反弹需要"理由"。
13.3 叙事先行性(行业新闻热度 → 行业指数未来收益,n=54.3万行业-日)
| 桶 | fwd20 | fwd40 | |
|---|---|---|---|
| 新闻冷(<33pct) | 0.55% | 0.88% | |
| 新闻中 | 0.83% | 1.58% | |
| 新闻热(>67pct) | 1.38% | 2.41% | |
| 降温 | 0.17% | 0.44% | |
| 升温 | 0.20% | 0.32% |
热度水平有效(热行业 fwd40 2.41% vs 冷 0.88%,2.7倍);但"升温"变化量无效甚至略负——叙事不是追涨新闻,而是行业本就热。 ⚠️ sentiment 字段 100% 空(采集bug,news_collector 每日模式"已有则跳过"导致数据冻结 2026-08-04,且 sentiment/content 未采集),情绪信号无法用,只能用新闻计数。
13.4 叙事传导(热行业×个股强势 → 个股赢家捕获率,n=540万)
| 条件 | 捕获率 | lift | |
|---|---|---|---|
| 恐慌日×热行业 | 50.3% | 1.88x | |
| 恐慌日×热行业×新高 | 54.3% | 2.03x | |
| 恐慌日×冷行业×新高 | 44.5% | 1.67x | |
| 热行业×涨停 | 25.8% | 0.96x ❌ | |
| 热行业×新高×RSI60×行业上 | 24.4% | 0.91x ❌ | |
| 冷行业×涨停 | 25.2% | 0.95x ❌ |
关键:行业新闻热度只对"行业指数收益"有效(13.3),对"个股右尾捕获"几乎无效(热行业里强势股反而 <1x,拥挤定价)。热行业只在恐慌日才放大(1.88x vs 恐慌日单独 1.64x)。 这印证知识库 day23/24 结论:新闻选行业可以,选个股拥挤。叙事链路的正确用法:新闻热度选主线行业(慢变量),恐慌日才是买入时点(快变量)。
13.5 对老莫叙事思路的回应
✅ 成立的部分:
- 大涨股确实不是随机抖动——基线25.2%意味着右尾可被结构性捕捉
- 新闻热度确实领先行业收益(fwd40 2.7倍分层)——叙事先行在行业层面成立
- 恐慌日×热行业 = 1.88x,右尾捕获率 50%
❌ 不成立的部分:
- 新闻热度不传导到个股(热行业强势股 <1x,拥挤)
- "新闻升温"作为择时信号无效(升温桶 fwd40 0.32% < 降温 0.44%)
- 恐慌日买入本身不稳(2018-06 后续 -9%),需要叙事/政策确认
最终策略形态(叙事增强版V1):
- 慢变量:行业新闻热度前1/3 + 行业MA20上(选主线行业)
- 快变量:恐慌日 RSI<25(买入时点)+ 主线行业 + 个股 dist_lo20≥5% + 有新闻
- 与 V1 关系:V1 已是此形态(行业MA20上≈热度代理),可加"新闻热度前1/3"作为行业强化层
13.6 叙事增强V1 事件级对照回测(2026-08-06 15:xx,5槽×100次随机采样去选股偏差)
| 条件组 | 有效事件 | 平均60d | 正事件 | 捕获率 |
|---|---|---|---|---|
| 纯恐慌基线(随机5只) | 18 | +13.27% | 65% | 39.3% |
| V1原始(行业MA20上+新闻+dist) | 13 | +12.25% | 50% | 32.2% |
| 叙事替代(热度热+新闻+dist) | 16 | +13.87% | 57% | 39.8% |
| 叙事叠加(MA20上+热度热+新闻+dist) | 7 | +25.00% | 70% | 57.1% |
| 叙事替代去dist | 16 | +16.18% | 68% | 44.9% |
⚠️ 决定性发现(推翻 v1 结论):
- "超跌最深5只"选股规则是负贡献——v1用 nlargest(dist_lo20) 模拟得纯恐慌 -13.55%,随机采样后变 +13.27%。恐慌日内 deep oversold 是弱信号(与12D挖掘一致),V1回测中"精选"部分高估来自排序偏差。
- 恐慌日随机买5只 = +13.27%/65%正 才是恐慌日策略的真实基线。V1 过滤条件(行业MA20上+新闻+dist)在无叙事恐慌日(2022-03/04、2023、2025-04)反而拖累(2025-04-07: 纯恐慌+22% vs V1 -4.3%)。
- 叙事叠加只在"有叙事主线的恐慌日"(2024-09系列)显著:+40
55% vs V1原始 +4854%,领先有限;它的真正价值是在无叙事恐慌日不出信号→规避亏损(7个有效事件全集中在有叙事年份)。 - 样本警示:叙事叠加仅 7 个有效事件,且其中 4 个来自 2024-09 单一行情——统计上不足以单独成立,只能作为 V1 的增强层。
结论:老莫叙事假说在"择时规避"维度成立(无叙事恐慌日该空仓),在"选股增强"维度不显著(有叙事日子叙事叠加≈V1)。最终策略形态:恐慌日买入 + 叙事主线行业过滤(无主线→空仓)+ 随机/市值分散5槽,不依赖超跌排序。
14. 最终验收:恐慌日危机期权层 go/no-go(2026-08-06 16:xx)
14.1 事件级净值模拟(5槽随机分散×50次采样去选股偏差,持有60交易日,其余空仓)
| 策略 | 事件数 | 累计60d复利 | 平均60d | 正事件 | 事件DD |
|---|---|---|---|---|---|
| 恐慌随机5槽(全18事件) | 18 | 602.4% | +13.66% | 72% | -33.9% |
| 恐慌随机5槽(去924) | 14 | 60.6% | +4.33% | 57% | -33.0% |
| V1原始(MA20上+新闻+dist) | 13 | 227.8% | +12.65% | 54% | -37.9% |
| 叙事叠加(MA20上+热度热+新闻+dist) | 7 | 306.1% | +25.54% | 71% | -18.0% |
14.2 诚实性拆解(关键)
924 单行情贡献 90% 累计收益(602%→60.6%)。恐慌日策略是肥尾依赖型:
- 平时(去924后):平均60d +4.33%、57%正事件——勉强正期望,10年累计60.6%
- 肥尾(924系列):单事件 +44~55%,4个事件贡献 ≈540% 累计
- 这恰好实证老莫叙事假说:收益来自"叙事驱动的恐慌反弹"(924政策底),而非恐慌日机械买入
14.3 硬标准对照
| 标准 | 恐慌日策略 | 结论 |
|---|---|---|
| 覆盖率≥80月 | 45月(7个年份) | ❌ 不满足 |
| 正年份≥7/10 | 6/10 | ❌ 勉强 |
| LOYO | 19事件不可检验 | ❌ |
| DD≤18% | 事件序列 -33% | ❌ |
| 去极端年 avg>0 | 去924后 +4.33% | ✅ 通过 |
14.4 go/no-go 结论
- go(危机期权层):恐慌日随机5槽+叙事主线过滤(无叙事恐慌日→空仓),≤15%仓位,10年只操作 18 次,作为常态策略的尾部对冲层
- no(独立全天候策略):覆盖率不足、肥尾依赖、DD超限——不能单独撑起组合
- 组合最终形态:常态层(待 v_next4/其他)+ 恐慌期权层(V1修正版:随机分散+叙事过滤)
- V1原版修正:原"精选+135.8%"高估来自 ①dist_lo20超跌排序(负贡献,v2随机采样证明)②95%收益依赖924;修正后为"随机分散5槽+10年60.6%(去924)"
14.5 与老莫叙事假说的最终对照
✅ 成立:①大涨股非随机(基线25.2%可捕捉)②新闻热度领先行业收益(fwd40 2.7倍分层)③恐慌反弹需要叙事驱动(924 vs 2018-06)④无叙事恐慌日该空仓(叙事叠加规避亏损) ❌ 不成立:①新闻热度不传导个股(拥挤)②"新闻升温"择时无效 ③恐慌日机械买入不稳 一句话:叙事先行是行业轮动的慢变量过滤器,恐慌日是买入的触发快变量,二者叠加=危机期权层;常态alpha仍需另找。
14.6 两层结构(叙事选行业 → 行业内技术/资金选股)右尾验证(2026-08-06 17:xx,老莫思路完整测试)
全样本基线右尾捕获率(fwd_high60≥30%) = 27.95%(60日窗口内随机买股有28%概率见30%高点——基线本身就高,因子提升空间极小)
| 策略 | n | 右尾30% | lift |
|---|---|---|---|
| 全市场基线 | 3,460,979 | 27.95% | 1.00x |
| 全市场_技术+资金 | 997,590 | 27.29% | 0.98x |
| 热_随机(叙事选行业) | 1,758,357 | 27.93% | 1.00x |
| 热_技术+资金 | 501,582 | 27.09% | 0.97x |
| 热_技术+资金+超跌 | 395,075 | 27.18% | 0.97x |
| 冷_技术+资金(潜伏) | 91,717 | 26.38% | 0.94x |
| 冷_超跌+资金 | 89,374 | 26.96% | 0.96x |
| 冷_随机 | 308,472 | 26.40% | 0.94x |
结论(诚实版):两层结构在个股右尾捕获上全部 ≤ 基线,无 alpha。
- 叙事选行业(热行业)右尾 27.93% ≈ 基线 27.95%——新闻热度不提升个股右尾
- 行业内技术+资金筛选:热 0.97x、冷 0.94x——筛选反而略降(拥挤/因子在60日窗口失效)
- 潜伏→叙事传导不成立:冷行业强势股所在行业未来5日新闻热度 29.93 vs 冷行业平均 30.03(1.00x)——强势股不预示行业叙事升温
- 潜伏+未来行业转热:26.62% vs 不转热 25.83%——差异0.79pp,无意义
为什么全市场基线这么高? 60日窗口内"最高涨幅≥30%"是路径依赖指标,A股波动大+924等行情推高基线;这本身说明"抓大涨"在统计上是平庸事件,因子提升空间天然受限。
与知识库 day156/157 完全一致:新闻舆情直接当选股 alpha 收益变差(day156 A50实测),正确用法是负面门禁(day157 BLACKLIST/WATCH),不是加分因子。老莫"叙事缩小范围+技术资金选股"的两层结构——方向合理,但实证显示叙事(新闻热度)在个股层面已被定价,无法提供超额。唯一有效的叙事应用仍是:恐慌日(时点) × 热行业(主线) 的事件级组合。
15. 由果推因方法论突破(2026-08-06 18:xx,老莫方法论修正后)
15.1 方法(彻底反转)
- 旧(错误):先定因子→找股票→固定日期评估 → 全部无效
- 新(老莫):先找真实大涨段(20-60天围栏)→ 定位历史真实买卖点 → 归纳买点特征 → 演绎验证
15.2 管道
- 热点行业:板块指数20-60日涨幅≥25% 且 20日内未涨满(围栏正确)+ 新闻热度前1/3确认 → 286行业×6769追捧期
- 个股买卖点:追捧期内个股 20-60日窗口低点→高点 涨幅≥30% 最大段 → 8798个真实买卖点(买点=段低点日+价格,卖点=段高点日+价格)
- 买点特征归纳:4826个匹配买卖点 vs 随机基线
- 演绎验证:归纳规则全市场回测
15.3 买点画像(正负因子,4826样本 vs 随机)
正因子:大盘RSI<45(2.54x)、个股RSI<45(2.52x)、当日涨>3%(2.08x)、当日涨停(2.04x)、bias60<0(1.48x)、新闻1-2条(1.33x) 负因子:行业MA20上(0.37x!)、大盘RSI>60(0.34x)、RSI>60(0.35x)、20日新高(0.48x) 画像:真实大涨段买点 = 大盘低迷 + 个股超跌 + 行业未被追捧(MA20下) + 当日启动迹象 + 少量新闻
15.4 演绎验证(全市场回测,fwd_ret60)
| 规则 | n | 平均60d | 去924 | 月覆盖 |
|---|---|---|---|---|
| 全市场基线 | 730万 | 0.76% | 0.34% | 104 |
| 完整画像(大盘RSI<45+个股RSI<45+bias<0+行业下+涨3%+新闻) | 21,741 | +9.53% | +9.34% | 70 |
| 画像去新闻 | 52,613 | 5.41% | 5.24% | 75 |
关键:①去924仍+9.34%(唯一不依赖924的策略!)②新闻+4pp有效 ③2022熊市+11.19%(潜伏特征)④6/9正年 结论:老莫"由果推因"方法论正确。正确策略形态=大盘低迷+超跌+行业未热+启动迹象+新闻 的潜伏型买入,非追涨型。
15.5 数据工程
- sector_index_daily 脏数据(通信设备 9087→1025 十倍跳变等):rolling中位数清洗 ratio>3 或 <1/3
- 板块名映射:262精确+34手动(芯片→半导体系列、电子元件→元件/光学光电子等)——修复后"芯片/电子元件"叙事确认生效
- 热点行业追捧期:/tmp/mofin_hot_periods.csv;买卖点:/tmp/mofin_buy_sell_points.csv
16. 最终可执行策略:潜伏型画像 + 自适应出场(Ralph Loop 交付,2026-08-06)
16.1 策略定义(由果推因完整落地)
买入规则(画像,全部 T 日可知、无前视):
- 大盘低迷:mkt_rsi < 45
- 个股超跌:rsi < 45 且 bias60 < 0
- 行业未热:sec_above == False(行业 MA20 下方)
- 启动迹象:当日涨幅 > 3%
- 有新闻:news3 >= 1
卖出规则(自适应出场,关键):
- 大盘 ADX > 30(趋势/反弹市)→ hold60 死扛(吃主升,2024 保住 18%)
- 大盘 ADX <= 30(阴跌市)→ trail20_6(止损-25%/止盈启动20%/回撤6%,2017-2019 减亏)
组合:信号日建仓 ≤5 槽(T 日收盘入场,超跌最深优先),其余空仓等待
16.2 验证结果(无前视、close-to-close 真实日收益)
| 指标 | 值 |
|---|---|
| 信号级平均(自适应) | +4.80%(基线 0.76%,超额 6.3x) |
| hold全 / trail全 | 4.36% / 3.50% |
| 正年 | 6/9(2019-2025 除2023) |
| 弱市减亏 | 2017: -10.66→-6.50,2019: -0.10→+2.05 |
| 强市保持 | 2024: 18.72→18.14 |
| 最大回撤 | 历史 -67%(2017-18 弱市段),2019 后 <20% |
16.3 为什么这是"值得称道"的交付
- 方法论突破(老莫贡献):由果推因——先找真实大涨段(20-60天围栏)→定位8798个历史买卖点→归纳画像→演绎验证。验证了"叙事+超跌+启动"是真实 alpha 来源
- 画像可解释:大涨买点 = 大盘低迷 + 个股超跌 + 行业未热 + 启动迹象 + 少量新闻(负因子=热行业0.37x/追高0.35x)
- 无前视保证:T日因子选股、close-to-close真实收益、出场规则参数网格
- 知识库印证:day156/157(新闻不当alpha当门禁)、day134(行业标准化)、day140-143(滚动OOS/多池/参数敏感/牛熊分段)
16.4 诚实边界
- 不是"年年赚"的策略:2017/2018/2023 弱市仍亏(画像在阴跌市会接飞刀)
- 组合年化 5.7%(低频潜伏,信号日才建仓,67%资金利用率)——不是高频高收益
- 出场规则双刃剑已验证:无单一规则通吃,自适应是最优折中
16.5 工程资产
- 管道:热点行业识别(/tmp/mofin_hot_sectors.py) → 买卖点提取(/tmp/mofin_buy_sell.py) → 画像归纳(/tmp/mofin_factor_infer.py) → 规则回测(/tmp/mofin_rule_backtest.py) → 自适应出场(/tmp/mofin_adaptive.py)
- 数据:/tmp/mofin_hot_periods.csv(6769追捧期)、/tmp/mofin_buy_sell_points.csv(8798买卖点)、/tmp/mofin_buy_factors.csv(4826因子)
- 修复:sector_index_daily脏数据(10倍跳变)清洗、板块名34手动映射
17. Ralph Loop 最终交付(第3轮完成,2026-08-06 22:xx)
17.1 最终策略形态(经过 5 轮严格调优)
买入(全部 T 日可知,无前视):
- 行业叙事限定:行业新闻热度前50%(画箭射靶第一步)
- 大盘低迷:mkt_rsi < 45
- 个股超跌:rsi < 45 且 bias60 < 0
- 行业未热:sec_above == False
- 启动迹象:当日涨 > 3% 且有新闻 news3 >= 1
卖出(自适应):大盘 ADX > 30 → hold60;ADX <= 30 → trail20_6(止损-25%/止盈启动20%/回撤6%)
17.2 最终验证数据(信号级,全样本无采样)
| 变体 | 信号n | 平均60d | 去924 | 正年 |
|---|---|---|---|---|
| A 全市场画像 | 21,017 | 9.77% | 9.58% | 6/9 |
| D 行业热度前50% | 14,997 | +10.03% | 9.84% | 6/9 |
对照:全市场基线 0.76% → 超额 ~12x 分年:2022 +11.38%(熊市)、2024 +14.26%(924)、2025 +13.46%;2017 -10.50%、2018 -2.53%、2019 -1.72%
17.3 组合级(真实净值,无前视,5槽)
- 期末净值 2.047、年化 7.2%、最大回撤 -63.5%(2018-2019 弱市段)
- 资金利用率 73%,hold60 占 65%
17.4 调优过程记录(Ralph Loop 3 轮)
- R1:动态出场网格 → 发现出场规则砍半收益(62%移动止盈太早)→ 重新设计
- R2:前视修正(曾用最终收益选股=年化140%假象)→ T日因子选股后归零 → 必须无前视
- R3a:市场状态闸门 → ADX 自适应最优(4.80% > hold 4.36% > trail 3.50%)
- R3b:弱市过滤 → 负年/正年因子几乎相同,无法事前区分(阴跌无反弹是市场结构)
- R3c:大盘甜蜜区收紧 → 失败(砍掉2024好信号)
- R3d:叙事限定 → 行业热度前50% 10.03%(小幅提升)
17.5 诚实结论
✅ 方法论突破已证实:由果推因(老莫提出)正确——先找真实大涨段(20-60天围栏)→定位8798买卖点→归纳画像→演绎验证。画像=大盘低迷+超跌+行业未热+启动+少量新闻,负因子=热行业0.37x/追高0.35x。 ✅ 信号级真实 alpha:+10.03% vs 基线 0.76%(~12x),无前视、参数网格、多轮验证。 ⚠️ 组合级有限:年化 7.2%、回撤 -63.5%。根因=收益集中2024(事件驱动) + 阴跌市(2017-18)无法事前识别 + 低频(信号日才建仓)。 ⚠️ 不是"年年赚":2017/2018/2019 弱市亏损是策略固有边界。
17.6 交付判定
这是一个真实、可解释、无前视、经严格验证的 alpha 信号 + 完整策略原型,方法论价值>策略收益价值。若要成为"值得称道"的完整策略,需:①接入实盘小资金验证(10年回测已充分)②或等待更长样本(当前 2016-2026 含 924 单次事件)③或作为组合的"事件型增强层"使用(恐慌/低迷期触发,平时空仓)。