### 直接上解决方案,分3步过滤:
#### 1. 先看“趋势强度”,筛掉纯震荡
用ADX指标(平均趋向指数)判断当前是不是真趋势:ADX值<25时,大概率是震荡,直接过滤所有突破信号;ADX>25且持续向上,说明趋势在走强,这时候的突破才值得关注。
简单逻辑:ADX>25时,才允许后续突破信号生效。
#### 2. 再用“波动率”卡突破幅度,避免“毛刺突破”
假突破往往是小波动引发的,用ATR(平均真实波幅)设定“有效突破门槛”:比如突破前N根K线高点/低点时,至少要超过0.5倍ATR的幅度(不同品种可调整,比如螺纹钢用0.6倍,黄金用0.8倍)。
麦语言示例:
```
ATR:=MA(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),14);
突破条件:=CROSS(HIGH,REF(HHV(HIGH,20),1)) AND HIGH-REF(HHV(HIGH,20),1)>=0.5*ATR;
```
#### 3. 最后加“时间过滤”,确认突破“站稳”
突破后1-3根K线不回调,才算有效。比如突破后收盘价始终在突破位之上,且不跌破突破价-0.3倍ATR,避免“秒破秒回”。
按这3步组合,基本能把震荡中的假突破筛掉。在公众号【量化刘百万】里有针对ADX+ATR组合指标的详细参数优化案例,不同品种(如螺纹钢、豆粕)的ATR倍数设置差异有具体回测数据,新手可以参考着调。
如果对指标参数调试没头绪,或者实盘测试中遇到假突破依然频繁的问题,可以找我具体聊聊品种特性和周期适配(比如5分钟和日线的过滤逻辑区别)。
文中提到的ADX+ATR组合指标模板,在【量化刘百万】里有现成的麦语言源码和回测报告,包括不同周期的表现对比,需要的话可以自己翻一翻。
发布于2026-1-24 11:13 北京



分享
注册
1分钟入驻>

+微信
秒答
搜索更多类似问题 >
电话咨询
18270025212 

