在繼續(xù)深入的時候碰到了一點(diǎn)點(diǎn)問題,看多了別人寫的,突然有一種疑問,到底都有什么區(qū)別。我看得最多的是EMA,終于決定看看,原來如C啊。
DMA5:DMA(c,5);//最快
EMA5:EMA(c,5);//第二快
MA5:MA(c,5);//第三快
SMA5:sma(c,5,1);//最滯后
MA、EMA、SMA、DMA、TMA、WMA6種平均算法經(jīng)常在各種指標(biāo)公式中運(yùn)用,但多數(shù)初學(xué)者可能并不理解其具體區(qū)別,整理如下。
MA(X,N)簡單算術(shù)平均
求X的N日移動平均值,不分輕重,平均算。算法是:
(X1+X2+X3+…..+Xn)/N
例如:MA(C,20)表示20日的平均收盤價。C表示CLOSE。
EMA(X,N)指數(shù)平滑移動平均
求X的N日指數(shù)平滑移動平均,它真正的公式表達(dá)是:當(dāng)日指數(shù)平均值=平滑系數(shù)*(當(dāng)日指數(shù)值-昨日指數(shù)平均值)+昨日指數(shù)平均值;平滑系數(shù)=2/(周期單位+1);由以上公式推導(dǎo)開,得到:EMA(C,N)=2*C/(N+1)+(N-1)/(N+1)*昨天的指數(shù)收盤平均值;
算法是:若Y=EMA(X,N),則Y=[2*X+(N-1)*Y’]/(N+1),其中Y’表示上一周期的Y值。
EMA引用函數(shù)在計算機(jī)上使用遞歸算法很容易實現(xiàn),但不容易理解。例舉分析說明EMA函數(shù)。
X是變量,每天的X值都不同,從遠(yuǎn)到近地標(biāo)記,它們分別記為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
…………循環(huán)
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
任何時候系數(shù)之和恒為1。如果X是常量,每天的X值都不變,則EMA(X,N)=MA(X,N).
從以上的例舉分析中,我們可以看到時間周期越近的X值它的權(quán)重越大,說明EMA函數(shù)對近期的X值加強(qiáng)了權(quán)重比,更能及時反映近期X值的波動情況。所以EMA比Ma更具參考價值,而ema
也不容易出現(xiàn)死叉和金叉,所以一旦出現(xiàn)要立即作出反映!對周線處理,ema就更加穩(wěn)定了。
理解了MA,EMA的含義后,就可以理解其用途了,簡單的說,當(dāng)要比較數(shù)值與均價的關(guān)系時,用MA就可以了,而要比較均價的趨勢快慢時,用EMA更穩(wěn)定;有時,在均價值不重要時,也用EMA來平滑和美觀曲線。
SMA(C,N,M)移動平均
理解了MA和EMA的含義和用途后,后面幾個函數(shù)就好理解了;因為EMA的平滑系數(shù)是定的,=2/(周期+1);如果要改變平滑系數(shù)咋辦?這就用到了
SMA,與EMA的區(qū)別就是增加了權(quán)重參數(shù)M,也就是用M代替EMA平滑系數(shù)中的2,這樣我們可以根據(jù)需要調(diào)整當(dāng)日數(shù)值在均價中的權(quán)重=M/N。(要求N>M)
DMA(C,A)動態(tài)移動平均
注意,權(quán)重系數(shù)在EMA與SMA中都是用數(shù)值與周期計算出來的小數(shù),假設(shè)有一個小數(shù)可以直接代表權(quán)重,如何辦?這就有了DMA,DMA(C,A)
中A為權(quán)重值,公式如下:X=DMA(C,A)=A*X+(1-A)*X'(A小于1),可以發(fā)現(xiàn),DMA與SMA原理是一至的,只是用一個小數(shù)直接代替了M/N,而在實用中,這個小數(shù)最有價值的就是換手率=V/CAPITAL;DMA(C,V
/CAPITAL)的直接含義是用換手率作為權(quán)重系數(shù),利用當(dāng)日收盤價在均價中的比重計算均價,直觀理解就是換手率越大,當(dāng)日收盤價在均價中的作用越大!
TMA(X,N,M)遞歸移動平均
用法:tma(x,n,m),求x的遞歸移動平均,n、m為權(quán)重。算法:若y=tma(x,n,m) 則 y=(n*y'+m*x),
其中y'表示上一周期y值。初值為m*x。
例如:tma(close,0.9,0.1)表示求x的遞歸移動平均
WMA(X,A)加權(quán)移動平均
用法:wma(x,a),求x的加權(quán)移動平均。算法:若y=wma(x,a),則y=(n*x0+(n-1)*x1+(n-
2)*x2)+...+1*xn)/(n+(n-1)+(n-2)+...+1)x0表示本周期值,x1表示上一周期值。
均值公式在眾多指標(biāo)公式中都有使用,透徹理解上述各種均值算法含義,是合理應(yīng)用各種指標(biāo)公式的前提。