DIF:=100*(EMA(CLOSE,SS)-EMA(CLOSE,LL)),COLORWHITE;
DEA:=EMA(DIF,MM),COLORYELLOW;
DRAWBAND(DIF,RGB(155,50,50),DEA,RGB(0,100,50));
MACD:(DIF-DEA)*2,COLORSTICK;
MACD120:=REF(MACD/2,BARSLAST(MACD=HHV(MACD,120))),COLORRED,LINETHICK1;
MACD250:=REF(MACD/2,BARSLAST(MACD=HHV(MACD,250))),COLORGREEN,LINETHICK1;
XG:=NOT(REF(MACD120,1)=MACD120);
STICKLINE(XG,0,MACD,1,0),COLORYELLOW;
STICKLINE(MACD>=MACD250,MACD250,MACD,1,0),COLORMAGENTA;
������:=NOT(REF(MACD120,1)=REF(MACD250,1)) AND MACD120=MACD250;
DRAWTEXT(������,0,'�I��ţ����'),COLORYELLOW;
����:=CROSS(DEA,DIF);
N1:=BARSLAST(����);
N2:=REF(BARSLAST(����),N1+1);
N3:=REF(BARSLAST(����),N2+N1+2);
CL1:=LLV(C,N1+1);
DIFL1:=LLV(DIF,N1+1);
CL2:=REF(CL1,N1+1);
DIFL2:=REF(DIFL1,N1+1);
CL3:=REF(CL2,N1+1);
DIFL3:=REF(DIFL2,N1+1);
PDIFL2:=IF(DIFL2>0,INTPART(LOG(DIFL2))-1,INTPART(LOG(-DIFL2))-1);
MDIFL2:=INTPART(DIFL2/POW(10,PDIFL2));
PDIFL3:=IF(DIFL3>0,INTPART(LOG(DIFL3))-1,INTPART(LOG(-DIFL3))-1);
MDIFL3:=INTPART(DIFL3/POW(10,PDIFL3));
MDIFB2:=INTPART(DIF/POW(10,PDIFL2));
MDIFB3:=INTPART(DIF/POW(10,PDIFL3));
ֱ�ӵױ���:=(CL1<CL2 ) AND (MDIFB2>MDIFL2) AND (MACD<0 AND REF(MACD,1)<0) AND MDIFB2<=REF(MDIFB2,1);
����ױ���:=(CL1<CL3 AND CL3<CL2 ) AND (MDIFB3>MDIFL3) AND (MACD<0 AND REF(MACD,1)<0) AND MDIFB3<=REF(MDIFB3,1);
B:=(ֱ�ӵױ��� OR ����ױ���);
BG:=((MDIFB2>REF(MDIFB2,1))*REF(ֱ�ӵױ���,1)) OR ((MDIFB3>REF(MDIFB3,1))*REF(����ױ���,1));
�ױ�����ʧ:=(REF(ֱ�ӵױ���,1) AND DIFL1<=DIFL2 ) OR (REF(����ױ���,1) AND DIFL1<=DIFL3);
STICKLINE(B OR BG,DIF,DEA,1,0),COLORRED;
DRAWTEXT((B AND COUNT(B,2)=1),(DIF*1.1),'�ۻ�'),COLORYELLOW;
DRAWTEXT(FILTER(BG,10),(DIF*1.1),'�ṹ�γ�'),COLORMAGENTA;
DRAWTEXT(FILTER(�ױ�����ʧ,10),DIF*1.1,'��ʧ'),COLORGREEN;
STICKLINE(BG,0,DIF,1,0), COLORRED;
���:=CROSS(DIF,DEA);
M1:=BARSLAST(���);
M2:=REF(BARSLAST(���),M1+1);
M3:=REF(BARSLAST(���),M2+M1+2);
CH1:=HHV(C,M1+1);
DIFH1:=HHV(DIF,M1+1);
CH2:=REF(CH1,M1+1);
DIFH2:=REF(DIFH1,M1+1);
CH3:=REF(CH2,M1+1);
DIFH3:=REF(DIFH2,M1+1);
PDIFH2:=IF(DIFH2>0,INTPART(LOG(DIFH2))-1,INTPART(LOG(-DIFH2))-1);
MDIFH2:=INTPART(DIFH2/POW(10,PDIFH2));
PDIFH3:=IF(DIFH3>0,INTPART(LOG(DIFH3))-1,INTPART(LOG(-DIFH3))-1);
MDIFH3:=INTPART(DIFH3/POW(10,PDIFH3));
MDIFT2:=INTPART(DIF/POW(10,PDIFH2));
MDIFT3:=INTPART(DIF/POW(10,PDIFH3));
ֱ�Ӷ�����:=(CH1>CH2 ) AND (MDIFT2<MDIFH2) AND (MACD>0 AND REF(MACD,1)>0) AND MDIFT2>=REF(MDIFT2,1);
���嶥����:=(CH1>CH3 AND CH3>CH2 ) AND (MDIFT3<MDIFH3) AND (MACD>0 AND REF(MACD,1)>0) AND MDIFT3>=REF(MDIFT3,1);
T:=(ֱ�Ӷ����� OR ���嶥����);
TG:=((MDIFT2<REF(MDIFT2,1))*REF(ֱ�Ӷ�����,1)) OR ((MDIFT3<REF(MDIFT3,1))*REF(���嶥����,1));
��������ʧ:=(REF(ֱ�Ӷ�����,1) AND DIFH1>=DIFH2 ) OR (REF(���嶥����,1) AND DIFH1>=DIFH3);
STICKLINE(TG,0,DIF,1,0), COLORGREEN;
STICKLINE(T OR TG,DIF,DEA,1,0),COLORGREEN;
DRAWTEXT(FILTER(TG,20),(DIF*1.1),'�ṹ�γ�'),COLORMAGENTA;
DRAWTEXT(FILTER(��������ʧ,20),DIF*1.1,'��ʧ'),COLORGREEN;
MACDDIF:=IF(ABS(MACD)>ABS(DIF),MACD,DIF);
DRAWICON(REF(DIF,1)>REF(DIF,2) AND DIF<REF(DIF,1) AND DIF>0 AND DIF>DEA,MACDDIF*1.1,39),COLORGREEN;
DRAWICON(REF(DIF,1)<REF(DIF,2) AND DIF>REF(DIF,1) AND DIF<0 AND DIF<DEA,MACDDIF*1.1,38),COLORRED;
X_1:=EMA(CLOSE,12)-EMA(CLOSE,26);
X_2:=EMA(X_1,9);
DDD:100*(X_1-X_2)*2,COLORFF00FF,LINETHICK2;
DDD2:EMA(DDD,N),COLORGREEN,LINETHICK2;
X_3:=CROSS(DDD,DDD2) AND DDD2>=0 AND DDD2<1.5 AND CLOSE/REF(CLOSE,1)>1 AND CLOSE>MA(CLOSE,5) AND CROSS(CLOSE,REF(HHV(HIGH,15),1));
DRAWICON(X_3,0,38);
STICKLINE(X_3,0,10,1,0),COLORBLUE;