恭请编程老师:我需要涨停板画线公式。要求N日(比如100天)内所有的涨停板都向右画线到今天,不要向左画。特别说明的是:不是那种有涨停板画线,再有涨停板就重新画线。我需要N日所有的涨停板都画线到今天,线的取点是涨停板的收盘价和涨停板前一日的收盘价。能安时间顺序标注涨停1,涨停2~~,和显示价格的就更好了。只画涨停板线也可以。通达信使用。拜托了!!!期待高手出现。
受限于通达信的画图函数,只能做到如下地步。
另外,用到未来函数,因为这是画图,不作为买卖判断依据,故不影响指标的使用。
CD:CURRBARSCOUNT,NODRAW;
ZT:=C/REF(C,1)>1.095;
ZT1:ZT,NODRAW;
ZTD1:BARSLAST(ZT1),NODRAW;
STICKLINE(ZT,C,O,2,0),COLORRED;
{REF(ZTD1,1)+2)}
ZTD2: IF(ZTD1=0,REF(ZTD1,1)+1,ZTD1+1+REF(ZTD1,ZTD1+1)),NODRAW;
ZTD3: ZTD2+REF(ZTD1,ZTD2+1)+1,NODRAW;
ZTD4: ZTD3+REF(ZTD1,ZTD3+1)+1,NODRAW;
ZTD5: ZTD4+REF(ZTD1,ZTD4+1)+1,NODRAW;
ZTD6: ZTD5+REF(ZTD1,ZTD5+1)+1,NODRAW;
ZTD7: ZTD6+REF(ZTD1,ZTD6+1)+1,NODRAW;
ZTD8: ZTD7+REF(ZTD1,ZTD7+1)+1,NODRAW;
ZT2: ZT AND CD=REFX(ZTD2,CD-1)+1 ,NODRAW;
ZT3: ZT AND CD=REFX(ZTD3,CD-1)+1 ,NODRAW;
ZT4: ZT AND CD=REFX(ZTD4,CD-1)+1 ,NODRAW;
ZT5: ZT AND CD=REFX(ZTD5,CD-1)+1 ,NODRAW;
ZT6: ZT AND CD=REFX(ZTD6,CD-1)+1 ,NODRAW;
ZT7: ZT AND CD=REFX(ZTD7,CD-1)+1 ,NODRAW;
ZT8: ZT AND CD=REFX(ZTD8,CD-1)+1 ,NODRAW;
DRAWLINE(ZT,H,CD=1,REF(H,IF(ZT,REF(ZTD1,1)+1,ZTD1)),1),COLORYELLOW;
DRAWLINE(ZT2,H,CD=1,REF(H,ZTD2),1),COLORYELLOW;
DRAWLINE(ZT3,H,CD=1,REF(H,ZTD3),1),COLORYELLOW;
DRAWLINE(ZT4,H,CD=1,REF(H,ZTD4),1),COLORYELLOW;
DRAWLINE(ZT5,H,CD=1,REF(H,ZTD5),1),COLORYELLOW;
DRAWLINE(ZT6,H,CD=1,REF(H,ZTD6),1),COLORYELLOW;
DRAWLINE(ZT7,H,CD=1,REF(H,ZTD7),1),COLORYELLOW;
DRAWLINE(ZT8,H,CD=1,REF(H,ZTD8),1),COLORYELLOW;
DRAWTEXT(CD=1 AND ZTD1<150,REF(H,ZTD1),'1'),COLORWHITE;
DRAWTEXT(CD=1 AND ZTD2<150,REF(H,ZTD2),'2'),COLORWHITE;
DRAWTEXT(CD=1 AND ZTD3<150,REF(H,ZTD3),'3'),COLORWHITE;
DRAWTEXT(CD=1 AND ZTD4<150,REF(H,ZTD4),'4'),COLORWHITE;
DRAWTEXT(CD=1 AND ZTD5<150,REF(H,ZTD5),'5'),COLORWHITE;