MA、EMA、SMA、DMA、TMA、WMA6种均值算法含义
MA、EMA、SMA、DMA、TMA、WMA6种均值算法含义
MA、EMA、SMA、DMA、TMA、WMA6种平均算法经常在各种指标公式中运用,但多数初学者可能并不理解其具体区别,整理如下。
MA(X,N)简单算术平均
求X的N日移动平均值,不分轻重,平均算。算法是:
(X1+X2+X3+…..+Xn)/N
例如:MA(C,20)表示20日的平均收盘价。C表示CLOSE。
EMA(X,N)指数平滑移动平均
求X的N日指数平滑移动平均,它真正的公式表达是:当日指数平均值=平滑系数*(当日指数值-昨日指数平均值)+昨日指数平均值;平滑系数=2/(周期单位+1);由以上公式推导开,得到:EMA(C,N)=2*C/(N+1)+(N-1)/(N+1)*昨天的指数收盘平均值;
算法是:若Y=EMA(X,N),则Y=[2*X+(N-1)*Y’]/(N+1),其中Y’表示上一周期的Y值(要小一个周期单位,比如要算从9月1日到912日的EMA(X0, 12),这里的Y'就是EMA(X1, 11), 在计算Y'时的Y''就是EMA(X2, 10,以此类推))。
EMA引用函数在计算机上使用递归算法很容易实现,但不容易理解。例举分析说明EMA函数。
X是变量,每天的X值都不同,从远到近地标记,它们分别记为X1,X2,X3,….,Xn
如果N=1,则EMA(X,1)=[2*X1+(1-1)*Y’]/(1+1)=X1
如果N=2,则EMA(X,2)=[2*X2+(2-1)*Y’]/(2+1)=(2/3)*X2+(1/3)X1
如果N=3,则EMA(X,3)=[2*X3+(3-1)*Y’]/(3+1)=[2*X3+2*((2/3)*X2+(1/3)*X1)]/4=(1
/2)*X3+(1/3)*X2+(1/6)*X1
如果N=4,则EMA(X,4)=[2*X4+(4-1)*Y’]/(4+1)=2/5*X4+3/5*((1/2)*X3+(1/3)*X2+(1
/6)*X1)
=2/5*X4+3/10*X3+1/5*X2+1/10*X1
如果N=5,则EMA(X,5)=2/(5+1)*X5+(5-1)/(5+1)(2/5*X4+3/10*X3+3/15*X2+3/30*X1)
=(1/3)*X5+(4/15)*X4+(3/15)*X3+(2/15)*X2+(1/15)*X1
…………循环
X1
(2/3)*X2+(1/3)X1
(3/6)*X3+(2/6)*X2+(1/6)*X1
(4/10)*X4+(3/10)*X3+(2/10)*X2+(1/10)*X1
(5/15)*X5+(4/15)*X4+(3/15)*X3+(2/15)*X2+(1/15)*X1
任何时候系数之和恒为1。如果X是常量,每天的X值都不变,则EMA(X,N)=MA(X,N).
从以上的例举分析中,我们可以看到时间周期越近的X值它的权重越大,说明EMA函数对近期的X值加强了权重比,更能及时反映近期X值的波动情况。 所以EMA比Ma更具参考价值,而ema 也不容易出现死叉和金叉,所以一旦出现要立即作出反映!对周线处理,ema就更加稳定了。
理解了MA,EMA的含义后,就可以理解其用途了,简单的说,当要比较数值与均价的关系时,用MA就可以了,而要比较均价的趋势快慢时,用EMA更稳定;有时,在均价值不重要时,也用EMA来平滑和美观曲线。
SMA(C,N,M)移动平均
理解了MA和EMA的含义和用途后,后面几个函数就好理解了;因为EMA的平滑系数是定的,=2/(周期+1);如果要改变平滑系数咋办?这就用到了
SMA,与EMA的区别就是增加了权重参数M,也就是用M代替EMA平滑系数中的2,这样我们可以根据需要调整当日数值在均价中的权重=M/N。(要求N>M)
DMA(C,A)动态移动平均
注意,权重系数在EMA与SMA中都是用数值与周期计算出来的小数,假设有一个小数可以直接代表权重,如何办?这就有了DMA,DMA(C,A)
中A为权重值,公式如下:X=DMA(C,A)=A*X+(1-A)*X'(A小于1),可以发现,DMA与SMA原理是一至的,只是用一个小数直接代替了M/N,而在实用中,这个小数最有价值的就是换手率=V/CAPITAL;DMA(C,V
/CAPITAL)的直接含义是用换手率作为权重系数,利用当日收盘价在均价中的比重计算均价,直观理解就是换手率越大,当日收盘价在均价中的作用越大!
TMA(X,N,M)递归移动平均
用法:tma(x,n,m),求x的递归移动平均,n、m为权重。算法:若y=tma(x,n,m) 则 y=(n*y'+m*x),
其中y'表示上一周期y值。初值为m*x。
例如:tma(close,0.9,0.1)表示求x的递归移动平均
WMA(X,A)加权移动平均
用法:wma(x,a),求x的加权移动平均。算法:若y=wma(x,a),则y=(n*x0+(n-1)*x1+(n-
2)*x2)+...+1*xn)/(n+(n-1)+(n-2)+...+1)x0表示本周期值,x1表示上一周期值。
均值公式在众多指标公式中都有使用,透彻理解上述各种均值算法含义,是合理应用各种指标公式的前提。
原文链接:http://www.55188.com/viewthread.php?tid=3613363