Estrategias de negociación basadas en filtros digitales - página 72

 

Es una gran ayuda

Gracias por su amable ayuda al publicar. Es una gran ayuda para mí.

Mis mejores deseos para todos ustedes

 

Gran

Boyens:
Descargué el indicador #MFT_STLM2_v2 publicado por el gran Simba, pero no me funcionó en mi plataforma.

¿Esta versión ha caducado o algo así?

Estoy buscando un STLM MTF para definir la tendencia.

Gracias de antemano amigos.

Por favor.

Boyens,

Encuentralos aqui,necesitas ambos compilados en tu carpeta de indicadores para que el MTF funcione,entonces,puedes adjuntar solo el MTF y jugar con el,te sugiero que uses h4 y/o d1 para la definicion de la tendencia en los graficos de tf inferior.

Saludos

S

Archivos adjuntos:
stlm2.mq4  11 kb
 

Alternativas para el cálculo de FATL SATL, etc.

De alguna manera tengo mis dudas sobre este modelo cíclico múltiple del mercado de divisas. No pretendo cuestionar la utilidad de los indicadores basados en el modelo, pero me pregunto cuáles pueden ser las fuentes de tales estructuras resonantes. Normalmente, la resonancia requiere una reacción retardada a un estímulo. La estructura resonante resuena en un periodo igual al retraso. ¿Qué puede retrasarse 200 horas en esta era de la información? (Tal vez la resonancia podría explicarse más fácilmente si se produjera en períodos más pequeños en la TF M1). ¿Cuál puede ser el estímulo? ¿Noticias?, ¿Miedo y codicia de los comerciantes que actúan como grupo? Una pregunta sociológica interesante, pero que no es útil aquí.

Una segunda objeción es el hecho, señalado por Simba, de que los períodos de resonancia no coinciden cuando se miden en diferentes TF. Si realmente hay una estructura resonante en, por ejemplo, 48 periodos de 1H, entonces debería mostrarse como una resonancia en 12 periodos de 4H, o 192 periodos de 15M. Esto no parece ocurrir. ¿Por qué? ¿No te pone nervioso usar la suposición cíclica para operar?

Sean cuales sean las respuestas, si los indicadores son útiles, entonces hay formas alternativas de calcularlos. No necesitamos recurrir al análisis espectral continuo y a los filtros digitales adaptativos una vez que estamos convencidos de que hay 2 o 3 ciclos que dominan, y que cambian de frecuencia (período) y amplitud lentamente, etc. Podemos usar FFT's, MESA, Goertzel o lo que sea para convencernos de esto... Yo no estoy convencido todavía, aunque las imágenes en 3D son bastante convincentes. Luego podemos utilizar métodos probados para extraer las señales cíclicas entre sí y del ruido.

Este problema de extracción de señales es bastante común en el diseño de sistemas de comunicación. Piensa en cómo tu receptor de radio (o tu teléfono móvil, si no hay más remedio) extrae su señal del ruido de fondo y de otras señales del entorno. Estas señales no son estacionarias, como tampoco lo es el ruido, aunque se suele modelar así. Son bastante complejas, con variaciones de fase, frecuencia y amplitud. Sin embargo, pueden extraerse de forma fiable en entornos de baja relación señal-ruido, siempre que no interfieran entre sí.

¿Qué tal si se utilizan tres filtros de paso de banda fijos con un paso de banda lo suficientemente estrecho como para separar las 3 señales, pero lo suficientemente amplio como para pasar la variación de frecuencia esperada? A cada filtro le sigue un bucle de bloqueo de fase para extraer la frecuencia cambiante, y un demodulador coherente para extraer la amplitud. No se requiere ningún análisis espectral. (Excepto para seleccionar las tres bandas.) No se requiere una importancia relativa, ni diseñar y modificar los filtros sobre la marcha. (La señal extraída será de fase continua).

Todos estos elementos son filtros, multiplicadores o un oscilador con frecuencia controlada digitalmente (VCO). El único filtro que tiene una respuesta en frecuencia importante es el filtro de bucle, y hay muchos diseños para estos. Tengo muchas referencias si alguien está interesado. Si consigo que mi memoria coopere para no olvidar lo que estoy intentando programar, y si puedo resucitar alguna semblanza de codificación en C, puede que lo intente yo mismo.

MadCow

 

Preprocesamiento de datos

Richcap, gracias por compartir tu código.

¿Conoces esta otra versión de MESA, escrita para Amibroker?

AmiBroker - Biblioteca AFL

Implementa varios preprocesamientos (filtrado, detrending) que no están incluidos en tu código, y de los que te podrías beneficiar ya que deberían permitir mejores resultados en datos reales.

Espero que le sirva de ayuda.

 

Resonante

MadCow:
De alguna manera tengo mis dudas sobre este modelo cíclico múltiple del mercado de divisas. No pretendo cuestionar la utilidad de los indicadores basados en el modelo, pero me pregunto cuáles pueden ser las fuentes de tales estructuras resonantes. Normalmente, la resonancia requiere una reacción retardada a un estímulo. La estructura resonante resuena en un periodo igual al retraso. ¿Qué puede retrasarse durante 200 horas en esta era de la información? (Tal vez la resonancia podría explicarse más fácilmente si se produjera en períodos más pequeños en la TF M1). ¿Cuál puede ser el estímulo? ¿Noticias?, ¿Miedo y codicia de los comerciantes que actúan como grupo? Una pregunta sociológica interesante, pero que no es útil aquí.

Una segunda objeción es el hecho, señalado por Simba, de que los períodos de resonancia no coinciden cuando se miden en diferentes TF. Si realmente hay una estructura resonante en, por ejemplo, 48 periodos de 1H, entonces debería mostrarse como una resonancia en 12 periodos de 4H, o 192 periodos de 15M. Esto no parece ocurrir. ¿Por qué? ¿No te pone nervioso usar la suposición cíclica para operar?

Sean cuales sean las respuestas, si los indicadores son útiles, entonces hay formas alternativas de calcularlos. No necesitamos recurrir al análisis espectral continuo y a los filtros digitales adaptativos una vez que estamos convencidos de que hay 2 o 3 ciclos que dominan, y que cambian de frecuencia (período) y amplitud lentamente, etc. Podemos usar FFT's, MESA, Goertzel o lo que sea para convencernos de esto... Yo no estoy convencido todavía, aunque las imágenes en 3D son bastante convincentes. Luego podemos utilizar métodos probados para extraer las señales cíclicas entre sí y del ruido.

Este problema de extracción de señales es bastante común en el diseño de sistemas de comunicación. Piensa en cómo tu receptor de radio (o tu teléfono móvil, si no hay más remedio) extrae su señal del ruido de fondo y de otras señales del entorno. Estas señales no son estacionarias, como tampoco lo es el ruido, aunque se suele modelar así. Son bastante complejas, con variaciones de fase, frecuencia y amplitud. Sin embargo, pueden extraerse de forma fiable en entornos de baja relación señal-ruido, siempre que no interfieran entre sí.

¿Qué tal si se utilizan tres filtros de paso de banda fijos con un paso de banda lo suficientemente estrecho como para separar las 3 señales, pero lo suficientemente amplio como para pasar la variación de frecuencia esperada? A cada filtro le sigue un bucle de bloqueo de fase para extraer la frecuencia cambiante, y un demodulador coherente para extraer la amplitud. No se requiere ningún análisis espectral. (Excepto para seleccionar las tres bandas.) No se requiere una importancia relativa, ni diseñar y modificar los filtros sobre la marcha. (La señal extraída será de fase continua).

Todos estos elementos son filtros, multiplicadores o un oscilador con frecuencia controlada digitalmente (VCO). El único filtro que tiene una respuesta en frecuencia importante es el filtro de bucle, y hay muchos diseños para estos. Tengo muchas referencias si alguien está interesado. Si consigo que mi memoria coopere para no olvidar lo que estoy intentando programar, y si puedo resucitar alguna semblanza de codificación en C, puede que lo intente yo mismo.

MadCow

Hola Madcow,

200 horas de reacción retardada en los mercados financieros llevarán a la extinción de los actores que pretendían ese comportamiento y, en consecuencia, el comportamiento desaparecería.... como bien has insinuado.

En mi opinión, puede haber diferentes causas de los ciclos, si lees los materiales de la Fundación para el Estudio de los Ciclos, podrás ver que entre las causas probables señaladas citan las estrellas, los planetas, la actividad de las erupciones solares, las tormentas geomagnéticas, etc, etc, tantas causas que es mejor sólo estudiar las posibilidades en privado, mientras que el comercio de los efectos cuando son cuantificables en una base de recompensa al riesgo.

Básicamente, OMI, los ciclos son como una cadena preestablecida de comportamiento de reacción de acción que por lo general toma un tiempo similar para llevarse a cabo de una semana a otra, de un día a otro, de una hora a otra (piense en los modelos de depredador y presa)... ¿Cuánto tiempo se necesita para ejecutar las paradas de venta y luego cumplir con esa gran orden de compra del cliente a un mejor precio?... ¿Cuánto tiempo se necesita para que su competidor se dé cuenta y comience a entrometerse en su juego?¿cuánto tiempo tardan los anteriores largos en ser parados o acobardados en sus posiciones (y hay un componente de volatilidad aquí)?... Bueno, creo que este proceso tarda, normalmente, x tiempo, +- y std... así que, mientras el std sea viable y el y no te mate en la espera, estos patrones son negociables.

En términos conceptuales, si 2 o 3 horas después de la apertura de Frankfurt, con la sesión de Londres en marcha, veo que los precios se estancan en un S1 semanal después de un movimiento a la baja que acaba de ir rápido y furioso 50 pips por debajo del soporte anterior (también conocido como la ejecución de las paradas) ... y, al mismo tiempo mis ciclos H4 están señalando un giro, tomo el largo.

Lospares de divisas pueden tener una compresión casi óptima de la volatilidad en H4 (todos los tfs comprimen la volatilidad a partir de los datos de los ticks), y los marcos de tiempo más bajos pueden ser demasiado ruidosos para que nuestros filtros detecten los ciclos....O tal vez, y muy probablemente , nuestros filtros no son lo suficientemente buenos para eso.

Por favor, siéntase libre de seguir adelante con su idea, puede ofrecer un punto de vista alternativo sobre este fascinante tema ... Creo que la mayoría de la gente aquí tratará de ayudarle.

Saludos

S

 

Interesante post..

¿Alguien sabe cómo hizo Noxa para modificar el algoritmo de SSA para que sea causal?

He estado trabajando en el tema durante los dos últimos meses, pero no he tenido mucho tiempo para terminarlo.

He leído en algunos de los posts de este hilo que Noxa CSSA utiliza redes neuronales??? ¿Alguien puede corroborar esto?

Por cierto, ¿una NN multicapa feed forward o tal vez una NN autocodificadora?

 

'' La parte ''casual'' viene de lared de estados de eco :Red de estados de eco - Scholarpedia

Pero aún así el algoritmo SSA no es más que un ajuste de curvas.

 
SIMBA:
Hola Madcow,

...

Por favor, siéntase libre de seguir adelante con su idea, puede ofrecer un punto de vista alternativo sobre este fascinante tema ... Creo que la mayoría de la gente aquí tratará de ayudarle.

Saludos

S

Gracias Simba por la explicación y los ánimos, pero antes de continuar quiero asegurarme de que los ciclos no son una invención de la forma de procesar el precio. Me gustaría preguntar si los componentes cíclicos podrían ser el resultado de un aliasing.

Permítanme mostrarles lo que quiero decir. Aquí está GBPUSD M1 y dos gráficos espectrales de R_MESA. El primer gráfico es el espectro de GU M1 sin procesamiento. El segundo es el espectro de GU M1 después de pasarlo a través de un filtro anti aliasing diseñado para que la señal pueda ser muestreada a intervalos de 1 hora sin violar la teoría de muestreo de Nyquist. Si la señal M1 se muestrea simplemente a intervalos de 1 hora, sin filtrar primero el paso bajo (y eso es precisamente lo que es el cierre H1), el proceso de submuestreo introducirá artefactos de aliasing. Dado que el cierre de M1 tiene una energía significativa por debajo del periodo de 120 minutos, el muestreo a 60 minutos introducirá un alias de mucha energía en las muestras de H1. Todos los picos que se muestran a la izquierda de los 120 minutos aparecerán como picos en el espectro H1. La ubicación de los picos se puede calcular, pero el proceso es un lío, así que no lo he hecho. Además, MESA no puede recoger toda la energía de los alias, como lo haría una FFT.

Ahora veamos el espectro de GU H1 sin filtro anti aliasing aplicado.

¿De dónde vienen todos esos picos? Si yo fuera la señora de la iglesia, podría pensar que se trata de SATÁN... pero en realidad creo que se trata de aliasing. Tal vez debería submuestrear el precio M1 filtrado y mirar su espectro. Pero eso es para otro día.

Por cierto, gracias a RC por las excelentes herramientas de software.

Saludos... MadCow...

P.D. Piensa en todo lo que podemos hacer con el espectro H4.

Archivos adjuntos:
 

H4,No linealidad y escala fractal

MadCow:
Gracias Simba por la explicación y los ánimos, pero antes de proceder quiero asegurarme de que los ciclos no son una invención de la forma de procesar el precio. Me gustaría preguntar si los componentes cíclicos podrían ser el resultado de un aliasing.

Déjame mostrarte lo que quiero decir. Aquí está GBPUSD M1 y dos gráficos espectrales de R_MESA. El primer gráfico es el espectro de GU M1 sin procesar. El segundo es el espectro de GU M1 después de pasarlo a través de un filtro anti aliasing diseñado para que la señal pueda ser muestreada a intervalos de 1 hora sin violar la teoría de muestreo de Nyquists. Si la señal M1 se muestrea simplemente a intervalos de 1 hora, sin filtrar primero el paso bajo (y eso es precisamente lo que es el cierre H1), el proceso de submuestreo introducirá artefactos de aliasing. Dado que el cierre de M1 tiene una energía significativa por debajo del periodo de 120 minutos, el muestreo a 60 minutos introducirá un alias de mucha energía en las muestras de H1. Todos los picos que se muestran a la izquierda de los 120 minutos aparecerán como picos en el espectro H1. La ubicación de los picos se puede calcular, pero el proceso es un lío, así que no lo he hecho. Además, MESA puede no recoger toda la energía de los alias, como lo haría una FFT.

Ahora veamos el espectro de GU H1 sin filtro anti aliasing aplicado.

¿De dónde vienen todos esos picos? Si yo fuera la señora de la iglesia, podría pensar que se trata de SATÁN... pero en realidad creo que se trata de aliasing. Tal vez debería submuestrear el precio M1 filtrado y mirar su espectro. Pero eso es para otro día.

Por cierto, gracias a RC por las excelentes herramientas de software.

Saludos... MadCow...

P.D. Piensa en lo mucho que podemos alias en el espectro H4.

Madcow,

Una imagen vale más que mil palabras ... ver adjunto una exploración que se ejecuta para encontrar y dibujar una pendiente del ciclo compuesto de hasta 4 ciclos (por marco de tiempo) en diferentes marcos de tiempo

H1..Busqué ciclos de periodicidad ascendente entre 90 y 180 barras dentro de las últimas 540 barras

M30,M15,M5...Mismo análisis equivalente...así que básicamente estoy sobremuestreando 1,2,4 y 12 veces con exactamente los mismos resultados.

Si veis las fotos veréis que el análisis encontró solo 2 ciclos,no 1 ni 4,exactamente los mismos 2 ciclos en los 4 timeframes diferentes,misma periodicidad 108 y 153 barras H1 equivalentes,misma amplitud y misma fase...Esto no ocurre siempre,el aliasing y los fantasmas y la resonancia espectral de los armónicos y subarmónicos suelen aparecer en la imagen empañando la realidad,pero cuando ves esta coincidencia perfecta,sabes que puedes operar con este modelo cíclico,en cualquiera de los 4 timeframes ...incluso en h4 si quisieras hacerlo....usando oversampling,puedes muestrear varias veces por barra(usa m15 sampling en h4 por ejemplo)...pero realmente no hace falta.

Los ciclos son exactamente los mismos...¿qué posibilidades hay de que sean fantasmas?...Como te dije antes es sólo cuestión de tener las herramientas adecuadas para medir lo que está pasando....

Richcap puede no estar de acuerdo con mi punto de vista, pero, IMO, MESA no es la herramienta adecuada, Fourier con todas sus variaciones, incluyendo Goertzel ,es ligeramente mejor...pero lo que realmente tenemos que pensar es en el concepto de Ciclos Fractales, por lo que, tenemos que entrar en los reinos de la no linealidad y el escalamiento fractal si realmente queremos "modelar" el mercado.

No voy a intentar convencer a nadie de nada más, ya tengo todas las herramientas que necesito en el ámbito de los ciclos, así que, si no te convencen tanto los hallazgos de Richcap como los míos, la conclusión lógica es que te olvides de los ciclos... Si estás convencido, o al menos lo suficiente como para intentarlo, te ayudaré siempre que tu enfoque sea original y útil y, obviamente, siempre que no tenga que revelar ningún trabajo de propiedad realizado en nuestro Grupo privado.

Saludos

S

Archivos adjuntos:
campc19.gif  41 kb
campc20.gif  40 kb
campc21.gif  36 kb
campc22.gif  36 kb
 

Simba,

esos son resultados muy convincentes. No estoy seguro de lo que estoy viendo, pero las curvas son muy similares para todos los TF. Parece que no hay realmente un problema de aliasing, sin embargo, estoy perdido para entender por qué no. La serie H1 debería tener bastante más ruido, que la serie M1. Aparentemente no hay un componente cíclico sostenido de alta frecuencia en ninguno de los TF's inferiores, y hay poco o ningún ruido. Esto me parece increíble, y ya que me tomé la molestia de tratar de entender la posibilidad de aliasing antes de que publicaras, me gustaría publicar mis pensamientos.

Mi preocupación por el aliasing puede no estar clara, así que permíteme ilustrar el efecto del aliasing mejor que yo. Para facilitar la ilustración, supongamos que el espectro de una serie de precios M1 consta de dos componentes periódicos incrustados en el ruido. El ruido tiene un espectro triangular, uno de los componentes está en una frecuencia baja (período largo, mostrado en azul) y el otro está en una frecuencia alta (período corto, mostrado en rojo). Como se trata de una serie de precios M1, el espectro debe terminar en la frecuencia de muestreo/2 (fs/2) (periodo = 2 minutos). (Si existen componentes de mayor frecuencia en las operaciones, se aliasarán en el espectro por debajo de fs/2). Además, se supone que ambos componentes tienen una relación señal/ruido razonablemente buena. Todo esto se muestra en la mitad superior de la primera figura de abajo. El efecto del submuestreo de esta serie de precios a intervalos de 5 minutos (M5) se muestra en la mitad inferior de la figura. Esto puede calcularse gráficamente observando que el espectro de una señal muestreada puede encontrarse convolucionando el espectro de la señal original con una serie de impulsos a la frecuencia de muestreo. (Como el periodo M5 es 5 veces el periodo M1, la frecuencia de muestreo es 1/5 de la frecuencia de muestreo de 1 minuto, como se muestra. ) Esto implica los sencillos pasos de superponer el espectro inicial en cada impulso. Está bastante claro el desorden que esto supone para el espectro original. Obsérvese que el componente de alta frecuencia tiene un alias cerca del componente de baja frecuencia, pero el componente de baja frecuencia no se ve afectado.

El espectro efectivo de la serie de precios M5 derivado del submuestreo de la serie M1 se muestra en la figura siguiente. A la izquierda he intentado mostrar cómo se acumula el ruido debido al aliasing. A la derecha se muestra el espectro final de la señal M5. El componente de alta frecuencia se ha aliasado cerca del componente de baja frecuencia, y el ruido se ha acumulado de manera que la relación señal/ruido es ahora bastante mala.

Supongamos ahora que en el espectro original había varios componentes cíclicos de alta frecuencia, y supongamos que lo submuestreamos una vez cada hora, o una vez cada 4 horas. El desorden resultante debería tener componentes cíclicos por todas partes, y la relación señal/ruido debería ser terrible.

Dado que cualquier componente cíclico en la señal final (digamos H1) debe haber estado en la señal original M1, pero con una mejor relación señal/ruido, me parece que hay que utilizar la señal M1 para extraer los componentes cíclicos. Por supuesto, el problema con esto es que esos componentes que están en, digamos, períodos de 20 horas, serán muy difíciles de extraer de los datos M1 porque el período M1 requerirá 60 veces más muestras en M1. Por otro lado, puede haber muchos componentes que se encuentren en frecuencias altas en la serie M1, que se aliasen en la serie H1 varias veces causando más picos de los que realmente hay.

La única forma sencilla de investigar esto es observar el espectro de una señal M1 y una señal H1 durante el mismo periodo (absoluto), por ejemplo, 200 horas más o menos. Esto no se puede hacer con las herramientas R_MESA disponibles actualmente porque la longitud requerida en M1 excede la capacidad del algoritmo tal y como está codificado.

Parece que ya ha examinado las distintas TF y está satisfecho de que los componentes cíclicos estén presentes a una frecuencia lo suficientemente baja como para que no se vean afectados por el submuestreo. Utilizando algo como el algoritmo Goertzel, (o simplemente un conjunto de filtros de banda estrecha, que es equivalente) se puede aparentemente ignorar el ruido añadido por el aliasing. Esto es una buena noticia. Estoy convencido de que los componentes están ahí. No sé por qué. Así que voy a proceder a mirar un filtro de seguimiento de fase bloqueada.

Me gustaría escuchar más sobre el filtrado fractal si tienes algunas fuentes.

Gracias ...MadCow...

Archivos adjuntos:
Razón de la queja: