Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 1396

 
Artyom Trishkin #:

Hmmm...

En algún momento la llamada a la función es bloqueada por el subsistema. ¿Tal vez no debas esperar, sino dejar de hacerlo hasta el próximo inicio de sesión?

El servicio sólo se registra cuando se inicia el terminal, o cuando se inicia el propio servicio. En consecuencia, si sale, la siguiente llamada será al reinicio de uno de los dos... pero ambos se hacen manualmente...

 
Alexey Viktorov #:

El servicio sólo se registra cuando se inicia el terminal, o cuando se inicia el propio servicio. En consecuencia, si sale, el siguiente inicio de sesión será cuando reinicie uno de los dos... pero ambos se hacen manualmente...

Lo tengo. Es decir, ¿el servicio se ejecuta en un bucle? ¿O en un temporizador?

 
Artyom Trishkin #:

Lo tengo. ¿El servicio funciona en bucle? ¿O en un temporizador?

El servicio funciona como un guión. La única diferencia es que el servicio se inicia con el arranque de MT, mientras que el script, ya sabes... En consecuencia, si algo no funciona, no funcionará hasta que se reinicie MT. Resulta que es deseable hacer una pausa y repetir... Creo que sí.

 
Alexey Viktorov #:

El servicio funciona como un guión. La única diferencia es que el servicio se inicia cuando se inicia la MT, mientras que el script, ya sabes... Así que, si algo no funciona, no funcionará hasta que se reinicie la MT. Resulta que es conveniente hacer una pausa y repetir... Creo que sí.

No has entendido mi pregunta. O tal vez no me estoy explicando bien ¯\_(ツ)_/¯

 
Artyom Trishkin #:

No has entendido mi pregunta. O tal vez no me estoy explicando bien ¯\_(ツ)_/¯

Uno de los dos. Pero el servicio no funciona en el bucle y no funciona en el temporizador.

 
Alexey Viktorov #:

Uno de los dos. Pero el servicio no funciona en un bucle y no funciona en un temporizador.

¿Dices que sólo se activa una vez al iniciar el terminal? No. ¿Cómo entonces?

 
Artyom Trishkin #:

¿Dices que sólo se activa una vez al iniciar el terminal? No. ¿Cómo entonces?

Hasta que lo descubrí o hicieron posible desactivar la visualización del historial de operaciones en un gráfico, he estado utilizando este servicio

//+------------------------------------------------------------------+
//| Service program start function                                   |
//+------------------------------------------------------------------+
void OnStart()
 {
  long currChart = ChartNext(0);
  while(currChart >= 0)
   {
    ObjectsDeleteAll(currChart, "autotrade");
    currChart = ChartNext(currChart);
   }
 }
//+------------------------------------------------------------------+

Me atrevo a decir que funciona con éxito. Me da pereza buscarlo. Es mucho más fácil repetirlo.

Este servicio

//+------------------------------------------------------------------+
//| Service program start function                                   |
//+------------------------------------------------------------------+
void OnStart()
 {
  Print("Запуск произведён успешно");
 }
//+------------------------------------------------------------------+

Se imprime una vez al iniciar el terminal. Así que es fácil de comprobar.

 
Alexey Viktorov #:

Hasta que lo descubrí o hicieron posible desactivar la visualización del historial de operaciones en el gráfico, utilicé el siguiente servicio

Me atrevo a decir que funciona con éxito. Me da pereza encontrar dónde he escrito antes sobre ello. Es mucho más fácil repetirlo.

Este servicio

Se imprime una vez al iniciar el terminal. Así que es fácil de comprobar.

¿Está diciendo que el servicio se imprime SOLO una vez al iniciar el terminal? ¿Como un guión? Sólo el script se ejecuta manualmente o mediante programación, y el servicio se ejecuta al iniciar el terminal. ¿Es así? Y, ¿dices que el servicio ya no funciona? Es decir, ¿se activa sólo una vez?

 
JRandomTrader #:

Por ejemplo, así.

Las macros son globales.

¿puede explicar dónde hay que escribirlas?

en la clase o en el asesor

 
Artyom Trishkin #:

¿Dices que el servicio se ejecuta SOLO una vez al iniciar el terminal? ¿Te gusta el guión? Sólo el script se ejecuta manualmente o mediante programación, y el servicio se ejecuta cuando se inicia el terminal. ¿Es así? Y, ¿dices que el servicio ya no funciona? Es decir, ¿funciona sólo una vez?

Artem, bueno, ¿por qué a mí para demostrarte algo a ti? Escribe una línea y comprueba.

Razón de la queja: