# s2_panic_v2 升级研究记录(2026-08-16 小小莫) ## 背景:老莫发现的"多信号→少成交"洞 可激活策略信号量远大于成交量(s2_panic 2255信号/42成交、b_td1 5000/353)。 老莫质疑:**成交的是随机抽选的还是未知原因?换一批信号数据还成立吗?** ## 洞审计结论(数据实锤) ### 1. 成交选择 = code 顺序随机(无 score) - s2_panic 的 2255 个信号**全部没有 score 字段** - portfolio_sim 同日排序 `sort(key=-score)` 退化为 SQL code 顺序 - **洗牌实验**:同批信号换顺序,收益 38.9%~55.2% 漂移 16pp —— 成交的 42 笔是幸运儿 ### 2. s2 业绩 = 单日 beta(不是选股 alpha) - s2_panic 2y 的 2255 信号 **99% 集中在 2025-04-09/10 两天** - 2025-04-09 全市场 60d 均值 **+19.85%、胜率 85.1%**(2024-09 全市场 +37%/97%) - **s2 条件过滤后 17.03% < 全市场 19.85%** —— 无 alpha 甚至负 alpha - 恐慌日 = 全市场普涨日(beta),买啥都赚;小恐慌日(2018-06/2022-03)全市场亏 ### 3. 换一批信号:完全不成立 - s2 只命中大恐慌日(2024-09/2025-04),命中 2018-06/2022-03 就亏 - 业绩来自"恰好撞上大反弹日",不是选股能力 ## 由果及因(72941 恐慌日信号,tp30/sl12/60日 评估) ### alpha 入场组合有效 - 基线胜率 30.7%(摸30%先于破12%) - **小市值(mcap_q<0.4) + 强势(rsi>=35) + 行业抗跌(sec_ret20>=-10) = 60.8%** - 换信号池稳健性通过(随机抽样 5 次 50.7~52.6%) ### score 精细排序无效(诚实教训) - top5(高分) 11.79% vs 随机 13.33% vs **bottom5(低分) 15.12%** - 特征区分度是"粗阈值效应"(入场组合),不是"精细排序效应" - **不假装排序有效——每日 top-N 截断才是解法** ### 每日 top-N 截断 = 解决信号/成交比的关键 - 恐慌日信号 1200/天 是结构问题(10仓位槽装不下) - **top8 截断**:141 信号/86 成交/比 1.6(10y) - 洗牌漂移:2y/5y **0.0pp**(彻底稳健),10y 13.1pp(2024-09 持仓重叠) ## s2_panic_v2 最终参数 ``` 入场: mkt_rsi<25(恐慌日) + mcap_q<0.4 + rsi>=35 + sec_ret20>=-10 每日: 按 score 降序取 top8 出场: tp30 / sl12 / max60日 score: mcap(40) + rsi(30) + sec(20) + news(10) = 0-100 ``` ## 效果对比(vs 原 s2_panic) | 指标 | s2_panic(旧) | s2_panic_v2(新) | |---|---|---| | 信号/成交比(2y) | 53.7 | **1.8** | | 成交(10y) | 105 | 86 | | 胜率(2y) | 86.5% | 85.4% | | 2y年化 | 27.3% | **35.7%** | | 10y年化 | 10.1% | **12.1%** | | 回撤 | ~40% | **0-2.4%** | | 洗牌漂移(2y) | 16pp | **0.0pp** | | 资格(标准A) | ✅✅✅ | ✅✅✅ | ## 诚实说明(不夸大) 1. **2y 成交 26 < 原 42**:每日 top8 截断限制信号量,2y 窗口恐慌日少(6天);但 5y/10y 成交 60/86 超过原值 2. **1y 年化 109678% 是假象**(8笔样本线性放大),真实看 5y/10y 3. **s2 类策略本质是"恐慌日 beta 捕获"**——alpha 组合提升的是"同一天里选更好的",无法对抗 beta 级别(2022-03 那种继续阴跌的恐慌) 4. 老莫说的"方向1 仓位优化"(缩短持仓/去重重复股)未做——那是成交量进一步提升的后续工作 ## 2026-08-17 补充:普适指标重构 + 多策略升级 ### 普适指标重构(老莫:要真实反映"非特例"宗旨) 原实现:trades覆盖月份/温区总月份 → 只反映覆盖广度,不反映"是否每年都有效" 新实现:跨独立年份有效性 = 有效年占比(每年胜率>50%)× 覆盖年数因子(>=3年满覆盖) 附特例剔除检验:去掉最好一年的剩余平均收益(leave1) 验证(10y trend_down): v_lurk_v3: 9年/9有效=100分,去最好年+7.25% → 真正普适 s2_panic_v2: 7年/4有效=57分 → 比旧版(6年/3有效=50分)更普适 s2_panic(旧): 6年/3有效=50分 → 只靠一半年份(2024-09/2025-04特例) v_oversold choppy: 5年/2有效=40分,去最好年-0.11% → 去掉最好年份就亏=靠特例 ### 多策略升级(不只 s2_panic) | 策略 | 信号/成交比(旧→新) | 胜率 | 普适 | 核心改进 | |---|---|---|---|---| | s2_panic_v2 | 53.7→1.8 | 85.4% | 67 | 恐慌日alpha组合(小市值+强势+行业抗跌)+每日top8 | | b_td1_v2 | 14.2→1.4 | 82.0% | 75 | 池内超跌强化(bias60<-20+rsi<40+sec<-10)+top3 | | hk_pe_oversold_v2 | 9.3→1.8 | 72.6% | 67 | 深跌强化(mkt_ret20<-10)+top3 | 方法论要点(由果及因,全部数据验证): 1. s2类(恐慌日): alpha=恐慌日里买强势(小市值+高RSI+行业抗跌) 2. b_td1类(超跌池): alpha=池内买跌最狠(bias60深+rsi低+行业深跌) 3. hk超卖类(港股): alpha=深跌+破净(mkt<-10+pb低) 4. 三个策略的"信号/成交比>2"根因不同: - s2: 恐慌日1200信号抢10槽(时间集中) → 每日top-N截断解决 - b_td1: 每日40+信号+持仓重叠(持续型) → 超跌强化缩信号+top3 - hk: 深跌日信号密集 → 深跌强化+top3 ## 2026-08-17 补充2:b_td1_v3 修正——"成交数不变"要求达成 ### 老莫指正(b_td1_v2 方向错误) b_td1_v2 用超跌强化收紧入场 → 信号5000→50,成交353→35,违背"保持成交数不变+大幅减少信号数" v2 除年化和均持仓外都占优,但年化差距大(126.6%→39.4%)——因为信号砍太狠 ### 数据验证:正确方向 = 原池 + score每日top-N截断 不能用 panel 重现池(口径差异:panel 重现 62149 信号 vs DB 5000——panel 的 news3/mcap/pe/dist 粒度不同) 正确做法:读 DB 原版 5000 信号 + 从 panel 查 score 特征 + 每日 top-N 截断 2y 验证: 原版5000信号/349成交/比14.3/胜率71.2%/年化162.5% 每日top5: 572信号/316成交/比1.8/胜率73.3%/年化156.6% ← 采用 每日top8: 886信号/338成交/比2.6/胜率72.5%/年化166.9% ### 关键洞察 - b_td1 类(持续触发型):117天×42.7信号/天 → 截到每天5个仍能成交(5<10槽)→ 成交几乎不降 - 原版"成交353是否随机":洗牌实验证明原版顺序敏感(漂移大);每日截断后每天5个<10槽全成交 → 洗牌无关 → 稳健 ### s2/hk 类策略(事件触发型)——成交不变受限于事件频率 - s2_panic:2255信号集中在8个恐慌日(2024-09/2025-04两天99%)→ 10槽装不下是结构性的 - v2择优后成交42→26(降38%),但胜率85.4%保持——事件日无法通过截断提升成交 - 与 b_td1 的"每日持续触发"本质不同:持续型可截断保成交,事件型成交受事件频率限制