专注股票、期货、外汇程序化交易开发
 企业微信
520量化编程
开启左侧

EMA计算公式及原理

[复制链接]
俊熙交易沙龙 发表于 2020-7-2 11:11:57 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
 
在通达信引用函数中,有个EMA函数,那么EMA函数的计算原理到底是怎样的呢?接下来我们一起来看看

EMA(X,N) :求X的N日指数平滑移动平均。

算法是:若Y=EMA(X,N),
则Y=〔2*X+(N-1)*Y’〕/(N+1),
其中Y’表示上一周期的Y值。2 是平滑系数,表示今天的权重是2.
公式含义为。今天值乘以权重2,加上历史积累值 除以 天数加1, 因为当天权重加了1.

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*X2+X1)/3
如果N=3,则EMA(X,3)=〔2*X3+(3-1)*Y’〕/(3+1)= (2*X3+2/3*(2*X2+*X1))/4=(3*X3+2*X2+X1)/6
如果N=4,则EMA(X,4)=〔2*X4+(4-1)*Y’〕/(4+1)= (4*X4+3*X3+2*X2+X1)/10

任何时候, 分子的系数之和等于分母。 越靠近当前,系数越大。当前的值要有较大的优先权,越远的值,贡献越小。

举例:
有一组数据(收盘价为):70.48   72.07   72.97,求其ma(c,5), EMA(c,5)
解答:
MA(c,3)=(70.48+72.07+72.97)/3=71.84



EMA(c,5)=(72.97*3+72.07*2+70.48*1)/6=72.255


EMA有所误差,但都是小数位后几位产生的误差,是可以接受的范围



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

 
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门图文
热门帖子
排行榜
作者专栏

关注我们:微信订阅号

公众号/p>

企业微信

全国服务热线:

18081412300

公司地址:四川省安岳县柠都大道226号

运营中心::四川省安岳县柠都大道226号

邮编:6243650 Email:525406187@qq.com

川公安网备案51202102000095

备案许可证:蜀ICP备20018290号-1

增值电信业务经营许可证:川B2-20220450

Copyright   ©2015-2016  520量化编程Powered by©Discuz!技术支持:迪恩网络    ( 蜀ICP备20018290号-1 )