Скачать MetaTrader 5

Запоздание функции Comment(); на 1 тик.

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Проблемы с кодом? Загляни в документацию!
Forex Trader
114255
Forex Trader 2005.09.23 04:23 
Здравствуйте, господа разработчики !
Столкнулся с небольшой проблемой при работе моего эксперта.
У меня 181 билд МТ4.
Искал в форуме и базе знаний упоминания об этом, но честно говоря, не нашел...
Проблема заключается в следующем :
В эксперте у меня выводится некая информация на экран в окне графика,
в принципе не столь важно какая, например функция написана так :
Comment("Close[0]=",Close[0]);
Она на экране даёт строчку например : "Close[0]=1.2142",
при следующем тике цена меняется, например на 1.2141,
(о чём свидетельствует линия цены)
эксперт отрабатывает, но отображения на экран не даёт.
следующий тик выдаёт цену 1.2142, эксперт отрабатывает,
и на экране красуется надпись : "Close[0]=1.2141".
Примечательно, что если в этот момент кликнуть мышкой в окне данного графика,
то вся информация тут же скорректируется, но следующий тик меняет цену,
а на графике запись та же, и сменится текущей только при новом тике и т.д.
Тем не менее, если я даю команду в эксперте открыть позицию на цене 1.2142,
эксперт в тот же момент позицию и откроет, но в окне графика функцией Comment();
будет прописана предыдущая цена. Клик мышкой в окне и всё отобразится верно,
хотя тика нового ещё не было.
Проблема конечно мелочная, но было бы приятнее, если бы она работала "красиво".
Спасибо за внимание.
Forex Trader
114255
Forex Trader 2005.09.23 06:18  
Comment("Close[0]=",Close[0]);
ObjectsRedraw();
Forex Trader
114255
Forex Trader 2005.09.23 06:42  
Comment("Close[0]=",Close[0]);
ObjectsRedraw();


Понял, спасибо !
Forex Trader
114255
Forex Trader 2005.09.23 11:14  
Comment("Close[0]=",Close[0]);
ObjectsRedraw();


в самой свежей версии уже не требуется после функции Comment вызывать ObjectsRedraw. исправили
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий