EMA method
dynamic
EMA(
- dynamic datas,
- dynamic p
指标EMA(指数平均数)独立指标 输出数组和datas一样长且数据全部有效
Implementation
EMA(datas, p) {
List outdatas = [];
num k1 = 2 / (p + 1);
num k2 = 1 - k1;
int size = datas.length;
outdatas.add(datas[0]);
for (var i = 1; i < size; i++) {
if (Tools.isNumber(datas[i]) && Tools.isNumber(outdatas[i - 1])) {
//datas当前值和outdatas上一个值必须都是数字
outdatas.add(k1 * datas[i] + k2 * outdatas[i - 1]);
} else {
outdatas.add(datas[i]); //非数字无法计算平均数
}
}
return outdatas;
}