Асинхронное и многопоточное программирование в MQL - страница 29

 
Реter Konow:

А общение через ресурсы с копиями на обычных графиках (не OBJ_CHART) будет происходить? Или там какие то ограничения?

Не в курсе. Если проведете такой эксперимент, сообщите здесь о результатах.

 
Andrey Barinov:

Правильно ли понимаю, что при такой реализации OnTrade-подходы идут лесом? И результата торговых приказов нужно именно ждать в слейве?

 
fxsaber:

Правильно ли понимаю, что при такой реализации OnTrade-подходы идут лесом? И результата торговых приказов нужно именно ждать в слейве?

OnTrade не использую (пишу кроссплатформенный код, а в МТ4 этого нет). Но и не жду особо (sleep  и while не использую). Мне хватает того, что возвращают OrderSend()

 
Реter Konow:

А общение через ресурсы с копиями на обычных графиках (не OBJ_CHART) будет происходить? Или там какие то ограничения?

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

 
Andrey Barinov:

Мне хватает того, что возвращают OrderSend()

Result.deal = 0 - хватает? Ну и приколы с несинхронизированой историей торгов сразу после OrderSend  в MT5.

Вроде, в четверке OnTrade работает.

 
fxsaber:

Result.deal = 0 - хватает?

У меня еще не было чтобы (result.order ==0 && result.deal==0)

https://docs.mql4.com/ru/runtime/running
Выполнение программ - Программы MQL4 - Справочник MQL4
Выполнение программ - Программы MQL4 - Справочник MQL4
  • docs.mql4.com
Каждый скрипт и каждый эксперт работает в собственном отдельном потоке. Все индикаторы работают в одном интерфейсном потоке терминала. Обработка тиков и синхронизация истории также производится в интерфейсном потоке. Если пользовательский индикатор вызван при помощи функции iCustom(), то этот индикатор работает в потоке вызвавшей его программы...
 
Andrey Barinov:

Не в курсе. Если проведете такой эксперимент, сообщите здесь о результатах.

Сообщу.

Вообще, странная ситуация. При чтении данных через ресурсы нужно указать адрес той программы, в которой этот ресурс находится. Но, поскольку будут запущены копии одного и того же советника, адрес у них один. Как в этом случае будет происходить чтение\запись данных? Любопытно...

 
fxsaber:

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

Согласен.
 
Andrey Barinov:

У меня еще не было чтобы (result.order ==0 && result.deal==0)

Речь про пятерку.

 
fxsaber:

Речь про пятерку.

И я о том же.

Ссылку на четверку дал в качестве ответа на реплику что OnTrade работает в четверке.

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