关于策略回测中发现的问题

Params
    
 
Vars
    Series<Numeric> MA;
    Series<Numeric> MK;
    Series<Numeric> ICDT;
    Series<Numeric> IFKT;
    Series<Numeric> ZCGYK;
    Series<Bool> ML(False);
Events

    OnBar(ArrayRef<Integer> indexs)
    {    
        
            MA = AverageFC(Close,5);
            MK = AverageFC(Close,20);
            ML = CrossOver(MA[1],MK[1]);
            
            ICDT = (Close[1] - longEntryPrice)*200;
            IFKT = (shortEntryPrice - Close[1])*300;
            ZCGYK = ICDT + IFKT;
            IF(MarketPosition == 1 && ZCGYK >= 15000)
            {
                SELL(1,Open);
                DATA1.BuyToCover(1,Open);
            }
            IF(MarketPosition == 1 && ZCGYK <= -15000)
            {
                SELL(1,Open);
                DATA1.BuyToCover(1,Open);
            }
            
            If(MarketPosition == 0 && ML)
            {
                Buy(1,Open);
                DATA1.SellShort(1,Open);
            }
            Commentary("ZCGYK=" + text(ZCGYK));
    }
大家好,我这个策略回测中我发现,都是在当根k线上开平仓的,大家复制过去,帮忙看看是什么问题导致的,我想了很久,没发现哪里有问题,这个是ic跟if的套利,谢谢!!

关于策略回测去除无效数据的问题
【策略研究】回测时发现多个品种连续合约加载的Bar数为0
关于回测数据不准的问题
策略回测问题
实盘和回测的问题
关于回测历年品种连续的复权问题
发现有个关于数据的问题
tb3中关于回测中需要调用两个数据图层的问题
同一个策略回测问题
策略回测报告无法加载齐全策略单元问题

这个图上应该挺明白的,zcgyk这变量是一个很奇怪的数字,你确定这个变量的计算没有问题吗?

是的,我也觉得有问题,可能是我计算逻辑的问题