指數移動平均(英語:exponential moving average,EMA或EXMA)是以指數式遞減加權的移動平均。各數值的加權影響力隨時間而指數式遞減,越近期的數據加權影響力越重,但較舊的數據也給予一定的加權值。
在XS中把這個移動平均寫成一個叫XAverage的函數,腳本如下
SetBarMode(2); input:thePrice(numericseries); //"價格序列" input:Length(Numeric); //"計算期間" variable: Factor(0); if length + 1 = 0 then Factor = 1 else Factor = 2 / (Length + 1); if CurrentBar = 1 then XAverage = thePrice else XAverage = XAverage[1] + Factor * (thePrice - XAverage[1]);