一、单合约回测

(一)海量数据检测模型

当模型编写好后,需要先对模型进行效果测试,检验模型在历史k线上的运行效果。如果测试的数据不够多,会因为样本数据太少涵盖的行情不全面导致测试结果太片面,这样的测试结果也就失去了参考的价值。因此,历史数据的多少从一定程度上决定了模型的测试深度,也反映出测试平台价值的高低。

嬴智WH8提供海量历史数据,能够灵活选择测试起止时间,提供深度的回测分析,让模型效果测试具有真正的实际参考意义。

1、案例:国内合约提供从开市至今的全部历史数据

检验趋势模型的效果,通常需要选择连续且全面的历史数据作为测试样本,如果测试的数据不够多,无法包含市场各个阶段的行情变动,模型效果的真实性就会大打折扣。赢智wh8提供合约从上市以来的所有数据,可以多维度剖析模型。如下图,是以股指主连合约上市至今的全部数据进行的效果测试。

2、申请海量历史数据的操作方法

如下图所示,是如何在主图点击鼠标右键来申请合约数据:

相关常见问题解答

1、因为网络断线或其他原因,存在错误的数据,如何将错误数据更正?

答:当您发现K线数据存在错误时,可通过k线图右键->补充历史数据,在弹出界面选择清除当前周期数据,这样错误数据就会被删除,然后再重新补充数据。

2、为什么在【补充数据】中找不到想补充的合约周期。

答:加载列表中所列出的合约周期是基础数据;其他周期的数据由这些基础数据合成,因此,在申请数据的时候只对基础数据做申请。
合成原则:
用tick合成的数据:逐笔回测数据。
用1秒合成的数据: 量能周期、秒周期,自定义秒周期。
用1分钟合成的数据:15min以下的周期,以及自定义分钟周期。
用15分钟合成的周期:15min,30min,1h,2h,3h,4h,自定义小时周期。
用日线合成的周期: 日线及以上周期

3、哪些周期需要补充数据?

答:理论上来说,做回测都需要提前补充数据。但考虑到逐笔TICK类数据量大,手动补充时间长,为提高操作效率,模型中用到MULTSIG/CHECKSIG 逐笔TICK函数时,回测的时候软件会在后台自动补充数据,不需要手动补充。除上面2个函数外,其他的模型都需要提前补充好回测需要的基础数据。

4、滑点是什么意思,设置多少合适?

答:滑点是指委托价格与成交价格之间的差值。回测参数中设置滑点,目的是为了让回测效果最大限度拟合实盘的成交情况,具体设置多大的滑点要根据交易的合约和委托方式调整。 比如,以对价方式发委托,可以设置1-2个滑点,使回测结果尽可能的贴合品种行情特征,更接近实盘效果。

5、为什么已经补充了数据,但是选择信号计算起始时间不能选择到补充的时间?

答:回测之前需要将数据合约和交易合约的数据都补充一致再回测。 比如,模型中含有TRADE_OTHER('AUTO')函数指定了交易合约再加载到指数上测试时,数据合约是指数,交易合约是主连。补充了指数合约数据之后,还需要同步补充主连合约的数据再进行回测,如下图操作。

6、为什么无法补充全部的数据,在补充数据中只能看到最近几个月?

答:这种情况是因为回测合约选择的是具体月份合约,所以只能补充到自合约上市以来的数据。如果需要使用连续的历史数据进行回测,建议使用指数合约。
如:沪铜1805是2017年5月上市交易,所以只能申请到2017年5月上市以来的数据,而沪铜指数则支持1996年品种上市以来全部数据。

7.如何查看RB1505等已交割合约的数据?

答:在K线图界面右键->选择历史年度合约,可以查看到历史年度合约的具体行情数据。