想在1min的图层,获取上一个交易日的日线收盘价,是不是应该就是昨天最后一根bar的close?
为什么下面这个方式,得到closed(1),不是昨天最后一个bar的close。
但是如果把中间 return 的逻辑去掉,就能正确获取了
请问这个是因为什么?
vars
Series<Numeric> a;
Global string tradingday;
Global Numeric startbar;
Events
OnBar(ArrayRef<Integer> indexs)
{
if(DateToString(TrueDate()) != tradingday)
{
tradingday = DateToString(TrueDate());
startbar = CurrentBar;
Commentary(\"交易日切换\" );
}
if (CurrentBar - startbar <= 10)
{
return ;
}
Commentary(\"CLOSED::\" + Text(CLOSED(1)));
}
您好!这个是序列函数问题。CloseD是序列函数,不能跳过某些bar不执行,否则就可能会有错误。您可以把CloseD这句放到Return那句之前,就可以解决问题。