指數移動平均

By | 2019-02-15

指數移動平均英語:exponential moving averageEMAEXMA)是以指數式遞減加權的移動平均。各數值的加權影響力隨時間而指數式遞減,越近期的數據加權影響力越重,但較舊的數據也給予一定的加權值。

在XS中把這個移動平均寫成一個叫XAverage的函數,腳本如下

1SetBarMode(2);
2
3input:thePrice(numericseries); //"價格序列"
4input:Length(Numeric); //"計算期間"
5
6variable: Factor(0);
7
8if length + 1 = 0 then Factor = 1 else Factor = 2 / (Length + 1);
9
10if CurrentBar = 1 then
11 XAverage = thePrice
12else
13 XAverage = XAverage[1] + Factor * (thePrice - XAverage[1]);