先给结论,再讲道理:"双金叉共振"的本质是不同周期、不同性质的指标达成共识。RSI代表短期动量,MACD代表中期趋势。真正的共振,不需要它们在分秒不差的时间点重合,只要在相近的时间窗口内(如5天内)先后发出信号即可。原版公式的"同日"要求,过于苛刻且不符合市场实际。 源码分别计算MACD和RSI的金叉,并要求两者同日发生,未考虑时间容错和位置过滤。 以下为基于源码逻辑的主观结构评分,未经历史数据验证,仅作拆解参考。 系列编号:本文为「1000个公式拆解」系列 · 综合系 · 第 18 篇(18/1000)。 如前所述,RSI和MACD的灵敏度不同。要求同日金叉,就像要求短跑运动员和马拉松运动员同时冲线一样不现实。应该允许RSI先金叉,MACD在之后几天内跟上。 RSI金叉发生在20以下(超卖区)才是可靠的买入信号,如果在80以上金叉,反而是卖出信号。原版公式只看了金叉,没看位置。 在下跌趋势中,MACD和RSI也会出现金叉,但这往往是反弹而非反转。公式如果没有判断中长期均线或前期重要支撑,容易在弱势中抄底。 低位启动区 ✓ 震荡市转强 △ 需结合量能 高位滞涨或下跌趋势 ✗ 修复思路:放宽时间窗口至5天内,要求RSI从超卖区(20以下)金叉,MACD在零轴附近或上方,且股价站在20日线上,提高共振质量。 用法:寻找RSI率先从低位金叉,随后几天MACD也出现金叉的股票。重点关注两者在零轴附近的共振。 确认:双金叉出现后,若股价能放量突破短期均线压制,可视为介入时机。 止损:跌破双金叉发生时的最低价,或MACD再度死叉,应果断止损。 启发一:指标共振不是"同时发生",而是"同向发力"。给不同速度的指标一点时间差,更符合市场规律。 启发二:RSI解决"有没有动力"的问题,MACD解决"趋势稳不稳"的问题。两者结合,胜率更高。 启发三:永远在指标金叉的"右侧"交易,不要在金叉前盲目预测。一、原版源码长这样
DIF:=EMA(C,12)-EMA(C,26);
DEA:=EMA(DIF,9);
MACD金叉:=CROSS(DIF,DEA);
LC:=REF(C,1);
RSI:=SMA(MAX(C-LC,0),6,1)/SMA(ABS(C-LC),6,1)*100;
RSI金叉:=CROSS(RSI,20);
选股:MACD金叉 AND RSI金叉;
二、公式体检评分表
评分项 得分 说明 语法完整性 95 通达信可运行,无语法错误 逻辑完整度 50 时间窗口过于狭窄,且未区分金叉发生的位置(低位/高位) 信号可用性 40 信号极其稀少,且多为滞后确认,易错过最佳买点 三、问题一:时间窗口不匹配
四、问题二:金叉位置决定成败
五、问题三:缺少趋势背景
六、适用环境
七、修复版源码
{=== RSI与MACD双金叉选股 · 修复版(通达信可运行)===}
{--- MACD 定义 ---}
DIF:=EMA(C,12)-EMA(C,26);
DEA:=EMA(DIF,9);
MACD金叉:=CROSS(DIF,DEA);
{--- RSI 定义 ---}
LC:=REF(C,1);
RSI6:=SMA(MAX(C-LC,0),6,1)/SMA(ABS(C-LC),6,1)*100;
RSI金叉:=CROSS(RSI6,20);
{=== 改动1:时间容错窗口(5天内先后金叉)===}
共振窗口:=COUNT(MACD金叉,5)>=1 AND COUNT(RSI金叉,5)>=1;
{=== 改动2:位置过滤,MACD在零轴附近或上方 ===}
位置合理:=DIF>-0.1 AND DEA>-0.1;
{=== 改动3:趋势过滤,股价在20日线上方 ===}
趋势向好:=C>MA(C,20) AND MA(C,20)>REF(MA(C,20),1);
{=== 改动4:排除ST及数据不足 ===}
排雷:=NOT(NAMELIKE('ST') OR NAMELIKE('*ST')) AND COUNT(C>0,60)=60;
选股:共振窗口 AND 位置合理 AND 趋势向好 AND 排雷;八、实战操作建议
九、三条启发
RSI与MACD双金叉选股公式:我拆源码时发现"共振"只看同日,快慢指标不同步全被忽略(附修复版)
风险提示:本文通达信指标公式仅作技术教学与研究使用,不构成任何投资建议。股市有风险,入市需谨慎,不可直接依据公式信号交易。
拆这个公式时,我停在了第8行:MACD金叉 AND RSI金叉。这要求两个金叉在同一天发生。但RSI(相对强弱指标)反应很快,MACD(指数平滑异同移动平均线)反应很慢。主力启动行情时,往往是RSI先金叉,过几天MACD才跟上。原版公式这种"同日共振"的要求,会漏掉绝大多数真正的启动点。

