DIFF:EMA(CLOSE,12)-EMA(CLOSE,26);
DEA:EMA(DIFF,9);
MACD: (DIFF-DEA)*2,COLORSTICK;
CDA:=MACD<REF(MACD,1) AND MACD>0;
CDB:=MACD>=REF(MACD,1) AND MACD>0;
CDC:=MACD>REF(MACD,1) AND MACD<0;
CDD:=MACD<=REF(MACD,1) AND MACD<0;
STICKLINE(CDB,0,MACD,1,0),COLOREE00EE;
STICKLINE(CDA,0,MACD,1,0),COLOR00DDDD;
STICKLINE(CDC,0,MACD,1,0),COLORAA11BB;
STICKLINE(CDD,0,MACD,1,0),COLORBLUE;
XX:=EMA(MA(LOW,3)*0.96,30);
DIFF金叉:=IF(CROSS(DIFF,DEA) AND XX-REF(XX,1)>0 AND MACD>=REF(MACD,1) AND DIFF<=0,1,0);
DRAWTEXT(DIFF金叉=1,DIFF*1.5,'DIFF金叉'),COLORCDFFBB;
周DIFF:="MACD.DIF#WEEK";
周DEA:="MACD.DEA#WEEK";
周MACD:="MACD.MACD#WEEK";
周DIF金叉:=CROSS(周DIFF,周DEA);
MACD周金叉:=CROSS(周MACD,周DIFF) AND 周MACD>=(0-0.05) AND 周MACD<=0.02;
DRAWTEXT(MACD周金叉,周MACD*0.98,'MACD周金叉'),COLOR00FFFF;
MACD金叉:=CROSS(MACD,DIFF) AND MACD>=(0-0.05) AND MACD<=0.02;
DRAWTEXT(MACD金叉,MACD,'MACD金叉'),COLOR00FFFF;
低位金叉:=CROSS(DIFF,DEA) AND DIFF<-0.1;
DRAWTEXT(低位金叉,DEA*0.98,' 低位金叉'),COLORYELLOW;
JCCOUNT:=COUNT(CROSS(DIFF,DEA),BARSLAST(DEA>=0));
二次金叉:=CROSS(DIFF,DEA) AND DEA<0 AND COUNT(JCCOUNT=2,21)=1;
DRAWTEXT(二次金叉,DEA,' 二次金叉'),COLORFF00FF;
AA1:=BARSLAST(REF(CROSS(DIFF,DEA),1));
底背离:=REF(CLOSE,AA1+1)>CLOSE AND DIFF>REF(DIFF,AA1+1) AND CROSS(DIFF,DEA);
AA2:=BARSLAST(REF(CROSS(DEA,DIFF),1));
顶背离:=REF(CLOSE,AA2+1)<CLOSE AND REF(DIFF,AA2+1)>DIFF AND CROSS(DEA,DIFF);
{DRAWLINE(AA2=0,DEAA,顶背离,DEAA,0),COLORFFFFFF,LINETHICK2;
DRAWTEXT(FILTER(顶背离,5),DEA+4,'DIF顶背离'),COLOR00FF;}
DRAWTEXT(底背离 OR FILTER(顶背离,5),DIFF,IF(底背离,'DIFF底背离','DIF顶背离')),COLOR0099FF;
{月金叉,死叉}
月DIFF:="MACD.DIF#MONTH";
月DEA:="MACD.DEA#MONTH";
月DIF金叉:=CROSS(月DIFF,月DEA);
DRAWTEXT(周DIF金叉 OR 月DIF金叉,周DIFF*0.98,IF(月DIF金叉=1,'DIFF月金叉','DIFF周金叉')),COLORFF00FF;
DRAWTEXT(CROSS(周DEA,周DIFF) OR CROSS(月DEA,月DIFF),周DIFF*1.02,IF(CROSS(月DEA,月DIFF),'DIF月死叉','DIFF周死叉')),COLORCDFFBB;
{DRAWTEXT(月DIF金叉,DEA*0.92,'DIF月金叉'),COLOR00FFCC;
DRAWTEXT(CROSS(月DEA,月DIFF),DEA*1.02,'DIF月死叉'),ALIGN0,COLORA52A2A;};