MACD����ۻ�
DIFF:EMA(CLOSE,9) - EMA(CLOSE,26),COLORWHITE;
DEA:EMA(DIFF,12),COLORYELLOW;
MACD=2*(DIFF-DEA);
ZERO : 0;
GJ:=MAX(C,O);
L4:=LLV(GJ,4);
JL:=(HHV(DIFF,55)-LLV(DIFF,55))/5;
GT:=DEA>REF(DEA,1) AND REF(DEA,1)<REF(DEA,2);
A1:=BARSLAST(REF(GT,1));
STICKLINE(MACD>0 AND MACD>=REF(MACD,1),0,MACD,2,0),COLOR0000FF;
STICKLINE(MACD>0 AND MACD<REF(MACD,1),0,MACD,2,0),COLORFFFF00;
STICKLINE(MACD<0 AND MACD>=REF(MACD,1),0,MACD,2,0),COLORFF00FF;
STICKLINE(MACD<0 AND MACD<REF(MACD,1),0,MACD,2,0),COLOR00FF00;
�ױ���:=REF(L4,A1+1)>CLOSE AND DIFF>REF(DIFF,A1+1) AND GT;
DRAWLINE(A1=0,DEA,�ױ���,REF(DEA,A1),0),COLORRED,LINETHICK2;
DRAWLINE(�ױ���,DEA,�ױ���,REF(DEA,A1),0),COLORRED,LINETHICK2;
DRAWTEXT(�ױ���,REF(DEA,A1)*1.18,' �ױ���'),COLORFF00FF;
H4:=HHV(GJ,4);
GT2:=DEA<REF(DEA,1) AND REF(DEA,1)>REF(DEA,2);
A2:=BARSLAST(REF(GT2,1));
������:= REF(H4,A2+1)<H4 AND DIFF<REF(DIFF,A2+1) AND GT2;
DRAWLINE(A2=0 ,DEA,������,REF(DEA,A2),0),COLORGREEN,LINETHICK2;
DRAWLINE(������,DEA,������,REF(DEA,A2),0),COLORGREEN,LINETHICK2;
DRAWTEXT(������,REF(DEA,A2)*1.18,' ������'),COLORGREEN;
����:=CROSS(DEA,DIFF);
DRAWICON(����,DIFF*0.95,'2');
N1:BARSLAST(����),NODRAW;
N2:REF(BARSLAST(����),N1+1),NODRAW;
N3:REF(BARSLAST(����),N2+N1+2),NODRAW;
CL1:=LLV(C,N1+1),NODRAW;
DIFL1:=LLV(DIFF,N1+1),NODRAW;
CL2:=REF(CL1,N1+1),NODRAW;
DIFL2:=REF(DIFL1,N1+1),NODRAW;
CL3:=REF(CL2,N1+1),NODRAW;
DIFL3:=REF(DIFL2,N1+1),NODRAW;
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(DIFF/POW(10,PDIFL2));
MDIFB3:=INTPART(DIFF/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 ����ױ���,NODRAW;
BG:((MDIFB2>REF(MDIFB2,1))*REF(ֱ�ӵױ���,1)) OR ((MDIFB3>REF(MDIFB3,1))*REF(����ױ���,1)),NODRAW;
�ױ�����ʧ:=(REF(ֱ�ӵױ���,1) AND DIFL1<=DIFL2 ) OR (REF(����ױ���,1) AND DIFL1<=DIFL3);
STICKLINE(B OR BG,DIFF,DEA,8,0),COLORRED,LINETHICK2;
DRAWTEXT((B AND COUNT(B,2)=1),(DIFF*1.5),'��'),COLORYELLOW;
DRAWTEXT(FILTER(BG,10),DIFF*1.5,'��'),COLORMAGENTA;
DRAWTEXT(FILTER(�ױ�����ʧ,10),(DIFF+MACD),'ʧ'),COLORGREEN;
STICKLINE(BG,0,DIFF+DEA,5,0),COLORRED,LINETHICK3;
���:=CROSS(DIFF,DEA);
DRAWICON(���,DIFF*0.95,'1');
M1:=BARSLAST(���),NODRAW;
M2:=REF(BARSLAST(���),M1+1);
M3:=REF(BARSLAST(���),M2+M1+2);
CH1:=HHV(C,M1+1),NODRAW;
DIFH1:=HHV(DIFF,M1+1),NODRAW;
CH2:=REF(CH1,M1+1),NODRAW;
DIFH2:=REF(DIFH1,M1+1),NODRAW;
CH3:=REF(CH2,M1+1),NODRAW;
DIFH3:=REF(DIFH2,M1+1),NODRAW;
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(DIFF/POW(10,PDIFH2));
MDIFT3:=INTPART(DIFF/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 ���嶥����,NODRAW;
TG:=((MDIFT2<REF(MDIFT2,1))*REF(ֱ�Ӷ�����,1)) OR ((MDIFT3<REF(MDIFT3,1))*REF(���嶥����,1)),NODRAW;
��������ʧ:=(REF(ֱ�Ӷ�����,1) AND DIFH1>=DIFH2 ) OR (REF(���嶥����,1) AND DIFH1>=DIFH3);
STICKLINE(TG,0,DIFF+DEA,5,0), COLORGREEN,LINETHICK4;
STICKLINE(T OR TG,DIFF,DEA,8,0),COLORGREEN,LINETHICK2;
DRAWTEXT(FILTER(TG,20),DIFF*1.4,'��'),COLORMAGENTA;
DRAWTEXT(FILTER(��������ʧ,20),(DIFF+MACD),'ʧ'),COLORGREEN;