Запуск сервиса из эксперта или индикатора - страница 2

 
Andrey Khatimlianskii #:

Можно под видом советника, который удаляет себя при завершении работы -- https://www.mql5.com/ru/code/19003

это только в отдельном чарте запускать. То есть ChartOpen(), ChartApplyTemplate() с советником в шаблоне.и ChartClose по завершению

с одной стороны - возможно, с другой это костыль и пользователя (даже меня в его роли) будет нервировать.

у меня некоторые скрипты, которые неплохо-бы запускать из советников, имеют диалоговые части. Соотв. если будут запущены на другом чарте, то это собъёт с толку

 
Maxim Kuznetsov #:

это только в отдельном чарте запускать. То есть ChartOpen(), ChartApplyTemplate() с советником в шаблоне.и ChartClose по завершению

с одной стороны - возможно, с другой это костыль и пользователя (даже меня в его роли) будет нервировать.

у меня некоторые скрипты, которые неплохо-бы запускать из советников, имеют диалоговые части. Соотв. если будут запущены на другом чарте, то это собъёт с толку

Зачем они -- скрипты? Почему не библиотеки или просто инклудники?

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


Еще, кажется, можно было запускать что-то на объекте-чарте. Или приснилось?

 
Andrey Khatimlianskii #:

Зачем они -- скрипты? Почему не библиотеки или просто инклудники?

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


Еще, кажется, можно было запускать что-то на объекте-чарте. Или приснилось?

несколько практических примеров :

- я (и не только я) часто используемые скрипты вешаю на hot-key. Вполне логичным продолжением был-бы советник(скрипт/сервис) который реализует красивое и удобное меню для запуска и избавит от необходимости помнить все назначенные хоткеи.

- некоторые скрипты необходимо запускать периодически, например отчёты, подготовка к роловер, начало дня и так.далее. Опять-же логично сделать cron-планировщик и запускать скрипты из него.

- аналогично, скрипты должны запускаться по событиям. Советник генерирует событие, и отмечает его например в GlobalVariables, а логика верхнего уровня на это уже реагирует. То есть монитор - изменились указанные переменные, запустить скрипт.

скрипты от инклудников/библиотек отличаются тем что 1) они могут быть сторонними и не обязательно с исходником 2) могут иметь интерактивную часть и при этом не предъявляют доп.требований и не конфликтуют с советниками/индикаторами 3) это отдельная программа и её доработка/улучшение не затрагивает других

 
Maxim Kuznetsov #:

несколько практических примеров :

- я (и не только я) часто используемые скрипты вешаю на hot-key. Вполне логичным продолжением был-бы советник(скрипт/сервис) который реализует красивое и удобное меню для запуска и избавит от необходимости помнить все назначенные хоткеи.

- некоторые скрипты необходимо запускать периодически, например отчёты, подготовка к роловер, начало дня и так.далее. Опять-же логично сделать cron-планировщик и запускать скрипты из него.

- аналогично, скрипты должны запускаться по событиям. Советник генерирует событие, и отмечает его например в GlobalVariables, а логика верхнего уровня на это уже реагирует. То есть монитор - изменились указанные переменные, запустить скрипт.

Все примеры теоретические? Нет практической задачи, которую не получается решить?


Maxim Kuznetsov #:
скрипты от инклудников/библиотек отличаются тем что 1) они могут быть сторонними и не обязательно с исходником 2) могут иметь интерактивную часть и при этом не предъявляют доп.требований и не конфликтуют с советниками/индикаторами 3) это отдельная программа и её доработка/улучшение не затрагивает других

Все описанное подходит для библиотеки.

Опять же, похоже на решение теоретической задачи (я не против, инициатива хорошая).

 
Andrey Khatimlianskii #:

Все примеры теоретические? Нет практической задачи, которую не получается решить?


Все описанное подходит для библиотеки.

Опять же, похоже на решение теоретической задачи (я не против, инициатива хорошая).

без возможности запуска скриптов из эксперта/сервиса - да.

была-бы возможность - я бы первым делом намонстрял себе планировщик по запуску скриптов по расписанию, во вторую менюшку для удобства.

 
нужно прописывать все скрипты во включаемый файл классом, целиком либо по отдельности,а из советника уже управлять ими.Не рассчитан mql чтобы по другому делать 
 
Maxim Kuznetsov #:

без возможности запуска скриптов из эксперта/сервиса - да.

была-бы возможность - я бы первым делом намонстрял себе планировщик по запуску скриптов по расписанию, во вторую менюшку для удобства.

Да, такая функция была бы хороша , позволяющая из любой субстанции  (Сервис, Индикатор ,Советник, Скрипт ) запускать любую другую ( Сервис, Индикатор ,Советник, Скрипт )

     Удалось сделать один из вариантов , запускать сервис из индикатора. Спасибо друзьям с сайта , помогли пустить сервис из индикатора,  сервис крутится в цикле Sleep , пуск происходит через глобальную переменную.  Не очень красиво , но пока не нахожу лучшее решение и обошлось без API.


Индикаторы: YuraZ_Book_All_PriceCH индикатор для биржи - Статьи и техническая библиотека по автоматическому трейдингу - Форум алго-трейдеров MQL5  

Индикаторы: YuraZ_Book_All_PriceCH индикатор для биржи
Индикаторы: YuraZ_Book_All_PriceCH индикатор для биржи
  • 2020.10.31
  • Automated-Trading
  • www.mql5.com
Статьи и техническая библиотека по автоматическому трейдингу: Индикаторы: YuraZ_Book_All_PriceCH индикатор для биржи
 
Andrey Khatimlianskii #:

Все примеры теоретические? Нет практической задачи, которую не получается решить?

Один из практических примеров: пакетные торговые приказы. Из одного советника даже OrderSendAsync будет выполняться последовательно, причем достаточно медленно, т. к. работа с сетью без ожидания ответа сервера - это все равно дополнительное замедление. А запуск скрипта/сервиса - всего одно сообщение. Отправляем пачку таких сообщений, и в короткие сроки получаем десяток (десятки) выполненных торговых приказов.

 
Andrey Khatimlianskii #:

Зачем они -- скрипты?

Например для обучения нейросети.

 
Ihor Herasko #:

Один из практических примеров: пакетные торговые приказы. Из одного советника даже OrderSendAsync будет выполняться последовательно, причем достаточно медленно, т. к. работа с сетью без ожидания ответа сервера - это все равно дополнительное замедление. А запуск скрипта/сервиса - всего одно сообщение. Отправляем пачку таких сообщений, и в короткие сроки получаем десяток (десятки) выполненных торговых приказов.

Sergey Pavlov #:

Например для обучения нейросети.

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

Но лишь удобнее -- убрались бы лишние чарты, не было бы мелькания при их создании и закрытии. Кроме этого минимально удобства преимуществ я не вижу.

Связь между программами есть (и достаточно быстрая), возможность запустить параллельный поток для вычислений - тоже (пусть и на новом чарте), остальное -- дело техники.


PS: Я, наверное, просто давно не жду от MQ никаких доработок или даже исправлений. Привык, что меняться будет только то, что они сами посчитают нужным, и ни баг-репорты, ни аргументы за внедрение новых функций им не интересны. Вот и ищу варианты решения существующих задач исходя из текущих возможностей терминала и языка.