ployline画图问题

画线语句为: if(close < open and Up) { Plt_ZT.ployline("阻力位", date + time, high, 0, true); Plt_ZT.ployline("阻力位", date[-3] + time[-3], high, 1, true); }满足条件的时候,往未来3根K线画横线但当K线数量不够的时候,就变成往前画了,一直画到第一根K线不影响计算,只是看着有点别扭

还有个问题如果单独画图的公式加载多个周期的画图正常如果额外加载一个订阅了多周期的公式,那么长周期上面的画图就是全部往前画的这个加载的订阅了周期的公式是发布的把Data1.Hide; 这行注释掉,显示出多周期

回复:策略中是不是使用了不同图层的数据导致获取到了无效值?

回复:有可能,我遇到的新问题,也许也与此有关暂时还没找出原因

回复:老师 我弄出来最小能定位问题的代码了demo1://------------------------------------------------------------------------ // 简称: test_if // 这个代码就画个图 ------------------------------------------------------------------- Params //此处添加参数 Vars //此处添加变量 plot Plt_ZT; Defs //此处添加策略函数 Events //此处实现事件函数 //初始化事件函数,策略运行期间,首先运行且只有一次 OnInit() { // SubscribeBar(Symbol,"15m",BeginDateTime); //自己订阅的多周期不会闪退 } //Bar更新事件函数,参数indexs表示变化的数据源图层ID数组 OnBar(ArrayRef<Integer> indexs) { range[0:DataSourceSize - 1] { if(close > open And close[1] > open[1] And close[2] > open[2] ) { Plt_ZT.ployline("三连阳", date + time, low, 0, true); Plt_ZT.ployline("三连阳", date[-3] + time[-3], low, 1, true); } } //------------------------------------------------------------------------ // 编译版本 2025/12/3 93440 -----------------------------demo2:// 这个代码就订阅个周期+设置下运行频率 Params Vars Events OnInit() { SubscribeBar(Symbol,"15m",BeginDateTime); SetBasePeriod("15m"); //出问题就是这句,没有这句画图就是正常的 }SetBasePeriod("15m"); //问题出在这句咦,在原始画图代码里订阅 ,如果加这句,也会出问题了.....我就不改了....图就是这么个图这是不是plot的机制和周期数据对齐机制冲突了?有法改吗?

回复:Params //此处添加参数 Vars //此处添加变量 plot Plt_ZT; Series<bool> isTripleUp(False,4); Defs //此处添加策略函数 Events //此处实现事件函数 //初始化事件函数,策略运行期间,首先运行且只有一次 OnInit() { // SubscribeBar(Symbol,"15m",BeginDateTime); //自己订阅的多周期不会闪退 } //Bar更新事件函数,参数indexs表示变化的数据源图层ID数组 OnBar(ArrayRef<Integer> indexs) { range[0:DataSourceSize - 1] { isTripleUp = close > open And close[1] > open[1] And close[2] > open[2]; if(isTripleUp[3]) { Plt_ZT.clear("三连阳", date[3] + time[3]); Plt_ZT.ployline("三连阳", date[3] + time[3], low[3], 0, true); Plt_ZT.ployline("三连阳", date + time, low[3], 1, true); } } }不要使用未来时间 调用了SetBasePeriod历史数据以基础周期频率执行,[-3]获取的时间也是未来数据,改为上面的代码试试

回复:好的吧~谢谢老师🤞

使用了未来时间超出了当前的bar数量 时间返回的是无效值 可以进行判断一下再进行绘图

回复:这个代码最好调整为向历史方向绘图

回复:嗯嗯 这不是想偷懒😀想着比如有 时间轴虚拟占位:如果作图超出原有时间轴,根据需求虚拟几个时间点或者进入待画 出现了再补没搞过开发 不知道难度或者是否在胡说八道

回复:您的v是多少我加您一下

回复:抱歉抱歉非常抱歉 社区发contact info是违规的哈~~有问题可以大家一起看看我经常回答错误 老师看到都会帮忙纠正的 比听一个人胡说被带偏的好🤝🤝

学习了

收到