以前写公式多次使用过drawline函数,有时确实有困惑,和预期不同,但又没弄清到底是怎么回事。得过且过了。那天看冷妞妞的回帖(最初的感觉有点怪),再一次激发了我对drawline()算法重新了解的兴趣。 Drawline(xx1,y1,xx2,y2,0) 函数 在(x,y)平面,画从点A=(x1,Y1) 到点B=(x2,y2)的直线段。其中x1是满足条件xx1的K线的x坐标,y1是相应的y坐标值。(x2,Y2) 是线段终点B的坐标。 要求点A在点B的左边。 如果只有一点A满足条件xx1,另一点B满足条件xx2,画出的是一条A到B的直线段。这样就简单了,相信每个股软对此的处理都是一样的。 如果有多个这样的(a,b),则单个Drawline()语句将画出多条直线段。当然,这些线段一定是互不重叠的,即排列为 …a…b…a…b…a…b…。可以认为,Drawline语句从左到右依次画出线段。如果没有再找到a ,或者,有a后没找到b,则画线结束。 例如考虑以下从阳线到阴线的画线语句: xx1:= close>open; xx2:=close<open; drawline(xx1,high,xx2,high,0),colorwhite,linethick2; 通常有许多阳线,有许多阴线,它们的排列一般是无序的 –-- 并非是一阳接一阴这样简单有规律地排列。 那么,系统怎么来确定线段的始点A’s和配对的终点B’s呢? 。。。 。。。 比较这两张图,你应该发现通达信和大智慧有完全不同的算法!我没有把它们写在这里,是因为描述起来挺啰嗦,又担心白写,不会有多少人看到帖子就沉了。好在这个规律不难总结,你自己可以来。本帖就算是提醒。希望读到的人能从中受到提醒。 Drawline(xx1,y1,xx2,y2,1) 如果弄清了drawline(……,0)的算法,再考虑drawline(……,1)的算法,就简单许多。(但在通达信,也并非像你想象的那样“简单延长”了事。) 如果你弄清了这些算法,相信用起drawline()函数来就更得心应手了。
股票论坛 www.55 <open; 188.comvEVERY(RANGE(MA(V,5)/MA(V,20),0.8,1.20),20); 划下斜线:DRAWLINE(C>=HHV(C,20),H,C<=LLV(C,10),HHV(C,6),1),COLORYELLOW,LINETHICK3;
|
|