по видимому здесь нужно побольше баров забить, ну и естественно история должна быть полностью подгружена:
Вот мои настройки:
Но эти настройки касаются "живых" графиков! А в графике тестера баров только 1000.
Вот мои настройки:
Но эти настройки касаются "живых" графиков! А в графике тестера баров только 1000.
создал эксперт:
extern int N = 25000; int start(){ datetime t = Time[N]; double C = Close[N]; Comment("Время N баров назад = ",TimeToStr(t)," , Close[",N,"] = ",DoubleToStr(C,Digits)); return(0); }
в тестере, в режиме визуализации выводит: Время N баров назад = 1970.01.01 00:00, Close[25000] = 0.00000
тогда нужно самостоятельно из .hst данные брать, вот https://www.mql5.com/en/code/9231
Вопрос остается в силе. Набросал тест:
int start() { int ib = iBars(NULL, 0); Print ("iBars = ", ib); for (int index = 250; index <= 1500; index += 250) { double cl = iClose(NULL, 0, index); Print ("iClose(", index, ") = ", cl); } return(0); }
Результат:
Баров в тестере только... 1001
PS. Насколько я понял из документации, это нормальное поведение тестера MT4 - советник получает на старте окно в 1000 баров, которое будет расти по мере моделирования последующих баров. Вопрос - можно это стартовое окно увеличить через настройки? Если нет, придется отказаться в тестере от работы с графиком напрямую и читать котировки из файла, например, csv. Это нежелательно, конечно.
Вопрос остается в силе. Набросал тест:
Результат:
Баров в тестере только... 1001
PS. Насколько я понял из документации, это нормальное поведение тестера MT4 - советник получает на старте окно в 1000 баров, которое будет расти по мере моделирования последующих баров. Вопрос - можно это стартовое окно увеличить через настройки? Если нет, придется отказаться в тестере от работы с графиком напрямую и читать котировки из файла, например, csv. Это нежелательно, конечно.
Больше вроде сделать нельзя
Но чтобы не мучиться с чтением котировок вы можете сделать заплатку
запускать тестирование с нужного вам момента (условно говоря с 2005 года), а в начале эксперта в OnTick добавить условие, что если дата меньше 2010 года, то выход. Тогда сначала будет накоплена история, а уже потом начнет работу советник
Вопрос остается в силе. Набросал тест:
Результат:
Баров в тестере только... 1001
PS. Насколько я понял из документации, это нормальное поведение тестера MT4 - советник получает на старте окно в 1000 баров, которое будет расти по мере моделирования последующих баров. Вопрос - можно это стартовое окно увеличить через настройки? Если нет, придется отказаться в тестере от работы с графиком напрямую и читать котировки из файла, например, csv. Это нежелательно, конечно.
Максимальное число баров при запуске советника в тестере 1001 бар (если конечно есть в истории такое количество). Разработчики сочли что этого достаточно.
При формировании новых баров их количество увеличивается
Максимальное число баров при запуске советника в тестере 1001 бар (если конечно есть в истории такое количество). Разработчики сочли что этого достаточно.
При формировании новых баров их количество увеличивается
Максимальное число баров при запуске советника в тестере 1001 бар (если конечно есть в истории такое количество). Разработчики сочли что этого достаточно.
При формировании новых баров их количество увеличивается
1001 бар для начала сойдёт. Тем более, если нужно можно и подсобрать изтории... если она качественная.
Сейчас с сервера Metaquotes грузится история с пропуском с января по август этого года.
Если изначально нужно большее количество баров, то можно сделать так:
1. Указать в коде советника дату начала работы.
2. Запустить тестирование с даты, расположенной намного раньше, чем желаемое начало теста (количество нужных баров можно посчитать). Если не требуется визуализация, то все...
3. При визуализации в начале тестирования нажать кнопку "Пропустить до", где указать дату начала тестирования, равную той, которая записана в коде эксперта.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Сегодня столкнулся с этой проблемой, когда отлаживал советник, подстраивающийся на рынок последнего года на M5.
Пока рынок в пятницу работал, "вживую", все было нормально. Но уже в субботу остается только тестер! В тестере советник работать отказался - мало исторических данных. Отладка показала, что переменная Bars, как и функция iBars в тестере возвращают значение 1000.
Кто подскажет, как этим бороться? Это "фича" тестера или где-то регулируется в настройках?