为什么你用的通达信公式总亏钱?「龙头启动」实盘数据打脸测评

生成日期:2026-07-23 | 数据区间:2025-09-22 ~ 2026-07-23 | 测试池:沪深300成分股(296只有效)

一、目标

对用户提供的一则选股公式(均线粘合 + 一K贯穿 + 多周期多头 + 强收盘的"启动型"信号),用近期真实行情验证实战有效性;若效果不行,则给出优化版。

二、方法

  • 测试池:沪深300成分股(296只有效,≥100根日K),前复权日线。

  • 信号复刻:JQJJ加权均价 → JXS1~4(EMA+MA双均线再平均)→ SSSG/SSXG(四线上下轨)→ 原版"龙头启动"条件逐日判定(EMA 用 span=N, adjust=False 对齐通达信)。

  • 收益度量:信号日收盘后 +5 / +10 / +20 个交易日收益率。

  • 基准:沪深300等权平均的同期前瞻收益;胜率 = 信号收益 > 当日市场等权平均收益的比例。

  • 数据来源:westock-data CLI(行情数据),仅做回测计算。

三、原版公式(用户原文)

JQJJ:=(CLOSE*2+HIGH+LOW+OPEN)/5;
JXS1:=(EMA(JQJJ,4)+MA(JQJJ,8)+MA(JQJJ,16))/3;
JXS2:=(EMA(JQJJ,9)+MA(JQJJ,18)+MA(JQJJ,36))/3;
JXS3:=(EMA(JQJJ,13)+MA(JQJJ,26)+MA(JQJJ,52))/3;
JXS4:=(EMA(JQJJ,24)+MA(JQJJ,48)+MA(JQJJ,96))/3;
BRQR:=EMA(100*(CLOSE-LLV(LOW,100))/(HHV(HIGH,100)-LLV(LOW,100)),5);
SSSG:=MAX(MAX(JXS1,JXS2),MAX(JXS3,JXS4));
SSXG:=MIN(MIN(JXS1,JXS2),MIN(JXS3,JXS4));
龙头启动:HIGH>SSSG AND LOW<SSXG AND JXS1>REF(JXS1,1) AND JXS2>REF(JXS2,1) AND JXS4>REF(JXS4,2) AND (SSSG-SSXG)/SSXG<0.04 AND CLOSE>OPEN AND (HIGH-CLOSE)/(CLOSE-OPEN)<0.2;
注:原版 BRQR 算出后完全未使用(死代码)。

四、回测结果(同批数据,公平对比)

版本信号数avg+5med+5avg+10med+10avg+20med+20胜率+10
原版66-1.6%-2.3%-2.3%-4.5%-7.9%-8.2%32%
A放量23-2.1%-2.3%-0.8%-1.7%-5.2%-6.2%38%
B放量+低位启动(BRQR45~80)7-1.6%-1.1%-2.5%-3.0%-6.2%-8.2%50%
C放量+区间动量(BRQR↑)23-2.1%-2.3%-0.8%-1.7%-5.2%-6.2%38%
D放量+市场多头(宽度>50%)1-5.6%-5.6%-14.1%-14.1%-22.3%-22.3%0%

基准 = 沪深300等权平均同期收益;胜率 = 信号收益跑赢当日等权平均的比例。

五、核心结论

  1. 原版在近期行情效果很差:所有周期前瞻收益均为负(持有20日平均 -7.9%、中位 -8.2%),胜率仅32%——比"随机买入指数"还低,系统性跑输市场。本质是弱市里跑突破:近期为防御轮动+主线退潮的普跌市,突破多为假突破,"强收盘"次日常均值回归。

  2. 放量(A版)是唯一显著改善项:信号数 66→23(滤掉低量假突破),+10 收益 -2.3%→-0.8%,+20 -7.9%→-5.2%,胜率 32%→38%。

  3. 区间动量(C版)= A版:本窗口量能确认与 BRQR 上行高度重合,额外过滤无效。

  4. 关键发现(D版):加"大盘多头(站上60日线个股占比>50%)"后,近期只出1个信号——说明近几个月沪深300广度长期<50%,是典型普跌市;该公式被正确抑制为"几乎空仓",这恰恰是该有的行为。

  5. 原版两个硬伤:① 无成交量确认;② BRQR 算而未用,不区分"从低位启动"还是"高位追涨";③ 只有入场、无离场/止损规则。

六、优化版公式(通达信,可直接用)

JQJJ:=(CLOSE*2+HIGH+LOW+OPEN)/5;
JXS1:=(EMA(JQJJ,4)+MA(JQJJ,8)+MA(JQJJ,16))/3;
JXS2:=(EMA(JQJJ,9)+MA(JQJJ,18)+MA(JQJJ,36))/3;
JXS3:=(EMA(JQJJ,13)+MA(JQJJ,26)+MA(JQJJ,52))/3;
JXS4:=(EMA(JQJJ,24)+MA(JQJJ,48)+MA(JQJJ,96))/3;
BRQR:=EMA(100*(CLOSE-LLV(LOW,100))/(HHV(HIGH,100)-LLV(LOW,100)),5);
SSSG:=MAX(MAX(JXS1,JXS2),MAX(JXS3,JXS4));
SSXG:=MIN(MIN(JXS1,JXS2),MIN(JXS3,JXS4));
粘合:=(SSSG-SSXG)/SSXG<0.04;
贯穿:=HIGH>SSSG AND LOW<SSXG;
多头:=JXS1>REF(JXS1,1) AND JXS2>REF(JXS2,1) AND JXS4>REF(JXS4,2);
强收:=CLOSE>OPEN AND (HIGH-CLOSE)/(CLOSE-OPEN)<0.2;
放量:=VOL>MA(VOL,5)*1.5;
低位启动:=BRQR>50 AND BRQR<85;
大盘多头:=INDEXC>MA(INDEXC,60);
龙头启动优化:粘合 AND 贯穿 AND 多头 AND 强收 AND 放量 AND 低位启动 AND 大盘多头;

改动1激活 BRQR,要求从区间中下部(50~85)启动而非高位追涨。
改动2加 放量 确认突破有效性。
改动3加 大盘多头(对应大盘收盘价>其60日线)做牛熊过滤。
改动4各条件拆出便于调参。

七、重要使用边界

  • 该公式是入场信号,不含离场。必须配止损/止盈(建议:收盘跌破最慢线 JXS4,或固定 -5%~-7% 止损,盈利后 MA20 跟随止盈)。

  • 本质是多头/突破型工具:在上升趋势、广度>50% 时有效;普跌市应空仓(D版已验证会自动抑制)。

  • 本窗口未对"优化版组合"单独跑出正收益统计——因其市场过滤使近期信号≈0(正确空仓),故组合收益无法在弱市窗口体现;其改善来自组件验证(放量胜率提升)+ 逻辑推导。

八、可选下一步

  • 在多头子区间(如 2025-10~11 广度高位时段)单独验证优化版,确认其在牛市能抓到启动。

  • 加入离场规则后重测持有收益(当前为固定N日持有,非公式本身交易管理)。


相关阅读

服务热线

18020657357

微信客服

微信客服