Если я ищу линии, которые кажутся оторванными от столбцов графика (как в вашем первом сообщении), то я не получаю никаких проблем.
Четвертый скриншот выглядит интересно. Насколько я могу судить, урезанный код должен рисовать линию каждые 25 минут, между минимумами и максимумами последних 20 баров. Таким образом, получается серия линий с промежутком в 5 минут между ними. Но на вашем последнем скриншоте линии накладываются друг на друга. Потенциально это может быть вызвано такими вещами, как перекомпиляция индикатора, когда он уже прикреплен к графику, но есть ли у вас идеи, что на самом деле вызвало это?
jjc: Потенциально это может быть вызвано такими вещами, как перекомпиляция индикатора, когда он уже прикреплен к графику, но есть ли у вас какие-либо идеи, что вызвало это?
Индикатор был прикреплен, и ничего больше... никаких перезагрузок по какой-либо причине.
RaptorUK: Есть пропущенные бары, с 17:08 следующий бар - 17:15, 17:00 бар тоже пропущен...
Да, конечно, это объясняет это. Линии рисуются каждые 25 минут, а не каждые 25 баров M1. Поэтому они могут накладываться друг на друга. Не обращайте на меня внимания; мое наблюдение совершенно не относится к основному явлению - которое вы не можете (пока) воспроизвести - линии становятся оторванными от баров.
jjc: Не обращайте внимания; мое замечание совершенно не относится к основному явлению - которое вы не можете (пока) воспроизвести - линии становятся оторванными от баров.
...если, конечно, предположить, что этот урезанный индикатор предназначен для воспроизведения оригинального явления, когда линии становятся отделенными, и что наложение линий является ожидаемой проблемой, а не чем-то, что рассматривается как ошибка и доказательство наличия проблемы.
RaptorUK: У меня есть идея... но сейчас мне нужно выйти, я добавил индикатор на новый график, протестирую свою идею, когда вернусь, и опубликую результаты.
Я бы подождал подтверждения от AnkaSoftware, что этот урезанный индикатор воспроизводит исходную проблему (отделенные линии), а не перекрывающиеся линии якобы являются признаком проблемы.
Мне следовало бы сразу обратить на это внимание, потому что я подумал: "Использование TimeCurrent() в индикаторе? Как странно". Очевидно, что это странно именно потому, что - как в данном случае - оно почти неизбежно связано с неверным предположением о том, что будет непрерывная серия баров. Если вы собираетесь использовать TimeCurrent() в урезанном примере, таком как этот, то это, вероятно, указывает на то, что вы также сделали что-то подобное в оригинальном коде, и поэтому будут проблемы с разрывами в последовательности баров.
Я все еще не могу понять, как урезанный код может привести к отрыву линий без того, чтобы не было какой-то проблемы в MT4, но использование TimeCurrent() делает меня более подозрительным, чем когда-либо, что это именно та ошибка, на которую намекали предыдущие скриншоты.
jjc: Я бы подождал подтверждения от AnkaSoftware, что этот урезанный индикатор воспроизводит исходную проблему (отделенные линии), а не перекрывающиеся линии якобы являются признаком проблемы.
Мне следовало бы сразу обратить на это внимание, потому что я подумал: "Использование TimeCurrent() в индикаторе? Как странно". Очевидно, что это странно именно потому, что - как в данном случае - оно почти неизбежно связано с неверным предположением о том, что будет непрерывная серия баров. Если вы собираетесь использовать TimeCurrent() в урезанном примере, таком как этот, то это, вероятно, указывает на то, что вы также сделали что-то подобное в оригинальном коде, и поэтому будут проблемы с разрывами в последовательности баров.
Я все еще не могу понять, как урезанный код может привести к отрыву линий без того, чтобы не было какой-то проблемы в MT4, но использование TimeCurrent() делает меня более подозрительным, чем когда-либо, что это именно та ошибка, на которую намекали предыдущие скриншоты.
На моей системе урезанный код способен воспроизвести исходную проблему отсоединенных линий.
Если просмотреть xls файл с дампом массива индикаторов, то индексы данных индикаторных линий смещаются в массиве. Таким образом, линия индикатора, которая была действительна между барами t1 и t2, смещается на бары t3 и t4 и кажется оторванной.
TimeCurrent используется только для получения сигнала для рисования линий через заданные интервалы. Бары всегда рисуются от T - 1 до T - 20.
Raptor - Какая у вас настройка 'Max bars on chart'? Попробуйте установить 10 000.
AnkaSoftware: Прилагается пример индикатора, который воспроизводит проблему. На 64-битной платформе Windows прикрепите индикатор к графику M1 и дайте ему поработать в течение 4+ часов.
Что вы имеете в виду под повреждениями? Я только что прикрепил ваш индикатор на EURUSD M1 и не вижу никаких значений.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Если я ищу линии, которые кажутся оторванными от столбцов графика (как в вашем первом сообщении), то я не получаю никаких проблем.
Потенциально это может быть вызвано такими вещами, как перекомпиляция индикатора, когда он уже прикреплен к графику, но есть ли у вас какие-либо идеи, что вызвало это?
Четвертый скриншот выглядит интересно.
Есть пропущенные бары, с 17:08 следующий бар - 17:15, 17:00 бар тоже пропущен...
Не обращайте внимания; мое замечание совершенно не относится к основному явлению - которое вы не можете (пока) воспроизвести - линии становятся оторванными от баров.
У меня есть идея... но сейчас мне нужно выйти, я добавил индикатор на новый график, протестирую свою идею, когда вернусь, и опубликую результаты.
Мне следовало бы сразу обратить на это внимание, потому что я подумал: "Использование TimeCurrent() в индикаторе? Как странно". Очевидно, что это странно именно потому, что - как в данном случае - оно почти неизбежно связано с неверным предположением о том, что будет непрерывная серия баров. Если вы собираетесь использовать TimeCurrent() в урезанном примере, таком как этот, то это, вероятно, указывает на то, что вы также сделали что-то подобное в оригинальном коде, и поэтому будут проблемы с разрывами в последовательности баров.
Я все еще не могу понять, как урезанный код может привести к отрыву линий без того, чтобы не было какой-то проблемы в MT4, но использование TimeCurrent() делает меня более подозрительным, чем когда-либо, что это именно та ошибка, на которую намекали предыдущие скриншоты.
Я бы подождал подтверждения от AnkaSoftware, что этот урезанный индикатор воспроизводит исходную проблему (отделенные линии), а не перекрывающиеся линии якобы являются признаком проблемы.
Мне следовало бы сразу обратить на это внимание, потому что я подумал: "Использование TimeCurrent() в индикаторе? Как странно". Очевидно, что это странно именно потому, что - как в данном случае - оно почти неизбежно связано с неверным предположением о том, что будет непрерывная серия баров. Если вы собираетесь использовать TimeCurrent() в урезанном примере, таком как этот, то это, вероятно, указывает на то, что вы также сделали что-то подобное в оригинальном коде, и поэтому будут проблемы с разрывами в последовательности баров.
Я все еще не могу понять, как урезанный код может привести к отрыву линий без того, чтобы не было какой-то проблемы в MT4, но использование TimeCurrent() делает меня более подозрительным, чем когда-либо, что это именно та ошибка, на которую намекали предыдущие скриншоты.
На моей системе урезанный код способен воспроизвести исходную проблему отсоединенных линий.
Если просмотреть xls файл с дампом массива индикаторов, то индексы данных индикаторных линий смещаются в массиве. Таким образом, линия индикатора, которая была действительна между барами t1 и t2, смещается на бары t3 и t4 и кажется оторванной.
TimeCurrent используется только для получения сигнала для рисования линий через заданные интервалы. Бары всегда рисуются от T - 1 до T - 20.
Raptor - Какая у вас настройка 'Max bars on chart'? Попробуйте установить 10 000.
На моей системе урезанный код способен воспроизвести исходную проблему оторванных строк. [...]
Прилагается пример индикатора, который воспроизводит проблему. На 64-битной платформе Windows прикрепите индикатор к графику M1 и дайте ему поработать в течение 4+ часов.
Что вы имеете в виду под повреждениями? Я только что прикрепил ваш индикатор на EURUSD M1 и не вижу никаких значений.