结果分析

业绩图表

右侧的业绩图表由以下四张子图构成:

https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/cta_backtester/31.png

【账户净值】图的横轴是时间,纵轴是资金,体现了账户净值在交易时段内随着交易日变化的情况。

https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/cta_backtester/32.png

【净值回撤】图的横轴是时间,纵轴是回撤,体现了净值从最近高点回撤程度随着交易日变化的情况。

https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/cta_backtester/33.png

【每日盈亏】图的横轴是时间,纵轴是日盈亏的金额(采用逐日盯市规则以收盘价结算),体现了整个回测周期内策略的每日盈亏变化情况。

https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/cta_backtester/34.png

【盈亏分布】图的横轴是每日盈亏的数值,纵轴是该盈亏数值的出现概率,体现了整体每日盈亏的概率分布情况。

统计指标

统计指标区域用于显示策略历史回测业绩的相关统计数值,如下图所示:

https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/cta_backtester/35.png

https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/cta_backtester/36.png

根据数据类型,指标可以分类为:

  • 日期信息

    • 首个交易日

    • 最后交易日

    • 总交易日

    • 盈利交易日

    • 亏损交易日

  • 资金盈亏

    • 起始资金

    • 结束资金

    • 总收益率

    • 年化收益

    • 最大回撤

    • 百分比最大回撤

    • 总盈亏

  • 交易成本

    • 总手续费

    • 总滑点

    • 总成交额

    • 总成交笔数

  • 日均数据

    • 日均盈亏

    • 日均手续费

    • 日均滑点

    • 日均成交额

    • 日均成交笔数

    • 日均收益率

    • 收益标准差(日均)

  • 绩效评价

    • 夏普比率

    • 收益回撤比

详细信息

回测完成后,可点击左侧区域的【委托记录】按钮,查看回测过程中策略逐笔委托的细节信息:

https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/cta_backtester/43.png

如果发现表格内容显示不完整,可以单击鼠标右键弹出菜单后,选择【调整列宽】按钮,即可进行自动列宽缩放:

https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/cta_backtester/46.png

表格也支持一键将表内全部内容保存为CSV文件,在上一步右键弹出的菜单中,点击【保存数据】按钮,即可弹出如下图所示选择保存文件名的对话框:

https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/cta_backtester/42.png

回测过程中策略发出委托的成交价不一定是原始下单的价格,而要由回测引擎基于当时的行情数据和下单价格进行撮合后算出,每笔委托对应的具体成交细节可以点击【成交记录】按钮后查看:

https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/cta_backtester/38.png

点击【每日盈亏】按钮后,可以看到如下图所示的策略每日盈亏细节:

https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/cta_backtester/39.png

这里每日盈亏的统计采用期货市场普遍使用的逐日盯市(Marking-to-Market)规则进行计算:

  • 持仓盈亏:今日开盘持仓的部分,以昨收盘价开仓,今收盘价平仓,计算出的盈亏金额;

  • 交易盈亏:今日日内成交的部分,以成交价格开仓,今收盘价平仓,计算出的盈亏金额;

  • 总盈亏:汇总持仓盈亏和交易盈亏后的金额;

  • 净盈亏:总盈亏扣除手续费和滑点后的金额,也是最终计算显示四张图表时用到的每日盈亏金额。

K线图表

点击【K线图表】按钮,即可打开用于显示回测K线数据,以及策略具体买卖点位置的图表,如下图所示:

https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/cta_backtester/44.png

注意绘图耗时可能需要一定时间(通常在数十秒到几分钟),请耐心等待。

K线图表中的图例说明可以在窗口底部看到,整体上采用了国内市场标准的配色和风格。开平仓之间的连线采用的是逐笔配对(First-in, First-out)规则进行绘制,每一笔成交会根据其数量自动和其他成交进行匹配,即使策略有复杂的加减仓操作也能正确绘制。