Новая версия платформы MetaTrader 5 build 6090: общие улучшения - страница 5

 
Vitaly Muzichenko #:
Но если текущее значение меньше максимума/минимума в окне - CHARTEVENT_CHART_CHANGE не срабатывает

Если предположить, что CHARTEVENT_CHART_CHANGE генерируется в следствии изменения CHART_PRICE_MAX, то все выглядит логично. Хотя я не знаю, как оно должно работать.

Не уверен, что я правильно понимаю, что вы имеете в виду. Попробуйте описать и ожидаемое поведение, и фактическое поведение:

"Ожидается CHARTEVENT_CHART_CHANGE, когда <...>, но событие не генерируется"

или

"CHARTEVENT_CHART_CHANGE генерируется без причины. Вот код, который печатает в журнал все свойства графика; вот лог, где видно, что ни одно свойство графика не изменилось"

 
Vladislav Boyko #:

Если предположить, что CHARTEVENT_CHART_CHANGE генерируется в следствии изменения CHART_PRICE_MAX, то все выглядит логично. Хотя я не знаю, как оно должно работать.

Не уверен, что я правильно понимаю, что вы имеете в виду. Попробуйте описать и ожидаемое поведение, и фактическое поведение:

"Ожидается CHARTEVENT_CHART_CHANGE, когда <...>, но событие не генерируется"

или

"CHARTEVENT_CHART_CHANGE генерируется без причины. Вот код, который печатает в журнал все свойства графика; вот лог, где видно, что ни одно свойство графика не изменилось"

Я предоставил видео, где свойство графика не изменилось, но событие срабатывает


 
Vitaly Muzichenko #:

Я предоставил видео, где свойство графика не изменилось, но событие срабатывает

Напечатайте в журнал CHART_PRICE_MAX с максимальной точностью (без округления). Было бы удобнее конвертировать double в hex или bin, но я не знаю, как это сделать в MQL.

Если нет изменения с точностью до 5 знаков после запятой, то это не говорит о том, что значение не изменилось.

 
Vladislav Boyko #:

Если предположить, что CHARTEVENT_CHART_CHANGE генерируется в следствии изменения CHART_PRICE_MAX, то все выглядит логично.

CHART_PRICE_MAX в индикаторе должен меняться согласно установленному INDICATOR_DIGITS.  

IndicatorSetInteger(INDICATOR_DIGITS,3);

А он меняется как будто точность в индикаторе равна 8, не зависимо от того, что мы указали 3.

Может и не должен, но ожидается именно такое поведение, а не то, какое оно сейчас.

 
Vitaly Muzichenko # :

Я предоставил видео, где свойство графика не изменилось, но событие срабатывает


Да, об этом уже сообщалось, хотя я не могу гарантировать, что разработчики сочтут это ошибкой. Буду держать вас в курсе.

Yes, this has already been reported, although I can't guarantee the developers will consider it a bug. I'll keep you updated.

Но если текущее значение меньше максимума/минимума в окне - CHARTEVENT_CHART_CHANGE не срабатывает

Ваше замечание о недавнем достижении нового максимума никак не связано с событием CHARTEVENT_CHART_CHANGE, отсутствие сгенерированного события в этом случае недопустимо.

Your comment about the recent achievement of a new maximum has nothing to do with the event CHARTEVENT_CHART_CHANGE, the absence of a generated event in this case is accurate.

 
Vladislav Boyko # :

Еще раз ссылка на тот-же код в ответ на комментарий, в котором сказано, что он не воспроизводит проблему?

Если это не троллинг, то что это?


Всё в порядке, просто возникло недопонимание относительно того, какой код является хорошим, а какой нет для воспроизведения ошибки.

Спасибо за вашу помощь

P.S. Автоматический перевод обработал и ваше имя, не знаю, нормально это или нет.

 
Alain Verleyen # :

Всё в порядке, просто возникло недопонимание относительно того, какой код является хорошим, а какой нет для воспроизведения ошибки.

Спасибо за вашу помощь

P.S. Автоматический перевод обработал и ваше имя, не знаю, нормально это или нет.

Вы это уже видели: идут тики, масштаб и цена не меняются, но событие генерируется . Я не утверждаю, но раньше вроде подобного не видел.


 
Alain Verleyen #:
Ваше замечание о недавнем достижении нового максимума никак не связано с событием CHARTEVENT_CHART_CHANGE, отсутствие сгенерированного события в этом случае недопустимо.

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

Лично мне сложно понять фрагмент вашего комментария, который я цитирую. Не уверен, проблема в переводе или в моей квалификации.

 
Vladislav Boyko # :

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

Лично мне сложно понять фрагмент вашего комментария, который я цитирую. Не уверен, проблема в переводе или в моей квалификации.

Я отредактировал свой комментарий, добавив английскую версию (после обратного перевода).

I edited my comment to add the English version (after translating back).

 
Vitaly Muzichenko # :

Вы это уже видели: идут тики, масштаб и цена не меняются, но событие генерируется . Я не утверждаю, но раньше вроде подобного не видел.

Вы можете отфильтровать CHART_EVENT_CHANGE в соответствии с параметром lparam.

   if (id== CHARTEVENT_CHART_CHANGE && lp!= 16 ) 
     printf ( "CHARTEVENT_CHART_CHANGE: lparam=%lli dparam=%d sparam=%s Value=%f" ,lp,dp,sp,ExtVROCBuffer[ Bars ( NULL , 0 )- 1 ]);