考夫曼自适应均线(KAMA)由佩里·考夫曼发明的,与传统的均线相比,考虑了价格的波动性,可以过滤小幅波动造成的市场噪音,减少错误信号。当价格波动性较低时,考夫曼自适应均线会保持在当前价格附近;当波动性增加时,自适应均线将进行调整,以稍远的距离跟踪价格,可用于识别整体趋势、把握趋势转折点和过滤价格走势。
考夫曼自适应均线的原理和EMA均线有点类似,都是以平滑系数来调节权重,但与EMA的系数不同。EMA均线平滑系数是2/(N+1),N是周期数,对于某一条均线,这个系数是固定的。比如20日EMA均线,N就等于20,平滑系数就是2/21。而考夫曼自适应均线的平滑系数是可变的。
EMA公式:
今日EMA = 2/(N+1)x今日收盘价 + (1-2/(N+1))x昨日EMA
考夫曼自适应均线KAMA计算公式:
今日KAMA = 昨日KAMA + SC x (今日收盘价-昨日KAMA)
变换一下,得到:
今日KAMA = SC x今日收盘价 + (1-SC)x昨日KAMA
通过下图对比,可以看出KAMA和EMA的区别。
考夫曼自适应均线的公式比较复杂,如果直接按照公式写,很难实现。但是通达信自带了DMA函数,可以很好的解决这个问题。
DMA函数
含义:求动态移动平均。
用法:DMA(X,A),表示求X的动态移动平均。
DMA的算法是Y=A*X+(1-A)*Y',其中Y'表示上一周期的Y值,A的取值范围是0-1。
通过变换之后的公式,今日KAMA = SC x今日收盘价 + (1-SC)x昨日KAMA,用DMA函数很容易就能写出来,DMA(C,SC)。
根据DMA(C,SC)可以看出,要得到考夫曼自适应均线,必须先计算平滑系数,而平滑系数又是根据效率系数计算的。因此首先来了解效率系数。
效率系数ER代表价格变化的效率,用价格变化除以波动。价格变化为收盘价与M日前的收盘价之差,波动为M日的收盘价与昨日收盘价之差的绝对值之和。(参数M缺省取值为10)
DIRECTION:=ABS(CLOSE-REF(C,M));
VOLATILITY:=SUM(ABS(CLOSE-REF(C,1)),M);
ER:=DIRECTION/VOLATILITY;
以M=10为例,当收盘价与10日前的收盘价相同时,效率系数ER等于0;当最近10天每天都上涨或者每天都下跌时,效率系数ER等于1。
考夫曼自适应均线平滑系数的最初形式也是类似于EMA均线的2/(N+1),最快的平滑系数N取2,最慢的平滑系数N取30,根据不同节奏的行情,用相应的效率系数来调节平滑系数。
最快的平滑系数FASTEST=2/(2+1)=0.667
最慢的平滑系数SLOWEST=2/(30+1)=0.0645
最初形式的平滑系数SMOOTH=ER*(FASTEST-SLOWEST)+SLOWEST
通过公式可以发现,当效率系数ER接近于1时,最初形式的平滑系数SMOOTH的值接近于最快的平滑系数FASTEST;当效率系数ER接近于0时,最初形式的平滑系数SMOOTH的值接近于最慢的平滑系数SLOWEST。
考夫曼通过测试发现,对最初形式的平滑系数进行平方之后,可以改进结果。
最终的平滑系数SC=SMOOTH x SMOOTH
FASTEST:=2/(N1+1);
SLOWEST:=2/(N2+1);
SMOOTH:=ER*(FASTEST-SLOWEST)+SLOWEST;
SC:=POW(SMOOTH,2);
得到效率系数和平滑系数后,就可以计算考夫曼自适应均线KAMA了。
KAMA:DMA(C,SC);
另外为了方便使用,可以对考夫曼自适应均线进行处理,上涨时显示红色,下跌时显示绿色,并加粗显示。
KAMA:DMA(C,SC),COLORRED,LINETHICK2;
NOTEXT1:IF(KAMA<=REF(KAMA,1),KAMA,DRAWNULL),COLORGREEN,LINETHICK2;
M:=10;
N1:=2;
N2:=30;
DIRECTION:=ABS(CLOSE-REF(C,M));
VOLATILITY:=SUM(ABS(CLOSE-REF(C,1)),M);
ER:=DIRECTION/VOLATILITY;
FASTEST:=2/(N1+1);
SLOWEST:=2/(N2+1);
SMOOTH:=ER*(FASTEST-SLOWEST)+SLOWEST;
SC:=POW(SMOOTH,2);
KAMA:DMA(C,SC),COLORRED,LINETHICK2;
NOTEXT1:IF(KAMA<=REF(KAMA,1),KAMA,DRAWNULL),COLORGREEN,LINETHICK2;
关注技术Pie,学习更多通达信指标公式编写知识。版权所有,转载请注明出处。
友情提醒:本文仅供学习交流技术指标公式,不构成任何投资建议。投资有风险,入市需谨慎。