以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  竖线位置可以固定吗?请教!  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=159399)

--  作者:wzxwzx74
--  发布时间:2017/11/10 12:11:52
--  竖线位置可以固定吗?请教!
IF DATATYPE>5 THEN
BEGIN
  DRAWTEXTEX(ISLASTBAR,1,500,500,\'本指标只适用于日线以下周期数据\'),ALIGN3;
  EXIT;
END;

//判断是否绘制彩线的位置
日:=date;                                                      //求当前K线的日期
isColor:=if(日>ref(日,1) or barpos=1,1,0);                     //当K线的日期发生变化时,就是新的彩线绘制位置
DIS0:=if(barpos=1 or not(isColor),0,DATEDIFF(ref(日,1),日)-1); //星期六、星期日以及节假日也要考虑
DIS:=SUM(DIS0,0);
Num:=count(isColor,0)+DIS;                                    //计算彩线个数

VERTLINE(isColor and mod(Num,4)=0),color5825cf,LINEDOT;
VERTLINE(isColor and mod(Num,4)=1),colorb14e00,LINEDOT;
VERTLINE(isColor and mod(Num,4)=2),color277524,LINEDOT;
VERTLINE(isColor and mod(Num,4)=3),colorac0088,LINEDOT;
加载这个公式后发现,压缩屏幕k线显示与不压缩时,其彩线位置不一样,彩线位置不固定;需要的其实是屏幕显示到足够数量后的,再放大k线显示划线就是正确的,但刚打开软件时竖线显示就不对。不知道是什么原因,可以解决这个问题吗?非常期待解答,谢谢!

--  作者:FireScript
--  发布时间:2017/11/10 13:39:05
--  

先说明下:伸缩图表K线的时候造成的影响是参与计算的K线发生变化。  比如一开始的时候图表上显示的第一个K是上午11点的,扩充后时间可能就前推到上午10点。K线数量就增加了。 

 

比如某一个K当前K线位置是1,但是你改变数据之后就不是1了。就不符合iscolor的条件了。这样对其他几个变量都有影响的。你最好限定下起始位置。右键-x轴-常规 下有这个选项。