关于策略报告的指标存在细微差异

我用一个策略单元测试了“策略指标”(详见:TB量化学院-期货期权程序化与量化系统自动交易软件金融领航者门户网站 - 开拓者金融网 (tbquant.net)),例如:

1、净值 = 1 + 净利润/初始权益。在这里,净利润有两个定义:

(1)Portfolio_TotalProfit (总盈亏)

(2)Portfolio_NetProfit(平仓净盈亏)

根据数据分析,(1) = (2) + PositionProfit。

为此,我用公式(1)计算一个净值na,为什么计算出来的na与测试报告的na存在一定差异?其他指标也类似,TB是否有一个严谨的关于策略评价指标的计算代码demo?

加入自动换仓指令后策略报告的结果有差异
TBQ的优化报告的策略指标
策略测试报告指标解释
单策略回测报告和组合中的单策略回测报告为何不一样?
优化后同参数策略运行结果与优化结果差异大
策略研究的策略报告失效,需要进入K线图才能查看策略报告
策略报告统计时间
为什么同一个策略在策略研究和策略交易跑出来的绩效会有差异?
关于多任务组合报告
策略回测报告无法加载齐全策略单元问题

我测了下,并没有问题

 

一个要手续费和滑点设成0,因为最后可能存在补平,会有一点损耗

还有就是权益代码输出要在代码最后,这样输出的才是正确结果

//------------------------------------------------------------------------
// 简称: DualMA
// 名称: 双均线交易系统
// 类别: 公式应用
// 类型: 内建应用
//------------------------------------------------------------------------
Params
    Numeric FastLength(5);// 短期指数平均线参数
    Numeric SlowLength(20);// 长期指数平均线参数
Vars
    Series<Numeric> AvgValue1; 
    Series<Numeric> AvgValue2;
Events
    OnBar(ArrayRef<Integer> indexs)
    {
        AvgValue1 = AverageFC(Close,FastLength);
        AvgValue2 = AverageFC(Close,SlowLength);
        PlotNumeric("MA1",AvgValue1);
        PlotNumeric("MA2",AvgValue2);        
        
        
        
        If(MarketPosition <>1 && AvgValue1[1] > AvgValue2[1])
        {
            Buy(0,Open);
        }
        
        If(MarketPosition <>-1 && AvgValue1[1] < AvgValue2[1])
        {
            SellShort(0,Open);
        }
        Commentary("Portfolio_TotalProfit ="+text(Portfolio_TotalProfit ));
        Commentary("Portfolio_NetProfit ="+text(Portfolio_NetProfit ));
        Commentary("PositionProfit ="+text(PositionProfit ));
        Commentary("2=3 ="+text(PositionProfit +Portfolio_NetProfit));
    }
//------------------------------------------------------------------------
// 编译版本    GS2010.12.08
// 版权所有    TradeBlazer Software 2003-2025
// 更改声明    TradeBlazer Software保留对TradeBlazer平
//            台每一版本的TradeBlazer公式修改和重写的权利
//------------------------------------------------------------------------

我来看下