con 为什么 会一直显示为1

Vars //此处添加变量 Series<Numeric> con;OnInit() { con=0; }OnBar(ArrayRef<Integer> indexs) { if (longshort[1]> 50+boLength1 and MarketPosition == 0) { SellShort(0,open); con = 1; } Commentary(\"con指标:\"+text(con) ); }为什么以上代码在运行时 并没有满足建仓条件 CON指标就显示为1而变成下面这样 就会显示为0Vars //此处添加变量 Series<Numeric> con;OnInit() { con=0; }OnBar(ArrayRef<Integer> indexs) { if (longshort[1]> 50+boLength1 and MarketPosition == 0) { SellShort(0,open); //con = 1; } Commentary(\"con指标:\"+text(con) ); }

图表命令有一个机制,就是强制在开始的若干根k线上不执行buysell信号。因为一开始的数据如果数量不够,有一些指标计算是失真的。比如你的指标式60周均线,那么前60根k线上可能会满足你的开仓条件,但是不会执行buy命令,这种情况下就会造成con1状态变量被污染了。改进方法可以在开仓条件里加上在一定k线以后再执行,就能防止一开始的数据污染状态变量