Thursday 19 October 2017

Implementación Del Promedio Móvil Exponencial


Promedio móvil exponencial Promedio móvil exponencial El Promedio móvil exponencial difiere de un promedio móvil simple tanto por el método de cálculo como por la forma en que se ponderan los precios. El Promedio Móvil Exponencial (abreviado a las iniciales EMA) es efectivamente un promedio móvil ponderado. Con la EMA, la ponderación es tal que los precios de los días recientes se dan más peso que los precios más antiguos. La teoría detrás de esto es que los precios más recientes se consideran más importantes que los viejos precios, particularmente porque un promedio simple a largo plazo (por ejemplo 200 días) coloca el peso igual en los datos del precio que es sobre 6 meses de viejo y podría ser pensado De como un poco fuera de fecha. El cálculo de la EMA es un poco más complejo que el promedio móvil simple, pero tiene la ventaja de que no se tiene que mantener un gran registro de datos que cubran todos y cada uno de los precios de cierre de los últimos 200 días (o por muchos días) . Todo lo que necesita son la EMA para el día anterior y el precio de cierre de hoy para calcular la nueva media móvil exponencial. Cálculo del exponente Inicialmente, para el EMA, se necesita calcular un exponente. Para empezar, tome el número de días EMA que desea calcular y agregue uno al número de días que está considerando (por ejemplo, para un promedio móvil de 200 días, agregue uno para obtener 201 como parte del cálculo). Bueno, llame a Days1. Luego, para obtener el exponente, simplemente tome el número 2 y divídelo por Days1. Por ejemplo, el exponente para un promedio móvil de 200 días sería: 2 201. Que es igual a 0.01 Cálculo completo si el promedio móvil exponencial Una vez que hemos obtenido el exponente, todo lo que necesitamos ahora son dos más bits de información que nos permitan realizar el cálculo completo . El primero es la media móvil exponencial de los ayeres. Bueno, supongamos que ya sabemos esto como lo habríamos calculado ayer. Sin embargo, si usted ya no es consciente de EMA ayer, puede comenzar por calcular la media móvil simple para ayer, y utilizar esto en lugar de la EMA para el primer cálculo (es decir, el cálculo de hoy) de la EMA. Entonces mañana usted puede utilizar el EMA que usted calculó hoy, y así sucesivamente. La segunda pieza de información que necesitamos es el precio de cierre de hoy. Supongamos que queremos calcular el promedio móvil de 200 días Exponencial para una acción o acción que tiene un EMA anterior de 120 peniques (o centavos) y un precio de cierre actual de 136 peniques. El cálculo completo es siempre el siguiente: Promedio móvil actual exponencial (precios de cierre de los días actuales x Exponente) (días anteriores EMA x (1- Exponente)) Así, utilizando las figuras de ejemplo anteriores, EMA de 200 días sería: (136 x 0.01 ) (120 x (1- 0.01)) Que es igual a una EMA para hoy de 120.16.I esencialmente tienen una matriz de valores como este: La matriz anterior es simplificada, Im recolectando 1 valor por milisegundo en mi código real y necesito procesar La salida en un algoritmo que escribí para encontrar el pico más cercano antes de un punto en el tiempo. Mi lógica falla porque en mi ejemplo anterior, 0.36 es el pico real, pero mi algoritmo miraría hacia atrás y vería el último número 0.25 como el pico, pues hay una disminución a 0.24 antes de él. El objetivo es tomar estos valores y aplicarles un algoritmo que los suavice un poco para que tenga valores más lineales. (Es decir: la identificación como mis resultados para ser curvy, no jaggedy) se me ha dicho que aplique un filtro de media móvil exponencial a mis valores. ¿Cómo puedo hacer esto? Es muy difícil para mí para leer las ecuaciones matemáticas, trato mucho mejor con el código. ¿Cómo proceso los valores en mi matriz, aplicando un cálculo de promedio móvil exponencial para igualarlos? Preguntó Feb 8 12 at 20:27 Para calcular una media móvil exponencial. Usted necesita mantener un poco de estado alrededor y usted necesita un parámetro de ajuste. Esto requiere una pequeña clase (asumiendo que está usando Java 5 o posterior): Instantiate con el parámetro de decadencia que desea (puede tomar la afinación debe estar entre 0 y 1) y luego use average () para filtrar. Al leer una página sobre alguna recurrencia matemática, todo lo que realmente necesita saber al convertirlo en código es que a los matemáticos les gusta escribir índices en matrices y secuencias con subíndices. Sin embargo, la EMA es bastante simple, ya que sólo es necesario recordar un valor antiguo sin arrays de estado complicado requerido. Respondió 8 Feb a las 20:42 TKKocheran: Bastante. No es bueno cuando las cosas pueden ser simples (si comienza con una nueva secuencia, obtenga un nuevo averager). Observe que los primeros términos de la secuencia promedio saltarán alrededor de un bit debido a efectos de límite, pero obtendrá aquellos con otras medias móviles también. Sin embargo, una buena ventaja es que usted puede envolver la lógica del promedio móvil en el averager y experimentar sin molestar el resto de su programa demasiado. Ndash Donal Fellows Feb 9 12 en 0:06 Estoy teniendo un rato difícil entender sus preguntas, pero intentaré contestar de todos modos. 1) Si su algoritmo encontró 0.25 en lugar de 0.36, entonces es incorrecto. Está mal porque asume un aumento o una disminución monotónica (que siempre sube o baja siempre). A menos que usted promedio TODOS sus datos, sus puntos de datos --- como usted los presenta --- son no lineales. Si realmente desea encontrar el valor máximo entre dos puntos en el tiempo, corte su matriz de tmin a tmax y busque el máximo de ese subarray. 2) Ahora, el concepto de promedios móviles es muy simple: imagina que tengo la siguiente lista: 1.4, 1.5, 1.4, 1.5, 1.5. Puedo suavizarlo tomando el promedio de dos números: 1.45, 1.45, 1.45, 1.5. Observe que el primer número es el promedio de 1,5 y 1,4 (segundo y primeros números), la segunda (nueva lista) es el promedio de 1,4 y 1,5 (tercera y segunda lista antigua) la tercera (nueva lista) el promedio de 1,5 y 1,4 (Cuarto y tercero), y así sucesivamente. Podría haberlo hecho el período tres o cuatro, o n. Observe cómo los datos son mucho más suaves. Una buena manera de ver los promedios móviles en el trabajo es ir a Google Finance, seleccionar una acción (probar Tesla Motors bastante volátil (TSLA)) y hacer clic en technicals en la parte inferior de la tabla. Seleccione Promedio móvil con un período determinado y Promedio móvil exponencial para comparar sus diferencias. La media móvil exponencial es sólo otra elaboración de esto, pero los pesos de los datos más antiguos menos de los nuevos datos de esta es una manera de sesgar el alisamiento hacia la parte posterior. Por favor, lea la entrada de Wikipedia. Por lo tanto, esto es más un comentario que una respuesta, pero el pequeño cuadro de comentarios era sólo a pequeño. Buena suerte. Si usted está teniendo apuro con la matemáticas, usted podría ir con una media móvil simple en vez de exponencial. Así que la salida que obtendrías serían los últimos x términos divididos por x. Pseudocódigo no comprobado: Tenga en cuenta que tendrá que manejar las partes inicial y final de los datos, ya que claramente no puede medirse los últimos 5 términos cuando está en su segundo punto de datos. Además, hay maneras más eficientes de calcular este promedio móvil (suma suma - más reciente más reciente), pero esto es para obtener el concepto de lo que está sucediendo a través de. Respondió 8 Feb a las 20:41 Su respuesta 2016 Stack Exchange, IncEl promedio móvil móvil (EMA) La fórmula clásica EMA es: A diferencia de Simple Moving Average. Donde el peso de todas las barras anteriores es igual, el Promedio Móvil Exponencial hace que la barra más reciente sea más importante. El peso de cada barra más antigua disminuye exponencialmente. A continuación se muestra un gráfico de peso para N 10 (1 es el precio actual, 2 el anterior y así sucesivamente): La fórmula de peso es donde i es una distancia a la barra más reciente. 0 significa el más reciente, 1 la barra anterior y así sucesivamente. Primer valor La fórmula hace referencia al valor anterior y no existe un acuerdo estándar, cuál es el primer valor (el más antiguo). Diferentes implementaciones de EMA usan: El primer precio (MT4, Marketscope) o El promedio móvil simple de los primeros precios N (Stockcharts). Uso en lugar del promedio móvil simple El promedio móvil exponencial se puede utilizar exactamente como promedio móvil simple. Especialmente en la situación en que la inercia de la media móvil simple no puede ser ignorada. Basta con comparar EMA (10) y MVA (10) aplicados a los mismos precios: Limitaciones El promedio móvil exponencial se basa en todos sus valores anteriores, por lo que el resultado del indicador para una barra en particular depende de la cantidad de datos históricos que se tengan en cuenta. Por lo tanto, en la situación en que se cargan más datos históricos, el valor del indicador puede diferir del calculado anteriormente. Vea también Indicadores Artículos Este Artículo en Otros Idiomas

No comments:

Post a Comment