Особенности языка mql5, тонкости и приёмы работы - страница 180

 
fxsaber:

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

По этой причине ExpertRemove в OnDeinit не действует на новую копию, т.к. касается выгружаемой.


В случае, если символ отсутствует, то загружается новая копия без какого-либо выполнения.

И проблема была выгрузить новую копию, которая висит, но не запустилась.


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

хорошее обьяснение, спасибо

проверил ChartID() для черного экрана отсутствующего символа... а он есть - ID всегда одинаковый, впрочем с этого и начался спор с админом, событий OnInit()... нет, а есть точки входа и проверка флагов _StopFlag , _UninitReason 

а вот то, что чарт не привязан к символу.... ладно, пофиг

еще раз спасибо

 
fxsaber:

Должен быть полный контроль.

Если точки входа не работают, нет риска запуска советника.

Если работают, в них можно проверить, изменился ли счет.

Не вижу потери контроля.

 
fxsaber:

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

Во первых: советник не запустится поскольку кнопка «Алготрейдинг» уже в отжатом состоянии.

Во вторых: в этом случае решение абсолютно простое.

Почему-то анимашка не работает. Надо в неё тыкнуть.


 
Andrey Khatimlianskii:

Если точки входа не работают, нет риска запуска советника.

Если работают, в них можно проверить, изменился ли счет.

Не вижу потери контроля.

Вы меня пытаетесь убедить, что то, что мне нужно было, на самом деле мне не нужно. Это не так, к сожалению.

 
Alexey Viktorov:

Во первых: советник не запустится поскольку кнопка «Алготрейдинг» уже в отжатом состоянии.

Такое поведение зависит от настроек Терминала. Более того, советники делают больше, чем просто торгуют.

Во вторых: в этом случае решение абсолютно простое.

Почему-то анимашка не работает. Надо в неё тыкнуть.

У меня десять Терминалов. В суматохе на одном переключился на другой счет. Проходит время, смотрю на Терминал и вижу, что мне нужен другой счет - переключаюсь на прежний. И совершенно не ожидая, что висит советник, вижу, что запустился советник.

И это только один из сценариев.

Это не хотелка клиента из фриланса, а то, что мне нужно было.

 
fxsaber:

Вы меня пытаетесь убедить, что то, что мне нужно было, на самом деле мне не нужно. Это не так, к сожалению.

Я пытаюсь представить ситуацию, когда это может пригодиться. Не могу.


fxsaber:

У меня десять Терминалов. В суматохе на одном переключился на другой счет. Проходит время, смотрю на Терминал и вижу, что мне нужен другой счет - переключаюсь на прежний. И совершенно не ожидая, что висит советник, вижу, что запустился советник.

И это только один из сценариев.

Вопрос номер 1. Зачем в боевом терминале перелогиниваться на другой счет?

 
Andrey Khatimlianskii:

Вопрос номер 1. Зачем в боевом терминале перелогиниваться на другой счет?

Есть универсальный на все счета Терминал. Там под рукой весь инструментарий + быстрая возможность что-то написать/подправить в ME.

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

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

 
Не знаю, у кого как, а у меня любой торговый советник всегда имеет входной параметр AccountID.  В котором явно прописывешь номер счёта, на котором он может торговать.  По-другому я просто не представляю, как можно работать на реальном счёте. Тем более если куча терминалов и "суматоха".
 

Alexey Navoykov:
Не знаю, у кого как, а у меня любой торговый советник всегда имеет входной параметр AccountID.  В котором явно прописывешь номер счёта, на котором он может торговать.

Жутко неудобно вводить номер счета каждый раз. Например, у меня есть счет из десяти цифр.

По-другому я просто не представляю, как можно работать на реальном счёте. Тем более если куча терминалов и "суматоха".

Ручной запуск своего советника в начале - это осознанное дело. Более того, у меня сразу после запуска в браузере показан HTML-отчет бэктеста советника до текущего тика. Поэтому очень сложно ошибиться.

А вот когда уже советник висит, то нежелательны его несанкционированные запуски. Защита, что здесь прописал, справляется на УРА. И не требуется ничего вводить дополнительно.

 
fxsaber:

Есть универсальный на все счета Терминал. Там под рукой весь инструментарий + быстрая возможность что-то написать/подправить в ME.

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

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

На таком терминале у меня 1-2 графика обычно, запутаться сложно. Но смысл понятен.