Saludos Hermanos.
Estoy realizando un indicador de soporte-resistencia para metatrader basado en principio en puntos pivote. (indicador Fractals, este unicamente muestra una flecha en la maxima si ésta es mayor que la inmediatamente anterior y la inmediatamente posterior y muestra una flecha en la minima si ésta es menor que la inmediatamente anterior y la inmediatamente posterior).
El algoritmo es muy sencillo, contamos los x pivotes inmediatos superiores e inferiores (la x corresponde a la variable externa nodos, en este caso usamos 5 nodos para verlo mas claro) y trazamos una linea del ultimo al primero.
Una vez creadas las lineas iniciales, en el caso de la linea superior vamos contando desde atras si alguna maxima sobresale por encima de la resistencia y si es así modificamos el valor de inicio de la linea de resistencia por la maxima que sobresale. Repetimos el proceso de forma recursiva hasta que no sobresalga ninguna maxima y realizamos el proceso con la linea inferior o resistencia pero en este caso con las minimas que sobresalgan por abajo.
Al principio solo contaba los pivotes fuera de tendencia, pero creo que funciona mejor con todas las maximas y minimas del rango.
El indicador resultante no esta mal, pienso que se podria mejorar pero no se me ocurre como.
He implementado varias alternativas, como dar prioridad al numero de "toques" con la linea de tendencia o realizar la tendencia en funcion de la regresion lineal de los pivotes, pero no acaba de convencerme ninguna de ellas...
...Y en fin, pues eso, os dejo el codigo del indicador para metatrader pero con la condicion de intentar mejorarlo.
(es broma usarlo como querais... jejeje)... Pero vamos que cualquier idea es bienvenida.
Editado: El indicador subido al principio contenia un error y no seguia dibujandose bien Ya que como al principio contaba solo pivotes estaba diseñado con una version distinta y tenia arrays sin usar, datos obsoletos y hacia crash.
En el siguiente post lo subo corregido...
Algoritmo Soporte-Resistencia.
Algoritmo Soporte-Resistencia.
Última edición por YsEkU el 22 Feb 2010 09:20, editado 2 veces en total.
Re: Algoritmo Soporte-Resistencia.
Ok, he simplificado un poco el algoritmo ya que el resultado es el mismo y se utiliza menos memoria.
El principio es el mismo, solo que los valores cogidos para las posiciones iniciales son el ultimo pivote formado y la maxima o minima de la barra x(variable nodos).
Asi nos ahorramos llamar al indicador Fractals, el array y bucle para recorrerlo.
Indicador: EA: Saludos.
El principio es el mismo, solo que los valores cogidos para las posiciones iniciales son el ultimo pivote formado y la maxima o minima de la barra x(variable nodos).
Asi nos ahorramos llamar al indicador Fractals, el array y bucle para recorrerlo.
Indicador: EA: Saludos.
Última edición por YsEkU el 22 Feb 2010 09:29, editado 4 veces en total.
- Profit_Warning
- Mensajes: 92
- Registrado: 03 Jul 2008 13:40
- Ubicación: Peipartreidinland
Re: Algoritmo Soporte-Resistencia.
Muy bueno.
Este fin de semana le estaba dando vueltas a cómo programarlo: identificación de máximos locales, unión, búsqueda de puntos de rotura...
Gracias por compartirlo
Este fin de semana le estaba dando vueltas a cómo programarlo: identificación de máximos locales, unión, búsqueda de puntos de rotura...
Gracias por compartirlo
Oí y olvidé, vi y comprendí, hice y aprendí.
Think out of the box, Make it simple, Think big
Think out of the box, Make it simple, Think big
Re: Algoritmo Soporte-Resistencia.
se le puede añadir desde los puntos de toque de las lineas ya dibujadas lineas horizontales que supondrian posteriores niveles de soporte y resistencia.
Finalmente el experto deberia tener en cuatro variables los niveles de SR Horizontales(SRLHalto, SRLHbajo) y los de las Lineas de Tendencia (SRLTalto, SRLTbajo).
De cualquier forma creo que no estan bien dibujadas las lineas, yo las dibujo de izquierda a derecha fijando el punto mínimo y buscando por la derecha el primer punto de contacto subiendo la pendiente de las lineas de soporte (lineas inferiores) y del mismo modo por ariba para las resistencias.
Muchas gracias, un saludo.
Finalmente el experto deberia tener en cuatro variables los niveles de SR Horizontales(SRLHalto, SRLHbajo) y los de las Lineas de Tendencia (SRLTalto, SRLTbajo).
De cualquier forma creo que no estan bien dibujadas las lineas, yo las dibujo de izquierda a derecha fijando el punto mínimo y buscando por la derecha el primer punto de contacto subiendo la pendiente de las lineas de soporte (lineas inferiores) y del mismo modo por ariba para las resistencias.
Muchas gracias, un saludo.
Si te ha gustado este hilo del Foro, ¡compártelo en redes!