分类
最好的外汇经纪商

什麼是EMA和MA?

(注:大智慧SMA第一个数值显示为0,请参见通达信副图)
6种均值算法含义" width="503" height="614" />

MA, EMA, SMA, DMA通达信和talib计算比较

最近一直在使用talib库的相关函数研究数据,最近琢磨talib上的STOCH函数,网上说和通达信交易软件中的KDJ指标中的K值和D值是一样的,但是自己回测了几只股票后发现信号触发的点和通达信交易软件上的不一致。查查了度娘有人说是因为KDJ中使用的SMA和talib上的SMA算法不一样导致的。遂燃起了我的好奇心,又仔细查了查,有个网友的文章讲的很清楚了,顺道把MA,EMA,SMA,DMA的计算公式都讲了一遍,我就不再赘述了。我就想测测到底通达信上的这几个均线的计算结果和talib上的比较差不差,差多少。go go go

MA、EMA、SMA、DMA、TMA、WMA6种均值算法含义

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值它的权重越大,说明EMA函数对近期的X值加强了权重比,更能及时反映近期X值的波动情况。 所以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表示上一周期值。

MA、EMA、SMA、DMA、TMA、WMA6种均值算法含义

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值它的权重越大,说明EMA函数对近期的X值加强了权重比,更能及时反映近期X值的波动情况。 所以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表示上一周期值。

MA、EMA、SMA、DMA、TMA、WMA

章志强 于 2013-06-25 16:50:55 发布 9219 收藏 什麼是EMA和MA? 21

MA(X,N)简单算术平均
求X的N日移动平均值,不分轻重,平均算。算法是:
(什麼是EMA和MA? 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值。
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,什麼是EMA和MA? 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表示上一周期值。

MA是简单算术平均,MA(C,2)=(C1+C2)/2; MA(C,3)=(C1+C2+C3)/3;不分轻重,平均算;
_
EMA是指数平滑平均,它真正的公式表达是:当日指数平均值=平滑系数*(当日指数值-昨日指数平均值)+昨日指数平均值;平滑系数=2/(周期单位+1);由以上公式推导开,得到:EMA(C,N)=2*C/(N+1)+(N-1)/(N+1)*昨天的指数收盘平均值;仔细看:X=EMA(C,2)=2/3*C+1/3*REF(C,1); EMA(C,3)=2/4*C+2/4*X;所以,它在计算平均值时,考虑了前一日的平均值,平滑系数是定的,它是利用今日的值与前一日的平均值的差,再考虑平滑系数,计算出来的平均值,所以也有叫异同平均的。
因此,这两个平均算法是不同的,主要是对数组中的数据的权重侧重不同。
理解了MA,EMA的含义后,就可以理解其用途了,简单的说,当要比较数值与均价的关系时,用MA就可以了,而要比较均价的趋势快慢时,用EMA更稳定;有时,在均价值不重要时,也用EMA来平滑和美观曲线。
理解了MA和EMA的含义和用途后,后面几个函数就好理解了;
因为EMA的平滑系数是定的,=2/(周期+1);如果要改变平滑系数咋办?这就用到了SMA;
SMA(C,N,M)与EMA的区别就是增加了权重参数M,也就是用M代替EMA平滑系数中的2,什麼是EMA和MA? 这样我们可以根据需要调整当日数值在均价中的权重=M/N。(要求N>M);
大家注意,权重系数在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)的直接含义是用换手率作为权重系数,利用当日收盘价在均价中的比重计算均价;
直观理解就是换手率越大,当日收盘价在均价中的作用越大!
这样理解应该知道各函数的作用和用途了!

【MA】:求简单移动平均
用法:MA(X,N),求X的N日移动平均值。
算法:(X1+X2+X3+. +Xn)/N
例如:MA(CLOSE,10) 表示求10日均价。特例:MA(X,0)表示X所有数据的平均。

【EMA】:求指数平滑移动平均
用法:EMA(X,N),求X的N日指数平滑移动平均。
算法:若Y=EMA(X,N),则Y=[2*X+(N-1)*Y']/(N+1),其中Y'表示上一周期Y值。
例如:EMA(CLOSE,30) 表示求30日指数平滑均价。

【SMA】:求移动平均
用法:SMA(X,N,M),求X的N日移动平均,M为权重。
算法:若Y=SMA(X,N,M),则 Y=[M*X+(N-M)*Y']/N,其中Y'表示上一周期Y值,N必须大于M。
例如:SMA(CLOSE,30,1) 表示求30日移动平均价。

【DMA】:求动态移动平均
用法:DMA(X,A),求X的A日动态移动平均。
算法:若Y=DMA(X,A),则 Y=A*X+(1-A)*Y',其中Y'表示上一周期Y值,A必须小于1。
例如:DMA(CLOSE,VOL/CAPITAL) 表示求以换手率作平滑因子的平均价。


图例:
以300286安科瑞为例:
其前五天收盘价如下 什麼是EMA和MA?
第一天收盘价:C1=35.12;
第二天收盘价:C2=31.61;
第三天收盘价:C3=34.10;
第四天收盘价:C4=31.12;
第五天收盘价:C5=32.16;

MA(C,5)
第一天数值:M1=无数据
第二天数值:M2=无数据
第三天数值:M3=无数据
第四天数值:M4=无数据
第五天数值:M5=(C1+C2+C3+C4+C5)/N=(35.12+31.61+34.10+31.12+32.16)÷5=32.822

EMA(C,5)
第一天数值:E1=C1=35.120;
第二天数值:E2=[2*C2+(N-1)*E1]/(N+1)=(2×31.61+4×35.120)÷6=33.950
第三天数值:E3=[2*C3+(N-1)*E2]/(N+1)=(2×34.10+4×33.950)÷6=34.000
第四天数值:E4=[2*C4+(N-1)*E3]/(N+1)=(2×31.12+4×34.000)÷6=33.040
第五天数值:E5=[2*C5+(N-1)*E4]/(N+1)=(2×32.16+4×33.040)÷6=32.747

SMA(C,5,1)
第一天数值:S1=C1=35.120;
第二天数值:S2=[M*C2+(N-M)*S1]/N=(1×31.61+4×35.120)÷5=34.418
第三天数值:S3=[M*C3+(N-M)*S2]/N=(1×34.10+4×34.418)÷5=34.354
第四天数值:S4=[M*C4+(N-M)*S3]/N=(1×31.12+4×34.354)÷5=33.708
第五天数值:S5=[M*C5+(N-M)*S4]/N=(1×32.16+4×33.708)÷5=33.398

DMA(C,VOL/CAPITAL)
第一天VOL/CAPITAL:A1=0.830
第二天VOL/CAPITAL:A2=0.386
第三天VOL/CAPITAL:A3=0.282
第四天VOL/CAPITAL:A4=0.257
第五天VOL/CAPITAL:A5=0.157

第一天数值:D1=C1=35.120;
第二天数值:D2=A2*C2+(1-A2)*D1=0.386×31.61+(1-0.386)×35.120=33.767
第三天数值:D3=A3*C3+(1-A3)*D2=0.282×34.10+(1-0.282)×33.767=33.861
第四天数值:D4=A4*C4+(1-A4)*D3=0.257×31.12+(1-0.257)×33.861=33.157
第五天数值:D5=A5*C5+(1-A5)*D4=0.157×32.16+(1-0.157)×33.157=33.001

(转)MA、EMA、SMA、DMA、TMA、WMA <wbr></p>
<p>(注:大智慧SMA第一个数值显示为0,请参见通达信副图) <br />6种均值算法含义

(转)MA、EMA、SMA、DMA、TMA、WMA <wbr></p>
<p>6种均值算法含义