Perry J.Kaufman在《精明交易者》中提到如何对数据进行”预处理”,其中一个技巧就是编制”指数”,这个指数由一个初始值加上每一个价格相对与前一个价格变化的百分比,公式如下:
index = index[1] + (price – price[1])/price[1]
index[1]表示前一天的指数值,price[1]表示前一天的价格。初始的index可以取100或1000,以自己觉得方便为主。
这种”指数”的编制和一般的指数,使用当前价格除以基期价格有很大的区别。由于使用相对变化,这种指数的曲线总体上会一直呈上升趋势,并且对剧烈的价格变化有减少波幅的作用(无论是上升还是下降)。原因很简单,比如初始价格为100,涨到到200,其变化百分比为100%,而当从200跌回100,其变化值仅有-50%。下面分别是航天通信收盘价日线进行后复权和对后复权进行指数化的两幅曲线图,可以从中看出这种变化:
对后复权数据进行”指数”化:
由于”指数”化后会引起波幅的变化,我对其使用AMA的效果表示怀疑,因为AMA的优点之一就是对变化的迅速反应。那么使用波幅被减弱的数据,从直观上来看,意味着变化被减弱,也就是说AMA相应变化的能力可能会被降低。有必要对此进行一系列的测试,看看是否有必要进行”指数”化。
测试方案:
采用交易固定数量(1000股),不设置止损,也不设任何其他条件,不对引起AMA变化的价格进行预测,交易成本为0
测试对象:所有上市日期大于1994年01月01日,并且至今尚在市场中的股票,共156只
测试时间段:1994年1月1日~2009年8月17日
绩效衡量:使用涵盖未平仓交易帐户收益率,即到2009年8月17日赚到的钱除以总投入资本(对于2009年8月17日,尚有持仓的对象,使用当日收盘价评估市值)
测试结果:
1、在不剔除最高、最低值的情况下,使用”指数”化的结果,其平均值都有微小提升,其中最大值获得显著提升,意味着可能由于某个最大值,导致平均值上升,此时不能得出”指数化”后更好的结论。
不复权,不指数化 |
不复权,指数化 |
后向复权,不指数化 |
后向复权指数化 |
前向复权,不指数化 |
前向复权,指数化 |
等比后向复权,不指数化 |
等比后向复权,指数化 |
等比前向复权,不指数化 |
等比前向复权,指数化 |
|
均值 |
132.28% |
137.10% |
134.65% |
134.71% |
134.24% |
136.71% |
134.86% |
138.16% |
134.49% |
137.96% |
最大值 |
592.62% |
915.04% |
565.91% |
639.03% |
565.91% |
864.67% |
565.91% |
927.77% |
565.91% |
927.77% |
最小值 |
-99.96% |
-99.74% |
-99.96% |
-99.74% |
-99.96% |
-99.74% |
-99.96% |
-99.74% |
-99.96% |
-99.74% |
标准差 |
118.10% |
130.09% |
116.58% |
116.38% |
116.79% |
129.91% |
116.95% |
130.35% |
117.24% |
130.58% |
2、在剔除部分最高值和最低值之后,结果见下表。可以看出:”指数”化后的结果均值实际上变得更差,但有一点好处是标准差缩小。
不复权,不指数化 |
不复权,指数化 |
后向复权,不指数化 |
后向复权指数化 |
前向复权,不指数化 |
前向复权,指数化 |
等比后向复权,不指数化 |
等比后向复权,指数化 |
等比前向复权,不指数化 |
等比前向复权,指数化 |
|
均值 |
123.68% |
125.56% |
127.00% |
125.97% |
126.56% |
125.13% |
127.10% |
126.84% |
126.70% |
126.63% |
最大值 |
419.95% |
386.85% |
421.89% |
356.97% |
421.89% |
355.21% |
421.89% |
375.53% |
421.89% |
375.53% |
最小值 |
-26.84% |
-29.66% |
-33.60% |
-26.09% |
-33.60% |
-30.21% |
-33.60% |
-25.22% |
-33.60% |
-25.22% |
标准差 |
92.41% |
87.78% |
92.55% |
85.63% |
92.80% |
87.62% |
92.69% |
87.87% |
93.05% |
88.21% |
事实上,从下面不复权数据指数化后效率的提升分布图中也可以看到,之所以在测试结果1中指数化的平均值高于未指数化的平均值,正是由于其中一只股票的最高值所致。这只股票从未指数化的532.16%收益率,在指数化后跃升为915%,导致平均值的升高。但实际上,”指数化”使一般数量的股票收益率变好的同时,也使另一般的收益率变得更差:
4、至于”指数”化,似乎没有必要,观察一下”指数”化对每只股票的影响,下面的图是不复权且未指数化的帐户收益率(注意:图中的标题写错了,我懒的更改了),其横坐标和上述的《指数化后的效率提升》一图是一一对应的。可以看出,哪些股票绩效提升了,哪些股票效率下降了,完全没有规律,甚至相当大的一部分原来绩效好的股票在指数化后,反而绩效变差了(见图的右侧)
3、另外一个有趣的发现是,是否使用复权后的数据,对系统的平均绩效似乎没有影响。也就是说,在没有其他圈定股票范围的情况下,趋势类的指标如移动平均线,不对数据进行复权处理,其平均绩效没有影响,意味着除权后导致趋势类指标向下跳变,那么就跟随卖出(可能说明中国的股票有不少在除权日当日可能就出现实质性的下跌)。当然,如果有额外的圈定股票策略,或许会有不同,也许一些”好”的股票在复权后仍旧在绩效上升。如果此时配合使用复权数据,可能会提高绩效。
原始结果数据参见:http://spreadsheets.google.com/pub?key=t5XPaK4AJvliTITxhxzmyWg&single=true&gid=0&output=html