Servicios. ¿Ya están en marcha? - página 5

 
Probablemente todos tendremos que esperar a un ejemplo concreto para ilustrar el propósito exacto de esta nueva función.
 
Icham Aidibe:
Probablemente todos tendremos que esperar a un ejemplo concreto para ilustrar el propósito exacto de esta nueva función.

Sí, tenemos que esperar a que nos muestren las tareas de los servicios:

Foro sobre trading, sistemas de trading automatizados y pruebas de estrategias de trading

Servicios. ¿Ya estás trabajando?

Renat Fatkhullin, 2018.12.18 09:20

Los servicios se ejecutan continuamente, comunicándose con el terminal a través de una cola de tareas especial. Revelaremos las tareas más adelante.

Los servicios no son expertos ni manejadores de eventos de gráficos/temporizadores/precios. Los modelos de eventos no son necesarios para los procesos continuos, cuyo objetivo es no interrumpir nunca y no depender de cuentas/servidores.

Los servicios están funcionalmente separados de los expertos, para que la gente no cree Frankenshines. Los servicios tienen su propio ámbito de aplicación.


 
Esto será útil: cálculos pesados en segundo plano usando multihilos, trabajo con operaciones largas (carga de noticias del sitio, operaciones de archivo con grandes cantidades de datos...), implementación de horarios (informe semanal sobre transacciones,...).
 
Nikolai Semko:
¿Estoy en lo cierto al suponer que las capacidades gráficas de los servicios son nulas?
¿O se trata de un fenómeno temporal por el momento?
Se puede acceder a todos los gráficos y gestionar los objetos, pero no hay ni habrá notificaciones de gráficos.

Es decir, es posible construir cosas visuales.
 
Vladimir Karputov :

Sí, tiene que asegurarse de que las tareas de los servicios estén presentes:


Sí, gracias.

Ya se ha creado algo que se puede utilizar como servicio: el calendario de forex - pero no estoy seguro de si realmente es así como se utiliza esta nueva característica - me imagino que puede recibir información sobre los calendarios y proporcionarla a todo el terminal (todos los gráficos, todas las IAs, todos los indicadores pueden ser servidos de esta manera) - voy a esperar a futuras mejoras.

 
Renat Fatkhullin:
Se puede acceder a todos los gráficos, se pueden gestionar los objetos, pero no hay notificaciones de gráficos ni las habrá.

Es decir, es posible construir cosas visuales.

¿Una interfaz sin interacción con el usuario?

 
Renat Fatkhullin:
Todos los gráficos son accesibles, los objetos se pueden gestionar, pero las notificaciones de los gráficos no lo son ni lo serán.

Es decir, es posible construir cosas visuales.

Gracias. Todavía no he descubierto cómo lanzar kanvas.
No puedo ver el gráfico. Sigo recibiendo un error ERR_CHART_WRONG_ID.

Y como también entendí - el depurador y el perfilado no funcionan en los servicios? ¿O es sólo temporal?

 

Recientemente hay una nueva descripción (Versión beta de MetaTrader 5 build 1995: Calendario económico, programas MQL5 como servicios y API para el lenguaje R)

Terminal: Añadido un nuevo tipo de programas MQL5 - Servicios. Le permiten crear sus propias fuentes de datos de precios para el terminal, para transmitir los precios de sistemas externos en tiempo real, como hacen los servidores de comercio de los corredores.

A diferencia de los Asesores Expertos, los indicadores y los scripts, los servicios no están vinculados a un gráfico específico. Funcionan en segundo plano y empiezan a trabajar automáticamente cuando se lanza el terminal (si no se han detenido a la fuerza).

Se ha añadido una subsección separada en el Navegador para la gestión de los servicios:





Creación de servicios
Para crear una plantilla de servicio, utilice la opción correspondiente enel Asistente MQL5. Los servicios tienen un punto de entradaOnStart, similar a los scripts. Allí se puede organizar un bucle interminable de recepción y procesamiento de datos mediantefunciones de red.

Servicios en marcha
Para ejecutar varias copias de un Asesor Experto o indicador con diferentes parámetros, basta con aplicarlos a diferentes gráficos. En este caso, se crean instancias separadas del programa, que funcionan independientemente unas de otras. Los servicios no están vinculados a los gráficos, por lo que se proporciona un mecanismo independiente para crear instancias de los mismos.

Seleccione un servicio en el navegador y haga clic en "Añadir servicio" en su menú contextual. Esto abrirá un cuadro de diálogo estándar del programa MQL5, en el que podrá activar/desactivar el comercio y el acceso a las señales, así como establecer los parámetros.




Para iniciar y detener una instancia de un servicio, utilice su menú. Para gestionar todas las instancias, utilice el menú de servicio.

 
Los comentarios que no son relevantes para este tema han sido trasladados a "¡Comuníquese con los desarrolladores a través del Service Desk!".
 
Entonces, ¿se trata de scripts que no están ligados a un horario específico, llamados por OnStart una vez cuando se inicia el terminal y que se ejecutan en un hilo separado?