Предварительный билд терминала MetaTrader 4: Новый умный поиск, книги в Маркете и обновление окна параметров MQL4-программы - страница 9

 
Sergey_Mechanic:


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

Я рад, что натолкнул вас на мысль. Не все новые функции ещё работают правильно.

Теперь ваш код вам вернёт другую ошибку - уже при наличии объекта.

 
Нет больше никаких ошибок. К тому же, это ведь только фрагмент кода, чтобы проблему показать. В полном варианте все необходимые проверки, естественно, есть. В том числе и на наличе объекта перед созданием.
 
Подскажите по свойству OBJPROP_YSIZE у объекта OBJ_LABEL. Если объект создается программно и сразу же по нему читается свойство OBJPROP_YSIZE - возвращается 0. Через какое-то время размер возвращается нормально. Т.е. например если по щелчку мыши на объекте "A" создается объект "B" (OBJ_LABEL) и сразу же проверяется свойство OBJPROP_YSIZE - получаем 0. По еще одному щелчку мыши на объекте "A" - размер объекта "B" уже возвращается нормально.
 
alxm:
Подскажите по свойству OBJPROP_YSIZE у объекта OBJ_LABEL. Если объект создается программно и сразу же по нему читается свойство OBJPROP_YSIZE - возвращается 0. Через какое-то время размер возвращается нормально. Т.е. например если по щелчку мыши на объекте "A" создается объект "B" (OBJ_LABEL) и сразу же проверяется свойство OBJPROP_YSIZE - получаем 0. По еще одному щелчку мыши на объекте "A" - размер объекта "B" уже возвращается нормально.

Пока объект не отрисовался на контексте, у него не рассчитываются линейные размеры.

Подумаем, что можно сделать.

 
Renat:

Пока объект не отрисовался на контексте, у него не рассчитываются линейные размеры.

Подумаем, что можно сделать.


Спасибо. Я пробовал использовать паузу Sleep, принудительно перерисовывать график - не помогает...
 
Renat:

Пока объект не отрисовался на контексте, у него не рассчитываются линейные размеры.

Подумаем, что можно сделать.


И еще, был неприятно удивлен следующим фактом время в будущем учитывает и выходные дни ...

Зачем нам на графике не торговое время ?

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


Проблема заключается в следующем:

Если мы программно делаем расчеты на будущее и отрисовываем метки для дальнейшей работы с ними ( модификация руками или программно ) мы не получаем верного времени.

На рисунке видно закрытие бай ордера, который должен был закрыться когда текущее время больше или равно времени объекта VLINE, но поскольку время объекта выходной закрытии происходит раньше. что совсем не правильно...

 
VOLDEMAR:


И еще, был неприятно удивлен следующим фактом время в будущем учитывает и выходные дни ...

Зачем нам на графике не торговое время ?

Подумайте над этим вопросом самостоятельно и поглубже, пожалуйста.

 

подскажите по ниже приведенному скрину - отчего такая красота ?

 
keekkenen:

подскажите по ниже приведенному скрину - отчего такая красота ?


То что Вы прописали по умолчанию то и показывает ! И это правильно !

 
Renat:

Подумайте над этим вопросом самостоятельно и поглубже, пожалуйста.


Я подумал, ничего хорошего в голову не приходит
Причина обращения: