Как сделать торговлю с использованием Форекс советников прибыльной. Оптимизация форекс советников
Практическое пособие для начинающих по оптимизации советников в МТ4
Как и обещал в прошлой статье, сегодня рассмотрим практическое пособие по оптимизации советников в МТ4. Или, как выразился один читатель блога — «культуру общения с советниками» -)
Если уже работали со стратегиями, то понимаете, что одна и та же стратегия, в разное время и в разные дни, будет отрабатывать совершенно по-разному.
И, как догадываетесь, причина не в стратегии, а в поведение рынка, так как он, в свою очередь, зависит от множества факторов, как например, сессии: количество игроков, новости и пр...
А так как советники построены, на индикаторных и мартингейл стратегиях, они так же реагируют на подобные изменения, поскольку расширение или сужение ценовых колебаний тут же выводят из строя систему сопровождения открытых сделок.
Таким образом, насколько бы вы не были уверены в своем советнике, время от времени необходимо работать над настройками, а также делать более глобальный процесс — оптимизацию.
В этой статье вы узнаете о схеме проведения правильной оптимизации, а также на практике увидите, как этот несложный процесс происходит в терминале МТ4...
Оптимизация советника в МТ4
Схемы оптимизации советников
Если глубже вникнуть в тему оптимизации советников, то можно увидеть, что применяются всего три схемы, причем о двух из них многие трейдеры даже не догадываются -)
Под терминологией «схемы оптимизации» мы подразумеваем выборку исторических котировок для оптимизации и дальнейшего контроля. Итак, давайте вкратце рассмотрим эти схемы...
1. Оптимизация без форвард теста
Эта схема проведения оптимизации пользуется популярностью именно у начинающих, однако применять ее на практике не только нелогично, но и небезопасно для вашего депозита.
На практике: трейдер использующий этот подход, проводит оптимизацию советника в МТ4 на прошлом, историческом участке рынка, начиная с определённого дня и по сегодняшний день.
Увидев отличные результаты в тестере, этот трейдер тут же ставит полученные параметры в сет файл. Результат — он попадает в так называемую «ловушку оптимизации», когда параметры по факту, в режиме реального времени, оказываются нерабочими.
2. Оптимизация с форвард тестом
Оптимизация с форвард тестом — это оптимизация параметров эксперта в прошлом, с контролем полученных настроек в будущем.
На практике: трейдер распределяет исторический участок на две зоны. На первом участке он проводит оптимизацию, после чего проводит тестирование полученных параметров на втором историческом отрезке.
Если кривая доходности на втором участке после оптимизации совпадает с первым оптимизированным участком, настройки сохраняются и применяются на реальном счете.
Метод оптимизации с форвард тестом выдаст более качественные настройки, чем без форвард теста, но все же лучше пойти еще дальше, так как на кону стоит ваш депозит, сами понимаете -)
3. Оптимизация с форвард и бэк тестом
Третья схема оптимизации советника в какой-то мере схожа со второй и чаще всего применяется более профессиональными трейдерами.
Суть схемы заключается в том, что исторический участок распределяется на три части.
Сначала советник оптимизируется на среднем (втором), участке. После чего проводится тест на устойчивость полученных настроек на третьем участке (в будущем). Если параметры оптимизации и форвард теста совпадают, советник окончательно оптимизируется контрольным тестом, на первом участке рынка.
Воспользовавшись методом оптимизации советника в МТ4 с форвард тестом и бэк тестом вы получите наиболее устойчивые к рыночным изменениям настройки.
Практика оптимизации советников в МТ4
Прежде чем приступить к оптимизации эксперта необходимо убедится в полноте исторических котировок и если необходимо подгрузить их.
Для этого в верхней строке меню войдите в «Сервис» и выберите «Архив котировок». Затем найдите необходимую валютную пару и загрузите минутные котировки М1, все остальные таймфреймы загрузятся автоматически.
Затем запустите тестер стратегий нажатием на соответственный значок в верхней панели инструментов или нажмите Ctrl+R на клавиатуре.
Пример будет показываться на скальпинг советнике Romum, который я выкладывал здесь...
После того, как откроется окно тестера, нужно выставить следующие настройки:
- Слева, под графиком, обратите внимание, чтобы стояло значение «Советник»;
- Нажав на кнопку выпадающего меню справа, в той же строке, выберите необходимый советник, дважды кликнув на названии;
- Далее выбираем валютную пару на которой будет работать советник и таймфрейм;
- Ниже, метод тестирования «Все тики» и спред на выбранной валютной паре. Стоит иметь в виду, что у разных брокеров спреды разные, поэтому для работы рекомендую только брокера Forex4you...
- Еще ниже, необходимо выставить временной отрезок на котором будет оптимизироваться советник;
- Визуализацию рекомендую отключить, так как из-за неё процесс оптимизации может значительно затянуться;
- Обязательно включите «Оптимизацию».
После такой немудрённой подготовки, зайдите в настройки вашего советника, кликнув на кнопку «Свойства эксперта» и задайте критерии оптимизации.
Во вкладке «Тестирование» выставьте:
- Значение своего депозита;
- Позиции Long&Short оставьте, ведь наш советник открывает ордера, как в buy, так и в sell;
- Ниже, в «Оптимизация» выберите, какой именно параметр будете оптимизировать. Обычно в советнике оптимизируется Profit Factor, то есть количество убыточных сделок по отношению к прибыльным;
- Поставьте галочку (если не стоит), в поле «Генетический алгоритм», это также сбережет вам время на оптимизацию.
Далее переходим во вкладку «Входные параметры».
Здесь всё расписывать смысла нет, так как настройки Romum описаны в статье о нём, а какие параметры советника оптимизировать в первую очередь можете прочитать в прошлой статье...
Можете указать свои значения, а можете загрузить начальный сет, который есть в архиве с советником...
Далее укажите минимальное значение параметра в столбике «Старт» и максимальное, в столбике «Значение». Также для ускорения оптимизации можете задать «Шаг» с которым будут перебираться параметры тестером.
Обратите внимание, чтобы была галка возле параметра, который собираетесь оптимизировать, после чего нажмите «Ок» и закройте настройки.
Хотя есть еще вкладка «Оптимизация», но значениями в ней обычно никто не пользуется, так как реально они ничего не покажут -)
Всё, жмём на кнопку «Старт» и тестер начнет оптимизацию советника.
Скорость оптимизации зависит от количества параметров, которые вы задали, а также от мощности вашего компьютера. Поэтому процесс оптимизации может отнимать от нескольких минут до нескольких часов.
После проведения оптимизации можете посмотреть результаты с подобранными параметрами во вкладке «Результаты». В этой таблице находятся данные о прибыли, просадке, количестве сделок, ну и прибыльности, собственно -)
Для проведения форвард теста нажмите на любой из понравившихся результатов оптимизации дважды, после чего настройки активируются в эксперте автоматически.
В дальнейшем вы можете сохранять свои сеты через настройки эксперта.
Кроме того, если кликнуть на вкладку «График», то одним взглядом можно оценить прибыльность/убыточность проведенной оптимизации советника:
Также, с помощью графика проще сравнивать результаты форвард и бэк тестов.
Да, стоит учитывать, что оптимизация советника дело, хоть и не хитрое, но весьма времяёмкое. Поэтому её стоит делать в выходные, когда рынок не работает.
Более того, рекомендую делать оптимизацию каждую неделю. Хотя, решать вам...
И еще, несмотря на все меры, важно понимать — оптимизация советника в МТ4 не является той самой панацеей, которая спасёт вас от слива, на все 100 процентов.
Дело в том, что результаты в тестере могут отличатся от результатов торговли на реальном счете. Вызвано это в первую очередь тем, что тестер не знает что такое реквоты и сложность открытия позиций на новостях...
Тем не менее, оптимизация параметров советника, является эффективной превентивной мерой, поэтому пренебрегать ею ни в коем случае не стоит.
Понравилась статья? Расскажи друзьям!
sergmedvedev.ru
Как оптимизировать советник
Как правильно оптимизировать советник? - вопрос на который не существует пока точного ответа. Здесь я расскажу как я это делаю в metatrader 4. В статье я предполагаю что Вы уже знаете Как установить советник в metatrader 4
Для начала разберёмся с техническими тонкостями оптимизации. Оптимизация это подбор наилучших параметров работы советника. "Наилучших" - понятие расплывчатое, кто то скажет риск должен быть минимален, для кого то важнее прибыль в процентах, для других высокий профит фактор. Наилучшие параметры это уже вопрос больше религии, кто во что больше верит. Лично я верю что можно подобрать оптимум(самые наивыгоднейшие параметры) по множеству критериев сразу. Но платформа MT4 пока что в этом плане ограничена и позволяет оптимизировать только по одному критерию, т.е. если мы ставим оптимизировать чистую прибыль, то генетический алгоритм пытается подобрать такие параметры при которых прибыль максимально, не глядя на просадку, и прочие показатели. Это очень похоже на джина, который вроде формально выполняет желание, но всегда криво и не так как нужно. В оптимизации советников очень важно экспериментировать и набираться опыта, оптимизировать как можно больше систем, на разных интервалах, следить что меняется, как меняются лучшие параметры. Тогда с опытом Вы будете лучше разбираться в работоспособности и живучести советников.
Как оптимизировать советник в Metatrader 4
- 1. Естественно депозит. На этапе оптимизации депозит ставят максимально большим, чтобы депозит не стал ограничением в работе советника, пускай и убыточного, работу над ошибками в системе делают именно так.
- 2. Long/Short - параметр который разрешает открывать и BUY и SELL ордера. МТ4 позволяет запретить открытие любого из типов ордеров. Не рекомендую использовать этот параметр, т.к. в эксперте могут возникнуть логические ошибки. В любом эксперте!
- 3. Оптимизируемый показатель - то о чём я говорил выше. Если выставить balance то генетический алгоритм будет пытаться максимизировать баланс, не смотря на другие показатели. Из всех представленных показателей оптимизации я рекомендую использовать ProfitFactor, он наиболее оптимально для большинства систем подберёт параметры.
- 4. Вкл/выкл Генетический алгоритм. Генетический алгоритм ОЧЕНЬ существенно ускоряет поиск оптимальных параметров. Существует целый раздел в Машинном обучении, который поможет Вам подробно разобраться что же такое генетический алгоритм. Я лишь скажу что без него идёт прямой перебор параметров, который может затягиваться на года, в то время как генетический алогиртм ищет оптимальные параметры за 1-2 дня максимум.
Поехали дальше, вторая вкладка
- 1. Старт - с этого значения параметр начинает свой перебор в сочетании с другими параметрами. Т.е. если здесь напротив TP_1 выставить 100 то при оптимизации занчение TP_1=100 будет минимальным, никогда советник не выставит ниже 100 пунктов TP_1. Аналогично и для других параметров.
- 2. Шаг перебора параметра. Если напротив TP_1 шаг установить 20, то генетический алгоритм будет перебирать поочерёдно значения 100, затем 120, затем 140, затем 160, НО никогда не будет перебирать 145 или 167, шаг не позволит столь детализироваться в подборе параметров.
- 3. Стоп- это максимальное значение параметра в переборе. Если напротив TP_1 выставить 1000 то в переборах параметров TP_1 никогда не будет больше 1000, только меньше.
- 4. Ну и последнее - Должна стоять галочка(где показано стрелкой) чтобы этот параметр подбирался. Если галочка у параметра не стоит то параметр приравнивается к колонке "Значение"
Самый важный параметр - Шаг. Его правильное зн
tradexperts.ru
Оптимизация форекс советников - Мои статьи - Каталог статей
Особенности процедуры оптимизации советников Форекс.
Этап, который связан с оптимизацией советника Форекс, не менее важен, чем стадия, направленная на разработку торговой стратегии. Если рассматривать торговую платформу MetaTrader 4, то на ней возможно проведение одномерной оптимизации советников Форекс.
Иными словами, лучшие параметры будут подбираться путем анализа только одного показателя. В качестве этого показателя выступает либо просадка, либо прибыль, либо математическое ожидание.
Оптимизация представляет собой процедуру, которая основана на последовательных прогонах одного и того же торгового робота. При этом используются различные входные параметры и один и тот же массив данных. Фундаментальной целью оптимизации является подбор параметров, обеспечивающих максимальную эффективность советника.
Для проведения оптимизации в терминале MetaTrader 4 предусмотрены специальные встроенные средства, которые позволяют автоматизировать данную процедуру. Прежде чем начинать оптимизацию торгового робота, необходимо пройти этап настройки. Для этого выполняется следующий комплекс действий
- Выбирается советник и задаются его входные параметры.
- Выбирается финансовый инструмент и фиксируется его период.
- Анализируется и выбирается метод для моделирования баров.
- Задается величина временного диапазона для оптимизации (данный пункт не носит обязательного характера).
Все мероприятия, связанные с оптимизацией советников Форекс на платформе терминала MetaTrader 4, проводятся в специальном окне с названием «Тестер». В функционал терминала заложена возможность использования различных методов моделирования исторических данных. Применение исторических данных за более мелкие периоды позволяет анализировать колебания цен внутри баров. Например, если оптимизация робота производится на часовых данных, то динамика цен внутри бара может быть смоделирована на основе минутных данных. Таким образом, благодаря моделированию, массив исторических данных существенно приближается к реальным колебаниям цен, что обеспечивает более достоверную оптимизацию.
На стадии настройки оптимизации можно выбрать одну из трех методик, позволяющих смоделировать исторические данные. Моделирование массива исторических данных может производиться
На основе цен открытия (быстрый метод на сформировавшихся барах). Некоторые торговые роботы никак не связаны с особенностями внутрибарного моделирования. Данный тип советников ведет трейдинг на сформировавшихся барах. В качестве сигнала, который подтверждает полное формирование текущего ценового бара, выступает появление следующего бара. Таким образом, для оптимизации роботов, не учитывающих нюансы внутрибарного моделирования, используется методика, которая основана на ценах открытия.
На основе контрольных точек. В данном методе используется фрактальная интерполяция и ближайший таймфрейм. Метод, основанный на моделировании контрольных точек, направлен на грубую оценку советников, торгующих внутри бара. Для этого метода необходимы исторические данные ближайшего меньшего периода (таймфрейма). Как правило, имеющийся массив данных меньшего таймфрейма не полностью покрывает временной диапазон тестируемого таймфрейма. В той ситуации, когда отсутствуют данные меньшего таймфрейма, развитие бара основывается на ценах закрытия двенадцати предыдущих баров, то есть модель движения внутри бара повторяет модель движения цены за последние двенадцать месяцев. Это и называют фрактальной интерполяцией.
Как только фиксируется появление исторических данных меньшего таймфрейма, фрактальная интерполяция начинает применяться уже к этому массиву данных. Однако используются уже не двенадцать, а только шесть предыдущих баров, то есть происходит воспроизведение реально существующих цен Open, High, Low, Close и еще две сгенерированные цены. Такие показатели, как значение и местоположение этих двух сгенерированных цен, зависят от ценовой динамики на шести предыдущих барах.
На основе всех тиков (на основе фрактальной интерполяции каждого тика). Данный метод представляет собой инструмент, позволяющий наиболее точно провести моделирование движения цены внутри бара. Для генерации массива данных потиковый метод использует не только ближайший меньший таймфрейм, но и все доступные меньшие таймфреймы. В этом заключается основное отличие потикового метода от метода «контрольных точек». Сходство же состоит в том, что потиковый метод тоже применяет фрактальную генерацию контрольных точек, а генерация движения цены также производится с помощью фрактальной интерполяции. Встречаются ситуации, когда подряд генерируется несколько аналогичных тиков. В данном случае происходит фильтрация дублирующихся котировок и фиксируется объем последней из таких котировок.
При использовании данного метода необходимо понимать, что он характеризуется получением большого объема сгенерированных потиковых данных. Это может привести к снижению производительности операционной системы и, соответственно, уменьшению скорости оптимизации.
В отличие от тестирования, процедура, связанная с оптимизацией советника, отличается многократными прогонами с различными входными параметрами. Подобный подход необходим для расчета параметров торгового робота, которые обеспечат максимальное значение прибыли.
Сайт "Советники Форекс"
forexsovetniki.ru
Настройка и оптимизация прибыльного советника форекс
Для того, чтобы валютная торговля на Форекс стала приносить стабильный доход, необходим упорный труд, включающий в себя обучение, разработку своей или оптимизацию уже существующей форекс стратегии, наработку опыта и специфических навыков. Этот путь способен пройти не каждый, и большинство попыток быстро обогатиться на Форекс заканчиваются печально. Однако, не все трейдеры сдаются. Многие приходят к мысли бесполезности ручной торговли и становятся адептами торговли автоматической, доверяя ее форекс советникам.
Кажущаяся простота автоматической торговли
Торговля посредством форекс советников является альтернативой ручной торговле. С виду этот процесс не кажется каким-то сложным и на порядок проще, чем обычная торговля. Действительно, что сложного? Открыл депозит, установил торговый терминал MetaTrader 4, купил или скачал популярный форекс эксперт, подключил его – все, периодически снимай прибыль, наторгованную роботом.
Привлекательно? Более чем! Тем не менее, несмотря на положительные стороны, присущие автоматической торговле, большинство трейдеров теряют свой депозит и здесь. В чем же состоят главные причины неудач при торговле с использованием форекс экспертов?
Некачественный Форекс советник
Специальной статистики нет, однако что-то нигде не слышно, чтобы все трейдеры, использующие в торговле на Форекс советники, становились миллионерами. И это естественно. Все форекс эксперты попросту не могут быть прибыльными. Все советники написаны людьми по правилам, которые придумали люди. Около 95% форекс экспертов, которые находятся в свободном доступе в сети Интернет, попросту не в состоянии быть доходными на достаточно длинном временном интервале. Такие торговые роботы содержат в себе ошибки в алгоритме реализации форекс стратегии, нарушения правил манименджмента и прочее. Такие «помощники» практически со стопроцентной вероятностью приведут к потере денег.
Стоит отметить, что если форекс советник продается, это совершенно не значит, что он лучше бесплатного. Зачастую, платным торговым роботам присущи те же самые недостатки.
Маркетинговый ход и важность настроек
Даже качественный форекс советник, приносящий прибыль одному трейдеру, может слить депозит другому. Все дело в правильной настройке и оптимизации эксперта. Купив или скачав советник, трейдер, зачастую, даже не пытается вникать в алгоритм, по которому торгует советник, и сразу же запускает его в работу, не обращая внимания на параметры советника, понадеявшись на «добрых людей». Такое легкомыслие превращается для депозита в приговор.
Как правило, трейдер слишком доверяет рекламе. Увидев рекламу «Теперь я зарабатываю по 375 долларов в день» и поверив обещаниям быстрой прибыли мыслительные процессы в голове такого трейдера отключаются, вытесненные мечтами о скором богатстве. В результате, реклама о быстром заработке остается, а депозит исчезает.
В этой связи нужно обязательно разобраться в алгоритме торговли, форекс стратегии, которую использует советник, ее параметрах и характеристиках.
Крайне необходимо провести тестирование эксперта на исторических данных. Несмотря на то, что вы затратите на это определенное количество времени, вы узнаете, стоит ли заниматься дальнейшей настройкой робота под свои требования, или его место в мусорной корзине.
Оптимизация форекс советника
Оптимизация форекс эксперта – очень важный шаг в автоматической торговле. Некоторые трейдеры умудряются сливать депозит даже используя качественный и ранее настроенный советник. На этом этапе совершенно не стоит лениться, ибо каждая потраченная на оптимизацию робота минута сэкономит вам какое-то количество денег на вашем депозите. Чтобы достичь от оптимизации максимального эффекта, лучше всего проводить тестирование робота на каком-то одном таймфрейме, выбирая значения индикаторов, которые под него подходят. Не стоит забывать, что валютные пары ведут себя по-разному, поэтому для каждой из них будет свой набор настроек и параметров.
Имея правильно настроенный и оптимизированный качественный форекс советник, можно облегчить свою торговлю на рынке Форекс, автоматизировав его. Однако, получая стабильную прибыль при торговле с использованием форекс экспертов, стоит помнить, что торговый робот – это не Грааль, а всего лишь помощник, который периодически нуждается в корректировке настроек и оптимизации.
Полезные статьи по теме
fortrader.org
Работа с тестером стратегий MetaTrader4: оптимизация форекс советника
Мастер класс «Работа с тестером стратегий MetaTrader4″ — часть 5
Следующей возможностью тестера стратегий является оптимизация. Зачем это нужно? Представьте себе, что вам необходимо определить при каком значении параметра TakeProfit советник MACD Sample будет показывать наилучшие результаты. Причем диапазон интересующих вас значений велик – от 30 до 300 пунктов. Конечно, можно запустить 271 раз подряд тест, каждый раз меняя значение. Но есть другой путь.
Оптимизация параметров советника
Поставьте галочку возле надписи «Оптимизация» (предварительно убрав галочку возле «Визуализации»), а затем откройте окно свойств эксперта. Поставьте галочку слева от параметра TakeProfit. Это означает, что данный параметр должен изменяться с каждым новым проходом, в то время как все остальные будут оставаться неизменными. Теперь нужно указать диапазон значений, в котором будет изменяться выбранный параметр, а также шаг приращения. В графе «Старт» пишем значение 30, в столбце «Шаг» — 1, в колонке «Стоп» — 300. Таким образом, тестер стратегий сам произведет 271 тест подряд. На первом шаге TakeProfit будет равен 30, на втором 31, на третьем 32 и т.д. Если же в закладке «Тестирование» окна свойств эксперта (см. рис. 3) поставлена галочка «Генетический алгоритм», то реальных проходов может быть значительно меньше, что ускорит ход оптимизации, незначительно снижая точность результатов.
После нажатия кнопки «Старт» появятся новые закладки «Результаты оптимизации» и «График оптимизации». В обе закладки будут попадать только положительные результаты. Поэтому, если после оптимизации какого-либо советника закладки остались пустыми, значит, выбранный диапазон значений входных параметров не дает прибыли на выбранном участке истории.
Оптимизировать можно сразу несколько параметров. Для этого нужно поставить напротив интересующих входных параметров галочки и правильно заполнить поля «Старт», «Шаг» и «Стоп». Однако следует помнить, что чем больше параметров для оптимизации выбрано, тем дольше будет проходить сам процесс.
Результаты оптимизации можно сортировать по всем доступным показателям – прибыли, прибыльности, максимальной просадке, количеству сделок и матожиданию. Для этого нужно кликнуть левой клавишей мыши по заголовку соответствующего столбца. Сортировка производится в обоих направлениях – по уменьшению и по возрастанию. Внести параметры заинтересовавшего прохода оптимизации в окно свойств эксперта можно, выделив нужную строку с результатами и выбрав из контекстного меню «Установить входные параметры». Затем убрать все галочки, использующиеся при оптимизации, и совершить единичный проход тестирования. Результаты оптимизации тоже подлежат сохранению, точно также как и результаты обычного тестирования – выбираем пункт «Сохранить как отчет» в контекстном меню.
Еще одна закладка окна свойств советника, которую мы не рассмотрели, — это «Оптимизация» (см. рис. 6).
Рис. 6. Закладка «Оптимизация» окна свойств эксперта.
При использовании ограничений из этой закладки также можно ускорить процесс оптимизации. Пометив нужный параметр галочкой и, введя необходимое значение, можно заставить тестер прервать проход оптимизации, если достигнуто определенное значение. Например, располагая депозитом в $10000, мы не хотим, чтобы он уменьшался ниже значения в $5000. Тогда помечаем параметр «Минимальный баланс» галочкой и ставим значение 5000. В результате, все, даже прибыльные проходы, значение баланса которых опускалось ниже отметки 5000, будут исключены из выборки. Таким же образом можно ограничить оптимизацию по остальным приведенным параметрам.
Тестер стратегий – довольно удобный и быстрый способ для оценки стратегии и отладки советника. Но не стоит забывать, что это всего лишь моделирование ситуации и некоторые моменты могут сильно отличаться от реальной жизни. Поэтому, даже после получения «золотых гор» от тестера не спешите ставить советника на реальный счет. Потратьте еще как минимум месяц для проверки работы эксперта на демо-счете. И только в случае успешного тестирования на демо и при довольно точном совпадении с результатами тестов за тот же исторический период, можно пробовать осторожно выходить на реальный счет, желательно, на микро-Forex.
В дальнейшем мы еще вернемся к некоторым нюансам тестирования. Для этого необходимо освоить элементарнейшие азы программирования на MQL4, к чему мы и перейдем в следующем уроке, подробно разбирая код советника MACD Sample.
fortrader.org
Торгуем в минус? Оптимизация Forex советников — MMGPedia
Автоматизация торговой деятельности форекс-трейдеров последнее время стало очень популярной тенденцией. В интернете появилось огромное количество всевозможных forex-советников и экспертов, создатели которых на все лады расхваливают свое детище. Правда, при попытке применить наиболее раскрученные с точки зрения рекламной кампании советники, выясняется, что большинство из них представляют собой довольно сырые разработки, которые нуждаются в серьезной доводке.
В таких случаях принято вести речь об оптимизации форекс-советников. Что это такое и как можно решить данную проблему самостоятельно?
Что такое оптимизация советника
Оптимизация торгового forex-советника — это комплекс последовательных прогонов на архивных данных торговой платформы. Целью в этом случае ставится выявление системы параметров и настроек, при которых работа советника на forex будет давать наилучшие результаты с точки зрения прибыли и отсутствия значительных просадок.
Сразу же следует отметить, что не все опытные форекс трейдеры считают оптимизацию советников необходимым мероприятием. Мнение достаточно большой части пользователей сводится к тому, что оптимизация представляет собой элементарную подгонку под конкретную ситуацию, которая сложилась на рынке форекс в определенный момент времени.
Оптимизированная таким образом программа может давать хорошие результаты, но как только ситуация на рынке форекс изменится, выведенные эмпирическим путем настройки окажутся бесполезными, более того, могут повлечь за собой серьезные потери за счет неверно открытых позиций.
Однако в данном случае нашей задачей не является выяснение полезности такой процедуры, как оптимизация советника. Основная цель публикации – на конкретных примерах раскрыть механизм данного процесса, с помощью которого даже начинающий неопытный форекс-трейдер сможет соответствующим образом настроить своего автоматического помощника.
Оптимизатор терминала MetaTrader
Раньше, чтобы правильно оптимизировать торговые forex-советники, нужно было обладать недюжинным терпением и располагать огромным количеством свободного времени. Ведь для этого приходилось вручную подставлять в настройках советника определенные значения отдельных параметров, а затем тщательно анализировать полученные результаты.
Проблема также заключалась в том, что получить необходимую для анализа рынка форекс информацию, можно было только в реальном режиме времени. Таким образом, чтобы правильно оптимизировать forex-советник нужно было потратить от нескольких месяцев до года. Представляете, как обидно было в том случае, если оптимизируемый советник в итоге так и не выходил на заданный рубеж приемлемой прибыльности? В итоге, все потраченное на работу с ним время оказывалось просто выброшенным на помойку.
Но с появлением 4 и 5 версии торговых терминалов MetaTrader задача оптимизации значительно упростилась, а ее решение стало доступным даже для малоопытных новичков трейдинга на рынке форекс. Дело в том, что в указанных программах имеется специальная функция – оптимизатор forex-советников.
Коротко суть ее действия объяснить можно на таком простом примере. Пользователь вводит все необходимые настройки, после чего запускает процедуру «прогонки». Программа проверяет работу советника на архивных данных за год, после чего проводит анализ полученных результатов, самостоятельно выявляя наиболее полезные настройки, и, «отбраковывая» неправильные.
После этого, пользователь, может внести соответствующие правки и повторить процедуру оптимизации. Так можно действовать до тех пор, пока полученные по итогам прогонки на истории результаты не окажутся удовлетворительными со всех точек зрения. В этом случае процесс оптимизации можно считать завершенным.
Как выполнить оптимизацию
Теперь разберем общий пример, как сделать оптимизацию forex-советника с чисто технической точки зрения. Процедура эта довольно проста. Для начала необходимо открыть окно тестера стратегий. Для этого необходимо отыскать в верхней части окна терминала MetaTrader значок в виде лупы. Также можно воспользоваться меню «Сервис» на панели инструментов, или горячей клавишей F6.
В результате в нижней части терминала откроется окно, внешний вид которого приведен на рисунке. В нем необходимо выбрать название советника, который предполагается оптимизировать, валютную пару, на графике которой будет проводиться испытание, модель или способ тестирования, а также таймфрейм, то есть временной интервал. Спред рекомендуется не менять и оставлять в данный графе показатель, установленный по умолчанию.
Самый важный параметр – период тестирования, который задается в пределах «от» и «до». Здесь есть одна интересная особенность, которая заключается в том, что необходимо исключить последний отрезок длиной в 1/4 периода. То есть, если планируется проводить тестирование на архивных данных за год, то следует изъять котировки за последние 3 месяца. Это необходимо для того, чтобы в дальнейшем тестировать на них полученные в результате оптимизации настройки.
Еще одно обязательное условие качественной оптимизации – загрузка в терминал котировок из архива стороннего сервиса. Многие неопытные пользователи считают, что можно обойтись данными встроенного в терминал MetaTrader архива. Однако, при таком подходе не учитывается тот факт, что при работе с периодами больше 3-х месяцев часто случаются сбои, возникают погрешности, что негативно влияет на объективность полученных результатов. Поэтому лучше загружать котировки с одного из двух источников:
- от брокера Dukascopy с моделированием на уровне 99 % — более трудоемкий и продолжительный вариант;
- с MetaQuotes с моделированием 90 %, чего вполне достаточно для проведения качественной оптимизации.
Настройка параметров оптимизации
Настройка параметров оптимизации производится на специальной вкладке, которая открывается при клике на кнопке «свойства эксперта» в верхней части окна, открывшегося при запуске тестера советников.
В процессе оптимизации программа тестирует огромное количество параметров работы советника, определяя их оптимальные значения. Но чтобы инициировать более целеустремленный поиск, пользователь может задать конкретные параметры оптимизации. Делается это с помощью трех последних столбиков:
- старт – значение, с которого начинается тестирование, порог StopLoss, уровень TakeProfit и т.д.;
- шаг – величина, на которую будет изменяться тестируемый параметр для каждого нового испытания, пункты, %, периоды и т.д.;
- стоп – предельное значение, на котором испытание останавливается, может измеряться в пунктах, долларах, процентах и т.д.
По окончании процесса оптимизации, программа откроет окно, в котором будут отражены результаты проведенной проверки forex-советника.
4 | 627,08 | 18 | 27,50 | 34,84 | 185,75 | 11,97 |
2 | 440,64 | 20 | 5,36 | 22,03 | 185,21 | 11,91 |
3 | 320,23 | 12 | 5,02 | 26,69 | 232,00 | 21,79 |
1 | 299,84 | 17 | 2,93 | 17,64 | 204,68 | 16,40 |
К каждому варианту итоговых данных будут прикреплены настройки, с которыми они были получены. Их можно отсортировать по различным показателям:
- прибыльность;
- просадка в натуральном выражении;
- просадка, выраженная в % от размера депозита;
- количество сделок.
После этого пользователю остается только выбрать наиболее подходящий результат и кликнуть на соответствующей строке для автоматической загрузки сета настроек советника в нужную папку.
blog.mmgp.ru
Причины переоптимизации форекс советников
Здравствуйте, товарищи форекс трейдеры!
Довольно часто можно встретить печальные рассказы начинающего алготрейдера о том, как он нашел отличные сет файлы для советника, а, поставив их в работу на реальный счет, потерпел потери. И вроде бы делал все верно, даже форвард тестирование проводил, а все равно деньги потерял. Почему же так происходит? Как же так выходит, что отличные по результатам тестирования настройки «льют» при работе реал-тайм? Ситуация, подобная этой называется среди трейдеров переоптимизация или подстройка параметров. О ней и о том, как же ее избежать, мы сегодня и поговорим.
Что такое переоптимизация?
Переоптимизация, или подстройка – это неправильно выполненная оптимизация. С технической точки зрения чрезмерная оптимизация – это нахождение таких параметров системы, которые очень хорошо согласовываются с историческими данными, на которых проводилась оптимизация, но совершенно неэффективных на текущих и будущих рыночных данных. Простыми словами – это нахождение таких настроек, которые дают кучу бабок на истории, но сливают в реальном времени. Переоптимизацию можно определить только по результатам, которые советник дает в режиме реальной торговли. А точнее по несовпадению этих результатов с результатами тестов.
Нет ничего проще, чем описать реальные симптомы переоптимизированной торговой системы – реальные потери по счету. Конечно, потери есть у всех торговых систем, но у них есть и выигрыши, благодаря чему собственно эти системы и увеличивают счета своих владельцев. Но когда эти потери в короткий промежуток времени становятся очень большими, явно не похожими на то, что случалось с системой на истории, тут точно можно сказать о том, что с сетами что-то перемудрили.
При этом подстроенная система не обязательно сразу после установки начнет сливать, – есть немалая вероятность того, что система сначала некий короткий отрезок времени будет все же приносить прибыль, и только после этого начнется череда непрекращающихся убытков.
Еще один способ определить подстройку системы – сравнить среднегодовую доходность на периоде форварда с реальной. Она должна быть примерно такой же и если это не так, то вы имеете дело с переоптимизацией. Тем не менее, если набор настроек прошел форвард тест, то скорее всего он работоспособен. Работоспособный сет вполне может быть немного подстроенным, когда возникают небольшие расхождения в результатах реала и теста, но тем не менее он может долгое время все равно приносить прибыль.
Причины переоптимизации
Как я уже говорил, причины кроются в нарушении правил оптимизации. Из практики могу назвать шесть примеров таких нарушений:
- Слишком много правил и условий, ограничивающих число степеней свободы.
Слишком большое число ограничений приводит к неверным результатам. Если правила торговой системы отслеживают слишком много ценовых данных или если существует слишком мало сделок по сравнению с количеством правил, то результаты оптимизации могут быть ошибочными. Проще говоря – чем сложнее система, чем больше у нее правил и фильтров, тем больше вероятность подстройки. Не зря ведь все кому не лень рекомендуют при изготовлении собственной тс использовать как можно меньше фильтров, в идеале два-три.
- Слишком мала выборка данных, непрезентативный отрезок исторических данных для оптимизации.
Грубо говоря, например, в отрезок для оптимизации вошел только период трендового рынка, а период летнего флета выпал. Кроме того, рынок меняется часто из года в год, а также вообще на пустом, казалось бы, месте. Связано это может быть с некими глобальными процессами, происходящими внутри стран, валюты которых образуют рассматриваемую нами пару. Характер валютной пары подчас может смениться до неузнаваемости, вплоть до того, что стратегии, созданные под эти пары, перестают работать совсем.
- Ошибки в процессе создания самой системы.
Часто разработчик системы изначально закладывает в систему возможность переоптимизации. Вот пара таких возможностей:
— Поочередное добавление правил для наблюдения повышения эффективности и исключение неработающих правил. Например, добавление стохастика, затем добавление RSI, потом удаление еще какого-нибудь индикатора.
— Тестирование многих вариантов одного и того же правила. Например, вход в зону перекупленности/перепроданности и выход из нее.
В целях получения от советника максимальной эффективности вышеназванные приемы вполне оправданы, но стоит быть очень внимательным при доводке эксперта.
- Слишком маленькое количество совершенных сделок.
Я уже рассказывал вам, что такое стандартная ошибка и зачем она нужна. Чем больше было совершено сделок, тем меньше вероятность ошибки. Скорость торговли у всех систем разная, некоторые скальперы наберут 300 сделок по одной паре за месяц, а некоторые не наберут и 50 сделок за год. Поэтому также важно выбрать период оптимизации исходя и из «темперамента» советника.
- Неверная оценка результатов сета.
Хотя неверный выбор сета и не является прямой причиной переоптимизации, все же это распространенная причина неудач. Прежде всего, необходимо проводить анализ сделок сета. Прибыли и убытки должны быть распределены чем плавнее и равномернее, тем лучше. Ни в коем случае не должно быть единичных сделок, приносящих по 30% всей прибыли. Проигрышные сделки также должны быть распределены равномерно.
При оптимизации двух параметров мы получаем график оптимизации, подобный этому:
Чем более глубокий зеленый цвет, тем более прибыльны настройки. Всегда стоит выбирать из тех наборов параметров, которые кучкуются вместе, из тех параметров, которые окружены параметрами тех же цветов. В таком случае при несущественных изменениях рынка доходность эксперта не сильно изменится.
- Всплеск прибыли.
Это частный случай неверно выбранного участка для оптимизации. В данном случае по стечению обстоятельств на выбранном участке оптимизации рынок имеет максимально подходящие для советника условия. В результате получаются шикарные сеты, которые в реальном времени начинают лить. Либо наоборот, выбирается период с наихудшей для советника рыночной ситуацией, например, период затяжного флета для бота-трендовика. Оптимизация дает слабый результат и робот незаслуженно откладывается в архив.
- Чрезмерное сканирование.
Тут может быть два варианта. Первый – когда все настройки оптимизируются с очень маленьким шагом, нецелесообразным для оптимизации. Второй – когда нормальные прибыльные настройки допиливают опять же малым шагом с целью выжать максимум. Второй вариант – это нормально, первый же – приводит к переоптимизации просто потому, что тестер загонит все настройки в узкие диапазоны работоспособности, выйдя из которых советник начнет лить. А он обязательно из них выйдет, сразу, как только немного изменится текущий рынок.
Кто виноват и что делать?
Как видите, половина ошибок при оптимизации связана с неверным алгоритмом ее проведения и вторая половина с маленькой выборкой данных. Старайтесь не спешить и тщательно соблюдать технологию оптимизации советников. Никогда не жалейте куска истории под оптимизацию и не забывайте о форвард тесте (желательно еще и про бэквард-тест помнить) и тогда, надеюсь, вы избежите ловушек оптимизации и ваша алготорговля будет прибыльной и приятной.
С уважением, Дмитрий аkа SilentspecTradeLikeaPro.ru
tradelikeapro.ru