Комбинация флагов видимости объекта определяет таймфреймы графика, на которых объект отображаем. Для установки/получения значения свойства OBJPROP_TIMEFRAMES можно использовать функции ObjectSetInteger()/ObjectGetInteger...
//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart()
{
//---
C201022_090654 c_1(* new C201022_090641); //works
C201022_090654 c_3(* new C201022_092325(1)); //works//---'new' - parameter passed as reference, variable expected
C201022_090654 c_2(* new C201022_090641(1)); //not works
^
}
Странно что сейчас не работает при том, что Вы сообщали об ошибке полгода назад, я - 3 месяца назад (почти год не обновлял терминал). Если бы изначально не работало - тогда понятно
Ух, как злюсь - выявил индикаторы из стандартной поставки, которые дают разный показатель в один момент времени, если были запущены в разные периоды в тестере - не знаю как они считаются, но для машинного обучения они опасны!
Долго не мог понять почему шрифты выводятся в Canvas с таким плохим качеством. И сегодня понял, что существует неправильный вывод шрифтов в режиме канваса с подержкой прозрачности COLOR_FORMAT_ARGB_NORMALIZE.
Очевидно, что этот баг заключается в том, что в режиме COLOR_FORMAT_ARGB_NORMALIZE сглаживание кромки шрифта происходит не через 4-й байт прозрачности(A), а изменением яркости трех байтов RGB, как в режиме COLOR_FORMAT_XRGB_NOALPHA. Если это поправить, то шрифты в режиме COLOR_FORMAT_ARGB_NORMALIZE будут выводится даже чуть быстрее(т.к. нужно менять только один байт A , а не три RGB в пикселе ARGB) и с гораздо лучшим качеством.
Демонстрирующий этог Баг скрипт прикладываю. (Слева выводятся шрифты в режиме COLOR_FORMAT_XRGB_NOALPHA, а справа с потерей качества шрифты в режиме COLOR_FORMAT_ARGB_NORMALIZE)
Особенно это хорошо видно в режиме "белый на белом" - шрифтов не должно быть видно. И в режиме белый на черном. Видно что качество шрифтов сильно портится из-за неправильной обработки краев шрифта.
Черный на белом:
Белый на черном
VS
Белый на белом. Справа (режим COLOR_FORMAT_ARGB_NORMALIZE) ореол(кромка) шрифта, которого не должно быть.
Разработчики, пожалуйста, почините это. Самый важный режим Canvas.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Перестал работать TesterHideIndicators(false);
TesterHideIndicator выставляет тестеру флаг видимости индикаторов, которые создаются после.
Он не меняет флаг видимости у созданных ранее индикаторов.
Можно проверить следующим экспертом
В визуализаторе и на графике, открытом после простого тестирования, индикатор MACD не виден, Moving Average виден
То есть, работает, как и было задумано
Ошибка компиляции. У кого какие мысли?
Используйте оператор dereference явно
A100:
Ошибка при компиляции:
Ранее исследовал данный вопрос, вот что удалось найти:
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
Sergey Dzyublik, 2020.04.04 21:46
Баг МТ5(build 2375) ошибка компиляции при вызове функции через ее указатель, когда используется массив указателей на функцию:MetaQuotes:
Исправили, будет в очередной бете
Отлично, спасибо за оперативность!
Ранее исследовал данный вопрос, вот что удалось найти:
Раньше с массивом работало build 2085
Странно что сейчас не работает при том, что Вы сообщали об ошибке полгода назад, я - 3 месяца назад (почти год не обновлял терминал). Если бы изначально не работало - тогда понятно
Раньше с массивом работало
проверил - в MQL4 до сих пор работает
UPD: даже с директивой #property strict 4-ке все компилируется
Уважаемы разработчики, прошу пояснить, это такая логика индикатора или не корректное поведение?
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Машинное обучение в трейдинге: теория, практика, торговля и не только
Aleksey Vyazmikin, 2020.11.02 21:52
Ух, как злюсь - выявил индикаторы из стандартной поставки, которые дают разный показатель в один момент времени, если были запущены в разные периоды в тестере - не знаю как они считаются, но для машинного обучения они опасны!
Результат снимался 01.08.2019 10:04:00 на минутках по OHLC Si Splice.
TesterHideIndicator выставляет тестеру флаг видимости индикаторов, которые создаются после.
Он не меняет флаг видимости у созданных ранее индикаторов.
Можно проверить следующим экспертом
В визуализаторе и на графике, открытом после простого тестирования, индикатор MACD не виден, Moving Average виден
То есть, работает, как и было задумано
Спасибо. Это я не на том фрейме ждал индикатор, извиняюсь за невнимательность!
Долго не мог понять почему шрифты выводятся в Canvas с таким плохим качеством.
И сегодня понял, что существует неправильный вывод шрифтов в режиме канваса с подержкой прозрачности COLOR_FORMAT_ARGB_NORMALIZE.
Очевидно, что этот баг заключается в том, что в режиме COLOR_FORMAT_ARGB_NORMALIZE сглаживание кромки шрифта происходит не через 4-й байт прозрачности(A), а изменением яркости трех байтов RGB, как в режиме COLOR_FORMAT_XRGB_NOALPHA.
Демонстрирующий этог Баг скрипт прикладываю. (Слева выводятся шрифты в режиме COLOR_FORMAT_XRGB_NOALPHA, а справа с потерей качества шрифты в режиме COLOR_FORMAT_ARGB_NORMALIZE)Если это поправить, то шрифты в режиме COLOR_FORMAT_ARGB_NORMALIZE будут выводится даже чуть быстрее(т.к. нужно менять только один байт A , а не три RGB в пикселе ARGB) и с гораздо лучшим качеством.
Особенно это хорошо видно в режиме "белый на белом" - шрифтов не должно быть видно. И в режиме белый на черном. Видно что качество шрифтов сильно портится из-за неправильной обработки краев шрифта.
Черный на белом:
Белый на черном
VS
Белый на белом. Справа (режим COLOR_FORMAT_ARGB_NORMALIZE) ореол(кромка) шрифта, которого не должно быть.
Разработчики, пожалуйста, почините это.
Самый важный режим Canvas.
ЗЫ Кстати такой же косяк у вас в классе CCanvas как миминум из-за функции PixelTransform (https://www.mql5.com/ru/forum/227736/page43#comment_13272694), поэтому функции со сглаживанием работают неправильно. Решение я вроде там предлагал.
Здесь нет ошибки.
Для белого шрифта используйте белую "подкладку"
C2.Erase(0x00FFFFFF);