P2:=240;
TC1:=IF(H=HHV(H,P2),C,DRAWNULL);
TC2:=CONST(BARSLAST(TC1=H))+1;
UPPER:=CONST(IF(TC2=1,C,REF(C,TC2-1)));
BC1:=IF(L=LLV(L,P2),C,DRAWNULL);
BC2:=CONST(BARSLAST(BC1=L))+1;
LOWER:=CONST(IF(BC2=1,C,REF(C,BC2-1)));
LP:=CURRBARSCOUNT<=BC2 AND C=LOWER;{低点定位}
HP:=CURRBARSCOUNT<=TC2 AND C=UPPER;{高点定位}
NOD:=(IF(TC2>BC2,TC2,BC2)-IF(TC2>BC2,BC2,TC2));{用时}
LR1:=FORCAST(C,NOD+1);
NP:=IF(CURRBARSCOUNT<=MAX(BC2,TC2),CONST(IF(MIN(TC2,BC2)=1,LR1,
REF(LR1,MIN(TC2,BC2)-1))),DRAWNULL),POINTDOT,COLORFF0000;{近点}
LR2:=SLOPE(C,NOD+1);
LR3:=CONST(IF(MIN(TC2,BC2)=1,LR2,REF(LR2,MIN(TC2,BC2)-1)));
FP:=NP-LR3*(NOD),POINTDOT,COLORFF0000;{远点}
EQU:=(NP+FP)/2,POINTDOT,COLOR0000FF;
AD:=ABS(NP-FP);{高差};
DBL:=BARSLAST(BC1!=DRAWNULL)+1;
DBH:=BARSLAST(TC1!=DRAWNULL)+1;
BSP:=IF(BC2>TC2,DBL,DBH)-1;
LRL:=IF(NP>FP,FP+AD/NOD*BSP,FP-AD/NOD*BSP);
AT1:=IF(BETWEEN(CURRBARSCOUNT,BC2,TC2) AND H>LRL,H,LRL);
AT2:=HHV(AT1-LRL,MAX(BC2,TC2));
AT3:=CONST(BARSLAST(AT1-LRL=AT2));
AT4:=CONST(IF(AT3=0,H,REF(H,AT3)));
AT5:=CONST(IF(AT3=0,AT1-LRL,REF(AT1-LRL,AT3)));
ATL:=LRL+AT5;
UT1:=IF(BETWEEN(CURRBARSCOUNT,BC2,TC2) AND L<LRL,L,LRL);
UT2:=HHV(LRL-UT1,MAX(BC2,TC2));
UT3:=CONST(BARSLAST(LRL-UT1=UT2));
UT4:=CONST(IF(UT3=0,H,REF(H,UT3)));
UT5:=CONST(IF(UT3=0,LRL-UT1,REF(LRL-UT1,UT3)));
UTL:=LRL-UT5;
RH:=IF(CURRBARSCOUNT>=MIN(BC2,TC2)-10,ATL,CONST(REF(ATL,MIN(BC2,TC2)-11)));{限制高}
RL:=IF(CURRBARSCOUNT>=MIN(BC2,TC2)-10,UTL,CONST(REF(UTL,MIN(BC2,TC2)-11)));{限制低}
中轨:IF(NP>FP,IF(LRL<=RH,LRL,DRAWNULL),IF(LRL>=RL,LRL,DRAWNULL)),COLORBLUE,LINETHICK1,DOTLINE;
上轨:IF(NP>FP,IF(ATL<=RH,ATL,DRAWNULL),IF(ATL>=RL,ATL,DRAWNULL)),COLORMAGENTA,LINETHICK1,DOTLINE;
下轨:IF(NP>FP,IF(UTL<=RH,UTL,DRAWNULL),IF(UTL>=RL,UTL,DRAWNULL)),COLOR00EE00,LINETHICK1,DOTLINE;
DRAWICON(CROSS(C,上轨),上轨,1);
DRAWICON(CROSS(下轨,C),下轨,2);
DRAWNUMBER(ISLASTBAR,上轨,上轨),COLOR00FFFF,LINETHICK2;
DRAWNUMBER(ISLASTBAR,中轨,中轨),COLORWHITE,LINETHICK2;
DRAWNUMBER(ISLASTBAR,下轨,下轨),COLOR00FF00,LINETHICK2;
ZRS:=CONST(DYNAINFO(3)),NODRAW;
AW1:=5*(EMA(CLOSE,12)-EMA(CLOSE,26))+ZRS,COLORMAGENTA,DOTLINE;
AW2:=EMA(AW1,9),COLORLIBLUE,DOTLINE;
MACDQ:=(AW1-AW2)*2+ZRS;
STICKLINE(AW1>=AW2,ZRS,MACDQ,0,1),COLORRED;
STICKLINE(AW1<AW2,ZRS,MACDQ,0,1),COLORCYAN;
C,COLORWHITE,LINETHICK2;
均价:SUM(V*C,0)/SUM(V,0),COLORGREEN,LINETHICK2;
IF(均价<=REF(均价,1),均价,DRAWNULL),COLORGREEN,LINETHICK2;
IF(均价>=REF(均价,1),均价,DRAWNULL),COLORYELLOW,LINETHICK2;
{DRAWTEXT(CURRBARSCOUNT=4,均价,'均'),COLORWHITE,LINETHICK2;
DRAWNUMBER(CURRBARSCOUNT=2,均价,均价),COLORWHITE,LINETHICK2;
DRAWTEXT_FIX(1,0.000,1-0.05,0,DYBLOCK),COLORWHITE;
DRAWTEXT_FIX(1,0.0550,1-0.05,0,HYBLOCK),COLORYELLOW;
DRAWTEXT_FIX(1,0.1050,1-0.05,0,GNBLOCK),COLORYELLOW;}; |