[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 720
![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Veo que ya estás tomando una decisión por ti mismo
Quizá sea el calor lo que hace que se me derrita el cerebro).
Me estoy acercando a la solución... Es como un perro: entiendo lo que entiendo, pero no puedo decirlo, es decir, no puedo representarlo en el código).
Quizá sea el calor lo que hace que se me derrita el cerebro).
¿Cómo se buscan los fractales?
Busco fractales utilizando el indicador ZIGZAG-FRACTALS con esta función:
Ahora he añadido a las líneas: if( ZZCur == High[i] && UpCount < 2 ) y if(ZZCur == Low[i] && DnCount < 2) lacomprobación del siguiente fractal mayor o menor que el primero encontrado.
Tenemos las siguientes líneas
if(ZZCur == High[i] && ZZCur > ZZFirst && UpCount < 2) and
if(ZZCur == Low[i] && ZZCur < ZZFirst && DnCount < 2)
Pero al final la búsqueda es de alguna manera inadecuada :(
En la imagen, una línea blanca gruesa muestra cómo debe ser y una línea verde fina muestra cómo se hace...
Busco los fractales utilizando el indicador ZIGZAG-FRACTALS con esta función:
Prueba a buscar con esta función:
Esta función devuelve el número de barra del fractal. Primero se llama con el parámetro nf = 0 - se encontrará el último fractal, y luego se llama a esta función en el bucle, donde nf = el contador de ciclos de 1 a ... todo el tiempo que sea necesario. En el cuerpo del bucle, comprueba si el siguiente fractal encontrado coincide con los criterios que necesitas y, si es así, sal del bucle. Después del análisis tendrás los números de barra de dos fractales que necesitas y haz con ellos lo que quieras.
Prueba a buscar con esta función:
La función devuelve el número de barra del fractal. Primero se llama con el parámetro nf = 0 - se encontrará el último fractal, y luego se llama a esta función en el bucle, donde nf = contador de ciclos de 1 a ... todo el tiempo que sea necesario. En el cuerpo del bucle, comprueba si el siguiente fractal encontrado coincide con los criterios que necesitas y, si es así, sal del bucle. Después del análisis tendrás los números de barra de dos fractales que necesitas y haz con ellos lo que quieras.
¿En el probador o en la demo?
En el probador el punto de los otros instrumentos será 0
Estaba en el probador,... No he tenido la oportunidad de usarlo, pero tengo muchos problemas con él. Así que, como resultado, hice un montón de problemas con mi código de arrastre y tomé la función de monitoreo de pares de arrastre de KimIV. Ahora todo funciona en la demo ))
Gracias a todos por vuestra ayuda, vuestras explicaciones son muy útiles.
Parece haber resuelto el problema, pero la pregunta sigue siendo...
¿Cómo puedo desinicializar una variable para reutilizarla?
No se puede, cuando se inicializa una variable, sólo se asigna un área de RAM, así que ¿por qué reasignarla? Sólo tienes que poner la variable a cero, y utilizarla tantas veces como quieras. De hecho, ¿cuál es el problema? ¿Por qué desinicializar una variable? No tiene sentido.
¿Por qué desinicializar una variable?
La condición si
aquí hacemos algo
de lo contrario, si otra condición
hacer otra cosa.
La cuestión es no multiplicar las variables, muchas condiciones y contadores.