Discusión sobre el artículo "Recetas MQL5 - Servicios" - página 2

 
Aleksey Vyazmikin #:

¿SQLite no sabe trabajar con cola de transacciones? No lo he investigado, pero escribiste un artículo, por eso pregunto :)

Puede escribir en cada sección de la base de datos (una tabla separada), o incluso cada Asesor Experto puede crear su propia base de datos, y el servicio comprobará la disponibilidad de la base y la conectará para que funcione.

Por supuesto, el problema son los retrasos, pero por otro lado se compensa con el spread ahorrado.

Pero SQLite está limitado por multithreading - ejecución simultánea de varios procesos. Varios procesos pueden leer de la base de datos al mismo tiempo, pero sólo uno puede escribir en él por defecto....

 
JRandomTrader OnTrade, OnTradeTransaction. OnDeinit también sería útil para la parada regular cuando el terminal está cerrado.

Y entonces el servicio será casi no difiere de un Asesor Experto. Estoy más interesado en los eventos de transición a otro gráfico, el cambio de período gráfico ... Bueno, tal vez algo más que no está en Asesores Expertos o indicadores....

 
Alexey Viktorov #:

Y entonces el servicio no será casi diferente de un Asesor Experto. Estoy más interesado en los eventos de cambiar a otro gráfico, cambiar el período de gráfico... Bueno, tal vez algo más que no está en Expert Advisors o indicadores....

La clave es que no requiere un gráfico separado.

 

Muy bueno. Gracias por compartir este artículo y los ejemplos de código.

He creado un servicio muy simple que identifica cuando es un nuevo día y ejecuta una tarea sólo una vez al día para guardar el historial de operaciones en un archivo CSV. Después, este archivo se actualiza sólo con los nuevos oficios de la historia.

La ventaja es que no necesito una ventana de gráfico para hacer esto, sin embargo me surgió una pregunta sobre si el servicio utilizará más o menos potencia de procesamiento y memoria de mi ordenador en comparación con si utilizara esta tarea dentro de un indicador vacío, por ejemplo, ejecutando una función 'OnTimer'.

Si tiene la respuesta a mi pregunta sobre la potencia de procesamiento y el uso de memoria, ¿podría comunicármela? Gracias de nuevo por compartir este artículo y los ejemplos de código.