双龙戏珠战法 · 量化复现与回测

原文:灿灿说市《双龙戏珠战法》2026-08-04  ·  数据:腾讯前复权日K, 全A 4491 只,2021-06 ~ 2026-08-18  ·  生成于 2026-08-19 14:30
先说结论:这套形态能被程序精确复现,但 作为机械交易信号它不成立——2022年以来 49,727 条信号,T日收盘买入后 T+1 至 T+5 相对全市场等权全部为负超额(−0.12% → −0.53%);次日开盘买入 T+1 仅 +0.13%,扣掉 0.25% 双边成本后仍是负的。而且加上「堆量+大阴」这两段筛选后, 表现反而比只看均线结构更差
真正被数据支持的是三条方向性判断:别追高(贴白线组接近0,最远组 −0.98%)、 调整要缩量(缩量组 −0.02% vs 不缩量组 −0.31%)、 堆量段带涨停的反而更差(−0.20% vs −0.06%)。唯一稳定为正的切片是原文排在最后的 「上穿黄线」(趋势擒龙),但样本小、幅度也就刚够覆盖成本。

过去一周信号(2026-08-12 ~ 2026-08-18,5 个交易日)

日期代码名称行业 收盘当日距白线买点 堆量段放量调整缩量比 形态分实证分次日跳空T+1T+2T+3

T+1/T+2/T+3 = 信号日收盘买入后的 超额收益(已减去同日同持有期全市场等权),空白 = 尚未到期。 实证分 = 上穿黄线(+2) + 贴线<3%(+1) + 调整缩量<0.8(+1) + 堆量无涨停(+1), 只由回测里真正呈现单调关系的条件构成,不是"会涨"分,是"相对更不差"分

本周这批信号事后表现:严格档 T+1 超额 −0.66%、胜率 27%。 主因是 08-17 全市场等权大涨 +2.03%,而这批「回踩类」标的没跟上。 5 个交易日是噪音,不能当结论用,只能说明信号密度和风格: 严格档日均 54 只,几乎全是回踩白线型。

回测(2022-01 ~ 2026-08,全A,前复权)

基准怎么算的(这里踩过一个坑):第一版用"日度等权指数复利"当基准, 随机抽样对照组跑出 −0.08%/天(t=−5)的假超额——个股 h 日复利收益的均值天然低于 日度均值复利(波动拖累)。改成同日、同持有期、同票池的等权平均收益后, 随机对照回到 T+1 -0.007%、T+2 -0.011%、T+3 +0.001%、T+5 +0.001%,才是干净的口径。下面所有数字都是修正后的。

分年(收盘买入 T+1 超额)

分组:什么条件下相对更不差(严格档,收盘买入超额)

唯一正向切片:上穿黄线(趋势擒龙)

这是我检验的约 20 个切片里唯一稳定为正的一个, 存在多重检验的假阳性风险。支持它的证据:三档参数下方向一致;消融档样本 22563 条、 t=7.8、分年 5/5 为正。反对它的证据:幅度只有 +0.16%~+0.39%, 按天等权(更接近实盘组合口径)后严格档 +0.28%/宽松档 −0.06%/消融档 −0.22%, 成本一扣基本归零。结论:可以当"趋势修复的观察名单",不能当机械买点。

口径校准:原文点名的案例股,程序能不能复现

文章 2026-08-04 点名了 易点天下、科蓝软件、昆仑万维、米奥会展(当天早盘选出), 另有作业题 久其软件、中兰环保、捷强装备,以及前一日的华电。用这 9 只反过来校准参数, 是唯一能验证"我理解的双龙戏珠 = 灿灿的双龙戏珠"的锚点。

2 / 4严格档 08-04 命中当天点名股
(米奥会展、捷强装备)
3 / 4宽松档 08-04 命中
(+科蓝软件)
昆仑万维两档都不入选:MA6 远在 MA20 之下
按他自己的口诀是"黄上白下别乱搞"
易点天下两档都不入选:无调整段,
且收盘距白线 +26.7%(明显追高)
逐段漏斗:从左到右第一个 × 就是被卡住的地方
校准得到的最重要一条信息:灿灿本人并不严格执行自己写的三段条件。 昆仑万维(黄上白下)、易点天下(距白线 +26.7%)这两只,用他文中的口诀自身就该排除; 久其软件、华电两只则根本没有"三根堆量"。它们更像是先由板块与消息面 (当天 AI 应用、前一日电力)选出来,再用双龙戏珠的均线位置做入场描述。 所以这套程序能替代的是"形态识别"那一半,替代不了他做的板块判断—— 这也是原文"补充:最好叠加板块龙头以及消息与产业链逻辑"那句话的真实分量。

量化定义

原文原话(三段 + 口诀)
  • ① 前期三根一起的堆量,最好有涨停或大阳出现
  • ② 出现大阴调整
  • ③ 双龙出现:短线设 6 日均线(白),趋势设 20 日均线(黄)
  • 口诀:K 线下方最稳妥,均线高悬风险多;白上黄下形态好,黄上白下别乱搞; 上穿白线短线瞧,回踩白线试操作;上穿黄线看趋势,双线金叉机会多
  • 补充:最好叠加板块龙头,以及消息与产业链逻辑配合最佳
程序口径(信号日 T,收盘后判定)
  • 票池:全A,剔除 ST/历史ST期(5% 涨跌停会造出假涨停)、次新股(K线<160根)、 当日成交额 < 5000 万。688/689、金融地产、北交所不剔
  • ①堆量:T-11…T-2 之间存在连续 3 根,每根量 ≥ 1.5× 簇前 5 日均量 (宽松档=三根合计),三根合计涨幅>0,且至少一根涨停或大阳(≥5%)。 涨停宽度按板块判定:主板10%/双创20%/北交所30%/ST期5%。
  • ②大阴调整:堆量段结束后 1~10 个交易日内至少一根大阴(跌≥3% 且收阴), 期间最低价 ≥ 堆量启动前收盘(不吃掉整个堆量段),且每日最低 ≥ 当日 MA20×0.97 (必须跟当时的 MA20 比,用信号日的 MA20 会把强势股全部误杀)。
  • ③双龙结构:MA6 > MA20(白上黄下)· MA20 不下行 · 收盘 > MA6 (两条线在 K 线下方托着)· 收盘距 MA6 ≤ +7%("别跟高")。
  • ④买点(≥1 种,多标签):上穿白线 / 回踩白线(low ≤ MA6×1.01 且收在 MA6 上)/ 双线金叉 / 上穿黄线 / 回踩黄线。

两档参数

代码

~/apps/shuanglong/shuanglong.py(形态库,含逐段诊断 explain())· calibrate.py(案例股校准)· backtest.py(回测+随机对照)· analyze.py(切片复核)· scan_week.py(出名单)· report.py(本页)。 数据复用 ~/apps/a-share-screener/data/kline_qfq.sqlite(阿福那套每日自动刷新的前复权日K)。

已知局限