Filtros digitales adaptativos

 
Mucha gente utiliza ahora el JMA y sus modificaciones, pero casi no se mencionan los supuestos teóricos concretos sobre los que funciona. Si alguien lo sabe, por favor, compártalo.
 

Hay bastante información sobre este tema, por ejemplo aquí: http://prodav.narod.ru/dsp/index.html (sección "adaptive digital filtering")


Pregúntale también a Prival, parece que es el único experto en DSP entre nosotros, creo que puede ayudar en teoría.

PD: ¿qué es la JMA?

 

Me encantaría ayudar. Pero, por desgracia, no puedo leer el código MQL con la misma libertad que MathCad, donde las fórmulas están escritas de la forma en que estamos acostumbrados a verlas en los libros. Lo único que me parece (aunque no estoy seguro) es utilizar uno de los tipos de regresión, para que quede más claro

Hay una regresión lineal como y(x)=ax+b. Se pueden calcular los coeficientes a y b de diferentes maneras, se puede utilizar el CNA (parece que no se utiliza allí), y se puede utilizar la recursividad, pero para entenderlo hay que entender claramente los bucles (me confundo allí, dónde, qué, por qué se calcula). Lo más probable es que haya una regresión no lineal, porque hay algunos if() mientras se calcula + tipo de ecuación de regresión en sí no está claro, cuántos coeficientes hay.

En general, casi todos los indicadores pueden considerarse filtros digitales, el MA es un filtro digital. La palabra adaptación suele significar que algunos parámetros (coeficientes de la tripa del filtro) tienen que cambiar en función de las características de la señal de entrada. Por lo tanto, en primer lugar me referiría a AMA, FRAMA y filtros digitales adaptativos similares (el parámetro de promediación (n) cambia dependiendo de la estimación de la varianza del proceso de entrada), casi todos los FFT, filtros wavelet que utilizan el procesamiento de umbral (tratando de hacer coincidir los parámetros TF con un espectro de la señal deseada de entrada).

Pero SATL, FATL no son adaptativos, porque una vez en la etapa de diseño se calcularon los coeficientes TF, que permitieron igualar la respuesta transitoria del filtro con un espectro de la señal de entrada (AFR e IFR) y durante el funcionamiento estos coeficientes no cambian. Se trata de los llamados filtros adaptados. Pero hay un ideal, lo que se llama en DSP filtro óptimo, para construir es difícil, pero posible. Para ello es necesario conocer los espectros de la señal útil y del ruido.

No sé si te he ayudado o te he confundido :-), pero en cualquier caso buena suerte.

 
2 grasn - muchas gracias por el enlace, el material es muy bueno)

2 Prival - Tengo alguna experiencia con este tipo de filtros digitales, pero en el principio de "teoría a la práctica" (filtro de Kaufman), visualmente los resultados fueron muy buenos, pero las estadísticas no mostraron ninguna ventaja particular. Las estadísticas son mejores en JMA porque he añadido algunas soluciones originales al algoritmo, y eso es lo que quiero entender. Ahora tendré que desmontar el código en base a la teoría y buscar las diferencias))
 
NightPaul:

2 grasn - muchas gracias por el enlace, el material es muy bueno)

2 Prival - Tengo alguna experiencia con este tipo de filtros digitales, pero en el principio de "teoría a la práctica" (filtro de Kaufman), visualmente los resultados fueron muy buenos, pero las estadísticas no mostraron ninguna ventaja particular. Las estadísticas son mejores en JMA porque he añadido algunas soluciones originales al algoritmo, y eso es lo que quiero entender. Ahora tendré que descomponer el código en base a la teoría y buscar las diferencias ))
.

Intenta hacer lo siguiente: toma como base AMA (Kaufman), pero utiliza un modelo de regresión en lugar de una media simple. Tal vez sea más fácil de esta manera y todo será más claro + usted hará su propio código. IHMO esta combinación de métodos puede ser buena.
 
No es una mala opción, por cierto. Te avisaré cuando estén los resultados.
 
Prival, déjame reescribir el código en fórmulas y me lo explicas.
 
Integer:
Prival, déjame reescribir el código en fórmulas y me explicas.

El código de qué, JMA. ¿O debo escribir fórmulas de cómo reescribir JMA? Como me dice mi experiencia en programación, es mejor (y más rápido) escribir tu propio código que lidiar con el de otra persona y escribir lo mismo (o algo muy parecido).
 

Colegas, no me consideren demasiado molesto, pero ¿qué es la JMA? He intentado hacer mi propio filtro adaptativo basándome en el algoritmo de mínimos cuadrados de Widrow-Hopf, que parece ser el más sencillo. Después de algunos experimentos estaba 300% seguro de que es imposible hacer un filtro adaptativo para series temporales de Forex, porque los milagros no ocurren, sólo hay magos. La razón principal es la enorme influencia del efecto de no estacionariedad: la superficie del rendimiento del filtro cambia todo el tiempo, por lo que los mínimos de esta superficie cambian, y también hay problemas con la convergencia de los coeficientes de ponderación. Pero en general - no soy un experto, sólo autodidacta en DSP.

PD: Si haces un filtro realmente adaptable, por favor déjame echar un vistazo :o)

 
2 Entero
Si no es mucha molestia, sería una buena idea desmontar el código de JJMASeries de este artículo 'Efficient averaging algorithms with minimum lag and their use in indicators'.

2 grash
Aquí está lo que el propio autor escribe sobre JMA ) - http://www.jurikres.com/catalog/ms_ama.htm#top
Como todo esto está a la venta sólo nos dan los códigos desmontados, según entiendo yo, pero realmente quiero entender cuál es la parte complicada.

 

Por cierto, hay un ligero golpe en el filtro Kalman(Prival, eso es sólo para ti):

El JMA se comporta mejor que otros métodos sofisticados, incluyendo ...

Filtros g, g-h, g-h-k de Kalman, con o sin memoria de desvanecimiento
Filtros Savitzky-Golay, con o sin memoria de desvanecimiento
Media móvil adaptativa de Kaufman (KAMA)
Media dinámica del índice variable de Chande (VIDYA)
Media móvil exponencial doble (DEMA)
Media móvil exponencial triple (T3)
Media móvil modificada de Brown (MMA)
Filtro elíptico óptico modificado de Ehler (MEF)
Filtro FIR ponderado simétricamente de Ehler
Media móvil del casco (HMA)

P.D. Por cierto, hay un enlace al filtro de Kalman al final de esta página.

Razón de la queja: