自适应均线
上一节介绍的固定均线是最简单的情况,虽然效果很好,但是也有很大的缺点。通常均线总是有一个给定的参数,如10日均线、60日均线,其中10日均线变化快一点,60日均线变化慢一点。这个参数是由人给定的,一旦给定了,在整个画线的过程中不管行情怎么变动都不会变化。比如,在市场反复震荡时短期均线频繁地转向,而在市场快速上升或者下跌时长期均线反应迟钝,这就会造成频繁发出错误开平仓信号。
那么,能不能把均线做成自适应的,这样在行情反复震荡的时候慢一点,在行情快速变化的时候快一点跟上趋势?我们可以期待,因为一个自适应的系统有自动学习和自动调整的功能,应该比一个固定的系统做得更好一点。解决方案是有的,新的工具叫自适应均线,该均线由考夫曼所创造。
自适应均线的算法
1)价格轨迹的效率
一般来说,投资者都有这样的经验,就是在震荡多的走势上要使用较慢的均线,在趋势快速展开的走势上需要用更快的均线。
如何用数量化的办法来区分这两种不同的走势?这里需要引入一个价格轨迹效率的概念。
在行情的走势图中,可以大致分为两种走势:一种是一直上攻的走势,被称为高效率的,因为每一天收盘价格的变动都直接贡献于总的涨幅;另一种是反复震荡的走势,被称为低效率的,很多次收盘价格的变化相互抵消。类似于物理学中路程和位移的概念,如果走过的路程很长,但是位移很小,在实现位移的目标考量下,这样的运动可以称为低效率的。
很自然地,可以导出价格轨迹的效率定义:
假定在过去n个收盘价格分别为1P2,...,Pn,那么这个价格序列的效率为:
(1)
即位移和路程之比。
2)动态平均算法
动态平均是一个迭代的定义,比如时间序列yr是另一个时间序列xt的动态平均,意味着:
(2)yt=axt+(1-a)yt-1
y0=x0
其中,参数a是每一步的加权因子,它可以随着时间的变化而变化,因而可以实现调节平均线的快慢而达到自适应的效果。
价格轨迹的效率E是给定长度的价格历史序列的统计特征,加权因子a应该随着E变化,其变化的法则可以设置成:
(3)a=(c+dE)δ
其中,c,d,δ都是新的参数,加上计算E必须用到的参数n,这个自适应系统有了4个参数,看起来比之前的固定平均线参数更多,更需要人工设置,但是这4个参数对不同的行情是不太敏感的,一旦设置好,可以适应更多种不同形态的行情。正如一个智能化的机械不可避免地会增加更多部件。
可以发现对于上证指数,最近5年用60日均线的效果很好(因为市场大起大落
波段是清晰的),但是回溯到2005年前,市场的波动形态就不这么明显,60日均线就无法适应了。利用自适应均线,虽然参数较多,但在给定一套合适的参数下,可以做到既适合2005年后的市场,也适合之前的市场。
总结起来,自适应均线的算法如下:
(1)计算从当前收盘价起,最新的1个历史收盘价格的效率E。
(2)根据上文公式(3)计算a。
(3)根据上公式(2)计算价格序列的动态平均。