从头遍历BAR计算指标却没有打印出来结果

Bool getHistoryData(){ //定义内部变量 Numeric counterLong(0); Numeric counterShort(0); Numeric controllerLong(1); Numeric controllerShort(1); Integer k; For k = 100 to CurrentBar { //计算指标 b = (XAverage(Close,62)/AverageFC(Close,83)-1)*100; //判断结果 If(b[1]<-1 and b[1]>b[2] And controllerLong==1){ counterLong = counterLong +1; controllerLong =0; controllerShort =1; } If(b[1]>1 and b[1]<b[2] and controllerShort==1){ counterShort = counterShort +1; controllerShort = 0; controllerLong = 1; } } //最后一个Bar打印最终结果 If(BarStatus==2){ Print("==================="); Print("counter long ="+Text(counterLong)); Print("counter short ="+Text(counterShort)); } //返回值 Return True; } 是想在OnInit事件中调用,计算一次历史结果,从头遍历一次BAR,计算指标却没有打印出来结果,请老师帮忙看下什么原因,谢谢

建议你print一下所谓的currentbar还有close等数据看看是什么东西 oninit域订阅号数据以后还没完成数据load,上哪里去计算指标?最早也在onready里处理 而且你这个循环写得也很莫名其妙,循环体里甚至都没用上循环变量k,那循环那么多次,每次有什么区别?这个写的是干什么的完全看不懂