N:=33;UR:=6;
LR:=6;
TC1:=IF(H=HHV(H,8*UR),H,NULL);
TC2:=REFX1(BARSLAST(TC1=H),10000)+1;
UPPER:=REFX1(IF(TC2=1,H,REF(H,TC2-1)),10000);
BC1:=IF(L=LLV(L,8*LR),L,NULL);
BC2:=REFX1(BARSLAST(BC1=L),10000)+1;
LOWER:=REFX1(IF(BC2=1,L,REF(L,BC2-1)),10000);
CURRBARSCOUNT:=DATACOUNT-BARPOS+1;
LP:=CURRBARSCOUNT<=BC2 AND L=LOWER;
HP:=CURRBARSCOUNT<=TC2 AND H=UPPER;
STICKLINE1(IF(BC2>TC2,LP,NULL),LOWER,UPPER,3,0),COLORRED,LINETHICK1;
DRAWSL(IF(BC2>TC2,LP,NULL),C,0,1000,3,COLORRED),LINETHICK5;
STICKLINE1(IF(BC2>TC2,NULL,HP),LOWER,UPPER,3,0),COLORGREEN,LINETHICK1;
DRAWSL(IF(BC2>TC2,NULL,HP),C,0,1000,3,COLORGREEN),LINETHICK2;
N1:=BARSLAST(LP)+1,NODRAW;
N2:=BARSLAST(HP)+1,NODRAW;
//STICKLINE1(IF(BC2>TC2,LP,HP),LOWER,UPPER,0,0),COLORGREEN;
NOD:=(IF(TC2>BC2,TC2,BC2)-IF(TC2>BC2,BC2,TC2));
LR1:=FORCAST(C,NOD+1);
NP:=IF(CURRBARSCOUNT<=MAX(BC2,TC2),REFX1(IF(MIN(TC2,BC2)=1,LR1,REF(LR1,MIN(TC2,BC2)-1)),10000),NULL),POINTDOT,COLORFFFFFF;
LR2:=SLOPE(C,NOD+1);
LR3:=REFX1(IF(MIN(TC2,BC2)=1,LR2,REF(LR2,MIN(TC2,BC2)-1)),10000);
FP:=NP-LR3*(NOD),POINTDOT,COLORFFFFFF;
EQU:(NP+FP)/2,COLORWHITE,LINETHICK1;
EQW:IF(BC2>TC2,EQU,NULL),COLORRED,LINETHICK1;
EQY:IF(BC2<TC2,EQU,NULL),COLORGREEN,LINETHICK1;
参考:
N:=33;
UR:=6;
LR:=6;
TC1:=IF(H=HHV(H,8*UR),H,NULL);
TC2:=REFX1(BARSLAST(TC1=H),10000)+1;
UPPER:=REFX1(IF(TC2=1,H,REF(H,TC2-1)),10000);
BC1:=IF(L=LLV(L,8*LR),L,NULL);
BC2:=REFX1(BARSLAST(BC1=L),10000)+1;
LOWER:=REFX1(IF(BC2=1,L,REF(L,BC2-1)),10000);
CURRBARSCOUNT:=DATACOUNT-BARPOS+1;
LP:=CURRBARSCOUNT<=BC2 AND L=LOWER;
HP:=CURRBARSCOUNT<=TC2 AND H=UPPER;
STICKLINE1(IF(BC2>TC2,LP,NULL),LOWER,UPPER,0,0),COLORRED;
DRAWSL(IF(BC2>TC2,LP,NULL),C,0,1000,3,COLORRED);
STICKLINE1(IF(BC2>TC2,NULL,HP),LOWER,UPPER,0,0),COLORGREEN;
DRAWSL(IF(BC2>TC2,NULL,HP),C,0,1000,3,COLORGREEN);
N1:=BARSLAST(LP)+1,NODRAW;
N2:=BARSLAST(HP)+1,NODRAW;
//STICKLINE1(IF(BC2>TC2,LP,HP),LOWER,UPPER,0,0),COLORGREEN;
NOD:=(IF(TC2>BC2,TC2,BC2)-IF(TC2>BC2,BC2,TC2));
LR1:=FORCAST(C,NOD+1);
NP:=IF(CURRBARSCOUNT<=MAX(BC2,TC2),REFX1(IF(MIN(TC2,BC2)=1,LR1,REF(LR1,MIN(TC2,BC2)-1)),10000),NULL),POINTDOT,COLORFFFFFF;
LR2:=SLOPE(C,NOD+1);
LR3:=REFX1(IF(MIN(TC2,BC2)=1,LR2,REF(LR2,MIN(TC2,BC2)-1)),10000);
FP:=NP-LR3*(NOD),POINTDOT,COLORFFFFFF;
EQU:(NP+FP)/2,COLORWHITE;
EQW:IF(BC2>TC2,EQU,NULL),COLORRED;
EQY:IF(BC2<TC2,EQU,NULL),COLORGREEN;