Actualmente, tengo datos del historial de 10 años.
La mayoría de las veces, sólo me interesa obtener la EMA/ MACD para el último punto de la historia (significa el punto de ayer). En lugar de utilizar toda la historia de 10 años, sólo me gustaría proporcionar N puntos de datos, para el cálculo rápido, sin embargo, obtener un EMA precisa razonable. Actualmente, esta es la manera de determinar cuántos datos N.
9 days SMA lookback = 8
9 days EMA lookback = 8
9 days 12/26 MACD lookback = 33
final int scale = 2;
startIndex = historyDataSize - ((lookback + 1) * scale);
for (int i = startIndex; i < historyDataSize; i++) {
// ...
}
Sé que puedo aumentar aún más scale
para obtener un resultado razonablemente bueno de EMA/ MACD. La pregunta es, ¿qué tan grande debo aumentar, para el propósito de cálculo rápido, sin embargo, razonable precisa?