A1:=ref(HIGH,3)=HHV(HIGH,2*3+1); B1:=FILTER(A1,3); C1:=BACKSET(B1,3+1); D1:=FILTER(C1,3);{高点} A2:=ref(LOW,3)=LLV(LOW,2*3+1); B2:=FILTER(A2,3); C2:=BACKSET(B2,3+1); D2:=FILTER(C2,3);{低点} E1:=(ref(LLV(LOW,2*3),1)+ref(HHV(HIGH,2*3),1))/2; E2:=(HIGH+LOW)/2;{高低点出现在同一K线上时可作取舍} H1:=(D1 AND NOT(D2 AND E1>=E2)) OR BARSTATUS=2 OR BARSCOUNT(CLOSE)=1; H2:=D1 AND NOT(D2 AND E1>=E2); L1:=D2 AND NOT(D1 AND E1=E2); X1:=ref(BARSLAST(H1),1)+1; F1:=BACKSET(H1 AND COUNT(L1,X1)>0,LLVBARS(IF(L1,LOW,10000),X1)); G1:=F1>ref(F1,1); I1:=BACKSET(G1,2); LD:=I1>ref(I1,1);{过滤后低点} L2:=LD OR BARSTATUS=2 OR BARSCOUNT(CLOSE)=1; X2:=ref(BARSLAST(L2),1)+1; F2:=BACKSET(L2 AND COUNT(H2,X2)>0,HHVBARS(IF(H2,HIGH,0),X2)); G2:=F2>ref(F2,1); I2:=BACKSET(G2,2); HD:=I2>ref(I2,1);{过滤后高点} DRAWLINE(LD,L,HD,H,0),COLORWHITE,LINETHICK1,POINTDOT; DRAWLINE(HD,H,LD,L,0),COLORWHITE,LINETHICK1,POINTDOT; J1:=BACKSET(BARSTATUS=2,MIN(BARSLAST(HD),BARSLAST(LD))+1); J2:=J1>ref(J1,1); DRAWLINE(J2,IF(HD,H,L),BARSTATUS=2,IF(BARSLAST(HD)>BARSLAST(LD),H,L),0),COLORWHITE,LINETHICK1,POINTDOT; A3:=H; B3:=ref(H,ref(BARSLAST(HD),1)+1)>ref(H,ref(BARSLAST(HD),1)+2+ref(BARSLAST(HD),ref(BARSLAST(HD),1)+2)); D3:=A3 AND B3 AND HD; E3:=BACKSET(D3,ref(BARSLAST(HD),1)+2); HH:=E3>ref(E3,1);{找出全部长期高点} A4:=L>ref(L,ref(BARSLAST(LD),1)+1); B4:=ref(L,ref(BARSLAST(LD),1)+1); D4:=A4 AND B4 AND LD; E4:=BACKSET(D4,ref(BARSLAST(LD),1)+2); LL:=E4>ref(E4,1);{找出全部长期低点} DRAWICON(HH,H,5),ALIGN1; DRAWICON(LL,L,4),ALIGN1; H3:=HH OR BARSTATUS=2 OR BARSCOUNT(C)=1; {后面进行过滤,方法同前。只是不用考虑高低点出现在同一K线} X3:=ref(BARSLAST(H3),1)+1; F3:=BACKSET(H3 AND COUNT(LL,X3)>0,LLVBARS(IF(LL,L,POW(10,20)),X3)); G3:=F3>ref(F3,1); I3:=BACKSET(G3,2); LZ:=I3>ref(I3,1); {长期低点,也可供引用} L4:=LZ OR BARSTATUS=2 OR BARSCOUNT(C)=1; X4:=ref(BARSLAST(L4),1)+1; F4:=BACKSET(L4 AND COUNT(HH,X4)>0,HHVBARS(IF(HH,H,-POW(10,20)),X4)); G4:=F4>ref(F4,1); I4:=BACKSET(G4,2); HZ:=I4>ref(I4,1);{长期高点,也可供引用} DRAWLINE(HZ,H,LZ,L,0),COLORGREEN,LINETHICK1; DRAWLINE(LZ,L,HZ,H,0),COLORGREEN,LINETHICK1;{长期连线} K1:=BACKSET(BARSTATUS=2,MIN(BARSLAST(HZ),BARSLAST(LZ))+1); K2:=K1>ref(K1,1); DRAWLINE(K2,IF(HZ,H,L),BARSTATUS=2,C,0),COLORGREEN,LINETHICK1; {最后的长期连线,连在收盘价上} UU:=BACKSET(BARSTATUS=2,BARSLAST(LD)+1); VV:=UU>ref(UU,1); WW:=BACKSET(VV,ref(BARSLAST(LD),1)+2); XX:=WW>ref(WW,1); DRAWLINE(XX,L,VV,L,1),COLORMAGENTA,LINETHICK1; UU2:=BACKSET(BARSTATUS=2,BARSLAST(HD)+1); VV2:=UU2>ref(UU2,1); WW2:=BACKSET(VV2,ref(BARSLAST(HD),1)+2); XX2:=WW2>ref(WW2,1); DRAWLINE(XX2,H,VV2,H,1),COLORMAGENTA,LINETHICK1; 前一低:ref(L,BARSLAST(VV)),COLOR99FF66,POINTDOT,LINETHICK3; 前二低:ref(L,BARSLAST(XX)),COLORFF66FF,POINTDOT,LINETHICK3; 前一高:ref(H,BARSLAST(VV2)),COLOR99FF66,POINTDOT,LINETHICK3; 前二高:ref(H,BARSLAST(XX2)),COLORFF66FF,POINTDOT,LINETHICK3; 短高:=ref(H,BARSLAST(VV2));短低:=ref(L,BARSLAST(VV)); 短比:(C-短低)/(短高-短低),LINETHICK0;{以下语句为三角形部分} 底:ref(L,BARSLAST(VV)),COLORred,LINETHICK2; 頂:ref(H,BARSLAST(VV2)),COLORGreen,LINETHICK2; {下迭三角形:藍色三角形畫完介入} StickLine(VV,頂,底,0,0),Colorff6633,LINETHICK3;{} DRAWLINE(VV2,H,VV,L,0),Colorff6633,LINETHICK3;{斜} DRAWLINE(VV2,H,VV,頂,0),Colorff6633,LINETHICK3;{?} {DRAWLINE(c>0,H,VV,L,0),Colorcyan,LINETHICK2;}{斜} {DRAWLINE(c>1,H,VV,頂,0),Colorcyan,LINETHICK2;}{?} {上漲三角形:紅色三角形畫完出局} StickLine(VV2 ,頂,底,0,0),Colorred,LINETHICK3;{} DRAWLINE(VV,L,VV2,H,0),Colorred,LINETHICK3;{斜} DRAWLINE(VV,L,VV2,底,0),Colorred,LINETHICK3;{?};
|
|