Lag de las medias móviles

Todo sobre el trading en los mercados financieros: funcionamiento, dudas, noticias, etc.
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Lag de las medias móviles

Mensaje por Rafa7 »

Señores foristas,

En otro hilo calculé el lag (retraso) de algunas medias móviles. Pero veo que, incluso me cuesta a mi seguirme a mi mimo por la notación. Así que vuelvo a calcular con otra notación.
Sea C[n] = Cierre de hace n-velas, y, por lo tanto, C[0] = Cierre actual.

Voy a calcular el lag de la SMA(n), apoyándome en que 1 + 2 + ... + n = n * (n +1) / 2, y por lo tanto:
1 + 2 + ... + (n - 1) = (n - 1) * n / 2 = n * (n - 1) / 2

SMA(n) = (C(0) + ... + C(n - 1)) / n
Lag(SMA(n)) = (Lag(C[0]) + ... Lag(C[n - 1])) / n
= (1 + 2 + ... + (n - 1)) / n
= n * (n - 1) / 2 / n
= (n - 1) / 2.
Por lo tanto,

Lag(SMA(n)) = (n - 1) / 2

Saludos.
Última edición por Rafa7 el 16 Oct 2023 10:10, editado 6 veces en total.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Lag de las medias móviles

Mensaje por Rafa7 »

Señores foristas,

Voy a calcular, de manera análoga, el lag de la media ponderada, WMA(n), apoyándome en que
1^2 + 2^2 + ...n^2 = n * (n + 1) (2 * n + 1) / 6.
Y, por lo tanto:
1^2 + 2^2 + ... + (n - 1)^2 = (n - 1) * n * (2 * (n - 1) + 1 ) / 6
= n * (n - 1) * (2 * n - 2 + 1) / 6
= n * (n - 1) * (2 * n - 1) / 6
WMA(n) = (n * C[0] + (n - 1) * C[1] + ... + (n - (n - 1)) * C[n - 1]) / (1 + 2 + ... + n)
= (n * C[0] + (n - 1) * C[1] + ... + (n - (n - 1)) * C[n - 1]) / n * (n + 1) /2
Lag(WMA(n)) = ((n - 1) * 1 + (n -2) * 2 + ... + (n - (n - 1)) * (n - 1))) / (n * (n + 1)) / 2
Para no tener que repetir el denominador ((n * (n + 1)) / 2), calculemos el numerador (después tendremos que dividir por el denominador).
(n - 1) * 1 + (n -2) * 2 + ... + (n - (n - 1)) * (n - 1)
= n * (1 + 2 + ... + (n - 1)) - (1^2 + 2^2 + ... + (n - 1)^2)
= n^2 * (n - 1) / 2 - n * (n - 1) * (2 * n - 1) / 6
= (3 * n^2 * (n - 1) - n * (n - 1) * (2 * n - 1)) / 6
= n * (n - 1) / 6 * (3 * n - 2 * n + 1)
= n * (n - 1) / 6 * (n + 1)
= n * (n - 1) * (n + 1) / 6
Ahora dividimos por el denominador.
Lag(WMA(n)) = (n * (n - 1) * (n + 1) / 6) / ((n * (n + 1)) / 2)
= (n - 1) / 3
Por lo tanto:

Lag(WMA(n)) = (n - 1) / 3

Saludos.
Última edición por Rafa7 el 16 Oct 2023 09:22, editado 2 veces en total.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
Foréxitos
Mensajes: 684
Registrado: 12 Mar 2017 19:13

Re: Lag de las medias móviles

Mensaje por Foréxitos »

Hola Rafa, gracias por compartir tu trabajo... me hizo acordar a la TEMA. Saludos.
ImagenImagenImagenImagenImagen
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Lag de las medias móviles

Mensaje por Rafa7 »

Foréxitos escribió: 15 Oct 2023 19:17 Hola Rafa, gracias por compartir tu trabajo... me hizo acordar a la TEMA. Saludos.
Gracias, Foréxitos.

Se me resiste demostrar cuál es el Lag(EMA(n)).
Lo he intentado.
Publiqué una demostración errónea en este foro.

Lo que está claro es que
Lag(WMA(n)) = (n - 1) / 3 <= Lag(EMA(n)) <= (n - 1) / 2 = Lag(SMA(n)).

Saludos,
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Lag de las medias móviles

Mensaje por Rafa7 »

Sres. foristas,

Este es mi intento de calcular Lag(EMA(n)):
Sea a = 2 / (n + 1).
EMA(n)[0] = a * C[0] + (1 - a) * EMA(n)[1]
= a * C[0] + (1 - a) * (a * C[1] + (1 - a) * EMA(n)[2])
= a * C[0] + a * (1 - a) * C[1] + a * (1 - a)^2 * C[2] + a * (1 - a)^3 * C[3] + ...
= a * ((1 - a)^0 * C[0] + (1 - a)^1 * C[1] + (1 - a)^2 * C[2] + ...)
Lag(EMA(n)) = a * (0 * (1 - a)^0 + 1 * (1 - a)^1 + 2 * (1 - a)^2 + ...)
Y aquí me atasco. No sé ahora como simplificar el cálculo.

Saludos.
Última edición por Rafa7 el 19 Oct 2023 21:04, editado 3 veces en total.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com

Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Lag de las medias móviles

Mensaje por Rafa7 »

Señores foristas,

He calculado el Lag(EMA(n)) para distintas n con Excel, basándome en el cálculo de mi aporte anterior en este hilo, y veo que siempre converge a (n - 1) / 2.
Os adjunto el Excel.
EMA.xlsx
Lag_EMA
(9.95 KiB) Descargado 13 veces
Por ejemplo, para n = 13 (celda B1) converge en 6 ((13 - 1) / 2 = 12 / 2 = 6).
Podéis probar diferentes n's y veréis que converge en (n - 1) / 2.

Después de ver los cálculos en Excel, no tengo la menor duda:

Lag(EMA(n)) = (n - 1) / 2 = Lag(SMA(n))

Lo difícil es demostrarlo para cualquier n.
Tal vez el camino es por inducción.
Si alguien sabe demostrarlo, por favor, que lo comparta.

Sin embargo, todos sabemos que la EMA(n) tiene menos Lag empírico que la SMA(n), las razones porque pasa esto son dos:
1. Estoy suponiendo, para simplificar el cálculo del lag de la EMA, que tenemos infinitas velas en el pasado, lo cual no es cierto.
2. Probablemente, cuando hay tendencia, el retraso empírico de la EMA es menor que su retraso teórico, o sea, menor que (n - 1) / 2.

Saludos.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
agmageton
Mensajes: 3596
Registrado: 30 Ene 2008 11:32

Re: Lag de las medias móviles

Mensaje por agmageton »

Hola Rafa que bueno verte otra vez por aquí, respecto a tú trabajo creo recordar que hace unos años ya lo expusiste, pero no me acuerdo exactamente para qué sirve, digamos que el retraso de la media sobre el precio no? yo te puedo dar una solución discreta si se trata de eso...pero ahora mismo no me acuerdo realmente que es lo que estás midiendo.

un saludo.
La entrada te da la probabilidad y la salida la rentabilidad...
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Lag de las medias móviles

Mensaje por Rafa7 »

agmageton escribió: 16 Oct 2023 11:28 Hola Rafa que bueno verte otra vez por aquí
Hola, agmageton.
También me alegro de verte por aquí.
agmageton escribió: 16 Oct 2023 11:28 respecto a tú trabajo creo recordar que hace unos años ya lo expusiste, pero no me acuerdo exactamente para qué sirve
En aquel hilo no pretendía tratar el tema de que utilidad tiene el calcular el retraso de las medias móviles.
George Bool inventó el algebra de Bool en el siglo XIX y en aquella época esta álgebra servía para poco, y ahora es la base matemática de los circuitos electrónicos.
Yo creo que seguramente podremos encontrar utilidad.
Por ejemplo, si usamos una SMA(21), el precio debería estar entre SMA(21) - 10^0,5 * ATR y SMA(21) + 10^0,5 * ATR con un 50% de probabilidad, ya que el lag es (21 - 1) / 2 = 10 y la volatilidad es proporcional a la raíz cuadrada del tiempo. Y si el precio está dentro, o fuera de esta banda, podríamos llegar ha hacer deducciones útiles para el trading.
Otra ejemplo. Supongamos que queremos usar una WMA(n) con lag equivalente a la SMA(50) para determinar tendencia. Entonces Lag(SMA(50)) es aproximadamente a Lag(WMA(75)). Por lo que podríamos substituir la SMA(50) por la WMA(75).
agmageton escribió: 16 Oct 2023 11:28 yo te puedo dar una solución discreta si se trata de eso...pero ahora mismo no me acuerdo realmente que es lo que estás midiendo.
Lo que calculo es el lag teórico.
Ejemplo. ¿Cuántas velas hemos de retroceder una SMA(11) para que coincida aproximadamente con los cierres?
Pues exactamente 5 velas, ya que (11 - 1) / 2 = 10 / 2 = 5. Si retrocedes la SMA(11) 5 velas, verás que esa media móvil y los cierres casi coinciden.
Espero que con el ejemplo entiendas que es lo que pretendo medir.

Saludos,
Última edición por Rafa7 el 17 Oct 2023 09:31, editado 3 veces en total.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Hermess
Mensajes: 1532
Registrado: 02 Abr 2015 14:32

Re: Lag de las medias móviles

Mensaje por Hermess »

Hola Rafa

Me alegro de leerte,.... espero que todo vaya bien.

saludos :D
El comercio diario es el juego del diablo. Te prometieron una olla de oro pero terminarás perdiendo tu alma. :-D
Avatar de Usuario
agmageton
Mensajes: 3596
Registrado: 30 Ene 2008 11:32

Re: Lag de las medias móviles

Mensaje por agmageton »

Muy interesante Rafa, lástima que no te pueda ayudar, en primer lugar porque hace años que no trabajo con medias, porque bajo mí punto de vista tienen dos problemas estructurales.

1º La asignación de n días es arbitraría con lo que se acaba optimizando para activos o por sesgos de mercado en la mayoría de las veces.

2º No recoge la información del precio, sólo la media de estos precios, sabes que se mueven pero no cómo se mueven, esto constata con el punto 1º de ahí la asignación óptima por el histórico.


A nivel operativo son muy delicadas, otra cosa son a nivel tendencial funcionan bien cómo otras herramientas de tendencia, aunque esto dependerá del marco operativo que te marques...

Aquí te pego un ejemplo de tendencia alcista de largo plazo (en blanco) y tenencias alcista (en verde) de corto plazo, utilizo alisados exponenciales con coeficiente y un filtro de rotura de volatilidad.
Adjuntos
cajd.png
La entrada te da la probabilidad y la salida la rentabilidad...
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Lag de las medias móviles

Mensaje por Rafa7 »

Hermess escribió: 17 Oct 2023 09:24 Hola Rafa

Me alegro de leerte,.... espero que todo vaya bien.

saludos :D
Yo también me alegro de leerte.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Lag de las medias móviles

Mensaje por Rafa7 »

Gracias, agmageton.
agmageton escribió: 18 Oct 2023 14:31 1º La asignación de n días es arbitraría con lo que se acaba optimizando para activos o por sesgos de mercado en la mayoría de las veces.
¿Puedes dar un ejemplo de indicador que no tenga parámetros arbitrarios?
agmageton escribió: 18 Oct 2023 14:31 2º No recoge la información del precio, sólo la media de estos precios, sabes que se mueven pero no cómo se mueven, esto constata con el punto 1º de ahí la asignación óptima por el histórico.
Se puede combinar con algún otro indicador que te indique como se mueve.

Saludos.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
agmageton
Mensajes: 3596
Registrado: 30 Ene 2008 11:32

Re: Lag de las medias móviles

Mensaje por agmageton »

Hola Rafa, el ejemplo que te he pegado como marco tendencial lleva un coeficiente "parámetro" único para todos los activos, esto con las medias móviles no se puede porque tienen el problema de estructura que sólo recoge una media de cierres y no la diferencia del precio anterior al actual para suavizar.

La otra pregunta de combinar con un indicador oscilador (que te dé información del precio), la verdad que yo me los hago todos a medida, igual existen de otro modo, pero yo pienso que necesito? y bajo es premisa trabajo en lo que quiero, evidentemente para decirte algo, las preguntas que te debes hacerte, de que manera se mueve el precio? que momento tiene? bajo que marco operativo está? etc.

saludos.
La entrada te da la probabilidad y la salida la rentabilidad...
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Lag de las medias móviles

Mensaje por Rafa7 »

Sres. foristas.

Después de varios años, creo que por fin he conseguido demostrar que
Lag(EMA(n)) = Lag(SMA(n)) = (n - 1) / 2.
Donde EMA es la exponencial estándar en la que el factor de suavizado alfa = 2 / (n + 1).

Primero quiero demostrar que sea cual sea alfa Lag(EMA; C[0]) = (1 - alfa) / alfa, con 0 < alfa < 1.
Notación: [0] = actual, [1] = anterior, C = Cierre.

Lag(EMA; C[0])
= Lag(alfa * C[0] + (1 - alfa) * EMA[1]; C[0])
= alfa * Lag(C[0]; C[0]) + (1 - alfa) * Lag(EMA[1]; C[0])
= (1 - alfa) * Lag(EMA[1]; C[0])
= (1 - alfa) * (Lag(EMA[1]; C[1]) + 1)
= (1 - alfa) * Lag(EMA[1]; C[1]) + 1 - alfa

Y ahora viene el punto más complicado de entender de mi demostración.
Afirmo que Lag(EMA; C[0]) = Lag(EMA[1]; C[1]) porque en un mercado aleatorio hay una probabilidad del 50% de que en el histórico Lag(EMA; C[0]) > Lag(EMA[1]; C[1]) y hay una probabilidad del 50% de que en el histórico Lag(EMA; C[0]) < Lag(EMA[1]; C[1]) .

Entonces Lag(EMA; C[0]) = (1 - alfa) * Lag(EMA[0]; C[0]) + 1 - alfa
= (1 - alfa) / alfa.

Por lo tanto,
Lag(EMA(alfa)) = (1 - alfa) / alfa, 0 < alfa < 1

Vamos a calcular la EMA estándar, o sea, la de suavizado alfa = 2 / (n + 1).
Lag(EMA_estándar(n)) = (1 - 2 / (n + 1)) / 2 / (n + 1) = (n + 1 - 2) / 2 = (n - 1) / 2 = Lag(SMA(n))

Por lo tanto,
Lag(EMA_estándar(n)) = (n - 1) / 2 = Lag(SMA(n)), alfa = 2 / (n + 1)

Obviamente, el lag de EMA se reducirá o se aumentará, dependiendo de si hay tendencia o lateralidad.

Sea RMA la EMA(n) de Wilder, o sea, de suavizado alfa = 1 / n.
Lag(RMA(n)) = (1 - alfa) / alfa = (1 - 1 / n) / 1 / n = n - 1.

Por lo tanto,
Lag(RMA(n)) = n - 1, exponencial de Wilder, alfa = 1 / n
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
0103
Mensajes: 190
Registrado: 15 Oct 2011 18:37

Re: Lag de las medias móviles

Mensaje por 0103 »

Buenas Rafa,

Mi admiración Rafa, todo lo que sean trabajar y estrujar números y fórmulas me da una envidia...

Me he permitido pasar por chatgpt4 y gemini tus conclusiones, esto es lo que comenta gpt4 por si te interesa...

"la demostración es bastante interesante y toca varios puntos clave sobre el comportamiento de los indicadores técnicos en análisis financiero. Vamos a revisar tu razonamiento paso a paso para asegurarnos de que todo está correcto.
Demostración inicial para EMA con un alfa genérico

Tu inicio es con la premisa de que para cualquier valor de alfa (donde 0 < alfa < 1), el retraso (lag) del EMA con respecto al precio actual C[0]C[0] se puede expresar como (1−α)/α(1−α)/α. La notación que usas se entiende bien, con [0][0] representando el valor actual y [1][1] el valor anterior.

La fórmula para el EMA es:
EMAactual=α⋅C[0]+(1−α)⋅EMAanteriorEMAactual​=α⋅C[0]+(1−α)⋅EMAanterior​

Llegas a la conclusión de que Lag(EMA;C[0])=(1−α)/αLag(EMA;C[0])=(1−α)/α a través de una serie de pasos que asumen que el lag entre EMAactualEMAactual​ y C[0]C[0] es equivalente al lag entre EMAanteriorEMAanterior​ y C[1]C[1] en un mercado aleatorio, lo cual es una aproximación teórica interesante.
Transición a EMA estándar y comparación con SMA

Para el EMA estándar, defines αα como 2/(n+1)2/(n+1), y luego desarrollas esta fórmula para llegar a Lag(EMAestaˊndar(n))=(n−1)/2Lag(EMAestaˊndar​(n))=(n−1)/2, que igualas al lag de una SMA de periodo nn. Este resultado es particularmente relevante porque conecta el comportamiento de EMA y SMA en términos de su retraso relativo a los movimientos de precios.
RMA o EMA de Wilder

Finalmente, examinas la EMA de Wilder, que tiene un alfa de 1/n1/n, y concluyes que el retraso para RMA es n−1n−1, lo cual es correcto bajo la definición de alfa que has dado.
Validación y Comentarios

Para EMA con un alfa genérico: Tu razonamiento inicial sobre el retraso del EMA en función de αα es conceptualmente sólido. La idea de que en un mercado aleatorio, el lag promedio de EMA respecto a los precios actuales puede aproximarse por (1−α)/α(1−α)/α es interesante y podría servir como una buena aproximación, aunque la deducción se basa en una suposición estadística sobre la aleatoriedad y la distribución de precios.

EMA estándar vs. SMA: La igualación del lag del EMA estándar al de la SMA simplifica la comprensión de cómo estos dos indicadores responden al precio con retraso. Tu demostración para llegar a (n−1)/2(n−1)/2 utiliza adecuadamente la definición de αα para EMA estándar. Sin embargo, es crucial recordar que esta es una simplificación que iguala los efectos de retraso promedio, pero no necesariamente significa que EMA y SMA sean equivalentes en términos de sensibilidad a los cambios de precio o cómo interpretan la tendencia.

RMA de Wilder: Tu cálculo para el lag de la RMA es correcto bajo la premisa de que el αα de Wilder se define como 1/n1/n, y proporciona una buena base para entender cómo este tipo de EMA se diferencia en su respuesta al precio.

En resumen, tu demostración proporciona una interesante aproximación teórica al retraso de diferentes medias móviles y cómo este lag puede ser conceptualizado en términos de αα. Es importante tener en cuenta, sin embargo, que estas simplificaciones asumen mercados perfectamente aleatorios y no tienen en cuenta otros factores que podrían influir en el comportamiento del precio y, por lo tanto, en la efectividad de estos indicadores."
Si te ha gustado este hilo del Foro, ¡compártelo en redes!


Responder

Volver a “Trading en General”