2017-08-05 81 views
1

我在努力理解爲什麼EMA(指數移動平均線)在這兩種情況下有所不同。當比較不同長度的樣本時,爲什麼EMA不相等?

options(scipen = 10) 
library(quantmod) 

getSymbols("AAPL", src = "google") 

data1 <- EMA(AAPL[, "AAPL.Close"]) 
data2 <- EMA(tail(AAPL[, "AAPL.Close"], n = 10)) 

result <- data.frame(tail(data1, n = 1), tail(data2, n = 1)) 

在第一次EMA調用中,我提供了整個AAPL樣本的參數。在第二次EMA調用中,我只提供最小數量的數據來計算上次日期的EMA。如果我比較最後一天的計算值,它們是不同的。

具體而言,結果[1,1]爲152.907,結果[1,2]爲152.623。這是爲什麼發生?我希望兩個數字都是一樣的,因爲EMA不是累積的。

+0

請參閱'?EMA'中的* Warning *部分。它解釋了原因,並給出了一個與此類似的例子。 –

回答

0

這是因爲指數衰減具有「無限」的歷史:衰變,但永遠不會完全消失。

因此,這兩個用例的權重集是不同的,因此結果也是如此。有MAS的一個體面近期一系列平滑價格序列:

應該說清楚,正是您期望只適用於SMA這的確實際上去零權重。

+0

謝謝德克。我的初衷是計算一個時間序列的EMA,然後將其與EMA逐日計算(不重新計算整個歷史)的EMA進行協調。您是否看到了如何將觀測值添加到現有的EMA系列中,以便與EMA一次全部計算時的值匹配? – DsnKov

相關問題