如何获取最近一次满足条件的Bar的收盘价
需求:本指标订阅了多个图层,现需要获取data1层(60分钟)的数据,获取距今最近一次白色MA1与紫色MA3金叉时,获取对应Bar的收盘价A。同时以A点的价格画出一条水平价格线。并用该价格A与最新的收盘价B计算比值()。问题:我的代码如下,要求输出的这个A值本来应该是我下图箭头所指的K线的收盘价,但目前这个A值输出为0,没有达到我想要的结果。不知道是哪里写错了,求助。Params //此处添加参数 //Numeric millsecs(1000);Vars //此处添加变量 //Numeric avg; //Global Integer timerId; Series<Numeric> MA1; Series<Numeric> MA2; Series<Numeric> MA3; Series<Numeric> bizhi; Series<Numeric> A;Events //初始化事件函数,策略运行期间,首先运行且只有一次,应用在订阅数据等操作 OnInit() { //与数据源有关 Range[0:DataCount-1] { SubscribeBar( Symbol, "1h", BeginDateTime ); } } //Bar更新事件函数,参数indexs表示变化的数据源图层ID数组 OnBar(ArrayRef<Integer> indexs) { //avg=calcAvg(high,low); MA1 = Data[1].MA(Data[1].Close,5); MA3 = Data[1].MA(Data[1].Close,20); If( Data[1].CrossOver( MA1 , MA3 ) ) { A = Data[1].Close; bizhi= Close / Data[1].Close ; } PlotNumeric("A",A);//这个A值本来应该是我下图箭头所指的K线的收盘价,但目前这个A值输出为0,没有达到我想要的结果 PlotNumeric("MA1",MA1); PlotNumeric("MA3",MA3); }