请问各位老师:
编了一段程序,想求出当下K线的“真实波动幅度”在前两天和当天开盘至当前所有K线中的排序,如果排序在前7名之内,返回对应的排序,否则返回“-1”代码如下。现在返回值于实际情况不符,是什么问题?
Params
Integer tianshu(2); //样本天数
Vars
Series<Integer> zongyangben; //总样本
Series<Integer> mingci; //名次
Events
OnBar(ArrayRef<Integer> indexs)
{
zongyangben = DayBarsNumI(0,1)*tianshu + DayBarsNumI(0,0);
if (TrueRange == NthHigher(TrueRange,zongyangben,7)) mingci = 7;Else
If (TrueRange == NthHigher(TrueRange,zongyangben,6)) mingci = 6;Else
If (TrueRange == NthHigher(TrueRange,zongyangben,5)) mingci = 5;Else
If (TrueRange == NthHigher(TrueRange,zongyangben,4)) mingci = 4;Else
If (TrueRange == NthHigher(TrueRange,zongyangben,3)) mingci = 3;Else
If (TrueRange == NthHigher(TrueRange,zongyangben,2)) mingci = 2;Else
If (TrueRange == NthHigher(TrueRange,zongyangben,1)) mingci = 1;Else mingci = -1;
Commentary(名次:+Text(mingci));
Commentary(K线范围:+Text(TrueRange));
Commentary(总样本:+Text(zongyangben));
Commentary(大1K线:+Text(NthHigher(TrueRange,zongyangben,1)));
Commentary(大2K线:+Text(NthHigher(TrueRange,zongyangben,2)));
Commentary(大3K线:+Text(NthHigher(TrueRange,zongyangben,3)));
Commentary(大4K线:+Text(NthHigher(TrueRange,zongyangben,4)));
Commentary(大5K线:+Text(NthHigher(TrueRange,zongyangben,5)));
Commentary(大6K线:+Text(NthHigher(TrueRange,zongyangben,6)));
Commentary(大7K线:+Text(NthHigher(TrueRange,zongyangben,7)));
}
代码分析诊断这种问题建议投稿处理