你是不是也遇到过这种情况——
MACD底背离,明明形态很漂亮,但公式就是不出信号。
你开始怀疑市场、怀疑自己、怀疑指标失灵。
其实都不是。今天用一个真实回测告诉你,问题出在量能那段代码上。
MACD底背离,明明形态很漂亮,但公式就是不出信号。
你开始怀疑市场、怀疑自己、怀疑指标失灵。
其实都不是。今天用一个真实回测告诉你,问题出在量能那段代码上。
我实测了什么?
沪深300,300只股票,10个月日K数据,代码原封不动跑了一遍。
结果:1个信号
一个。
你用下去,大概率也是这个感觉——信号零零星星,看着一堆条件设好了,结果就是不触发。
问题出在哪
公式的逻辑链本身没问题:
MACD底背离 → KDJ确认 → 均线共振 → 量能验证
每一层都有道理。
每一层都有道理。
但量能那段,写了三重条件:
放量:=VOL>REF(VOL,1)*1.5;
量比:=VOL/MA(VOL,10)>1 AND <5;
量能条件:=放量 AND 量比 AND VOL>MA(VOL,5)*1.5;
三重 AND 叠加,同时成立。
单独看,每一重都不算苛刻。但底背离本身就是极稀有事件——全市场10个月只出现127次。底背离那天,同时满足三重量能条件的,概率极低。
三条同时成立 → 信号归零。
你加的每一行"过滤条件",本来是想让公式更准。结果是把本来就稀有的核心信号,彻底过滤掉了。
真正有用的量能约束,只要一行
量比>1.5倍——今日成交量超过10日均量的1.5倍。这足够了。不要三重 AND 叠加,保留一条就够了。信号才能真正出来。
优化版代码,改好了,直接用
{=== 量能条件(优化:只保留一条有效约束)===}
放量确认:=VOL>MA(VOL,10)*1.5;
{=== 其余逻辑不变 ===}
底背离增强版优化:
底背离
AND KDJ条件
AND 均线条件
AND 放量确认
AND C>O;
其余的底背离判断、KDJ双重确认、均线共振,原版怎么写就怎么用。只改量能那一段。
为什么这次回测信号只有1个,但优化后可以用
因为这次测的是弱市行情——过去10个月沪深300整体偏空头。底背离在弱市本身就少,加上量能那段写得太严,信号就彻底归零了。
这不是公式的问题,是市场环境和代码双重叠加的结果。优化之后,进入正常或偏多的市场环境,信号才会真正多起来。
量能那段代码,本来是保护伞,写多了反而变成了墙。
把三重叠加改回单一量比门槛,公式才能正常工作。
