Ошибка тестера 131 при закачке тиковых котировок

 
Добрый день, друзья!


Подскажите, пожалуйста, кто в курсе. Что и как надо сделать, чтобы получить заветные 99% качества тестирования вместо ошибки #131

Заранее благодарю
 
Ошибка 131 относится к торговым операциям. Никакого отношения к истории тиков не имеет. Ищите ошибку в советнике, там, где происходит расчет объема рыночного или отложенного ордера.
 
Ihor Herasko:
Ошибка 131 относится к торговым операциям. Никакого отношения к истории тиков не имеет. Ищите ошибку в советнике, там, где происходит расчет объема рыночного или отложенного ордера.

Спасибо за ответ, но Вы НЕ правы.

Только что провел эксперимент еще на одной паре (AUDUSD), которая пока была "чистая" тестер отлично работал. Как только закачал тиковые котировки -- сразу такая же ситуация с ошибкой 131.

Сомнений в том, что виноваты новые котировки быть не может.

 
skforex.ru:

Спасибо за ответ, но Вы НЕ правы.

Только что провел эксперимент еще на одной паре (AUDUSD), которая пока была "чистая" тестер отлично работал. Как только закачал тиковые котировки -- сразу такая же ситуация с ошибкой 131.

Сомнений в том, что виноваты новые котировки быть не может.

Я настаиваю - ответ верный. Посмотрите, что насчет этой ошибки написано в документации. А котировки не виноваты, они лишь показывают, что код советника составлен без учета множества нюансов, возможных на рынке.

 
skforex.ru:

Спасибо за ответ, но Вы НЕ правы.

Только что провел эксперимент еще на одной паре (AUDUSD), которая пока была "чистая" тестер отлично работал. Как только закачал тиковые котировки -- сразу такая же ситуация с ошибкой 131.

Сомнений в том, что виноваты новые котировки быть не может.

Ошибки времени выполнения - Коды ошибок и предупреждений - Константы, перечисления и структуры - Справочник MQL4
Ошибки времени выполнения - Коды ошибок и предупреждений - Константы, перечисления и структуры - Справочник MQL4
  • docs.mql4.com
GetLastError() – функция, возвращающая код последней ошибки, которая хранится в предопределенной переменной _LastError. Значение этой переменной можно сбросить в ноль функцией ResetLastError().
 
Ihor Herasko:

Я настаиваю - ответ верный. Посмотрите, что насчет этой ошибки написано в документации. А котировки не виноваты, они лишь показывают, что код советника составлен без учета множества нюансов, возможных на рынке.

Что Вы имеете в виду под множеством нюансов?
 
skforex.ru:
Что Вы имеете в виду под множеством нюансов?

Например, плавающий спред.

 
skforex.ru:
Что Вы имеете в виду под множеством нюансов?

Размер минимального, максимального объема, а также шага изменения объема. Все это далеко не всегда правильно учитывается при расчетах. Скорее всего, котировки дают такие торговые сигналы, которые приводят к нестандартным (с точки зрения автора кода) размерам Stop Loss, Take Profit или каких-то других величин, на основе которых рассчитывается объем ордера. В итоге полученное значение не вписывается в нужные рамки. Вполне возможно, что при шаге изменения объема 0.01 получается значение типа 0.01347653. Это неправильный объем, который и приводит к ошибке 131.

 

И все-таки дело в котировках.

Скачал тики с помощью программы Tick Data Suite -- все отлично!

Вот вопрос, что не так с котировками от QuantDataManager? Дело точно в каких-то настройках...

 
Ihor Herasko:

Размер минимального, максимального объема, а также шага изменения объема. Все это далеко не всегда правильно учитывается при расчетах. Скорее всего, котировки дают такие торговые сигналы, которые приводят к нестандартным (с точки зрения автора кода) размерам Stop Loss, Take Profit или каких-то других величин, на основе которых рассчитывается объем ордера. В итоге полученное значение не вписывается в нужные рамки. Вполне возможно, что при шаге изменения объема 0.01 получается значение типа 0.01347653. Это неправильный объем, который и приводит к ошибке 131.

Artyom Trishkin:

Например, плавающий спред.

Дело в том, что советник разрабатывается уже не первый год. Ничего подобного никогда не было, ни на тестах, ни на демо-счетах.

Очень мала вероятность того, что там какая-то такая хитрая ошибка, которая вылезла вот только так. Вся верификация данных там прописана.

 
skforex.ru:

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

Большинство современного ПО разрабатывается не один год. Тот же Windows, здешний МТ. И все равно в них находят ошибки. Идеала достичь невозможно, можно лишь приблизиться к нему.

Ошибка 131 - это ошибка торговой операции.