MM:=5; M:=20; G:=MA(C,5); D:=MA(C,10);//QHQQW.COM NNH:=BARSLAST(H=HHV(H,M)) ,NODRAW; NNL:=BARSLAST(L=LLV(L,M)) ,NODRAW; NN:=IF(REF(G,NNH)>REF(D,NNH) AND NNH<=M-3,NNH,IF(REF(G,NNL)0,NN,M-2) ,NODRAW; H1:=REF(H,NNN)=HHV(H,M-1); L1:=REF(L,NNN)=LLV(L,M-1); FG01:=BACKSET(H1,NNN+1)>BACKSET(H1,NNN),NODRAW;//只设置前面第M-1个 FD01:=BACKSET(L1,NNN+1)>BACKSET(L1,NNN) ,NODRAW; FG02:=FG01=FD01 AND G>D,NODRAW; FD02:=FG01=FD01 AND G=M-2,M-2,BARSLAST(FD01)))) AND FD02=0 ,NODRAW; FD0:=FD01 AND IF(FD02=1,L=LLV(L,BARSLAST(REF(FG01,1))+1),L=LLV(L,IF(BARSLAST(H=HHV(L,M))>=M-2,M-2,BARSLAST(FG01)))) AND FG02=0 ,NODRAW; //高低点间周期 GT:=BARSLAST(FG0),NODRAW; DT:=BARSLAST(FD0),NODRAW; //第一次处理高低点间多余的点 LLLL:=DT=0 AND REF(DT,1)REF(L,REF(DT,1)+1),NODRAW; FG1:=BACKSET(REFX(GT,1)=0 AND GT
=REF(H,GT),GT+1),NODRAW; FD1:=BACKSET(REFX(DT,1)=0 AND DTREF(D,BARSLAST(L=LLV(L,M))),BARSLAST(L=LLV(L,M))REF(L,REF(DT,1)+1),1,0),NODRAW; //再次周期 GT1:=BARSLAST(FG11<>1 AND FG1<>1 AND FG0),NODRAW; DT1:=BARSLAST(FD11<>1 AND FD1<>1 AND FD0),NODRAW; FD2:=BACKSET(REFX(GT1,1)=0 AND DT1<3 AND GT1-DT1<4 AND REF(L,DT1)>LLV(L,GT1+M-2),DT1+1),NODRAW; FG2A:=BACKSET(REFX(GT1,1)=0 AND DT1<3 AND GT1-DT1<4 AND REF(L,DT1)<=LLV(L,GT1+M-2) AND REF(H,GT1)>HHV(H,GT1+M-2),GT1+1),NODRAW; FG2B:=IF(GT1=0 AND DT1<4 AND REF(GT1,1)-DT1<4 AND REF(L,DT1)<=LLV(L,REF(GT1,1)+M-1) AND H>HHV(H,REF(GT1,1)+M-1),1,0),NODRAW; FG2:=BACKSET(REFX(DT1,1)=0 AND GT1<3 AND DT1-GT1<4 AND REF(H,GT1)=HHV(L,DT1+M-2) AND REF(L,DT1)>LLV(L,DT1+M-2),DT1+1),NODRAW; FD2B:=IF(DT1=0 AND GT1<4 AND REF(DT1,1)-GT1<4 AND REF(H,GT1)>=HHV(H,REF(DT1,1)+6) AND L>LLV(L,REF(DT1,1)+M-1),1,0),NODRAW; TTTTTT:= H=REF(L,REF(DT1,1)+1) ,1,0),NODRAW; //前短后长,前低后高(去低); FD231:=BACKSET(REFX(GT1,1)=0 AND DT1>3 AND GT1>DT1 AND GT1-DT1<4 AND REFX(H,1)>REF(H,GT1) AND REF(L,DT1)>REF(LLV(L,10),DT1),DT1+1),NODRAW; FG23:=BACKSET(REFX(GT1,1)=0 AND DT1>3 AND GT1>DT1 AND GT1-DT1<4 AND REFX(H,1)>REF(H,GT1) AND (REF(H,GT1)3 AND DT1>GT1 AND DT1-GT1<4 AND REFX(L,1)3 AND DT1>GT1 AND DT1-GT1<4 AND REFX(L,1)REF(LLV(L,13),DT1) OR REF(FG231,GT1)=0),DT1+1),NODRAW; //前短后长,去3; FDD23:=REF(H,GT1)3 AND GT1>DT1 AND GT1-DT1<4 AND REFX(H,1)LLV(L,DT1+5),DT1+1),NODRAW; FG24:=BACKSET(REFX(DT1,1)=0 AND GT1>3 AND DT1>GT1 AND DT1-GT1<4 AND REFX(L,1)>LLV(L,DT1+3) AND REF(H,GT1)1 AND FG23<>1 AND FG231<>1 AND FG24<>1 AND FG2<>1 AND FG2A<>1 AND FG2B<>1 AND GT1=0),NODRAW; DT2:=BARSLAST(FD21<>1 AND FD23<>1 AND FD231<>1 AND FD24<>1 AND FD2<>1 AND FD2A<>1 AND FD2B<>1 AND DT1=0),NODRAW; FG3:=BACKSET(REFX(GT2,1)=0 AND GT2=REF(H,GT2),GT2+1),NODRAW; FD3:=BACKSET(REFX(DT2,1)=0 AND DT2REF(L,REF(DT2,1)+1),1,0),NODRAW; GT3:=BARSLAST(GT2=0 AND FG3<>1 AND FG31<>1 ),NODRAW; DT3:=BARSLAST(DT2=0 AND FD3<>1 AND FD31<>1),NODRAW; FG4:=BACKSET(REFX(GT3,1)=0 AND GT3=REF(H,GT3),GT3+1),NODRAW; FD4:=BACKSET(REFX(DT3,1)=0 AND DT3REF(L,REF(DT3,1)+1),1,0),NODRAW; HHH:=GT3=0 AND FG31<>1 AND FG3<>1,NODRAW; LLL:=DT3=0 AND FD31<>1 AND FD3<>1,NODRAW; //DRAWLINE1(HHH ,H,LLL,L,0),COLORGREEN,LINETHICK3;//绿色 //DRAWLINE1(LLL,L,HHH ,H,0),COLORRED,LINETHICK3;//红色 //最后一段画线 N1:=BARSLAST(HHH)+1; N2:=BARSLAST(LLL)+1; //DRAWLINE3(ISLASTBAR&&MIN(N1,N2)=N2&&L>REF(L,N2-1),REF(L,N2-1),N2-1,ISLASTBAR,H,0,0),COLORRED,LINETHICK3;//红色 //DRAWLINE3(ISLASTBAR&&MIN(N1,N2)=N1&&HREF(H,1)&&H>REFX(H,1)&&L>REF(L,1)&&L>REFX(L,1)&&CO; DRAWICON(HHH,H,2); DRAWICON(LLL,L,1),VALIGN0; Z:=IF(HHH,H,L); //DRAWHORIZONTALLINE(REF(HHH||LLL,1),REF(Z,1),COLORYELLOW); DRAWSL(BARSLAST(HHH)BARSLAST(LLL),REF(L,BARSLAST(LLL)),0,1,0,COLORGREEN); VERTLINE(REFX(HHH,1),COLORGREEN); VERTLINE(REFX(LLL,1),COLORRED); DRAWNUMBER(REFX(HHH,1)||ISLASTBAR&&BARSLAST(HHH)>BARSLAST(LLL),REF(L,BARSLAST(LLL)),REF(L,BARSLAST(LLL)),0,COLORGREEN),VALIGN0; DRAWNUMBER(REFX(LLL,1)||ISLASTBAR&&BARSLAST(HHH)VALUEWHEN(XX,H),BARSLAST(XX)+1),ICON(1,'ICO12'); //DRAWSL( CROSS( BACKSET(XX1,HHVBARS(H,BARSLAST(XX)+1)+1),0.5),H,0,5,0,COLORGREEN); YY:=BARSLAST(HHH)>BARSLAST(LLL)&&H>HV(H,BARSLAST(LLL)),ICON(0,'ICO145'),VALIGN0; YY1:=BARSLAST(HHH)>BARSLAST(LLL)&&EXIST(YY,BARSLAST(LLL))&&REFX(YY||ISLASTBAR&&BARSLAST(HHH)>BARSLAST(LLL),1)&&EXIST(L