Tuesday, October 25, 2016

Exponencialmente Ponderado Moving Average Algoritmo

Dada una serie de tiempo xi, quiero calcular una media móvil ponderada con una ventana de promedio de N puntos, donde las ponderaciones favorecen los valores más recientes sobre los valores más antiguos. Al elegir los pesos, estoy usando el hecho familiar de que una serie geométrica converge a 1, es decir, suma (frac) k, siempre que se toman infinitamente muchos términos. Para obtener un número discreto de pesos que suman a unidad, simplemente tomo los primeros N términos de la serie geométrica (frac) k, y luego normalizando por su suma. Cuando N4, por ejemplo, esto da los pesos no normalizados que, después de normalizar por su suma, da La media móvil es simplemente la suma del producto de los 4 valores más recientes contra estos pesos normalizados. Este método se generaliza de la manera obvia para mover ventanas de longitud N, y parece cómodamente fácil también. ¿Hay alguna razón para no usar esta forma sencilla para calcular un promedio móvil ponderado usando pesos exponenciales que pregunto porque la entrada de Wikipedia para EWMA parece más complicada. ¿Qué me hace preguntarme si la definición de libros de texto de EWMA, tal vez tiene algunas propiedades estadísticas que la definición anterior no lo hace? ¿O son de hecho equivalentes? Preguntado Nov 28 12 at 23:53 Para comenzar con su asumir 1) que no hay valores inusuales 2) que el promedio ponderado óptimo tiene pesos que caen sobre una curva lisa descriptible por 1 coeficiente 3) que la varianza del error es constante que no hay series causales conocidas Por qué todo el Supuestos. Ndash IrishStat Oct 1 14 at 21:18 Ravi: En el ejemplo dado, la suma de los primeros cuatro términos es 0.9375 0.06250.1250.250.5. Por lo tanto, los primeros cuatro términos tiene 93,8 del peso total (6,2 está en la cola truncada). Utilice esto para obtener pesos normalizados que suman a la unidad por reescalado (división) por 0.9375. Esto da 0,06667, 0,1333, 0,2667, 0,5333. Ndash Assad Ebrahim 1 de octubre de 14 a las 22:21 Ive encontró que la computación ponderada exponencialmente las medias corrientes utilizando overline leftarrow overline alfa (x - overline), alphalt1 es un simple método de una línea, que es fácil, aunque sólo aproximadamente, interpretable en términos de Un número efectivo de muestras Nalpha (comparar este formulario con el formulario para calcular el promedio de funcionamiento), sólo requiere el dato actual (y el valor promedio actual) y es numéricamente estable. Técnicamente, este enfoque incorpora toda la historia al promedio. Las dos ventajas principales del uso de la ventana completa (a diferencia de la truncada discutida en la pregunta) son que en algunos casos puede facilitar la caracterización analítica del filtrado, y reduce las fluctuaciones inducidas si un muy grande (o pequeño) datos Valor es parte del conjunto de datos. Por ejemplo, considere el resultado del filtro si los datos son todos cero a excepción de un dato cuyo valor es 106. La exploración es la medida más común de riesgo, pero viene en varios sabores. En un artículo anterior, mostramos cómo calcular la volatilidad histórica simple. Utilizamos la volatilidad para medir el riesgo futuro. Utilizamos los datos reales de los precios de las acciones de Google para calcular la volatilidad diaria basada en 30 días de datos de existencias. En este artículo, mejoraremos la volatilidad simple y discutiremos el promedio móvil exponencialmente ponderado (EWMA). Vs histórico. Volatilidad implícita En primer lugar, permite poner esta métrica en un poco de perspectiva. Existen dos enfoques generales: volatilidad histórica e implícita (o implícita). El enfoque histórico supone que el pasado es un prólogo que medimos la historia con la esperanza de que sea predictivo. La volatilidad implícita, por el contrario, ignora la historia que resuelve por la volatilidad implícita en los precios de mercado. Espera que el mercado conozca mejor y que el precio de mercado contenga, aunque implícitamente, una estimación consensual de la volatilidad. Si nos centramos sólo en los tres enfoques históricos (a la izquierda de arriba), tienen dos pasos en común: Calcular la serie de retornos periódicos Aplicar un esquema de ponderación En primer lugar, Calcular el retorno periódico. Ésa es típicamente una serie de vueltas diarias donde cada vuelta se expresa en términos continuamente compuestos. Para cada día, tomamos el registro natural de la relación de precios de las acciones (es decir, el precio hoy dividido por el precio ayer, y así sucesivamente). Esto produce una serie de retornos diarios, de u i a u i-m. Dependiendo de cuántos días (m días) estamos midiendo. Eso nos lleva al segundo paso: aquí es donde los tres enfoques difieren. En el artículo anterior (Usando Volatilidad Para Calcular el Riesgo Futuro), mostramos que bajo un par de simplificaciones aceptables, la varianza simple es el promedio de los retornos cuadrados: Obsérvese que esto suma cada uno de los retornos periódicos, luego divide ese total por el Número de días u observaciones (m). Por lo tanto, su realmente sólo un promedio de los retornos cuadrados periódico. Dicho de otra manera, cada cuadrado de retorno se da un peso igual. Por lo tanto, si alfa (a) es un factor de ponderación (específicamente, 1 / m), entonces una variante simple se parece a esto: El EWMA mejora en la varianza simple La debilidad de este enfoque es que todas las ganancias ganan el mismo peso. El retorno de ayer (muy reciente) no tiene más influencia sobre la varianza que el retorno de los últimos meses. Este problema se fija mediante la media móvil ponderada exponencialmente (EWMA), en la cual los rendimientos más recientes tienen mayor peso sobre la varianza. La media móvil exponencialmente ponderada (EWMA) introduce lambda. Que se denomina parámetro de suavizado. Lambda debe ser menos de uno. Bajo esta condición, en lugar de iguales ponderaciones, cada cuadrado de retorno es ponderado por un multiplicador de la siguiente manera: Por ejemplo, RiskMetrics TM, una empresa de gestión de riesgos financieros, tiende a utilizar un lambda de 0,94 o 94. En este caso, el primero Más reciente) cuadrado es ponderado por (1-0.94) (. 94) 0 6. El próximo cuadrado de retorno es simplemente un lambda-múltiplo del peso anterior en este caso 6 multiplicado por 94 5.64. Y el tercer día anterior el peso es igual (1-0.94) (0.94) 2 5.30. Ese es el significado de exponencial en EWMA: cada peso es un multiplicador constante (es decir, lambda, que debe ser menor que uno) del peso de los días anteriores. Esto asegura una varianza que está ponderada o sesgada hacia datos más recientes. (Para obtener más información, consulte la hoja de cálculo de Excel para la volatilidad de Google.) A continuación se muestra la diferencia entre la volatilidad y EWMA para Google. La volatilidad simple pesa efectivamente cada vuelta periódica en 0.196 como se muestra en la columna O (teníamos dos años de datos de precios de acciones diarios, es decir, 509 devoluciones diarias y 1/509 0.196). Pero note que la Columna P asigna un peso de 6, luego 5.64, luego 5.3 y así sucesivamente. Esa es la única diferencia entre la varianza simple y EWMA. Recuerde: Después de sumar la serie completa (en la columna Q) tenemos la varianza, que es el cuadrado de la desviación estándar. Si queremos volatilidad, necesitamos recordar tomar la raíz cuadrada de esa varianza. ¿Cuál es la diferencia en la volatilidad diaria entre la varianza y EWMA en el caso de Googles? Su significativo: La variación simple nos dio una volatilidad diaria de 2,4 pero la EWMA dio una volatilidad diaria de sólo 1,4 (ver la hoja de cálculo para más detalles). Aparentemente, la volatilidad de Googles se estableció más recientemente, por lo tanto, una simple varianza podría ser artificialmente alta. La variación de hoy es una función de la variación de los días de Pior Usted notará que necesitábamos calcular una larga serie de pesos exponencialmente decrecientes. No haremos la matemática aquí, pero una de las mejores características de la EWMA es que toda la serie se reduce convenientemente a una fórmula recursiva: Recursiva significa que las referencias de la varianza de hoy (es decir, es una función de la variación de días anteriores). Esta fórmula también se encuentra en la hoja de cálculo, y produce exactamente el mismo resultado que el cálculo de longitud larga. Se dice: La varianza de hoy (bajo EWMA) equivale a la varianza de ayer (ponderada por lambda) más la vuelta al cuadrado de ayer (pesada por uno menos lambda). Observe cómo estamos agregando dos términos juntos: la variación ponderada de ayer y la ponderada ponderada de ayer, la vuelta al cuadrado. Aun así, lambda es nuestro parámetro de suavizado. Un lambda más alto (por ejemplo, como RiskMetrics 94) indica una disminución más lenta en la serie - en términos relativos, vamos a tener más puntos de datos en la serie y van a caer más lentamente. Por otro lado, si reducimos el lambda, indicamos una mayor decaimiento: los pesos se caen más rápidamente y, como resultado directo de la rápida decaimiento, se utilizan menos puntos de datos. (En la hoja de cálculo, lambda es una entrada, para que pueda experimentar con su sensibilidad). Resumen La volatilidad es la desviación estándar instantánea de una acción y la métrica de riesgo más común. Es también la raíz cuadrada de la varianza. Podemos medir la varianza históricamente o implícitamente (volatilidad implícita). Al medir históricamente, el método más fácil es la varianza simple. Pero la debilidad con la varianza simple es que todas las ganancias obtienen el mismo peso. Así que enfrentamos un trade-off clásico: siempre queremos más datos, pero cuanto más datos tengamos, más nuestro cálculo se diluye por datos distantes (menos relevantes). La media móvil exponencialmente ponderada (EWMA) mejora la varianza simple asignando pesos a los retornos periódicos. Haciendo esto, ambos podemos usar un tamaño grande de la muestra pero también dar mayor peso a vueltas más recientes. (Para ver un tutorial de película sobre este tema, visite la Tortuga Biónica.) Este repo proporciona algoritmos de media móvil ponderados exponencialmente, o EWMAs para abreviar, basado en nuestra charla cuantificación de comportamiento anormal. Promedio móvil ponderado exponencialmente Una media móvil exponencialmente ponderada es una forma de calcular continuamente un tipo de promedio para una serie de números, a medida que llegan los números. Después de agregar un valor en la serie al promedio, su peso en el promedio disminuye exponencialmente con el tiempo. Esto distorsiona el promedio hacia datos más recientes. EWMAs son útiles por varias razones, principalmente su costo computacional y de memoria baratos, así como el hecho de que representan la reciente tendencia central de la serie de valores. El algoritmo EWMA requiere un factor de desintegración, alfa. Cuanto mayor sea el alfa, más el promedio está sesgado hacia la historia reciente. El alfa debe estar entre 0 y 1, y es típicamente un número bastante pequeño, tal como 0.04. Discutiremos la elección del alfa más adelante. El algoritmo trabaja así, en pseudocódigo: Multiplica el siguiente número en la serie por alfa. Multiplique el valor actual del promedio por 1 menos alfa. Agregue el resultado de los pasos 1 y 2 y guárdelo como el nuevo valor actual del promedio. Repita para cada número de la serie. Existen comportamientos de casos especiales para saber cómo inicializar el valor actual, y estos varían entre implementaciones. Una aproximación es comenzar con el primer valor en la serie otro es el promedio de los primeros 10 o más valores en la serie usando una media aritmética, y luego comenzar la actualización incremental de la media. Cada método tiene ventajas y desventajas. Puede ser útil mirarla gráficamente. Supongamos que la serie tiene cinco números, y elegimos alfa para que sea 0,50 por simplicidad. Heres la serie, con números en el barrio de 300. Ahora permite tomar la media móvil de esos números. Primero fijamos el promedio al valor del primer número. Luego multiplicamos el siguiente número por alfa, multiplicamos el valor actual por 1-alfa y los añadimos para generar un nuevo valor. Esto continúa hasta que terminemos. Observe cómo cada uno de los valores de la serie se decae a la mitad cada vez que se agrega un nuevo valor y la parte superior de las barras en la parte inferior de la imagen representa el tamaño de la media móvil. Es un promedio suavizado, o paso bajo, de la serie original. Considere una media móvil de desplazamiento de ventana de tamaño fijo (no una media móvil ponderada exponencialmente) que promedia sobre las N muestras anteriores. Cuál es la edad media de cada muestra Es N / 2. Supongamos ahora que se desea construir una EWMA cuyas muestras tengan la misma edad media. La fórmula para calcular el alfa requerido para esto es: alfa 2 / (N1). La prueba está en el libro Producción y análisis de las operaciones de Steven Nahmias. Por ejemplo, si usted tiene una serie de tiempo con muestras una vez por segundo, y desea obtener la media móvil en el minuto anterior, debe utilizar un alfa de .032786885. Esto, por cierto, es el alpha constante utilizado para este repositorio SimpleEWMA. Este repositorio contiene dos implementaciones del algoritmo EWMA, con diferentes propiedades. Todas las implementaciones se ajustan a la interfaz MovingAverage y el constructor devuelve ese tipo. Las implementaciones actuales suponen un intervalo de tiempo implícito de 1,0 entre cada muestra añadida. Es decir, el paso del tiempo es tratado como si fuera el mismo que la llegada de las muestras. Si necesita decadencia basada en el tiempo cuando las muestras no llegan precisamente a intervalos establecidos, este paquete no soportará sus necesidades en la actualidad. Un SimpleEWMA está diseñado para un bajo consumo de CPU y memoria. Tendrá un comportamiento diferente que el VariableEWMA por múltiples razones. No tiene período de calentamiento y utiliza un decaimiento constante. Estas propiedades le permiten usar menos memoria. También se comportará de manera diferente cuando su igual a cero, lo que se supone que significa no inicializado, por lo que si un valor es probable que se convierta en cero en el tiempo, entonces cualquier valor distinto de cero causará un salto brusco en lugar de un pequeño cambio. A diferencia de SimpleEWMA, esto admite una edad personalizada que debe almacenarse y, por lo tanto, utiliza más memoria. También tiene un tiempo de calentamiento cuando se comienza a agregar valores a la misma. Informará un valor de 0.0 hasta que haya añadido el número de muestras necesario. Utiliza una cierta memoria para almacenar el número de muestras agregadas a él. Como resultado, utiliza un poco más del doble de la memoria de SimpleEWMA. Vea aquí la documentación generada por GoDoc. Sólo aceptamos peticiones de tracción para correcciones menores o mejoras. Esto incluye: Pequeñas correcciones de errores Typos Documentación o comentarios Por favor, abra problemas para discutir nuevas características. Las solicitudes de extracción de nuevas características serán rechazadas, por lo que recomendamos bifurcar el repositorio y realizar cambios en el tenedor para su caso de uso. Este repositorio es Copyright (c) 2013 VividCortex, Inc. Todos los derechos reservados. Está licenciado bajo la licencia del MIT. Por favor vea el archivo de LICENCIA para los términos de licencia aplicables. EWMA 101 El enfoque de EWMA tiene una característica atractiva: requiere relativamente pocos datos almacenados. Para actualizar nuestra estimación en cualquier punto, sólo necesitamos una estimación previa de la tasa de varianza y el valor de observación más reciente. Un objetivo secundario de EWMA es seguir cambios en la volatilidad. Para los valores pequeños, las observaciones recientes afectan rápidamente la estimación. Para valores cercanos a uno, la estimación cambia lentamente en función de los cambios recientes en los retornos de la variable subyacente. La base de datos RiskMetrics (producida por JP Morgan y puesta a disposición del público) utiliza la EWMA para actualizar la volatilidad diaria. IMPORTANTE: La fórmula de EWMA no asume un nivel de varianza promedio a largo plazo. Por lo tanto, el concepto de volatilidad significa la reversión no es capturado por la EWMA. Los modelos ARCH / GARCH son más adecuados para este propósito. Lambda Un objetivo secundario de EWMA es el seguimiento de los cambios en la volatilidad, por lo que para los valores pequeños, la observación reciente afecta a la estimación con prontitud, y para los valores más cercanos a uno, la estimación cambia lentamente a los cambios recientes en los retornos de la variable subyacente. La base de datos RiskMetrics (producida por JP Morgan) y puesta a disposición pública en 1994, utiliza el modelo EWMA para actualizar la estimación diaria de la volatilidad. La empresa encontró que a través de una gama de variables de mercado, este valor de proporciona pronóstico de la varianza que se aproxima más a la tasa de varianza realizada. Las tasas de varianza realizadas en un día en particular se calculó como un promedio igualmente ponderado de los siguientes 25 días. Del mismo modo, para calcular el valor óptimo de lambda para nuestro conjunto de datos, tenemos que calcular la volatilidad realizada en cada punto. Hay varios métodos, así que elige uno. A continuación, calcule la suma de los errores al cuadrado (SSE) entre la estimación de EWMA y la volatilidad realizada. Finalmente, minimice el SSE variando el valor lambda. Suena simple Es. El mayor desafío es acordar un algoritmo para calcular la volatilidad realizada. Por ejemplo, la gente en RiskMetrics eligió el siguiente 25 días para calcular la tasa de varianza realizada. En su caso, puede elegir un algoritmo que utiliza los precios de volumen diario, HI / LO y / o OPEN-CLOSE. FAQ Q 1: ¿Podemos usar EWMA para estimar (o pronosticar) la volatilidad más de un paso adelante? La representación de volatilidad de EWMA no asume una volatilidad promedio a largo plazo, y por lo tanto, para cualquier horizonte de pronóstico más allá de un paso, la EWMA devuelve un Valor constante: Cómo calcular los promedios móviles ponderados en Excel utilizando suavizado exponencial Análisis de datos de Excel para Dummies, 2ª edición La herramienta Exponential Smoothing en Excel calcula el promedio móvil. Sin embargo, el suavizado exponencial pesa los valores incluidos en los cálculos del promedio móvil de modo que los valores más recientes tengan un mayor efecto en el cálculo promedio y los valores antiguos tengan un efecto menor. Esta ponderación se realiza a través de una constante de suavizado. Para ilustrar cómo funciona la herramienta Exponential Smoothing, supongamos que vuelve a examinar la información diaria promedio sobre la temperatura. Para calcular las medias móviles ponderadas usando el suavizado exponencial, realice los siguientes pasos: Para calcular una media móvil suavizada exponencialmente, primero haga clic en el botón de comando Análisis de datos de la barra de datos. Cuando Excel muestra el cuadro de diálogo Análisis de datos, seleccione el elemento Exponential Smoothing de la lista y, a continuación, haga clic en Aceptar. Excel muestra el cuadro de diálogo Exponential Smoothing. Identificar los datos. Para identificar los datos para los que desea calcular un promedio móvil exponencialmente suavizado, haga clic en el cuadro de texto Rango de entrada. A continuación, identifique el rango de entrada, ya sea escribiendo una dirección de intervalo de hoja de cálculo o seleccionando el intervalo de hoja de cálculo. Si su rango de entrada incluye una etiqueta de texto para identificar o describir sus datos, active la casilla de verificación Etiquetas. Proporcione la constante de suavizado. Introduzca el valor de la constante de suavizado en el cuadro de texto Factor de amortiguación. El archivo de Ayuda de Excel sugiere que utilice una constante de suavizado de entre 0,2 y 0,3. Sin embargo, presumiblemente, si usa esta herramienta, tiene sus propias ideas acerca de cuál es la constante de suavizado correcta. (Si usted no tiene ni idea acerca de la constante de suavizado, quizás no debería usar esta herramienta.) Dígale a Excel dónde colocar los datos de promedio móvil suavizado exponencialmente. Utilice el cuadro de texto Rango de salida para identificar el rango de hoja de cálculo en el que desea colocar los datos del promedio móvil. En el ejemplo de la hoja de cálculo, por ejemplo, coloque los datos del promedio móvil en el rango de hoja de cálculo B2: B10. (Opcional) Diagrama los datos suavizados exponencialmente. Para graficar los datos exponencialmente suavizados, seleccione la casilla de verificación Salida del gráfico. (Opcional) Indica que desea que se calcula la información de error estándar. Para calcular los errores estándar, seleccione la casilla de verificación Estándar Errores. Excel sitúa los valores de error estándar junto a los valores de la media móvil exponencialmente suavizados. Una vez que haya terminado de especificar qué información de media móvil desea calcular y dónde desea colocarla, haga clic en Aceptar. Excel calcula la información del promedio móvil.


No comments:

Post a Comment