Tarea técnica
Buenos días,
Estoy desarrollando un robot en MQL4. Adjunto el programa sólo con fractales alcistas.
La idea es que me busque el fractal más reciente (número 1) y grabe unos datos (Low mínimo_fractal_1; tiempo de la vela y número de la vela).
Después debe buscar el fractal más antiguo (número 2) y si el valor Low del fractal 1 > low fractal 2 se graban los datos (Low mínimo_fractal_2, tiempo vela y número vela). Pero si el valor Low del fractal 1 < Low fractal 2, debe buscar el siguiente fractal más cercano que tenga un valor Low (fractal X) < Low(fratal 1) y grabar los datos (Low mínimo_fractal_2, tiempo vela y número vela).
La idea es que yo pueda ampliarlo a un tercer fractal si me interesa.
Los valores grabados deberán ser variables globales que se puedan utilizar en cualquier momento.
Supongo que se deberán guardar los datos en arrays para modificar órdeners. Pero las variables globales me deben servir para hacer cálculos sobre esos valores y lanzar órdenes de mercado o límites.
Por último, como en una misma vela pueden aparecer distintos fractales, quizá necesito una variable global que me indique en qué número de fractal se han guardado las variables. Explicación de este último punto: Imaginemos que en otra parte del programa exigo que para tener en cuenta la existencia de un fractal debe haber un mínimo de 100 puntos. Al primer tick después de haber conseguido el fractal con 100 puntos, ya debería existir el fractal número 1, pero en la misma o posterior vela podría llegar en otro tick a 110 puntos, en este caso ya debería contarse un fractal número 2, y así sucesivamente mientras se amplíe el tamaño definido).
Anteriormente he insertado por error un fragmento del código fuente sin citarla. En todo caso al autor lo encontré en: https://www.mql5.com/en/articles/1352, Stanislav Chuvashov en MQL5 y el trabajo se llama "Chuvashov's Fork" pattern.