Estrategia basada en el indicador "ZigZag" - "Last ZZ50" - página 3

 

Última versión de ZZ50.mq5 "1.001"

Decidí primero comprobar cómo se comporta el indicador cuando aparece una nueva barra o después de una interrupción de la conexión: en cada tic obtengo la cantidad de datos calculados para nuestro indicador, si esta cantidad difiere de la cantidad en el tic anterior - se muestra una impresión:

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   static int  bars_calculated      = 0;
   int         prev_bars_calculated = bars_calculated;
   bars_calculated=BarsCalculated(handle_iCustom);
   if(bars_calculated!=prev_bars_calculated)
      Print(iTime(0),", BarsCalculated: ",bars_calculated,", prev: ",prev_bars_calculated);
//---

  }

Y ahora dos registros (pestaña Expertos y pestaña Diario)

Los expertos:

2017.07.17 08:03:32.161 Last ZZ50 (USDJPY,M1)   2017.07.17 08:03:00, BarsCalculated: 373610, prev: 100009
2017.07.17 08:04:05.250 Last ZZ50 (USDJPY,M1)   2017.07.17 08:04:00, BarsCalculated: 373611, prev: 373610
2017.07.17 08:05:45.575 Last ZZ50 (USDJPY,M1)   2017.07.17 08:05:00, BarsCalculated: 100000, prev: 373611
2017.07.17 08:06:08.768 Last ZZ50 (USDJPY,M1)   2017.07.17 08:06:00, BarsCalculated: 100001, prev: 100000
2017.07.17 08:07:06.192 Last ZZ50 (USDJPY,M1)   2017.07.17 08:07:00, BarsCalculated: 100002, prev: 100001
2017.07.17 08:07:29.676 Last ZZ50 (USDJPY,M1)   2017.07.17 08:07:00, BarsCalculated: 100002, prev: 0
2017.07.17 08:08:01.653 Last ZZ50 (USDJPY,M1)   2017.07.17 08:08:00, BarsCalculated: 100003, prev: 100002
2017.07.17 08:09:01.827 Last ZZ50 (USDJPY,M1)   2017.07.17 08:09:00, BarsCalculated: 100004, prev: 0
2017.07.17 08:10:00.283 Last ZZ50 (USDJPY,M1)   2017.07.17 08:10:00, BarsCalculated: 100005, prev: 100004
2017.07.17 08:11:02.493 Last ZZ50 (USDJPY,M1)   2017.07.17 08:11:00, BarsCalculated: 100006, prev: 100005

Registro:

2017.07.17 08:04:47.227 Network '6121033': scanning network for access points
2017.07.17 08:05:23.297 Network '6121033': connection to MetaQuotes-Demo lost
2017.07.17 08:05:34.000 Network '6121033': authorized on MetaQuotes-Demo through Access Point EU 2 (ping: 48.01 ms)
2017.07.17 08:05:34.001 Network '6121033': previous successful authorization performed from 178.165.123.77 on 2017.07.17 07:50:17
2017.07.17 08:05:34.105 Network '6121033': terminal synchronized with MetaQuotes Software Corp.
2017.07.17 08:05:34.105 Network '6121033': trading has been enabled - hedging mode
2017.07.17 08:07:28.881 Experts expert Last ZZ50 (USDJPY,M1) removed
2017.07.17 08:07:28.915 Experts expert Last ZZ50 (USDJPY,M1) loaded successfully
2017.07.17 08:08:53.494 Experts expert Last ZZ50 (USDJPY,M1) removed
2017.07.17 08:08:53.527 Experts expert Last ZZ50 (USDJPY,M1) loaded successfully


Como puede ver, el número de barras calculadas cambia.

Archivos adjuntos:
Last_ZZ50.mq5  10 kb
 

Última versión de ZZ50.mq5 "1.002"

Nuevo: añadir el indicador utilizado en los cálculos al gráfico - para la visualización (entonces buscará los puntos "A", "B" y "C" y dibujará una línea vertical en ellos - de nuevo, para el control visual del código).


Archivos adjuntos:
Last_ZZ50.mq5  11 kb
 

Última versión de ZZ50.mq5 "1.003"

Busca los vértices "A", "B" y "C". Dibuja líneas verticales a través de estos vértices.

La búsqueda de vértices se realiza mediante el método "obtener valores de una barra a la vez".

Última versión de ZZ50 "1.003"

Archivos adjuntos:
Last_ZZ50.mq5  23 kb
 
Vladimir Karputov:

Última versión de ZZ50.mq5 "1.003"

Busca los vértices "A", "B" y "C". Dibuja líneas verticales a través de estos vértices.

La búsqueda de vértices se realiza mediante el método de "obtener un valor de una barra a la vez".


Ya algo)

 

Vladimir, ¿habrá una secuela, o lo dejaremos por hoy =)

 
Vitaly Muzichenko:

Vladimir, ¿habrá una secuela, o lo terminaremos aquí =)


Mañana habrá una descripción - ya con los pedidos pendientes.

 

He encontrado cuatro formaciones de puntos "A", "B" y "C" - tengo que averiguar cómo colocar órdenes pendientes en cada caso (o más bien su tipo: Compra*** o Venta***):

Figuras 1 y 2 иFiguras 3 y 4


 
Vladimir Karputov:

He encontrado cuatro formaciones de puntos "A", "B" y "C" - tengo que averiguar cómo colocar órdenes pendientes en cada caso (o más bien su tipo: Compra*** o Venta***):

Poner y arrastrar siempre en el centro de la viga:

Corre:

Rojo SellStop, azul BuyStop

Si una orden ha funcionado en este rayo, no se deben hacer más órdenes en él

 
Vitaly Muzichenko:

Siempre hay que poner y arrastrar en el centro de la viga:

Agotado:

Rojo SellStop, azul BuyStop.

En un rayo, hay una orden y si la orden ha funcionado en este rayo, no hay que poner más órdenes en él


No siempre es así, porque el EA puede aparecer en el gráfico en cualquier momento. Por lo tanto, le pido una vez más que revise la Fig. 3 y Fig. 4 en términos de: El EA acaba de entrar en el gráfico y hay una imagen tan...

 
Vladimir Karputov:

"No siempre es así, ya que el EA puede subir al gráfico en cualquier momento. Por lo tanto, por favor, revise una vez más la Fig. 3 y Fig. 4 en términos de: el Asesor Experto acaba de pasar al gráfico y hay una imagen...

Si el centro del rayo se rompe, el rayo se considera elaborado

Para evitar problemas tras el reinicio, los puntos de la última raya deben guardarse en la variable global del terminal, y trabajar con ellos.

Razón de la queja: