Обсуждение статьи "Библиотека для простого и быстрого создания программ для MetaTrader (Часть XIII): События объекта "аккаунт""

 

Опубликована статья Библиотека для простого и быстрого создания программ для MetaTrader (Часть XIII): События объекта "аккаунт":

В данной статье будут рассмотрены методы работы с событиями аккаунта (счёта), позволяющие отслеживать важные события изменения свойств счёта, так или иначе влияющие на автоматическую торговлю.Некоторая часть функционала для отслеживания событий аккаунта, уже была нами создана в прошлой статье при создании коллекции объектов-аккаунтов.

Теперь запустим советник в тестере и откроем побольше позиций — чтобы быстро поймать событие увеличения средств и написанную нами обработку данного события — закрытие самой прибыльной позиции:


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

Автор: Artyom Trishkin

 

Небольшое уточнение по поводу определения типа терминала в конструкторе:

this.m_long_prop[ACCOUNT_PROP_SERVER_TYPE]                        = (::TerminalInfoString(TERMINAL_NAME)=="MetaTrader 5" ? 5 : 4);

Наверное более корректно было бы так написать:

this.m_long_prop[ACCOUNT_PROP_SERVER_TYPE]                        = (::StringFind(TerminalInfoString(TERMINAL_NAME),"MetaTrader 5") != -1 ? 5 : 4);

Поскольку там может ещё и имя брокера фигурировать..

 
MQL_User #:

Небольшое уточнение по поводу определения типа терминала в конструкторе:

Наверное более корректно было бы так написать:

this.m_long_prop[ACCOUNT_PROP_SERVER_TYPE]                        = (::StringFind(TerminalInfoString(TERMINAL_NAME),"MetaTrader 5") != -1 ? 5 : 4);

Поскольку там может ещё и имя брокера фигурировать..

Киньте в личку ссылку на брокера, у которого такое происходит, пожалуйста

Причина обращения: