|
CC2:=REF(C,1);
波峰距离: PEAKBARS(3,百分比,1),NODRAW;
波谷值:=TROUGH(2,百分比,1);
波谷距离:=TROUGHBARS(2,百分比,1);
距离:=CURRBARSCOUNT,NODRAW;
比前跌率:=(CC2-C)*100/CC2;
本日跌率:=(O-C)*100/O;
距离FK1:=波峰距离-1;{波峰右边K距离}
线位置:= REF(L,距离FK1),{NODRAW};
TJ11:=波峰距离>波谷距离+5 AND 波峰距离<120;
TJ2:=REF(本日跌率,距离FK1)>3 OR REF(比前跌率,距离FK1)>3;{跌率>3%}
TJ33:=距离<240;
TJ4:=REF(C,距离FK1)<REF(O,距离FK1) {阴K}
AND REF(C,距离FK1)<REF(MIN(C,O),距离FK1+1);{跌破前K}
画线条件:= 线位置=REF(线位置,1) AND TJ2 AND TJ4;{画线条件}
STICKLINE(画线条件,线位置,线位置,15,1),colormagenta;{画线}
画线: IF(画线条件,线位置,DRAWNULL),colormagenta;{画线}
打字条件:=FILTER(画线条件 AND TJ11 AND TJ33,20);
DRAWTEXT(打字条件,线位置*1.01,'凹口平衡线'),colorgreen;{此行可省};
波谷值1: CONST(TROUGH(2,百分比,1)),NODRAW;{前M个ZIG转向波谷值}
波谷距离1:= 1+CONST(TROUGHBARS(2,百分比,1)),NODRAW;{前M个ZIG转向波谷到当前距离}
{例如:TROUGH(2,5,2)表示%5最低价ZIG转向的前2个波谷到当前的周期数};
波峰值:= CONST(PEAK(1,百分比,右数峰序));
{例如EAK(1,5,1)表示%5最高价ZIG转向的上一个波峰的数值}
允许误差:=0.024;
XG:= ABS(波峰值-波谷值1)<=允许误差 {AND BARSCOUNT(V)>60};
波峰距离1:= 1+CONST(PEAKBARS(1,百分比,右数峰序)),NODRAW;
{PEAKBARS(K,N,M)表示之字转向ZIG(K,N)的前M个波峰到当前的周期数,M必须大于等于1}
距离1:=CURRBARSCOUNT;
DRAWLINE(距离1=波峰距离1 AND XG,波谷值1,距离=1,波谷值1,1),colormagenta;
DRAWTEXT(距离1=波谷距离1 AND XG,L*0.98,' 精准峰谷线'),coloryellow;
DRAWICON(距离1=波峰距离1,H*1.01,2);{波峰位置}
DRAWICON(距离1=波谷距离1,L*0.985,1);{波谷位置}
精准点:=(ABS(H-波谷值1)<=允许误差 OR ABS(L-波谷值1)<=0.024) {AND 距离<=120};
STICKLINE(精准点,波谷值1,波谷值1,3,1),coloryellow;
{画精准谷底线}
波谷值2:= CONST(TROUGH(2,百分比,2));
波谷值3:= CONST(TROUGH(2,百分比,3));
波谷值4:= CONST(TROUGH(2,百分比,4));
波谷距离2:= 1+CONST(TROUGHBARS(2,百分比,2));
波谷距离3:= 1+CONST(TROUGHBARS(2,百分比,3));
波谷距离4:= 1+CONST(TROUGHBARS(2,百分比,4));
XG2:= ABS(波谷值1-波谷值2)<=允许误差;
XG3:= ABS(波谷值1-波谷值3)<=允许误差;
XG4:= ABS(波谷值1-波谷值4)<=允许误差;
XGL:=(距离1=波谷距离2 AND XG2) OR (距离1=波谷距离3 AND XG3)
OR (距离1=波谷距离4 AND XG4);
DRAWLINE(XGL,波谷值1,距离1=1,波谷值1,1),colorligreen;
DRAWTEXT(XGL,L*0.98,' 精准谷底线'),colorwhite; |
|