Обсуждение статьи "Рецепты MQL5 — Сервисы" - страница 2

 
Aleksey Vyazmikin #:

А разве SQLite не умеет работать с очередью транзакций? Я с этим вопросом не разбирался, но Вы писали же статью, поэтому и спрашиваю :)

Писать можно в каждый раздел базы (отдельную таблицу), или даже каждый советник может создать свою базу, а сервис будет проверять наличие базы и подключать её для работы.

Вопрос конечно в задержках, но с другой стороны компенсируется сэкономленным спредом.

Умеет.  Но в SQLite ограничена многопоточность — единовременное выполнение нескольких процессов. Одновременно читать из базы могут несколько процессов, а писать в нее по умолчанию — только один...

 
JRandomTrader #:
А сервисам, КМК, очень не хватает обработки событий - OnTimer, OnTrade, OnTradeTransaction. OnDeinit бы тоже не помешал для штатного останова при закрытии терминала.

И тогда сервис ничем, почти, не будет отличаться от советника. Мне больше интересны события перехода на другой график, смена периода графика… Ну может ещё чего-то из того чего нет ни в советниках, ни в индикаторах…

 
Alexey Viktorov #:

И тогда сервис ничем, почти, не будет отличаться от советника. Мне больше интересны события перехода на другой график, смена периода графика… Ну может ещё чего-то из того чего нет ни в советниках, ни в индикаторах…

Ключевое - не требует отдельного графика.

 

Очень хорошо. Спасибо, что поделились этой статьей и примерами кода.

Я создал очень простой сервис, который определяет, когда наступает новый день, и запускает задачу только один раз в день, чтобы сохранить историю сделок в CSV-файл. После этого этот файл обновляется только новыми сделками из истории.

Преимуществом является то, что для этого мне не нужно окно графика, однако возник вопрос, будет ли сервис использовать больше или меньше вычислительной мощности и памяти моего компьютера по сравнению с тем, если бы я использовал эту задачу внутри пустого индикатора, например, выполняя функцию 'OnTimer'.

Если у вас есть ответ на мой вопрос об использовании вычислительной мощности и памяти, не могли бы вы сообщить мне об этом? Еще раз спасибо за эту статью и примеры кода.