MQL4 - automated forex trading   /  

Форум

Automated Trading Championship 2008

К списку тем  | << < 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 > >> Авторизуйтесь или зарегистрируйтесь, чтобы создать новую тему

avatar
2350
timbo 28.06.2008 02:56 
YuraZ писал (а) >>
Если не ошибаюсь на одном компе несколько советников - ресурсы разделяемые

Однозначно. Используется специальная облегчённая версия МТ- без графических прибамбасов. И сажают их пачками в каждый комп. Отсюда и постоянно ужесточающиеся требования про производительности - число участников растёт сильно быстрее, чем число компов. Хотя количество и качество компов тоже увеличивают/улучшают.


avatar
510
Red.Line 28.06.2008 13:50 
Эх, лана, +1. Присоединюсь к тем, кто буит представлять Россию. :) Если конешна проапрувят.

avatar
110
IlyaF 28.06.2008 14:22 
YuraZ писал (а) >>

Оптимизация идет каким образом ?

оптимизатор встроенный?

Как запускаете оптимизацию в выходные - ведь тики не приходят ? или эксперт зацикленный?
---

Организаторы в прошлом году сделали автоматическое тестирование, после загрузки Вами на сайт чемпионата...


будут тестовые прогоны вашего эксперта ориентир с 01 01 2008 по 20.08.2008 - в том году был такой диапазон

и если по времени эксперт не уложится в кажется 10 минут то он не будет принят а Вы не допущены

---

Если не ошибаюсь на одном компе несколько советников - ресурсы разделяемые

---

если эксперт будет сильно потреблять ресурсы в реальной работе - то обещают наказать

т е к примеру пройдет тесты а в реальной работе будет пожирать ресурсы

будте аккуратны

---

если успею тоже сделаю авто оптимизацию ...

важно уложиться в 10 минут при прогоне 01 01 2008 - 19 09 2008 на всех тиках

в любом случае IsTesting() лучше не юзать

Мой эксперт выполнен в виде 5 отдельных модулей, один из которых - оптимизатор (на конкурсе будет 4, ибо "вспомогательный" не нужен, он только ведёт статистику и рисует на графике то, что сделал). Этот модуль формирует таблицу вариантов параметров для оптимизации, потом каждый вариант тестирует, запуская модуль с сигнальной системой по генерируемым тикам, затем выбирает лучший вариант и устанавливает в качестве рабочего в главный управляющий модуль. Управляющий модуль зациклен, но не всегда. Когда нет необходимости (например, когда "стек" задач для торгового модуля пуст), он реагирует на приход тика. В пятницу вечером, перед закрытием он перестаёт возвращать управление терминалу и ожидает закрытия рынка (не загружая машину, потому что каждый цикл он спит по 5 секунд). Когда рынок закрыт, начинается оптимизация.


YuraZ, Вы написали, что организаторы будут сами тестировать эксперта. Мой эксперт, при условии того, что он каждую неделю выполняет "тяжёленькую" оптимизацию, разумеется, в 10 минут не уложится Значит мне нужно обойти это. Что значит Ваша фраза "в любом случае IsTesting() лучше не юзать"? Организаторы могут провести тест так, что терминал вернёт нашим экспертам IsTesting() == false, тем самым лишив нас возможности обойти неудобные нам тесты? Если так, то я запрещу эксперту делать "неугодные" действия на датах ДО чемпионата.


А что на самом чемпионате? Рядом с моим экспертом на компьютере будут ещё сопернические, но во время торгов он "не прихотлив" к ресурсам. Могут ли быть ко мне претензии со стороны организаторов за "грубое" использование компьютера в выходные? Я не думаю, что другие участники как-то используют время выходных в работе систем, значит ресурсы будут более-менее свободны. Согласитесь, вопрос важный, потому что мой советник никому не помешает работать, а может быть при этом наказан. Возможно ли, что организаторы выключают компьюторы на выходные? С одной стороны, это важно, потому что регулярная самоподстройка системы держит её эффективность на максимуме, с другой, без неё она тоже довольно хорошо и стабильно работает. Так что я хочу получить полную информацию обо всём этом для того, чтобы может быть вообще отказаться от оптимизатора.


avatar
2350
timbo 28.06.2008 15:07 
IlyaF писал (а) >>

YuraZ, Вы написали, что организаторы будут сами тестировать эксперта. Мой эксперт, при условии того, что он каждую неделю выполняет "тяжёленькую" оптимизацию, разумеется, в 10 минут не уложится Значит мне нужно обойти это. Что значит Ваша фраза "в любом случае IsTesting() лучше не юзать"? Организаторы могут провести тест так, что терминал вернёт нашим экспертам IsTesting() == false, тем самым лишив нас возможности обойти неудобные нам тесты? Если так, то я запрещу эксперту делать "неугодные" действия на датах ДО чемпионата.

В правилах сказано, что если поведение эксперта будет различным на реале и на тесте (т.е. обошёл неудобные тесты), то эксперт может быть дисквалифицирован.

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

Сделай чтобы оптимизация шла менее грубо, пусть даже дольше - у тебя целых два дня есть на выходных.

Компьютеры могут быть выключены/перезагружены в любое время. Никто не гарантирует, что они 24х7 он-лайн. Это называется "приближение к реальным условиям".



avatar
47
ds2 28.06.2008 15:25 
IlyaF писал (а) >>

Рядом с моим экспертом на компьютере будут ещё сопернические, но во время торгов он "не прихотлив" к ресурсам. Могут ли быть ко мне претензии со стороны организаторов за "грубое" использование компьютера в выходные?

Можно снизить пиковую загрузку процессора, если растянуть оптимизацию во времени...

Она же у тебя не ровно 2 суток идет? Поэтому можно наставить в код паузы, чтобы шла ровно 2 суток. Пиковая нагрузка на проц при этом снизится, и у организаторов будет меньше претензий.

Другой вариант - проводить оптимизацию "на ходу", растянув ее на все рабочие дни. Тогда пиковая нагрузка упадет еще в 5/2=2.5 раза.


avatar
5356
YuraZ 28.06.2008 16:32 
IlyaF писал (а) >>

Мой эксперт выполнен в виде 5 отдельных модулей, один из которых - оптимизатор (на конкурсе будет 4, ибо "вспомогательный" не нужен, он только ведёт статистику и рисует на графике то, что сделал). Этот модуль формирует таблицу вариантов параметров для оптимизации, потом каждый вариант тестирует, запуская модуль с сигнальной системой по генерируемым тикам, затем выбирает лучший вариант и устанавливает в качестве рабочего в главный управляющий модуль. Управляющий модуль зациклен, но не всегда. Когда нет необходимости (например, когда "стек" задач для торгового модуля пуст), он реагирует на приход тика. В пятницу вечером, перед закрытием он перестаёт возвращать управление терминалу и ожидает закрытия рынка (не загружая машину, потому что каждый цикл он спит по 5 секунд). Когда рынок закрыт, начинается оптимизация.

YuraZ, Вы написали, что организаторы будут сами тестировать эксперта. Мой эксперт, при условии того, что он каждую неделю выполняет "тяжёленькую" оптимизацию, разумеется, в 10 минут не уложится Значит мне нужно обойти это. Что значит Ваша фраза "в любом случае IsTesting() лучше не юзать"? Организаторы могут провести тест так, что терминал вернёт нашим экспертам 1 IsTesting() == false, тем самым лишив нас возможности обойти неудобныенам тесты? 2 Если так, то я запрещу эксперту делать "неугодные" действия на датах ДО чемпионата.

А что на самом чемпионате? Рядом с моим экспертом на компьютере будут ещё сопернические, но во время торгов он "не прихотлив" к ресурсам. Могут ли быть ко мне претензии со стороны организаторов за "грубое" использование компьютера в выходные? Я не думаю, что другие участники как-то используют время выходных в работе систем,3 значит ресурсы будут более-менее свободны. Согласитесь, вопрос важный, потому что мой советник никому не помешает работать, а может быть при этом наказан. Возможно ли, что организаторы выключают компьюторы на выходные? С одной стороны, это важно, потому что регулярная самоподстройка системы держит её эффективность на максимуме, с другой, без неё она тоже довольно хорошо и стабильно работает. Так что я хочу получить полную информацию обо всём этом для того, чтобы может быть вообще отказаться от оптимизатора.

в выходные нам никто не обещал работу но и не говорил что будут отключения

1 никто этого делать не будет, организатором при таком количестве желающих проще будет отказать тем экспертам которые не удовлетворяют требованиям

2 спросите это у организаторов ! ( что бы потом не пострадать )

3 зеленый - это наверно вопрос к организаторам

В любом случае думаю надо делать так что бы "не хитрить"

( допустим 600 - 1000 экспертов помесят на 20 машин - по 50 штук на машине !!! и каждый в выходные пустит оптимизацию - машина ляжет )

поэтому есть некие условности к примеру ТЕСТ В 10 минут... 8-10 месяцев

---

организаторам важно не иметь проблем с "трудными" экспертами потому условие что эксперт пробежит несколько месяцев в тесте за 10 минут по всем тикам

говорит о том что он "легкий... "

---

эксперты которые автоматом проводят оптимизацию - не прибегая к тестеру, в выходные: - им сложно будет пройти 10 минутные тесты если не прибегать к тонкостям

иными словами если эксперт впадает в цикл в пятницу на последних тиках например за час - два до закрытия торгов

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

тиков разумеется нет и на тестировании он не покажет эту загрузку ресурсов - но если все же он будет кушать ресурсы ОЧЕНЬ сильно

то видимо такой эксперт могут "попросить покинуть конкурс" - тут разъяснить смогу только организаторы

---

разумно предложил DS2 - растянуть оптимизацию по времени - или делать ее "пульсом" - тогда ваш эксперт не даст нагрузку

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

в любом случае следить за той нагрузкой какая возникает

---

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

т е идет торговля а в фоне постоянно идет оптимизация ( правда опять же уложиться в 10 минут при таком подходе мало реально )

---


avatar
110
IlyaF 28.06.2008 18:04 

timbo:


"В правилах сказано, что если поведение эксперта будет различным на реале и на тесте (т.е. обошёл неудобные тесты), то эксперт может быть дисквалифицирован.

Как это законно обойти? Сделать эксперт мультивалютным. Тестирование мультивалютных экспертов невозможно, и они проходят через отдельную дверь сбоку."

  • По какому формальному признаку эксперт признаётся мультивалютным? Как, сохранив работу на одном инструменте, получить этот статус?

"Сделай чтобы оптимизация шла менее грубо, пусть даже дольше - у тебя целых два дня есть на выходных.

Компьютеры могут быть выключены/перезагружены в любое время. Никто не гарантирует, что они 24х7 он-лайн. Это называется "приближение к реальным условиям"."

  • Если в любой момент на выходных работа может быть прервана, то это означает, что у меня нет этих выходных. Т.о. нужно оптимизацию провести максимально быстро :) Но как организатор будет оценивать загруженность ресурсов? Особенно на выходных, когда это, как бы и не требуется? timbo, спасибо за ответ!


ds2:


"Можно снизить пиковую загрузку процессора, если растянуть оптимизацию во времени...

Она же у тебя не ровно 2 суток идет? Поэтому можно наставить в код паузы, чтобы шла ровно 2 суток. Пиковая нагрузка на проц при этом снизится, и у организаторов будет меньше претензий."

  • Опять-таки, как организатор оценивает нагрузку? Я могу растянуть оптимизацию, но и это организатор может использовать как причину для дисквалификации. Короче, если я оставляю оптимизацию, я не прохожу либо на предварительном тесте, потому что в 10 минут не уложусь, либо в процессе чемпионата по пункту 3.7 "Кардинальные различия в поведении эксперта во время предварительной проверки и при работе в ходе Чемпионата повлекут за собой дисквалификацию.". ds2, спасибо за ответ!

"Другой вариант - проводить оптимизацию "на ходу", растянув ее на все рабочие дни. Тогда пиковая нагрузка упадет еще в 5/2=2.5 раза."

  • К сожалению, в MQL4 нет потоков. Так что я если в процессе начинаю что-то делать не по системе, я "теряю" рынок. Да даже если и сделать нормальную систему прерываний и переключений, на предварительном тесте мне не будут рады :)


YuraZ:


"спросите это у организаторов ! ( что бы потом не пострадать )"

  • Судя по названию темы и её размещению, как раз здесь и сейчас мне и должны ответить организаторы. На сайте чемпионата есть ссылка на сайт организатора. Там есть форум с одноимённой темой, в которой есть ссылка на статью о том, как же попасть на чемпионат. В статье написано следующее: "Если эксперт занимает существенные ресурсы процессора в ущерб работе экспертов других Участников, то это также приведет к дисквалификации. Квалификация Участника должна удовлетворять правилам экономного написания кода.". Однако в правилах на сайте чемпионата всё немного иначе: "Эксперты могут содержать ограничения по использованию вне Чемпионата, но должны удовлетворять следующим требованиям: ... и быть экономными по ресурсам процессора и памяти компьютера". Ну что мне, писать с вопросом на почту организатора, в то время, как для этого даже раздел создан в кабинетах участников ("обсуждение")? В статье написано следующее: "Раздел "Обсуждение" предназначен для переписки с модераторами и технических сообщений о предварительной проверке экспертов. Не забывайте заглядывать в него: вполне возможно, что Ваш эксперт не соответствует требованиям Правил и Вам придется внести в него срочные исправления." Но пока нельзя зарегистрироваться и получить доступ к "обсуждению", как задавать вопросы? Разве организаторы не просматривают эту тему?

"В любом случае думаю надо делать так что бы "не хитрить""

  • Категорически с Вами согласен! :) Я как раз в этом и заинтересован, сделать всё правильно, чтобы не иметь никаких проблем потом.
"эксперты которые автоматом проводят оптимизацию - не прибегая к тестеру, в выходные: - им сложно будет пройти 10 минутные тесты если не прибегать к тонкостям

иными словами если эксперт впадает в цикл в пятницу на последних тиках например за час - два до закрытия торгов

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

тиков разумеется нет и на тестировании он не покажет эту загрузку ресурсов - но если все же он будет кушать ресурсы ОЧЕНЬ сильно

то видимо такой эксперт могут "попросить покинуть конкурс" - тут разъяснить смогу только организаторы"

  • Дело в том, что тестер, показав последние пятничные тики, будет ждать, пока эксперт выполнит работу (когда start() завершится), а он как раз в конце пятницы перестаёт возвращать управление и начинает оптимизацию, в пятницу или субботу – неважно. Т.е. тестирование на каждой границе недель делает значительную задержку, вот почему я не могу уложиться в 10 минут.
"разумно предложил DS2 - растянуть оптимизацию по времени - или делать ее "пульсом" - тогда ваш эксперт не даст нагрузку

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

в любом случае следить за той нагрузкой какая возникает"

  • Чтобы знать, можно ли это вообще сделать, нужны комментарии организатора относительно критериев оценки загрузки. Может быть, они нормально отнесутся к "выходной пробежке", а может и нет. И если нет, то рассчитывать на выходные, да и вообще на оптимизатор, не приходится.

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

т е идет торговля а в фоне постоянно идет оптимизация ( правда опять же уложиться в 10 минут при таком подходе мало реально )"

  • На сколько мои познания MQL4 позволяют судить, это нереализуемо. Можно лишь переключениями сымитировать, но это несколько рискованно, т.к. контроль рыночной ситуации снизится.

avatar
5356
YuraZ 28.06.2008 18:52 
IlyaF писал (а) >>

Вы и сами можете погонять на время! возьмите ЛЮБОЙ промежуток 9-10-11 месяцев

static int itS ;

init()

{

///---- последний код в init

itS = GetTickCount();

}

start()

{

// гениальный код эксперата должен пройти тест не более 10 минут

}

deinit()

{

Print( " "+(GetTickCount()-itS)+" mc " ); // время работы в милисекундах далее зная что 1000мс есть секунда - делаем выводы в минутах

// т е не более 600000 мс что есть 10 минут

}



>>> По какому формальному признаку эксперт признаётся мультивалютным?

полагаю - если он торгует по двум парам!

>>>Как, сохранив работу на одном инструменте, получить этот статус?

полагаю не получится


возможно я ошибся!




avatar
110
IlyaF 28.06.2008 20:20 

Спасибо, я такое уже проделал. У меня год прогоняется меньше, чем за минуту :)

Торговля на ещё одной паре для меня не проблема, при отсутствии ограничения на количество одновременно открытых позиций. На одном инструменте система может открыть 2 позиции (не локи, кстати). Если нужна ещё пара, то я не укладываюсь в ограничение (3 позиции). Можно добавить другую тактику, но это либо профанация (т.е. легко выявляемая "хитрость"), либо что-то, в чём я не уверен. Очевидно, нужно подождать информации от организаторов. Если моя ситуация "преступна", тогда отключу оптимизатор :(


avatar
5356
YuraZ 28.06.2008 22:02 
IlyaF писал (а) >>

Спасибо, я такое уже проделал. У меня год прогоняется меньше, чем за минуту :)

Торговля на ещё одной паре для меня не проблема, при отсутствии ограничения на количество одновременно открытых позиций. На одном инструменте система может открыть 2 позиции (не локи, кстати). Если нужна ещё пара, то я не укладываюсь в ограничение (3 позиции). Можно добавить другую тактику, но это либо профанация (т.е. легко выявляемая "хитрость"), либо что-то, в чём я не уверен. Очевидно, нужно подождать информации от организаторов. Если моя ситуация "преступна", тогда отключу оптимизатор :(

великолепный результат!

проблема как я понял в оптимизации... если у вас прогон меньше минуты у вас целых 9 минут

и если оптимизатор вписывается в это время хотя бы на один прого я бы вставил оптимизацию хотя бы раз

я стараюсь оптимизировать параметры по ходу торговли пока вписываюссь меньше чем в 10 минут

уточните у организаторов - наксольно ЛЕГАЛЬНО можно пускать оптимизацию в выходные

К списку тем   | << < 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 > >>  

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий