Automated Trading Championship 2007: распространенные ошибки в экспертах

 

Автоматические проверки


В этом году мы сделали систему автоматических проверок закачанных экспертов с выдачей отчетов и уведомлениями авторов о результатах тестов. Такое решение повысило скорость и качество проверок. И первые несколько дней автоматических проверок экспертов показали, что многие Участники соревнования не проверяли своего эксперта перед его публикацией.


Как правильно нужно вести тестирование


Условия тестирования экспертов на терминале MetaTrader build 209 (скачать можно по ссылке http://www.metatrader4.com/files/mt4setup.exe):
  • Каждому Участнику выделены временные конкурсные счета (указаны в профайле), у которых выставлены все торговые условия Чемпионата. Чтобы подключиться к серверу demo.metaquotes.net:443, достаточно в окне авторизации вручную указать логин, пароль и имя сервера demo.metaquotes. net:443



  • После подключения к тестовому счету необходимо полностью загрузить минутную историю из HistoryCenter по нужным символам c 1999 года (все таймфреймы будут автоматически пересчитаны):




  • Тестировать нужно с 2007.01.01 по 2007.08.20 с использованием выбранного Участником символа и периода. На потиковом типе моделирования баров с включенной галочкой пересчета данных:



  • Максимально допустимое время тестового прогона - 5 минут (на современных Xeon, AMD X2). Если эксперт тратит больше времени, то он не проходит проверок из-за чрезмерного потребления ресурсов.

  • После прогона нужно обязательно проверять все логи в поисках торговых ошибок. Наличие любой (абсолютно любой!) торговой ошибки в тесте не позволит эксперту принять участие в Чемпионате. К торговым ошибкам не относятся сетевые проблемы, которые могут возникать во время проведения Чемпионата.

  • Если эксперт завершает работу по маржин колу (сообщение об остановке по Stop Out), то эксперт не будет допущен к соревнованию.


Стандартные ошибки в экспертах


В первую очередь мы проверяем результаты всех торговых операций. Вот список наиболее часто встречающихся ошибок:
  • OrderSend error 130 (ERR_INVALID_STOPS) - неправильные или слишком близко расположенные стопы.

  • OrderSend error 131 (ERR_INVALID_TRADE_VOLUME) - неправильный объем. Нарушено условие объемов от 0.1 до 5.0 с шагом 0.1

  • OrderSend error 134 (ERR_NOT_ENOUGH_MONEY) - недостаточно денег для совершения торговой операции

  • OrderSend error 148 (ERR_TRADE_TOO_MANY_ORDERS) - количество открытых и отложенных ордеров достигло предела, установленного брокером. Прямое нарушение условий Чемпионата - не более 3 открытых ордеров.

  • OrderXXXX error 4051 (ERR_INVALID_FUNCTION_PARAMETER_VALUE) - недопустимое значение параметра функции

  • OrderModify error 1 (ERR_NO_RESULT) - попытка модифицировать ордер неизменными значениями (например, выставить стоплосс в тоже значение, что и было раньше). Указывает на неаккуратное программирование.

  • zero divide - ошибка деления на ноль из-за небрежного программирования.

По Правилам ATC2007, уровень маржинкола равен 50%. Но было полной неожиданностью увидеть десятки экспертов, заканчивающих свою работу по маржинколу (stopped because of Stop Out). Эксперты, кто не смог пройти тестирование на промежутке с 2007.01.01 по 2007.08.20, не будут допущены до участия в соревновании.


Мультивалютные эксперты


Мультивалютные эксперты не всегда могут быть адекватно проверены в тестере стратегий МетаТрейдера и зачастую выдают следующую ошибку:
  • OrderSend error 4106 (ERR_UNKNOWN_SYMBOL) - неизвестный символ
Эта ошибка не является фатальной и на нее можно не обращать внимание. Мы не требуем успешного прохождения тестов мультивалютных экспертов, если нет других ошибок. Конечно же, эти эксперты должны обязательно соблюдать все Правила.

Участник должен явно указать в описании своего эксперта, что он мультивалютный. Так как эксперт не будет гарантированно протестирован нами, то автор должен самостоятельно убедиться в его работоспособности. Финальную приемку мультивалютных экспертов мы будем проводить после 21 сентября вручную. К сожалению, при обнаружении ошибок после 21 сентября, мультивалютного эксперта уже нельзя будет обновить.


Чрезмерное потребление ресурсов компьютера


Automated Trading Championship 2007 проводится не только ради демонстрации успешных торговых стратегий, но и для показа эффективных программных решений. Это означает, что эксперт должен быть хорошо и эффективно/экономично написан. На каждом из серверов в конфигурации Dual Xeon RAM 4Gb будет запущено около 30 терминалов с экспертами. Если какой-то из экспертов начнет потреблять чрезмерное количество ресурсов (процессор, оперативная и дисковая память) и явно мешать работе остальных экспертов, то он будет дисквалифицирован.

Для автоматических тестов мы установили лимит на прохождение теста в 5 минут. Если эксперт не успевает пройти тест с 2007.01.01 по 2007.08.20 за это время, то он принудительно останавливается с указанием причины: expert takes too long time (more than 5 minutes). К сожалению, несколько десятков экспертов не прошли тестов именно из-за чрезмерного потребления ресурсов.

Просьба всем Участникам проверить свои профайлы, ознакомиться с замечаниями и внести изменения в код своих экспертов.
 

Уважаемые организаторы!

Можно попросить дать точное определение мультивалютного эксперта? Я сделал поиск по сайту по словам "мультивалютный эксперт". В результате в документации ничего найдено не было, а на остальных страницах (в основном с форума по чемпионату) определения тоже не было. Я примерно догадываюсь, что такое мультивалютный эксперт, но мне нужно и точное определение.

 

Почему при достижении Stop Out эксперт не допускается к Чемпионату?

(Ко мне это не относится пока)

Организаторы отвечали, что на чемпионате после Stop Out эксперт остаётся в игре, но с меньшим депозитом.

Почему не использовать этот принцип и для проверки экспертов?

 
Aleksey24:

Почему при достижении Stop Out эксперт не допускается к Чемпионату?

(Ко мне это не относится пока)

Организаторы отвечали, что на чемпионате после Stop Out эксперт остаётся в игре, но с меньшим депозитом.

Почему не использовать этот принцип и для проверки экспертов?

Наша главная задача перед стартом - отсеять заведомо плохих экспертов.

Пока только ~25 процентов опубликованных экспертов успешно прошли автоматические тесты, а у остальных ошибки. Это поистине обескураживающий результат.
 
Martes:

Уважаемые организаторы!

Можно попросить дать точное определение мультивалютного эксперта? Я сделал поиск по сайту по словам "мультивалютный эксперт". В результате в документации ничего найдено не было, а на остальных страницах (в основном с форума по чемпионату) определения тоже не было. Я примерно догадываюсь, что такое мультивалютный эксперт, но мне нужно и точное определение.

Мультивалютный эксперт тот, кто открывает торговые позиции по другим инструментам, не считая того символа, к которому он прикреплен. Любой эксперт может обращаться за информацией к графикам и параметрам других символов, но из-за этого он не считается мультивалютным.
 

Уважаемый Ренат Рашидович!

У меня мультивалютный эксперт при тестировании занимает 5 минут 11 секунд.

Вы пишете, что при тестировании на ошибки типа "OrderSend ERROR 4106" можно не обращать внимания.

Советник использует 9 пар валют и при тесте на одной из них, восемь остальных генерируют эту ошибку.

В результате имеем за период 01.01.2007 - 20.08.2007 на GBPUSD всего 35 сделок, а лог-файл весит 96 680 Кб

и почти все записи - это ошибка "неизвестный символ".

Советник тестируется на конкурсном счете, а также и на реальном счете.

Явных торговых ошибок пока не обнаружено.

ВОПРОС: Является ли ограничение 5 минут корректным для МУЛЬТИВАЛЮТНОГО советника?

 

Тестирование советника в одновалютном режиме на моем компьютере заняло 59 секунд (размер лог-файла 23 Кб).

Тестирование в мультивалютном режиме - 13 минут (лог-файл 96 680 Кб).

 
Referent:

ВОПРОС: Является ли ограничение 5 минут корректным для такого советника?

А почему Вы думаете, что ограничение некорректно? Многократно писалось - лимит 5 минут для любых экспертов.

Кстати, лог-файл в 100 мегабайт подтверждает чрезмерное потребление ресурсов. О чем явно написано в правилах и в первом посте этой ветки.
 

Но все записи этого лог-файла - это "OrderSend ERROR 4106". Как вы писали выше - это не фатальная ошибка.

Это не есть "чрезмерное потребление ресурсов".

 
Referent:

Но все записи этого лог-файла - это "OrderSend ERROR 4106". Как вы писали выше - это не фатальная ошибка.

Это не есть "чрезмерное потребление ресурсов".

Оставьте до 21 сентября своего эксперта, который не укладывается в 5 минут и посмотрите на результат.

У меня создается впечатление, что результат в 25% успешного прохождения простейшего теста - это закономерность.
Или авторы не читают правил, или это не их эксперты или они живут в своем мире по своим правилам...
 
Renat:

У меня создается впечатление, что результат в 25% успешного прохождения простейшего теста - это закономерность.
Или авторы не читают правил, или это не их эксперты или они живут в своем мире по своим правилам...


Просто нужно акцентировать на этой пояснялке побольше внимания.

А заодно большими жирными буквами написать КОНКРЕТНЫЕ шаги и условия приёма.

Такими простыми словами чтобы было понятно даже доярке, так сказать!

Принцип 90/10 проявляется во всех областях жизнедеятельности.

(90% денег у 10% населения, 90% ума у 10% населения, и т.д.)