Mira cómo descargar robots gratis
¡Búscanos en Facebook!
Pon "Me gusta" y sigue las noticias
¿Es interesante este script?
Deje un enlace a él, ¡qué los demás también lo valoren!
¿Le ha gustado el script?
Evalúe su trabajo en el terminal MetaTrader 5
Indicadores

Professional ZigZag - indicador para MetaTrader 5

Visualizaciones:
4213
Ranking:
(47)
Publicado:
2014.01.14 14:38
Actualizado:
2016.11.22 07:33
\MQL5\Include\
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa

¡Atención! Esta versión del indicador de Zig-Zag es basada en el código del Zig-Zagy publicada aquí con permiso de su autor, PPC. He probado esa versión y corregido un error en el algoritmo.

Este código es la versión MQL5 del indicador Zig-Zag para MetaTrader 4.

¡Atención! La Librería AlexSTAL_OutsideBar.mqh debe estar ubicada en la carpeta ...\MQL5\Include\ del terminal de cliente MetaTrader 5.

¿Eso es todo?

Creo que este Zig-Zag es algo así como una compresión del gráfico de precios. El ZigZag puede calcularse utilizando el precio de la barra (por ejemplo, el precio de cierre) o los precios altos/bajos de la barra (el método más común utilizado)

Mientras trabajaba con el ZigZag estándar, propuesto por MetaQuotes, he encontrado algunos errores. El problema principal es que ZigZag estándar no procede en el caso de la barra exterior.

En 2007 Rashid Umarov (Rosh) ha publicado el código Zigzag2 R procesando las barras de fuera (estilo DRAW_ZIGZAG en vez de DRAW_SECTION).

Definamos las características de la implementación "correcta" del Zig-Zag:

  • Las altas y bajas deben ser estrictamente alternadas;
  • El alta debe ser mayor (o igual) de entre todas las barras en el lado derecho hasta el próxima bajo (opuesto);
  • El bajo debe ser más bajo (o igual) de entre todas las barras en el lado izquierdo hasta el próximo alto (opuesto).

Consideremos utilizando el ejemplo (EURUSD, H1, 8-13 de diciembre del 2006). Aquí tenemos dos casos con la barra exterior. El típico ZigZag no construye la imagen "correcta".

Figura 1. Típico ZigZag con parámetros de entrada [12; 5; 3] y [12; 0; 0]

Figura 1. Típico ZigZag con parámetros de entrada [12; 5; 3] y [12; 0; 0]

Figura 2. Zigzag2 R con los parámetros de entrada [12; 5; 3]

Figura2. Zigzag2 R con los parámetros de entrada [12; 5; 3]


Figura 3. Zigzag2 R con los parámetros de entrada [12; 0; 0]

Figura3. Zigzag2 R con los parámetros de entrada [12; 0; 0]

A primera vista, la construcción correcta se presenta en la figura 3 pero aquí están algunas características:

  1. En este caso se ha construido correctamente debido a los parámetros de entrada, pero generalmente el algoritmo debe trabajar con cualquiera de los parámetros.
  2. La barra exterior del lado izquierdo no es correcta, debido a la orden de formación de alta/baja de la barra:


Los segmentos de ZigZag deben ser construidos de esta manera.

He probado muchos casos de los siguientes algoritmos de zig-zag: ZigZag MT3, ZigZag, Zigzag R, Zigzag2 R, ZigZag_NK, ZigZag_ZUP89_nen, ZigZag_new_nen4, CZigZag, Swing_ZZ_1, DT_ZZ_nen, ZigZag_Talex, Reverse_ZZ, Points_ZZ_1, i_MF_Fractal_ZZ_3in1, ang_Amp_ZZ, ZigzagFr_v1, NonLagZigZag_v2, ZZ_FF_v3, ZigZag Ensign, ZigZag tauber, SQZZ Товаровед, ZZ_2L_nen wellx, Channel ZZ, Azzx_larryzz_3_0, RPoint, RPoint-m v2, ZigZagTF. Pero ninguno de ellos ha solucionado el problema correctamente.


Aquí están las figuras con este indicador:

Figura 4. Zig-zag profesional con parámetros de entrada [12; 0]

Figura 4. Zig-zag profesional con parámetros de entrada [12; 0]

Figura 5. Zig-zag profesional con parámetros de entrada [23; 0]

Figura 5. Zig-zag profesional con parámetros de entrada [23; 0]


Algunas características de esta versión:

  • algoritmo de un paso
  • Se vuelve a calcular y trazar de nuevo sólo el último segmento (el segmento no puede ser cancelado excepto por la actualización del histórico)
  • tiene el algoritmo de optimización para los cálculos dentro de la barra (no utiliza el recálculo del tick, si ha cambiado de precio dentro de la barra 0 (inacabada) o el cambio de precio es menor que el umbral definido por el parámetro de entrada MinMotion)
  • tiene dos algoritmos de ordenación de la formación del alto/bajo: usando la barra tipo (rápida pero no precisa) utilizando los datos de los timeframes menores (que necesita el histórico, es necesario comprobar su presencia y corrección o habrá que modificar la librería OutsideBar )
No se publica la versión ProExtra, porque no se comprueba la corrección de las cotizaciones del MetaTrader 5.


Estos son algunos ejemplos adicionales de construcciones incorrectas del Zig-Zag:

Figura 6. EURUSD, H1, 29 de Noviembre - 7 de Diciembre. (Línea roja: Zig-Zag con parámetros de entrada [7; 0; 0]. Línea azul: Zigzag2 R con los parámetros de entrada [7; 0; 0].)

Figura 6. EURUSD, H1, 29 de Noviembre - 7 de Diciembre. (Línea roja: Zig-Zag con parámetros de entrada [7; 0; 0]. Línea azul: Zigzag2 R con los parámetros de entrada [7; 0; 0].)

Figura 7. EURUSD, H1, 2010, 29 de Noviembre - 7 de Diciembre. La correcta construcción de segmentos del Zig-Zag.

Figura 7. EURUSD, H1, 2010, 29 de Noviembre - 7 de Diciembre. La correcta construcción de segmentos del Zig-Zag.


Conclusión

Lamentablemente esta versión no es perfecta, pero estoy trabajando en ello.

A causa del algoritmo de canal (iHighest/iLowest), a veces se salta los agudos.

Por favor, informar acerca de los errores y las características de este indicador.

Traducción del ruso realizada por MetaQuotes Ltd
Artículo original: https://www.mql5.com/ru/code/263

sChartsSynchroScroll_v2 sChartsSynchroScroll_v2

Nueva versión del script sChartsSynchroScroll.

Gestor de eventos "New bar" para indicadores Gestor de eventos "New bar" para indicadores

Este indicador permite realizar los cálculos de los datos del indicador solo cuando aparece una nueva barra en el gráfico.

Easy Trend Visualizer Easy Trend Visualizer

Visualizador sencillo de tendencias

Canal Donchian Canal Donchian

El canal Donchian es un indicador técnico desarrollado por Richard Davoud Donchian.