买卖信号
1. **买入信号(底背驰)**: - 条件:绿柱面积<0 且 本次最低价<前次最低价 且 |绿柱面积|<|前次绿柱面积| -触发条件:DIFF上穿DEA(DIFF>DEA)且满足底背驰条件 - 输出:显示"底背"文字(黄色)、蓝色柱状线、黄色图标、买入信号 2. **卖出信号(顶背驰)**: - 条件:红柱面积>0 且 红柱面积<前次红柱面积 且 本次最高价>前次最高价 - 触发条件:DEA上穿DIFF(DEA>DIFF)且满足顶背驰条件 - 输出:显示"顶背"文字(红色)、绿色柱状线、绿色图标、卖出信号 3. **辅助信号**: - 9连阳计数(NT=9):当连续9天收盘价高于前4天时显示 - 9连阴计数(NT0=9):当连续9天收盘价低于前4天时显示
用法
1. **适用场景**:用于判断MACD的底背驰和顶背驰,是典型的趋势反转信号指标 2. **底背驰买入**:当股价创新低但MACD绿柱面积缩小(底背离),同时DIFF上穿DEA时,是潜在买入信号 3. **顶背驰卖出**:当股价创新高但MACD红柱面积缩小(顶背离),同时DEA上穿DIFF时,是潜在卖出信号 4. **注意事项**: - 需结合成交量和其他指标综合判断 - 9连阳/9连阴信号仅供参考,不作为主要
公式源码
DIFF : EMA(CLOSE,12) - EMA(CLOSE,26); DEA : EMA(DIFF,9); macd : 2*(DIFF-DEA), COLORSTICK; JC := DEA-DIFF; 绿柱面积:=IF(MACD<0,SUM(MACD,BARSLAST(JC<0)),0); 红柱面积:=IF(MACD>0,SUM(MACD,BARSLAST(JC>0)),0); 本次最低价:=LLV(L,BARSLAST(JC<0)); 本次最高价:=HHV(H,BARSLAST(JC>0)); X1:=IF (MACD<0,BARSLAST(crOSS(DIFF,DEA)),0); 前次绿柱面积:=REF(绿柱面积,X1+1); 前次最低价:=REF(本次最低价,X1+1); Y1:=IF((绿柱面积<0 AND Abs(绿柱面积)<ABS(前次绿柱面积) AND 本次最低价<前次最低价 ),1,0); RS1:= MACD<0 AND REF(MACD,1)<0 AND C<前次最低价 AND ABS(绿柱面积)<ABS(前次绿柱面积) AND ABS(MACD)<ABS(REF(MACD,1)); 底背驰:= IF (CROSS(DIFF,DEA),REF(Y1,1),0); DRAWTEXT(底背驰,-0.01,'底背'),COLOR00FFFF; STICKLINE(底背驰,0,-0.01,4,0),COLOR0000FF; DRAWICON(底背驰,0,23),COLORYELLOW; DRAWBAND(DIFF,RGB(200,50,55),DEA,RGB(50,100,10)); 遵:IF(DIFF>=DEA,DIFF,DRAWNULL),COLORRED; 守:IF(DEA>=DIFF,DEA,DRAWNULL),COLORFF9900; 纪:IF(DIFF>=DEA,DEA,DRAWNULL),COLOR00FFFF; 律:IF(DEA>=DIFF,DIFF,DRAWNULL),COLOR00FF00; X2:=IF (MACD>0,BARSLAST(CROSS(DEA,DIFF)),0); 前次红柱面积:=REF(红柱面积,X2+1); 前次最高价:=REF(本次最高价,X2+1); Y2:=IF((红柱面积>0 AND 红柱面积<前次红柱面积 AND 本次最高价>前次最高价 ),1,0); RS2:= MACD>0 AND REF(MACD,1)>0 AND C>前次最高价 AND ABS(红柱面积)<ABS(前次红柱面积) AND ABS(MACD)<ABS(REF(MACD,1)); 顶背驰:= IF (CROSS(DEA,DIFF),REF(Y2,1),0); DRAWICON(顶背驰,0,19),COLOR00FF00; STICKLINE(顶背驰,0,0.01,4,0),COLOR00FF00; DRAWTEXT(顶背驰,0.01,'顶背'),COLORFF0000; 买:IFF(底背驰,0.1,0),COLOR0000FF; 卖:IFF(顶背驰,0.1,0),COLOR00FF00; A1:=C>REF(C,4); NT:=BARSLASTCOUNT(A1); TJ11:=NT=9; TJ13:=ISLASTBAR AND BETWEEN(NT,5,8); AY:=(BACKSET(TJ11>0,9) OR BACKSET(TJ13>0,NT))*NT; DRAWTEXT(AY>0,MACD*1.02,VAR2STR(AY,0)),COLORLIRED; DRAWTEXT(NT=9,MACD*1.02,'9'),COLORGREEN; B1:=C<REF(C,4); NT0:=BARSLASTCOUNT(B1); TJ21:=NT0=9 ; TJ23:=ISLASTBAR AND BETWEEN(NT0,5,8); AY1:=(BACKSET(TJ21>0,9) OR BACKSET(TJ23>0,NT0))*NT0; DRAWTEXT(AY1>0,MACD*0.98,VAR2STR(AY1,0)),COLORGREEN; DRAWTEXT(NT0=9,MACD*0.98,'9'),COLORRED;