События и их "отлавливание" в MetaTrader'e.

 

Всем доброго времени суток!


Хотел выяснить следующий вопрос: когда в MetaTrader'e пользователем (человеком, не советником) создается ордер, можно ли как-то "отловить" (понять что это произошло) это событие? Если да, то с помощью какой ф-ции или хотя бы рекомендации, в какой стороне искать.


Заранее спасибо! =)

 
Можно по изменению количества ордеров в списке ордеров.
 
Zhunko >>:
Можно по изменению количества ордеров в списке ордеров.

Как прочитать этот список? Точнее в какой переменной (массиве) он находится?

 
Martiner >>:

Как прочитать этот список? Точнее в какой переменной (массиве) он находится?

https://docs.mql4.com/ru/trading/OrdersTotal

 
Martiner >>:

Всем доброго времени суток!


Хотел выяснить следующий вопрос: когда в MetaTrader'e пользователем (человеком, не советником) создается ордер, можно ли как-то "отловить" (понять что это произошло) это событие? Если да, то с помощью какой ф-ции или хотя бы рекомендации, в какой стороне искать.


Заранее спасибо! =)


Еще можно отслеживать конкретный ордер даже без аналитики количества

--

при открытии вы формируете свой массив ордеров

и при определенных условиях проверяете его наличие или отсутствие

например раз при завершении какого либо бара

пробегаете по списку и смотрите "живет" ли ваш ордер в открытых ордерах

--

к сожалению изначально разработчики не предусмотрели возникновение события на такое явление как

отработка тейка стопа тралла .. . было бы удобней и можно было бы обойтись без своего мониторинга

--

сейчас приходится писать всякие мониторинги

--

 

YuraZ, я имел ввиду: когда человек (пользователь) терминала создает свой новый ордер, может ли советник понять, что это событие произошло (был открыт ордер на n-сумму в t-момент времени) и, соответственно, проанализировать?

Пока я вижу решение только в непрерывной обработке OrdersTotal( ). Считаю это не сильно изящным решением... =(

 
Martiner >>:

Всем доброго времени суток!


Хотел выяснить следующий вопрос: когда в MetaTrader'e пользователем (человеком, не советником) создается ордер, можно ли как-то "отловить" (понять что это произошло) это событие? Если да, то с помощью какой ф-ции или хотя бы рекомендации, в какой стороне искать.


Заранее спасибо! =)


В МТ4 можно программно можно переопределить (создать свой обработчик) только три события:


1. Начальная инициализация при установке и запуске советника, скрипта или пользовательского индикатора - запускается функция init()

2. Приход нового тика - запускается функция start()

3. Деинициализация - запускается функция deinit()


Для всего остального никаких событийных функций не предусмотрено.

 
Martiner >>:

Хотел выяснить следующий вопрос: когда в MetaTrader'e пользователем (человеком, не советником) создается ордер, можно ли как-то "отловить" (понять что это произошло) это событие? Если да, то с помощью какой ф-ции или хотя бы рекомендации, в какой стороне искать.

События в МetaТrader 4

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