- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EMA的计算原理和代码
EMA的计算原理
EMA 是MA(平滑移动平均线)的另一种形式。全名“加权指数移动平均线”。
2/13就是12日移动平均线的平滑因子,他的意思是指:给予新价格 2/13的权重,给予过去的EMA 11/13的权重。
在计算的时候第一天的MACD是0,从第2天开始。第一天的EMA12和EMA26都等于收盘价。
我们用这种方法可以在只看收盘价格的情况下准备画出任何一个股票的MACD。因为我详细的算过,哈哈,真的对理解MACD有很大的帮助。
至于为什么是2/(12+1)*今日收盘价+11/(12+11)*昨日EMA(12)。光说不练不行,你有时间可以算一下。我曾经算过中国石油的MACD 为了证明我不是在忽悠你,毕竟我们也算志同道合了。
公式如下所示:
1、计算移动平均值(EMA)
12日EMA的算式为:
EMA(12)=前一日EMA(12)×11/13+今日收盘价×2/13
26日EMA的算式为:
EMA(26)=前一日EMA(26)×25/27+今日收盘价×2/27
C/c++语言void ema(double input[],int emaperiod,double emaout[])
{
// EMA(X,N)求X的N日指数平滑移动平均。算法是:
//若Y=EMA(X,N),则Y=[2*X+(N-1)*Y’]/(N+1),其中Y’表示上一周期的Y值。
int length=sizeof(input) / sizeof(input[0]);
int n=1;
for(int i=0;ilength;i++)
{
if(iemaperiod) n=i+1;
emaout[i]=((n-1)*emaout[i-1]+2*input[i])/(n+1);
}
}
EMA与MA的区别,EMA是加权平均,MA是一般的平均。
在加权平均中,这个权有两种,各种分析软件不一样,计算也有差异。一般的软件,多为时间上的加权。EMA只是比MA更优化了一些,让N以内的数值得以计算。
他们通过“人为”指定,就是把一定时间分为一定优先级,比如今天设为一个数值,前10天的优先级又差一些,这样进行加权,原理有些像筹码分布。
MA和EMA的数学表达式:
1、MA(X,N),求X的N日移动平均值。算法是:(X1+X2+X3+…..+Xn)/N例如:MA(C,20)表示20日的平均收盘价。C表示CLOSE。
2、EMA(X,N)求X的N日指数平滑移动平均。算法是:若Y=EMA(X,N),则Y=[2*X+(N-1)*Y’]/(N+1),其中Y’表示上一周期的Y值。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+3/15*X2+3/30*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
(1/2)*X3+(1/3)*X2+(1/6)*X1
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
?任何时候系数之和恒为1。如果X是常量,每天的X值都不变,则EMA(X,N)=MA(X,N).
使用总结:
从以上的例举分析中,我们可以看到时间周期越近的X值它的权重越大,说明EMA函数对近期的X值加强了权重比,更能及时反映近期X值的波动情况。
?????所以EMA比Ma更具参考价值,而ema业不容易出现死叉和金叉,所以一旦出现要立即作出反映!
对周线处理,ema就更加稳定了。
您可能关注的文档
- DFT与FFT的算法1.doc
- DF检验模型误选对单位根检验的影响.pdf
- D11无穷级数习题课.pdf
- DHCP协议缺点及其解决方案_2007.pdf
- DID双重差分法的原理和方法.pptx
- Dirichlet和Abel判别法的等价性.pdf
- Dirichlet空间上的复合算子.pdf
- direct3D入门.pdf
- DIY点阵模块程序讲解—74HC595程序.pdf
- DIP_Chapter4中文.pdf
- 人教版九年级英语全一册单元速记•巧练Unit13【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit9【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit11【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit14【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit8【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit4【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit7【速记清单】(原卷版+解析).docx
- 苏教版五年级上册数学分层作业设计 2.2 三角形的面积(附答案).docx
- 人教版九年级英语全一册单元速记•巧练Unit12【单元测试·基础卷】(原卷版+解析).docx
最近下载
- 宏观经济学计算题大全.doc VIP
- 苏教版数学四年级上册第八单元认识射线、直线和角(课件).pptx
- 某市棚户区改造中区市政道路建设工程路面天然砂砾垫层施工方案.doc
- 淀粉制品公司风险分级管控与隐患排查治理双体系双控手册2022-2024.doc
- 福建省 政和县志.pdf
- 知识产权对策、研究成果管理及合作权益分配.pdf VIP
- 人工智能对学习、教学和教育的影响-The Impact of Artificial Intelligence on Learning, Teaching, and Education.docx
- 中越边广西龙邦镇护龙村跨国婚姻问题研究及对策.doc VIP
- 小学道德与法治六年级下册《我们生存的家园》教学设计及反思.doc
- 宏观经济学计算题.docx VIP
文档评论(0)