[¡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 585

 
Utilizar ObjectCreate() y ObjectSet()
 

Buenas tardes a todos. ¿Pueden aconsejar a un usuario inexperto? Yo utilizo el indicador "123" y me gusta mucho cómo dibuja los niveles. No lo he probado nunca, simplemente no sabía qué hacer y no estoy seguro de si lo utilizaré. El problema es: he insertado el indicador en el gráfico y ha dibujado niveles pero diez minutos después el precio ha rebotado 70 puntos y los niveles no han cambiado. Tengo que desactivar y volver a activar el indicador cada vez que el precio se mueve y sigue dibujando nuevos niveles. Por favor, avisen si pueden introducir algunos parámetros en el programa del indicador para que se desactive y vuelva a activarse cada diez minutos con los niveles ya actualizados. No se me da bien programar, así que por favor expliquen si se puede hacer y cómo. Gracias a todos por adelantado.


Archivos adjuntos:
123.mq4  15 kb
 

¿Es elishimoku rediseñado un indicador para los profesionales)?

Supongo que como el "desarrollador" nunca terminó su indicador, no sirvió de mucho:)

 
alsu:

¿Es el ishimoku rediseñado un indicador para los profesionales)?

Supongo que como el "desarrollador" nunca terminó su indicador, no sirvió de mucho:)


Entonces, ¿crees que no hay forma de automatizar este indicador? Sé que no es un indicador superguay, pero me gustan los niveles que dibuja. Me pregunto si es posible añadir alguna función para que pueda actualizar los niveles automáticamente.
 
alsu:
Utilizar ObjectCreate() y ObjectSet()

Dibuja flechas, pero en cada barra, cuando es necesario sólo cuando la primera vela se ha roto.

https://www.mql5.com/ru/forum/111497/page583

.

 
mazan:

¿Cree que es imposible automatizar este indicador? Sé que no es un indicador superdotado pero me gustan los niveles que dibuja y se me da bien trabajar con ellos pero el tema es que de vez en cuando tengo que refrescar los niveles manualmente. Me pregunto si es posible añadir alguna función para que pueda actualizar los niveles automáticamente.

aquí está la corregida. Los niveles se actualizan en cada tic.


E incluso ahora borra sus propios objetos cuando el propio indicador se elimina del gráfico. "Desarrollador" fi.

Archivos adjuntos:
123_1.mq4  16 kb
 
gince:

Dibuja flechas, pero en cada barra, cuando sea necesario sólo cuando se rompa la primera vela.

https://www.mql5.com/ru/forum/111497/page583

.

Es necesario analizar sólo las barras formadas, porque en el cero se actualizan constantemente los máximos y mínimos.

Trate de contar no for(shift=0; ..., sino for(shift=1;..., entonces no habrá recálculo en la barra cero. Y cambiar las barras analizadas de 0,1,2 a 1,2,3.

 
alsu:

Usted debe analizar sólo las barras formadas, porque el Alto y el Bajo se actualizan constantemente en la barra cero.

Intenta contar no con for(shift=0; ..., sino con for(shift=1;..., entonces en la barra cero no se producen recálculos. Invierte las barras analizadas de 0,1,2 a 1,2,3.

Lo siento, no lo entendí.

Sus condiciones son un desastre. Esto es arriba:

      if (d1_h1 < d1_h2 && d1_l1 > d1_l2  && d1_l1 > d1_l0) 

y debe ser

      if (d1_h1 < d1_h2 && d1_l1 > d1_l2  && d1_h1 < d1_h0) 
y lo mismo con la flecha hacia abajo
 
alsu:

aquí está el arreglo. Los niveles se actualizan en cada tic.


E incluso ahora borra sus propios objetos cuando el propio indicador se elimina del gráfico. "Desarrollador" fi.


Muchas gracias, lo puse en el gráfico, todo funciona, gracias de nuevo. Un profesional es un profesional. ¡Respeto!
 

Buenas tardes, tratando de averiguar cómo escribir un EA. Tomé la plantilla de EA del artículo mql4 en el sitio web, añadí mis propias condiciones para entender la depuración y la funcionalidad, e introduje las condiciones para abrir posiciones:

        MyATR = ((High[0] - Low[0])/Low[0]);
	 BT = Open[0] + Open[0]*iMAOnArray(MyATR ,0,PerB,0,MODE_SMA,1);
        ST = Open[0] - Open[0]*iMAOnArray((MyATR ,0,PerS,0,MODE_SMA,1);

   if (Ask >=  BT)                       // Если разница между
     {                                          // 
      Opn_B=true;                               // Критерий откр. Buy
      Cls_S=true;                               // Критерий закр. Sell
     }
   if (Bid <= ST)                       // Если разница между
     {                                          // 
      Opn_S=true;                               // Критерий откр. Sell
      Cls_B=true;                               // Критерий закр. Buy
     }

He añadido mis propias condiciones (o cambiado las existentes) para que las órdenes se ejecuten una vez.