开仓数限制不生效

Abs(longCurrentContracts()) < 10开仓手数限制不生效,过10仓还能开仓,请解答,谢谢!完整代码如下:

If(Marketposition <> 1 And Currentbar >= 100)  

{

If(JC And VAR12 > VAR12[1] And VAR13 > VAR13[1] And VAR12>VAR13 And Abs(longCurrentContracts()) < 10 And Vol > 0) //首次信号开多

{

Buy(1,Max(Open,ZX));

}Else If(JC[1] And VAR12>VAR13 And Abs(longCurrentContracts) < 10 And Vol > 0) //确认信号开多

{

Buy(1,Max(Open,ZX));

}

}

If(Marketposition <> -1 And Currentbar >= 100)

{

If(SC And VAR12 < VAR12[1] And VAR13 < VAR13[1] And VAR12<VAR13 And VAR12 > 20 And Abs(shortCurrentContracts()) < 10 And Vol > 0) //首次信号开空

{

SellShort(1,Min(Open,ZX));

}Else If(SC[1] And VAR12<VAR13 And VAR12 > 20 And Abs(shortCurrentContracts()) < 10 And Vol > 0)//确认信号开空

{

SellShort(1,Min(Open,ZX));

}

}

C 大于结算价不生效, C小于结算价生效
跨周期引用EMA,开仓不生效
Tbq开仓手数问题
TBQ程序中如何写读取交易所最小开仓手数限制的代码?
关于限制当日开仓次数
开仓仓位设置生效
监控器不生效问题
关于自动计算开仓手数
如何计算不同品种开仓手数
A函数平仓不生效,平不了仓

我也一直被这个问题困扰,改用A函数也没有解决。

没看出来有什么毛病

代码写得看着没毛病,但之前老师讲过序列变量不能放在条件域,表达式中,很容易莫名其妙地出错,你上面开仓条件中有很多序列变量,试着改下,移到外面去判断,再引用回来