n:=15;
z:=ZIG(4,n);
H1:=Z
H2:=FILTER(BACKSET(H1,2),1);
L1:=Z>REF(Z,1) AND REF(Z,1)=LLV(Z,3);
L2:=FILTER(BACKSET(L1,2),1);
H3:=BARSLAST(H2);
L3:=BARSLAST(L2);
h4:=REF(H,REF(h3,1)+1);
l4:=REF(L,REF(l3,1)+1);
h5:=COUNT(h2,0)/2<>FLOOR(COUNT(h2,0)/2);
l5:=COUNT(l2,0)/2<>FLOOR(COUNT(l2,0)/2);
var1:=(h4-REF(L,l3))/10;
var2:=(H-REF(L,l3))/var1>2 AND (H-REF(L,l3))/var1<5;
var3:=(REF(h3,1)-l3)/10;
var4:=l3>var3*2 AND l310;
var5:=h2 AND NOT(h5) AND var2 AND var4;
var6:=h2 AND h5 AND var2 AND var4;
var7:=REF(var5,h3) AND l3=h3*2;
var8:=REF(var5,h3) AND h3=REF(h3,h3+1);
var9:=REF(var6,h3) AND l3=h3*2;
vara:=REF(var6,h3) AND h3=REF(h3,h3+1);
varb:=BARSLAST(var5 OR var6);
varc:=REF(H,h3+REF(h3,h3+1)+1);
vard:=REF(L,l3)+(H-varc)/(REF(h3,1)+1)*l3;
vare:=REF(L,l3)+(REF(L,l3)-varc)/REF(h3,l3)*l3;
varf:=COUNT(var7,h3) AND var8;
varg:=COUNT(var9,h3) AND vara;
varh:=(varf OR varg) AND C
STICKLINE(varb>=0 AND varb<100,REF(L,varb+REF(l3,varb)),REF(L,varb+REF(l3,varb)),10,0),
colorffff00;
STICKLINE(varb>=0 AND varb<100,REF(vard,varb),REF(vard,varb),10,0),
colorffff00;
STICKLINE(varb>=0 AND varb<100,REF(vare,varb),REF(vare,varb),10,0),
colorffff00;
A1:=REF(H,3)=HHV(H,2*3+1); B1:=FILTER(A1,3); C1:=BACKSET(B1,3+1); D1:=FILTER(C1,3);
A2:=REF(L,3)=LLV(L,2*3+1); B2:=FILTER(A2,3); C2:=BACKSET(B2,3+1); D2:=FILTER(C2,3);
E1:=(REF(LLV(L,2*3),1)+REF(HHV(H,2*3),1))/2; E2:=(H+L)/2;
H1:=(D1 AND NOT(D2 AND E1>=E2)) OR BARSTATUS=2 OR BARSCOUNT(C)=1;
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,L,10000),X1));
G1:=F1>REF(F1,1); I1:=BACKSET(G1,2); LD:=I1>REF(I1,1);
L2:=LD OR BARSTATUS=2 OR BARSCOUNT(C)=1;
X2:=REF(BARSLAST(L2),1)+1; F2:=BACKSET(L2 AND COUNT(H1,X2)>0,HHVBARS(IF(H1,H,0),X2));
G2:=F2>REF(F2,1); I2:=BACKSET(G2,2); HD:=I2>REF(I2,1);
DRAWLINE(LD,L,HD,H,0),colorred,LINETHICK1;
DRAWLINE(HD,H,LD,L,0),colorred,LINETHICK1;
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,10),ALIGN1; DRAWICON(LL,L,12),ALIGN1;
H3:=HH OR BARSTATUS=2 OR BARSCOUNT(C)=1;
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);
PARTLINE(C>EMA(H,144),EMA(H,144)),colorred;
PARTLINE(C
PARTLINE(C>EMA(L,144),EMA(L,144)),colorred;
PARTLINE(C
N:=SYSPARAM(3)-SYSPARAM(1)+10;
A:=BACKSET(ISLASTBAR,HHVBARS(H,N)+1);
B:=COUNT(A,N)=1;
前高:=IF(N>0,REF(H,BARSLAST(B)),0),COLORWHITE;