第九章 量化中常见的问题

第一节 数据过少

上证指数数据优化回测

从历史数据中发掘规律,一般来说至少需要经历一个牛熊周期。在A股,一般一个牛熊周期3~5年,最长7年,所以少于3年的数据就不太合适,如2014、2015年两年是牛市,如果用这两年的数据找到的最佳值,到2016年走熊的时候就不一定合适了。我们来看一个最简单的,用上证指数2014、2015年两年数据找到最佳均线策略的一个例子,如表9-1所示。

表9-1 上证指数2014、2015年收益率回测

从表9-1中我们可以看到,通过部分数据的遍历,找到了均线为71天,对应2014、2015年两年总收益率101.42%这个最佳值,但这个71天的参数在2016年表现又如何呢?

表9-2 上证指数近7年收益率(MA71)

如果用71天这个参数,2014年基本持平,2015年跑赢指数23个点,表现不错,但在2016年熊市却大跌了近10个点,还跑输了指数。2015年的跑赢,只是在纸面上的,而如果采用此策略进入实战,在2016年亏损10个点,则是实实在在的。这个量化其实也模拟了很多人的牛市思维进入熊市后的结果。

上证指数25年数据优化回测

把上证指数1991—2015年25年的数据做个优化,还是用MA均线策略,线上买进并持有,线下卖出并空仓。通过部分遍历优化,找到了22日均线这个最佳值,如表9-3所示。

表9-3 上证指数近25年收益率回测

对比一下用22日均线策略对应的每年的收益率情况,如表9-4所示。

表9-4 上证指数近25年收益率(MA22)回测

量化最佳均线回测

显然,都是截至2015年的数据,前一个方案只用了2年的数据,2016年的实盘收益率是-9.76%,而后一个方案用了25年的数据,2016年对应的收益率却是4.02%,不仅远远跑赢了2年策略,而且还大幅度跑赢了指数。从这个案例也可以看出数据量大,对于优化策略的好处。

但在实盘中依然有问题,除了上证指数,很少有指数、股票有25年的数据可供使用,那我们该怎么办呢?前文提到,最近的一个牛熊周期,基本能代表历史的所有情况,特别是2010年后这个周期,基本反映了股指期货这个做空工具对大盘的影响。还是拿上证指数为例子,用2010—2015年共6年的数据进行优化,结果找到了21天这个非常接近用25年数据得到的结果,如表9-5、表9-6所示。

表9-5 上证指数近6年收益率回测

表9-6 上证指数近25年(MA21、MA22)收益率对比

用6年数据优化得到的21天均线策略和用25年数据优化得到的22天均线策略,进行比较可以看出,不仅2016年的收益率完全相同,而且历史数据差异也不大,最近10年21天均线策略还平均每年跑赢了22天均线策略大概1个点。

从上面的案例可以看到,回测用的历史数据太少了肯定不好,但太多了也没有必要,采用一个牛熊周期的数据就足够了。考虑到2010年以后股指期货的做空力量对大盘的影响,从2010年开始的数据,基本就能满足回测的需求。