AvgEntryPrice()函数在888合约发生换月之后返回值和换月之前的值不一致

老师,我在TBQuant终端测试了一下。上图是1000万资金,下图是2000万资金。其它条件按完全相同,我发现两次的AvgEntryPrice并不相同,请问是什么原因呢?

TB旗舰版6.0.6.7 - 888合约换月问题
A函数实盘中处理主力合约换月的问题
FG888玻璃主力合约仍然没有换月
关于期货合约换月
提前换月
主边合约换月问题
主力合约换月
请问关于主连合约换月的机制和监控器的问题
换月换仓信号问题
关于换月
Events
    OnInit()
    {
        AddDataFlag(Enum_Data_AutoSwapPosition);
    }
    //Bar更新事件函数,参数indexs表示变化的数据源图层ID数组
    OnBar(ArrayRef<Integer> indexs)
    {
        if(CurrentBar==0)
        {
            buy(1,open);
        }
        Commentary("AvgEntryPrice="+text(AvgEntryPrice));
    }

测试代码已经发给过你了,你要检查你的2边策略单元设置有什么区别,策略是否有什么特别之处

两边的策略单元设置除了资金,其它完全相同。

老师,我代码发给你了,还有策略单元的设置,麻烦帮忙看下。测试品种是SA888

您用的是TBQuant3吗,我测试用的是TBQuant。测试品种是SA888,您在看下


一样的啊

sa888 1000

sa888 2000

老师,不是双均线金叉或者死叉这个位置,双均线交叉产生的AvgEntryPrice是没问题的。问题是在发生换月的时候。

老师,你把SA888的策略单元设置,改成这样的试试看。

检查了几下

你这个输出放到外面去,不要放在小的条件里面



老师,我没看明白你修改的代码,可以把完整代码发我吗?

就是你下午修改之后的代码