[Обсуждение] Тестирование/оптимизация советников: общие вопросы📌
От lucksis, 9 августа, 2011 в Общие вопросы
Цитатаrobinzon96 не флудите,
и не собирался.. было бы за что бороться..
я пользовал этого сова в тестере, и он ведет себя так как я описал.. >:dв понедельник воткну на демо Альпари - самому стало интересно
Уважаемый Старик, OII, в понедельник проверю на демо счете F4Y, аккаунтов у иных брокеров не имею (на что будет указывать работа советника на демо, иными словами в чем разница реального и демо счета)?
Уважаемый robinzon96, давайте все же попробуем запустить советника, после чего опубликую тесты и настройки. Повторюсь, интерес к роботам может быть не только из за их стабильности, но и способности переваливать отметку в 100%, несмотря на их короткую жизнь.
Уважаемый robinzon96, давайте все же попробуем запустить советника, после чего опубликую тесты и настройки. Повторюсь, интерес к роботам может быть не только из за их стабильности, но и способности переваливать отметку в 100%, несмотря на их короткую жизнь.
я извиняюсь - сразу не понял цель запуска сова, ну тормознул маненько.. >:dи, честно сказать, мне и в голову не приходило, что с таких советников можно что-то поиметь, хотя бы по инерции..
настройки и пары будут интересны.. а в понедельник, как и говорил, попробую Альпари, может ещё Робо..
ещё раз сори..
Уважаемый Старик, OII, в понедельник проверю на демо счете F4Y, аккаунтов у иных брокеров не имею (на что будет указывать работа советника на демо, иными словами в чем разница реального и демо счета)?
В тестере имитируется работа реал счета выбранного вами типа.
Поэтому крайне странно, что у вас не открываются/выставляются ордера на реале.
Причин этому может быть много - например, минимальный ордер на реале больше, чем вы пытаетесь открыть, или ошибка в ММ.
Хрен его знает что вы там не так делаете...
Для того, чтобы выявить что у вас за фигня и исключить неверно выбранный вами счет или неверно задаваемые для него настройки, первым делом надо проверить работает ли бот (кроме тестера) на любом другом счете в данном ДЦ (демо годится) и на одном-двух счетах в любом другом ДЦ (и там начальная проверка на демо годится).
И пофиг, что у вас нет хотя бы демо счета в другом ДЦ! :d
Откройте за 3 минуты - тоже ж нерешаемую проблему нашли!
Откройте - и проверьте, никто за вас это делать не будет. :)
На демо Альпари и F4Y, сделок нет, журнал ошибок не видит. В тестах сделки совершаются мгновенно и много. Если очевидных решений, у Вас не сложится, тему можно прекращать.
А сколько вы его крутили на демо-счету? Судя по коду, он и не должен каждые 5 мин сделки выдавать - ждет сигналов стохастиков с 3-х таймфреймов.
Код старый, сразу на вскидку что не понравилось - в функции установки ордеров OrderSend параметр проскальзывания Slippage - 0, ну и сразу в ней явно указываются СЛ и ТП - на ecn-счетах работать не будет. Да и пересчета 4-х на 5-ти знак нету.
На альпах демо сделки открывает, и как выше написали, для 5-знака надо увеличивать в 10 раз значения стопа и тейка.
Скиньте Ваши пары и настройки для разгона, интересно посмотреть.
На центовике Робо тоже открыл.
да, и у меня на Альпари тож заработал..
но, все равно, я думаю, что в таком виде это не помощник..
сделать бы его настраиваемым и добавить кое чего..
поменял 1 стохастик с М30 на Н1, прибыли не несёт, но и лить перестал..
Изменено 19 октября, 2015 пользователем robinzon96
Ребята, я в командировке, пишу с телефона, для разгона убираем Sl (путем 100 кратного увеличения), TP 4-5 пунктов, лот максимально большой. На таймфрейме м5 в тесте сделки открывал постоянно, жил от 3 до 9 дней. Депозит на разных промежутках времени выдавал от 130% до 670%. Извините за отсутствие.
Ребята, я в командировке, пишу с телефона, для разгона убираем Sl (путем 100 кратного увеличения), TP 4-5 пунктов, лот максимально большой. На таймфрейме м5 в тесте сделки открывал постоянно, жил от 3 до 9 дней. Депозит на разных промежутках времени выдавал от 130% до 670%. Извините за отсутствие.
:-o
ну для такой торговли и советник не нужен..
По какой паре тестировали? Что-то на евро и 100% не выжать в тестере.
По какой паре тестировали? Что-то на евро и 100% не выжать в тестере.
наговариваете вы... :-s
Ну с таким-то депо, при том что лот не максимальный использовался - это не совсем идея автора.
Ну с таким-то депо, при том что лот не максимальный использовался - это не совсем идея автора.
попробуйте по другому, хотя бы с начала года, посчитайте кол-во слитых депо, вычтите из прибыли, если таковая будет в итоге.. ещё минус потраченное время и нервы..
вообщем я пас.. н-е м-о-ё... >:d:dда и не правильно всё это...
надеюсь у Димы всё получится..
Изменено 23 октября, 2015 пользователем robinzon96
Здравствуйте, Коллеги!
Прежде всего хочу попросить модератора перенести тему, если она не соответствует содержанию раздела. Я решил разместить тему здесь, потому что меня интересует оптимизация "мартышек" в процессе их отладки.
Дело в том, что я сейчас пишу советника на основе системы "мартингейла". Возникла необходимость селекции оптимальных параметров в процессе отладки. Но это же относится и к существующим роботам. Как правильно оптимизировать (и тестировать) подобные советники в тестере стратегий?
Например мы запустили тестирование, начиная с 2013 года и робот у нас благополучно не сливает в течение 2 лет. Но ведь это не повод радоваться, поскольку советник сначала может разогнать депозит, а уже затем выдерживать существенные просадки. Но если того же робота запустить на последних трех месяцах, то он может быстро все слить.
Отсюда вопрос - какой период тестирования, начиная от сегодняшнего дня в прошлое, будет достаточным для оптимизации подобного рода советника. У меня есть соображения, но не хотелось бы в очередной раз изобретать велосипед. На форуме есть участники, которые собаку съели на экспертах. Хотелось бы услышать их мнение.
Заранее благодарю.
Изменено 10 ноября, 2015 пользователем lsv107
Отсюда вопрос - какой период тестирования, начиная от сегодняшнего дня в прошлое, будет достаточным для оптимизации подобного рода советника.
Лично я беру период тестов в 5-6 лет. оптимизирую с 2011 по середину 2014. С Форвардом и Беквардом гоняю с 2010 по 2015. Котировки 99% от Дукаскопи
Прогон делаю сразу со всеми параметрами сова. Оптимизирую генетику по Проценту максимальной просадки.
ТП, расстояние между ордерами делаю с минимальным шагом 5пп. Вообще нужно смотреть по конкретным настройкам. Шаг я стараюсь брать побольше, чтобы общее количество проходок было не более 10-15 млн (без генетики естественно).
Также я не ограничиваю максимальное количество колен в тестере, ибо с ним сетка может висеть в просадке месяцами, наращивая убыток до слива. Вообще, лучше в свободный параметр onTester через MQl дописать подсчет кол-во колен сетки, и те сеты, где оно меньше априори будут более стабильными.
Фильтрую результаты по количеству сделок и просадке. Лучшие результаты узнаю делением средней прибыли за год на просадку (должны быть не менее 0.4-0.5)
После форварда выжившие результаты я гоняю с небольшим изменение параметров, т.е. я увеличиваю спред, ТП, шаг на 5пп, множитель на 0.1 и смотрю, выжил бы этот сет. Останавливаюсь на варианте, который прошел с этими настройками и просадка по ним увеличилась не более чем 2 раз.
Риск на пару я ставлю 10-20%, высчитывая в ексельке в зависимости от просадки.
Например мы запустили тестирование, начиная с 2013 года и робот у нас благополучно не сливает в течение 2 лет. Но ведь это не повод радоваться, поскольку советник сначала может разогнать депозит, а уже затем выдерживать существенные просадки. Но если того же робота запустить на последних трех месяцах, то он может быстро все слить.
Просадка смотрится не по проценту, который рисует терминал, а по балансу просадки (большему из Максимальной и Абсолютной просадки), путем деления его на начальный баланс тестера.
Т.е. если у нас баланс 10 000, просадка 2000 (10%), то мы не смотрим на 10%, а берем 2000/10000*100 = 20%. ( это все при условии, что лот при тестировании был постоянным)
Прежде всего спасибо за развернутый ответ. Отличная идея со снятием ограничения колен и параллельным подсчетом. Век живи - век учись. =d>
ТП, расстояние между ордерами делаю с минимальным шагом 5пп. Вообще нужно смотреть по конкретным настройкам. Шаг я стараюсь брать побольше, чтобы общее количество проходок было не более 10-15 млн (без генетики естественно).
Скелет моего робота - стандартный мартин-сеточник. То есть такие параметры как ТП и шаг сетки в нем присутствуют. Мне немного не понятно 5пп - это ТП или все же расстояние между усредняющими ордерами? Если я правильно понял, то 5пп - это все-таки тейк-профит. Я прав?
Прежде всего спасибо за развернутый ответ. Отличная идея со снятием ограничения колен и параллельным подсчетом. Век живи - век учись. =d>
ТП, расстояние между ордерами делаю с минимальным шагом 5пп. Вообще нужно смотреть по конкретным настройкам. Шаг я стараюсь брать побольше, чтобы общее количество проходок было не более 10-15 млн (без генетики естественно).
Скелет моего робота - стандартный мартин-сеточник. То есть такие параметры как ТП и шаг сетки в нем присутствуют. Мне немного не понятно 5пп - это ТП или все же расстояние между усредняющими ордерами? Если я правильно понял, то 5пп - это все-таки тейк-профит. Я прав?
По опыту понял, что гонять параметры с малым шагом смысла маловато.
Если у ТП установлено начало 10пп, конец 50пп, и шаг 2пп, то это аж 20 вариантов прогона - слишком много для значения, которое все равно может быть не точным в связи с разными брокерами, спредом и т.п. неприятностями. Лично я устанавливаю шаг в 5пп. Тоже самое делаю и для шага сетки. Но это мое имхо, можно, конечно, шагать через каждый пункт.
Кстати, забыл добавить список рекомендуемых пар для мартина, составленный по итогам тестов 2х разных Мартингейлов:
GBPCAD, NZDCAD, EURGBP, AUDCAD, AUDNZD - основные
EURAUD, EURCAD - основные, но с более длинным безоткатом
EURUSD, NZDUSD, AUDUSD, USDCAD, EURJPY, AUDJPY - дополнительные и более неустойчивые. Без дополнительного входа по индюку (будь то RSI или Машки, Стохастик), либо с дополнительным увеличением шага сетки на N колене скорее всего сольют.
Все остальные пары у меня сливались.
Прежде всего спасибо за развернутый ответ. Отличная идея со снятием ограничения колен и параллельным подсчетом. Век живи - век учись. =d>
ТП, расстояние между ордерами делаю с минимальным шагом 5пп. Вообще нужно смотреть по конкретным настройкам. Шаг я стараюсь брать побольше, чтобы общее количество проходок было не более 10-15 млн (без генетики естественно).
Скелет моего робота - стандартный мартин-сеточник. То есть такие параметры как ТП и шаг сетки в нем присутствуют. Мне немного не понятно 5пп - это ТП или все же расстояние между усредняющими ордерами? Если я правильно понял, то 5пп - это все-таки тейк-профит. Я прав?
По опыту понял, что гонять параметры с малым шагом смысла маловато.
Если у ТП установлено начало 10пп, конец 50пп, и шаг 2пп, то это аж 20 вариантов прогона - слишком много для значения, которое все равно может быть не точным в связи с разными брокерами, спредом и т.п. неприятностями. Лично я устанавливаю шаг в 5пп. Тоже самое делаю и для шага сетки. Но это мое имхо, можно, конечно, шагать через каждый пункт.
Кстати, забыл добавить список рекомендуемых пар для мартина, составленный по итогам тестов 2х разных Мартингейлов:
GBPCAD, NZDCAD, EURGBP, AUDCAD, AUDNZD - основные
EURAUD, EURCAD - основные, но с более длинным безоткатом
EURUSD, NZDUSD, AUDUSD, USDCAD, EURJPY, AUDJPY - дополнительные и более неустойчивые. Без дополнительного входа по индюку (будь то RSI или Машки, Стохастик), либо с дополнительным увеличением шага сетки на N колене скорее всего сольют.
Все остальные пары у меня сливались.
Еще один немаловажный момент. Какой фактор восстановления для мартина-сеточника следует считать приемлемым? Из того, что я нарыл в сети следует, что ФВ должен быть не меньше 15, а лучше 20. Но на мой взгляд, для мартина этот фактор может быть и ниже. В другом источнике читал, что достаточно, чтобы ФВ был в районе 3.
Rever27, что подсказывает опыт?
Еще один немаловажный момент. Какой фактор восстановления для мартина-сеточника следует считать приемлемым? Из того, что я нарыл в сети следует, что ФВ должен быть не меньше 15, а лучше 20. Но на мой взгляд, для мартина этот фактор может быть и ниже. В другом источнике читал, что достаточно, чтобы ФВ был в районе 3.
Rever27, что подсказывает опыт?
Я не использую фактор восстановления, как я понимаю, его расчет нужно самому вписывать в код в единственный свободный слот результатов оптимизации onTester.
В Екселе я делаю похожий для себя коэффициент. Беру общий доход, делю его на количество месяцев теста *12. Результат делю на максимальную просадку.
К примеру:
Доход за весь период равен 20 000. Просадка = 3500. Период теста = 70 месяцев.
(20000/70*12) / 3500 = 0,98. По нему и сортирую полученные результаты. Значение больше 1 считаю очень хорошими. Для "дополнительных пар" он куда меньше. Менее 0,5 стараюсь даже не рассматривать.
Доход за весь период равен 20 000. Просадка = 3500. Период теста = 70 месяцев.
(20000/70*12) / 3500 = 0,98. По нему и сортирую полученные результаты. Значение больше 1 считаю очень хорошими. Для "дополнительных пар" он куда меньше. Менее 0,5 стараюсь даже не рассматривать.
Поясни, пожалуйста, что ты понимаешь в этой формуле под просадкой? 3500 - это максимальная просадка баланса, средств или общий убыток за время тестирования. Это важно.
Добавлено: 12-11-2015 13:50:59
Никак не могу определиться, какую именно просадку надо использовать в формуле.
STAT_GROSS_LOSS - Общий убыток, сумма всех убыточных (отрицательных) трейдов.
STAT_BALANCE_DD - Максимальная просадка баланса в деньгах. В процессе торговли баланс может испытать множество просадок, берется наибольшее значение.
STAT_BALANCE_DD_RELATIVE - Просадка баланса в деньгах, которая была зафиксирована в момент максимальной просадки баланса в процентах
STAT_EQUITY_DD - Максимальная просадка средств в деньгах. В процессе торговли средства могут испытать множество просадок, берется наибольшее значение.
STAT_EQUITY_DD_RELATIVE - Просадка средств в деньгах, которая была зафиксирована в момент максимальной просадки средств в процентах
Изменено 12 ноября, 2015 пользователем lsv107
Я не проверял, как называется значение этой переменной в MQL. Но логически - STAT_BALANCE_DD
lsv107 Я беру результат, который выдает терминал после оптимизации - максимальная просадка по деньгам за весь период теста. (большее из двух данных значений - максимальной и относительной просадки, чтобы наверняка)
Я не проверял, как называется значение этой переменной в MQL. Но логически - STAT_BALANCE_DD
На AUDNZD огромный спред: 29pips и StopLevel 60pips (LiteForex). По-моему на кроссах торговать сеточником, который предполагает малые тейки очень опасно. А если добиться стабильности алгоритма, то будет мало сделок и прибыли, что я и вижу из очета. Торгуя мартингейлом, мы в любом случае рискуем всем депозитом - "все или ничего". Поэтому и процент прибыли в идеале должен стремиться к проценту риска, а риск при таком методе колоссальный. Слив при торговле мартышками неизбежен, весь вопрос в том - превышает ли прибыль между сливами наши общие потери. Впрочем, это общеизвестно.
Rever27, нравится мне твой системный подход к исследованию советников. Вот написал для обработчика OnTester() рассчет фактора по твоей формуле. Все удобнее, чем екселе считать. Может пригодится (код в прикрепленном файле).
Изменено 13 ноября, 2015 пользователем lsv107
Для публикации сообщений создайте учётную запись или авторизуйтесь
Перейти к списку тем