以下代码运行在CU2209合约上,我想输出持仓数,一直是0,账户上实际是有2手多单cu2209.
Vars
Global Position MY;
Events
OnPosition(PositionRef pos)
{
MY = POS;
}
OnBar(ArrayRef<Integer> indexs)
{
IF(CLOSE <> 0)
Print("SY:" + TEXT(MY.longCurrentVolume));
}
onposition只有在持仓变动的情况下才会驱动运行。换句话说,如果启动程序后,你没有进行开仓或平仓操作,onposition是不会运行的。
这种情况下要获取position数据,可以用getposition的函数
建议先把各个事件域了解清楚了再写代码,这样一知半解盲人摸象的写是不行的
明白了。边写边摸索