请教从定点到定点画水平线段的办法
请教从历史数据某K线向最新K线画水平线段。步骤:(1)取最新价;(2)从当前K线前1根K线起,向前寻找包含(1)最新价的K线;(3)从(2)中寻找的K线的最高价和最低价,分别向当前K线画水平线段;其他K线不作画。没画成功,代码如下,请教下画线的方法。我看了文档中的例子,又看了刘总视频,一直理解有误,实在没想出来怎么画。orzParams //此处添加参数 Vars //此处添加变量 Bar mybar; //Vars区域声明bar结构体 series<Numeric> Highs; //存储K线最高价 series<Numeric> Lows; //存储K线最低价 series<Numeric> Opens; //存储K线开盘价 series<Numeric> Closes; //存储K线收盘价 series<Numeric> Atime; //存储K线开盘时间 series<Integer> current_barth;//当前bar的索引值 series<Integer> symmetry_barth;//对称bar的索引值 plot pen_H; plot pen_L; Array<Numeric> x1Data;//x轴数据集 Array<Numeric> y1Data;//y轴数据集 Array<Numeric> y2Data;//y轴数据集 Defs //此处添加策略函数 Events //此处实现事件函数 //初始化事件函数,策略运行期间,首先运行且只有一次 OnInit() { } //Bar更新事件函数,参数indexs表示变化的数据源图层ID数组 OnBar(ArrayRef<Integer> indexs) { GetBar(mybar, 0);// getbar获取bar结构体数据 Highs = data0.mybar.high;// 把bar数据赋值 Lows = data0.mybar.low; // 把bar数据赋值 Opens = data0.mybar.open; // 把bar数据赋值 Closes = data0.mybar.close; // 把bar数据赋值 Atime = data0.mybar.datetime; // 把bar数据赋值 current_barth = CurrentBar();// 计算当前bar的索引值 Commentary("当前Bar索引:" + Text(CurrentBar())); //搜索包含最新价的最近K线bar索引值 Integer i; for i = 1 to current_barth { if(closes[0]>=lows[i] and closes[0]<=highs[i]) { symmetry_barth[0] = current_barth - i; Break; } }; Commentary("对称bar索引:" + Text(symmetry_barth[0])); //从包含最新价的最近的K线到当前bar,以包含最新价的最近的K线的最高价和最低价,分别画水平线段 Integer j; for j = 0 to CurrentBar-symmetry_barth[0] { x1Data[j]= CurrentBar -j ; y1Data[j]= highs[CurrentBar-symmetry_barth[0]]; y2Data[j]= Lows[CurrentBar-symmetry_barth[0]]; } pen_H.line("sym_H",x1Data,y1Data); pen_L.line("sym_L",x1Data,y2Data); }