Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1265
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Доброго Всем!
Вопрос: как проще всего определить время хая и лоя бара?
Время открытия/закрытия бара неинтересно.
На МТ4.
Спасибо!
делал такое
в КБ выкладывал https://www.mql5.com/ru/code/25897
Подскажите пожалуйста, в МТ4 была предопределенная переменная double Ask, и, как я понимаю, внутри void OnTick() без принудительного
RereshRates ее значение НЕ менялось.
В МТ5 на смену Ask пришла MqlTick last_tick; SymbolInfoTick(_Symbol,last_tick); double Ask=last_tick.ask; ее значение всегда обновляется новым тиком.
У меня проблема в том, что мне нужно по значению Ask + Х задать координату линии, но в МТ5 я уже не могу так сделать, так как линия меняет свои координаты вслед за изменением значения
Ask=last_tick.ask. Что посоветуете?
Подскажите пожалуйста, в МТ4 была предопределенная переменная double Ask, и, как я понимаю, внутри void OnTick() без принудительного
RereshRates ее значение НЕ менялось.
В МТ5 на смену Ask пришла MqlTick last_tick; SymbolInfoTick(_Symbol,last_tick); double Ask=last_tick.ask; ее значение всегда обновляется новым тиком.
У меня проблема в том, что мне нужно по значению Ask + Х задать координату линии, но в МТ5 я уже не могу так сделать, так как линия меняет свои координаты вслед за изменением значения
Ask=last_tick.ask. Что посоветуете?
Как это не менялось? Менялось с каждым тиком. А вот в цикле, да не менялось. Может с этим вы попутали чуток?
Но ведь и в mql5 можно перед циклом определить текущую цену и пока не выйдешь из цикла она не поменяется.
Как-то можно измерить в пикселях ширину написанного текста в OBJ_TEXT ?
Как это не менялось? Менялось с каждым тиком. А вот в цикле, да не менялось. Может с этим вы попутали чуток?
Но ведь и в mql5 можно перед циклом определить текущую цену и пока не выйдешь из цикла она не поменяется.
Да, спасибо, мое предположение оказалось неверным, но вопрос немного в другом. Есть код, один и тот же для МТ4 и MT5 :
Вопрос в том, что в МТ4 созданная линия будет неподвижно находиться на той цене на которой она была создана, а в МТ5 каждый раз на новом тике линия будет отрисована на новом значении LastAsk и ее положение будет меняться вместе с ценой. Как мне этого избежать в МТ5?
Да, спасибо, мое предположение оказалось неверным, но вопрос немного в другом. Есть код, один и тот же для МТ4 и MT5 :
Вопрос в том, что в МТ4 созданная линия будет неподвижно находиться на той цене на которой она была создана, а в МТ5 каждый раз на новом тике линия будет отрисована на новом значении LastAsk и ее положение будет меняться вместе с ценой. Как мне этого избежать в МТ5?
Проверять наличие линии по имени. Нету - создавать. Это азы вообще
Спасибо, что бы еще почитать про эти азы логики программирования? Вроде элементарно, а с нуля тяжело догадаться.
Добавил условие и все заработало.
Спасибо, что бы еще почитать про эти азы логики программирования? Вроде элементарно, а с нуля тяжело догадаться.
Добавил условие и все заработало.
внезапно (впрочем как обычно) ObjectGetInteger(0,objectName,OBJPROP_TYPE) работает быстрее.
ObjectFind - синхронная команда, то есть ожидает полного обновления(и доступности) объектов чарта..Использование чревато существенными задержками.
если работаете со своими объектами (то есть созданными в вашем-же прикладе), то не стоит использовать ObjectFind - вы и так знаете в каком окне создавался объект и что он скорее всего есть и он нужного типа.
Максимум неприятностей - то что пользователь удалил объект или поменял свойство
Да, спасибо, мое предположение оказалось неверным, но вопрос немного в другом. Есть код, один и тот же для МТ4 и MT5 :
Вопрос в том, что в МТ4 созданная линия будет неподвижно находиться на той цене на которой она была создана, а в МТ5 каждый раз на новом тике линия будет отрисована на новом значении LastAsk и ее положение будет меняться вместе с ценой. Как мне этого избежать в МТ5?
Так я не помню, надо проверять, а неохота. Возможно, что в mql4 при попытке создать объект с именем уже существующего, просто возвращалась ошибка, а в mql5 уже не ошибка а модификация параметров если координаты отличаются.
Как сказал Артём — проверяйте наличие объекта