开仓数限制不生效

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,开仓不生效
关于限制当日开仓次数
开仓仓位设置生效
关于自动计算开仓手数
如何计算不同品种开仓手数
一天限制只能开仓一手
A函数平仓不生效,平不了仓
求助老师为啥alert不生效
限制了开仓手数,但快速波动时会重复发单

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

没看出来有什么毛病

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