开仓有多种方式对应多个条件,类似如下:
if(CurrentEntries==0)
{
if (A)
{
Buy();
}else if(B)
{
Buy();
}
}
最新一根K线形成过程中,B先达到条件开仓
再后来A也达到条件,开仓方式更换为A
为啥B先开仓之后,A条件达到了还要更换开仓方式为A呢?
有没有什么方式在B条件满足开仓后,直接让currententries==0的条件不满足去执行检测平仓部分代码?我把currententries==0换成marketposition==0不行。
因为代码是从上到下按顺序执行的
在开仓的当根K线,即使满足了开仓条件实盘开了仓,currententries和marketposition的值都还没有变化 还是0直到下一根K线才会实际 更改?
currententries marketposition是序列类型的特征,每次onbar驱动的时候,初值是上一根bar的终值,不是上一tick的终值。这个在零基础课程里有特别强调过。