Что такое оптимизация советника или как увеличить эффективность торгового эксперта. Как научить советник прибыльно торговать на рынке Форекс? Форекс мт4 оптимизация по количеству прибыльных ордеров

Вклады

И пишут, что он успешно работает. В чем, впрочем, я и не сомневался -)

Но, так как я дал актуальные на момент публикации настройки только для депозитов в 100$ и 500$, а также конкретно для шести валютных пар, то стали возникать вопросы, типа — какие нужны настройки для других сумм депозитов?

Вопросы вопросами, но реальная проблема кроется в том, что задающие их, на самом деле, не понимают о чем спрашивают. Ведь дело не столько в сумме депо, сколько в актуальности настроек для рынка, в данный момент.

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

Сегодня рассмотрим настройки форекс советников, нуждающиеся в оптимизации , а в следующей статье будет практическое руководство по оптимизации советников в МТ4...

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

Безусловно, все кто работают с роботами, знакомы с тезисом, что все советники рано или поздно сливают депозит. Конечно, в основном громче всех об этом кричат «трейдеры», которые ожидали, что советник, как принтер, будет печатать им деньги пачками! -)

Но, на самом деле, вряд ли кто-то из них понимает, что слива в 90% случаев виновен не советник, а их непосредственная халатность. Фраза «поставил и забыл, а советник заработает» — это не более чем маркетинговый ход продавцов советников.

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

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

Грубо говоря, если цена длительное время в день проходила по 100-200 пунктов, создавая широкие волны, не факт что в обозримом будущем она будет в день проходить 50-100 пунктов. Следовательно, ширина тренда и канал флета значительно сократятся.

Подобные изменения на рынке происходят довольно часто, но знают о них и замечают, лишь практикующие трейдеры.

Исходя из вышесказанного, думаю понятно, что «поставил и забыл», естественно приведет к слитию депозита, рано или поздно? Да, если ваш советник ушел в просадку или начал постепенно сливать депозит, то это уже сигнал — необходимо проводить оптимизацию параметров.

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

Многие трейдеры (которые знают советники нужно настраивать), допускают одну огромнейшую ошибку — проводят оптимизацию всех без исключения параметров. На практике подобная оптимизация приводит к полному изменению логики открытия ордеров, а как следствие, полное отклонение от первоначальной стратегии.

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

Оптимизация тейк профита и стоп лосса

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

То есть, восходящий или нисходящий тренд, флет (боковое движение цены), и коррекция, как были все существование рынка Форекс, так и будут всегда.

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

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

Кстати, разработчики и оптимизаторы пытаются обойти эту проблему, рекомендуя вообще не выставлять stop loss в параметрах советников. Но, как показывает практика, это совсем не панация!

Но да, именно эти изменения рынка чаще всего приводят к убыткам, поэтому в советниках стоп лосс и тейк профит (), следует оптимизировать в первую очередь.

Оптимизация трейлинг стопа

Оптимизация (Trailing Stop), а именно — функции перетягивания стоп приказа следом за ценой, оптимизируется ровно по той же причине, что и предыдущие параметры, так как основной причиной преждевременного срабатывания стоп лосса, является опять таки, волатильность рынка.

Ведь цена практически никогда не движется четко в одном заданном направлении. На её пути все время встречаются откаты (коррекция), вызванные высокой волатильностью.

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

Следовательно, оптимизация и этого параметра в советнике является также первоочередной.

Оптимизация параметров Мартингейла, усреднения, сетки

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

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

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

Оптимизация фильтра

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

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

Сигнальный индикатор, на основе которого советник открывает сделку — это самый главный элемент стратегии советника.

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

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

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

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

В рассмотрим, как правильно оптимизировать советник, а также распространенные методы оптимизации советников Форекс в МТ4 .

Сегодня рассмотрим вопросы тестирования и оптимизации советников в торговом терминале МТ4.

Откроется тестер стратегий в котором мы и будем производить тестирование нашего советника Ilan16c_PipStepExponent_MFI_lock.

В самой верхней левой вкладке тестера стратегий выбираем «Советник».

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

Во вкладке ниже выбираем символ — валютную пару, по которой хотим протестировать советника. Пусть у нас будет USDJPY.

Выбираем модель тестирования — выбираем наиболее точный метод «Все тики». «Контрольные точки» и «По ценам открытия» — это модели, которые пригодны в большей степени только для беглого анализа работы эксперта.

Ставим галочку на «Использовать дату» — устанавливаем интервал. Пусть у нас будет интервал с начала 2015 года и до 2015.11.23.

Следующий пункт «Визуализация».

Можете ставить галочку на визуализации, а можете и не ставить. Галочка на визуализации означает то, что Вы увидите прямо на графике весь процесс тестирования советника на выбранном интервале истории.

Скорость тестирования ставим на максимум — передвигаем ползунок до упора вправо.

Также доступны кнопки «Пауза/Плей» и «Пропустить до».

Переносим свой взгляд в тестере вправо.

Делаем выбор временного периода — на котором будем производить тестирование робота. Пусть у нас будет M5.

Теперь давайте откроем настройки советника — нажимаем «Свойства эксперта».

Тут мы видим стандартные настройки советника Ilan16c_PipStepExponent_MFI_lock — с ними и потестируем. Вы можете изменить настройки эксперта как захотите и уже потом его протестировать. Любой советник можно тестировать неограниченное количество раз и .

На вкладке «Тестирование» можно выбрать размер депозита для тестирования и его валюту, а также указать какие позиции открывать: покупки и продажи, только покупки или только продажи.

Пусть депозит начальный у нас будет 10000 USD, а позиции: покупки и продажи (Long & Short) — так всегда в стандарте в МТ4 должно быть.

Внимание: для того чтобы протестировать советника на приличной истории с высоким качеством моделирования нам нужно загрузить котировки по используемому в тестах символу. В нашем случае нам необходимо загрузить котировки по USDJPY.

Этот процесс пригодится и для оптимизации торгового эксперта. Архив котировок по какому-либо инструменту нужно закачать всего один раз.

Как загрузить архив котировок в MT4?

В самом верхнем меню терминала нажимаем «Сервис» и далее «Архив котировок». Или просто жмём F2.

Откроется окно с архивами котировок по доступным инструментам.

Ищем в списке наш символ (нашу валютную пару) USDJPY и кликаем по её названию двойным щелчком мышки, а затем кликаем двойным щелчком мышки на «1 Минута».

Нажимаем кнопку «Загрузить». Начнётся процесс закачки всех котировок по USDJPY — для всех таймфреймов.

Всё — все котировки по USDJPY закачены — теперь можно качественно тестировать и оптимизировать советников на всех тиках.

Закрываем это окно и пробуем протестировать наш советник Ilan16c_PipStepExponent_MFI_lock — нажимаем кнопку «Старт».

Подгружаются котировки из архива котировок.

Что в итоге? Слив всего депозита .

Как видно, стандартные настройки нам явно не подходят — прийдётся оптимизировать данного советника.

Примечание: можно сохранить на свой компьютер любой отчёт — заходим в подвкладку тестера стратегий «Отчет», где у нас отображаются все данные о пройденном тесте, и кликаем в этом окне правой кнопкой мышки, а затем «Сохранить как отчет» — отчёт будет сохранён в формате HTML.

Нажимаем «Свойства эксперта» и ставим галочки напротив тех параметров, которые будут принимать участие в оптимизации — поставим галочки на более значимых для нас параметрах.

Также, проставляем напротив параметров с галочками их «Старты», «Шаги» и «Стопы» — простыми словами, лимит значений от и до с шагом.

На вкладке «Тестирование» можно выбрать размер и валюту депозита, а также указать типы открываемых позиций: покупки и продажи, только покупки или только продажи.

Оптимизируемый параметр — некий показатель, значение которого определяет качество тестируемого набора входных параметров. Чем больше значение критерия оптимизации, тем лучше оценивается результат тестирования с данным набором параметров. Доступны следующие параметры для оптимизации:

— Balance: показателем оптимизированности является максимальное значение баланса;
— Profit Factor: показателем является максимальное значение фактора прибыльности;
— Expected Payoff: показателем является максимальное значение математического ожидания выигрыша;
— Maximal Drawdown: показателем является минимальное значение просадки;
— Drawdown Percent: показателем является минимальное значение относительной просадки (в процентах);
— Custom: при выборе данного параметра в качестве критерия оптимизации будет учитываться значение функции OnTester() в советнике. Данный параметр позволяет пользователю использовать любой собственный показатель для оптимизации.

Галочка напротив генетического алгоритма — рекомендуется оставить с поставленной галочкой. Если галочки нет, то обязательно поставьте её. Если галочку не поставить, Вы будете ждать вечно пока советник прооптимизируется, так как будут перебираться абсолютно все комбинации входных параметров эксперта.

Вкладка «Оптимизация». Она позволяет управлять ограничениями во время оптимизации. Если в процессе отдельного прогона будет достигнуто любое из условий, данный прогон советника остановится. Оптимизация продолжится со следующего прогона.

Чтобы включить ограничивающее условие, необходимо выставить соответствующий флажок слева от него. Двойным кликом левой кнопки мышки в поле «Значение» можно изменить имеющийся параметр, после ввода нового значения нажмите клавишу «Enter».

К ограничивающим параметрам относятся:

Минимальный баланс: минимальное значение баланса в валюте депозита;
— Максимальная прибыль: максимальная прибыль в валюте депозита;
— Минимальный уровень маржи %: минимальный уровень маржи в процентах;
— Максимальная просадка %: максимальная просадка в процентах;
— Непрерывный убыток: максимальный суммарный убыток в одной серии. Убыточной серией называются несколько следующих подряд убыточных сделок;
— Непрерывное количество убыточных сделок: максимальное количество убыточных сделок в одной серии;
— Непрерывный выигрыш: максимальная суммарная прибыль в одной серии. Прибыльной серией называются несколько следующих подряд прибыльных сделок;
— Непрерывное количество прибыльных сделок: максимальное количество прибыльных сделок в одной серии.

После всех изменений нажимаем на кнопку «ОК».

Ставим галочку на «Оптимизация» и нажимаем «Старт».

Пошёл процесс оптимизации — как видно из скриншота, будет 10 496 проходов, с временем оптимизации почти 175 часов . Но мы столько ждать то не будем — как только мы увидим отличный вариант/варианты (например, с солидной прибылью и приемлемой просадкой) мы можем остановить оптимизатор.

Открываем вкладку «Результаты оптимизации» и наблюдаем за процессом. Прогоны будут выстраиваться вертикально в ряд. Вы можете отсортировать любую ячейку — нажмите левой кнопкой мышки на заголовок нужной ячейки и будет произведена сортировка по возрастанию значений сверху вниз, нажмите по заголовку ещё раз и будет сортировка по убыванию значений сверху вниз.

Думаю 10 положительных проходов оптимизатора будет достаточно для примера. Останавливаем оптимизатор — вкладка «Настройки», кнопка «Стоп».

Итак, что мы видим? У нас есть несколько хороших проходов, но самый лучший из них самый верхний — самая высокая прибыль и самая маленькая просадка из всех 10 проходов. Эти настройки мы возьмём.

Настройки в советник из оптимизатора можно внедрить двумя способами: кликнуть по нужному проходу двойным щелчком мышки (левой кнопкой) либо нажать на нужный проход правой кнопкой мышки и далее «Установить входные параметры».

Помните наш советник слил весь депозит? Ну а теперь нажимаем кнопку «Старт» и тестируем советник с новыми оптимизированными настройками.

Здорово, правда? Отличные оказались настройки .

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

Выбираем куда будем сохранять файл и придумываем ему название, затем нажимаем кнопку «Сохранить». В данном случае файл сохранится на рабочем столе.

Чтобы внедрить какой-либо файл с настройками в советник в тестере стратегий, нажмите на кнопку «Свойства эксперта» и далее «Загрузить» — укажите путь к файлу, выберите нужный файл мышкой и нажмите «Открыть». Настройки будут интегрированы в советник — после этого не забудьте нажать на кнопку «ОК» в свойствах эксперта.

Результаты данного оптимизационного тестирования и файл настроек вложены в архив советника.

Теперь Вы знаете как тестировать советника и как грамотно его оптимизировать. Успехов!

Как правильно оптимизировать советник? - вопрос на который не существует пока точного ответа. Здесь я расскажу как я это делаю в metatrader 4. В статье я предполагаю что Вы уже знаете

Для начала разберёмся с техническими тонкостями оптимизации. Оптимизация это подбор наилучших параметров работы советника. "Наилучших" - понятие расплывчатое, кто то скажет риск должен быть минимален, для кого то важнее прибыль в процентах, для других высокий профит фактор. Наилучшие параметры это уже вопрос больше религии, кто во что больше верит. Лично я верю что можно подобрать оптимум(самые наивыгоднейшие параметры) по множеству критериев сразу. Но платформа MT4 пока что в этом плане ограничена и позволяет оптимизировать только по одному критерию, т.е. если мы ставим оптимизировать чистую прибыль, то генетический алгоритм пытается подобрать такие параметры при которых прибыль максимально, не глядя на просадку, и прочие показатели. Это очень похоже на джина, который вроде формально выполняет желание, но всегда криво и не так как нужно. В оптимизации советников очень важно экспериментировать и набираться опыта, оптимизировать как можно больше систем, на разных интервалах, следить что меняется, как меняются лучшие параметры. Тогда с опытом Вы будете лучше разбираться в работоспособности и живучести советников.

  • 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. Ну и последнее - Должна стоять галочка(где показано стрелкой) чтобы этот параметр подбирался. Если галочка у параметра не стоит то параметр приравнивается к колонке "Значение"

Самый важный параметр - Шаг. Его правильное значение позволяет максимально сократить время оптимизации. Я рекомендую брать размах(Максимальное значение параметра и минимальное) параметра и делить его на 5-8, получившееся значение вписывать в шаг при оптимизации. На примере Вы знаете что Тейкпрофит в колонке Старт лучше поставить минимальным примерно 5 пунктов. Но в то же время в колонке Стоп Вы понимаете что стратегия не долгосрочная и больше 200 пунктов ставить не имеет смысла. Тогда шаг выставляете 20 пунктов. И уже затем когда Вы понимаете что система Вас устраивает и Вам нужно более детализировано оптимизировать параметры и Вам известно, допустим, что оптимальный тейкпрофит колеблется в диапазоне 25-45 пунктов, тогда Вы можете провести ещё одну оптимизацию с более мелким шагом но и более узким диапазоном значений.

Ну и наконец третья вкладка


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

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

  • Результат оптимизации оценивается:
  • Высокой общей прибылью
  • Минимальной просадкой
  • Большим количеством прибыльных сделок
  • Минимальным риском
  • Оптимальным сочетанием вышеприведенных целей

Алгоритм Советника, как правило, не предусматривает “человеческого вмешательства ”, что предполагает в нем наличие блоков для формирования сигнала на вход, выход и мани менеджмента:

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

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

Оптимизация – постоянный, необходимый процесс, позволяющий подстраивать настройки автоматической торговой стратегии под изменения рыночных циклов.

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

  • Важных глобальных новостей
  • Политических событий
  • Сезонности

Трейдер должен понимать, что в окружающем мире нигде не существует измерительных систем, всегда дающих 100% правильные показания. Валютный или биржевой рынки не являются исключением из этих правил. Оптимизация – это большое преимущество, позволяющее постоянно оставаться в плюсе.

Чтобы сохранить потенциал разработанной или обнаруженной стратегии, трейдеру достаточно периодически «подкручивать » входные параметры советников. Это несложный процесс, который значительно упростился с развитием компьютерных технологий, автоматизирующих торговлю на финансовых рынках.

Оптимизация - это поиск и подбор качественных настроек Советника с помощью компьютерных технологий, реализованных в терминале MetaTrader 4. Эта технология превращает многочасовой и монотонный “ручной” труд трейдера по поиску наилучших параметров в легко выполнимую “минутную” задачу.

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

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

В начале процесса, трейдер должен провести подготовительный этап:

  • Запустить тестер стратегий из-под меню «Вид» или комбинацией клавиш быстрого доступа Ctrl+R
  • Скачать/обновить архив котировок (клавиша F2) валютных пар, участвующих в тесте
  • Выбрать Советник и настроить параметры, совпадающие с рабочим инструментом (валютной парой), таймфреймом, спредом и периодом истории

Перед стартом тестера процесс оптимизации включается галочкой в окне «Оптимизация », но до пуска трейдер должен задать способы, виды и цели подбора новых параметров Советника.

Запуск оптимизации Советника состоит из четырех шагов, в ходе которых определяются цели, задаются пределы, шаг изменения параметров.

Шаг 1: настройка параметров вкладки “Тестирование”

В правом нижнем углу окна тестера стратегий нажмите опцию «», в открывшемся окне перейдите на вкладку “Тестирование”

  • Выберите размер депозита и валюту депозита - По умолчанию выставлено 10 000 USD. Оба параметра не критичны для оптимизации, но не стоит занижать стартовую сумму, особенно при использовании Советников с использованием стратегией сеток. В рассматриваемом примере оптимизируется, как раз такая стратегия - VR Smart Grid , поэтому принимаем настройки по умолчанию
  • Укажите вид разрешенных при тестировании и оптимизации ордеров: покупки/продажи (long&short), только покупки (long) только продажи (short) - По умолчанию разрешены оба вида сделок, трейдеры редко используют “однобокие” стратегии, поэтому оставляем настройки без изменений
  • Определите цель оптимизации параметров стратегии

На вкладке тестирования трейдер должен определиться, на что ориентироваться, улучшая входные параметры Советника:

  • Balance – эта опция стоит первой по умолчанию, из-за наиболее частого ее использования тестерами. Она дает простой и понятный способ выбрать лучшие параметры индикаторов, позволяющие достичь максимального приращения баланса на указанном историческом промежутке торгов;
  • Profit Factor – второй по популярности оптимизируемый параметр, более подходящий для систем со встроенным уровнем, мани менеджмента. Трейдер может отдать этому методу улучшения стратегии приоритет, если алгоритмом Советника предусмотрено изменение уровней тейк-профита и стоп-лосса. В этом случае прогоны оптимизации должны выдать наилучшее соотношение прибыли и убытка;
  • Expected Payoff – метод, позволяющий максимально избегать убыточных сделок, рекомендуется использовать при скальпинге или внутридневных стратегиях, так как присутствует побочный эффект уменьшения количества сделок;
  • Maximal Drawdown – оптимизация будет стремиться снизить просадку, но результаты поисков приведут к консервативной стратегии с низкой прибылью;
  • Drawdown Percent – этот метод схож с предыдущим, но подбор параметров стремится уменьшить просадку по каждой сделке. Побочные эффекты снижения прибыли приведут к уменьшению количества сделок;
  • Custom – оптимизация параметров, заданных пользователем

В рассматриваемом примере оптимизируется Советник VR Smart Grid, логика работы которого состоит в открытии сеток ордеров, поэтому трейдеру подойдет только первый пункт оптимизации – задать поиск параметров для получения максимального приращения баланса.

  • Подключите генетический алгоритм оптимизации стратегии

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

Этот метод взят из нейросетей , проходящих «обучение» на большом массиве информации. Чтобы не ограничивать искусственный интеллект в количестве обработанных вариантов решения задачи, но при этом сократить время получения ответа, используют многопотоковое вычисление, ветви которого «отсекаются» по генетическому признаку на начальном этапе.

Плюс генетического алгоритма – максимальное качество проходов за короткий период времени. Генетический алгоритм, огромное количество вариаций настроек, сокращает до 10400 . В некоторых случаях при оптимизации советников количество проходов может исчисляться миллиардами, а время оптимизации миллионами часов. Именно при таких ситуациях эффективен генетический алгоритм.

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

В случае оптимизации Советника алгоритм не будет доводить до конца тестового периода стратегии со «слившимися» еще на старте параметрами.

Шаг2: настройка вкладки «Входные параметры»

Вкладка «Входные параметры » предлагает пользователю управлять набором переменных настроек, которые может оптимизировать тестер. Предполагается, что трейдер знает логику, работающую внутри Советника, особенности его кода и тип входящих настроек.

  • В левом столбце отметьте параметры, которые будут изменяться и подбираться после запуска оптимизации. Параметры отмечаются галочкой.
  • Заполните столбец: Старт - Поставьте в ячейке “Старт” цифру меньше, чем в графе “Значение”, чтобы оптимизация начала проверку всех вариантов: периодов индикаторов, уровней стоп-лосса и тейк-профита, вариантов модификаций, заложенных внутри торговой системы
  • Установите значение столбца “Шаг” - В графе “Шаг” интервал изменения (перебора) выбранных оптимизируемых параметров. Для индикаторов наиболее распространенный вариант этого значения - единица. При таких настройках каждое историческое тестирование Советника (прогон) будет отличать от предыдущего на 1.

Для настроек мани менеджмента, обращаете внимание на единицу измерения ячейки графы «Значение». Она может быть в пунктах или процентах, в этом случае задание изменение шага в единицу, может затянуть процесс. Не стоит так мельчить, если речь идет о стоп-лоссе и тейк-профите, трейдеру лучше выбрать шаг перебора прогонов 5 или 10.

  • Поставьте ограничение оптимизации в графе “Стоп” - Цифра графы стоп должна превышать цифру ячейки «Значение». Это “отсечка”, определяющая параметры конечного прогона, достигнув которых тест оптимизации будет остановлен. Устанавливая эти ограничения, трейдер должен исходить из логики стратегии.

Для индикаторов цифра стоп выбирается, исходя из вида стратегии, например при торговле внутри дня редко понадобятся периоды индикаторов, равны 30, 50, 100 и т.д., но они подходят для долгосрочной стратегии.

Для параметров мани менеджмета, номинированных в процентах не стоит выбирать цифру больше 100. Что касается значений с размерностью пунктов, стоп в виде 100 или 200 - редкое явление, тогда, как для тейк профита такие цифры могут быть использованы.

Помните – выбор больших и неоправданных интервалов увеличивает время оптимизации. Также избегайте установки параметров, не имеющих числового смысла или поиска «функциональных» настроек, которые трогать не имеет смысла.

В рассматриваемом примере Советник VR Smart Grid имеет множество входных параметров, однако наиболее важными являются следующие блоки:

  • Настройки изменения лотности - пользователь может доверить оптимизатору выбор между фиксированным значением каждой сделки в сетке или динамичным изменением ее размера
  • Манименеджмент Мартингейла - оптимизация выберет из предложенных разработчиком 5 алгоритмов увеличения каждой последующей инвестиции в сетке
  • Ограничение размера максимальной единичной сделки - оно “закроет строительство сетки”
  • Тип и шаг торговли
  • Манименеджмент , определяющий максимально возможные потери по депозиту, размеры фиксации профита и трейлинг стопа

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

Выставив галочки, означающие оптимизацию только нужных параметров, выбираем на старте и финише (колонка “Стоп”) значения, которые отличаются в меньшую и большую сторону от заложенных параметров в графе “Значение”. Также нужно учитывать их размерность при выборе шага перебора.

Остальные настройки регулируют функционал - проскальзывания, магический номер, не позволяющий роботу управлять другими (открытыми вручную) ордерами, настройки терминального времени и т.д. Все они не имеют отношения к оптимизации, поэтому остаются без изменений.


Шаг 3: вкладка «Оптимизации»

Трейдер имеет возможность прервать процесс теста оптимизации на каждом прогоне, установив фильтры-условия на вкладке «Оптимизации», исходя из принципов максимального убытка или прибыли. По умолчанию в тестере уже установлены оптимальные параметры:

  • Минимальный баланс – выбран в долларах
  • Максимальная прибыль – берется равной начальному депозиту, чтобы отключить «прогон» при достижении 100% профита
  • Минимальный уровень маржи – взят 30%, это уровень стоп-аута у некоторых брокеров, при достижении которого сделки закрываются автоматически
  • Максимальная просадка – логично сочетается с минимальным уровнем маржи, в сумме составляя 100%
  • Непрерывное количество убыточных и прибыльных сделок , обычно выбраны нереальные значения

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

В приведенном примере оптимизации Советника VR Smart Grid , трейдеру нет смысла ограничивать сетку по серии прибыльных или убыточных сделок подряд, как и уровень прибыли, поэтому включаем в блок только настройки убытка:

Шаг 4: выбор исторического участка для оптимизации параметров стратегии

После выбора параметров на трех вкладках опции «» и включения слева режима тестера «Оптимизация», но перед нажатием кнопки «Старт», трейдер должен выбрать исторический период поиска оптимальных параметров.

Это интервал, задаваемый датой календаря в строке тестера «Использовать дату». При выборе отрезка трейдер должен придерживаться следующих принципов:

  • Точка отсчета должна совпадать с периодом снижения результативности стратегии, его поможет определить анализ кривой эквити отчета-стейтмента, полученного из «Истории счета».

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

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

Шаг 5: Запуск оптимизации

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

Анализ результатов оптимизации

Поиск оптимальных параметров Советника в тестере Metatrader 4 выполняется за множество прогонов стратегии на одном и том же историческом интервале в лимитах и с шагом параметров, заданных пользователем в настройках. Наиболее успешные из них отображаются на вкладках «График оптимизации » и «Результаты оптимизации ».

График оптимизации
График оптимизации выполнен в системе координат:

  • По оси Y – доходность (итоговый результат прогона по балансу)
  • По оси X – номера прогона по порядку

Расположение точек в оси координат позволяет получить оперативное визуальное представление о прибыльности параметров торговой системы конкретного теста. Чтобы перейти к изучению достигнутых оптимальных параметров самых высокодоходных, находящихся вверху графика прогонов, два раза кликните на точку графика оптимизации. Это автоматически перенесет трейдера на вкладку – «Результаты оптимизации».

Результаты оптимизации

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

Прогоны сведены в таблицу, в столбцах которой отображены:

  • Проход – нумерация прогонов по порядку убывания условий оптимизации

Если Советник тестировался на предмет достижения максимального баланса депозита – выставленного параметра Balance на вкладке «Тестирование» (меню – “Свойство эксперта”) первые прогоны – самые максимальные по приросту прибыли. Это будет видно по второму столбику:

  • Прибыль
  • Всего сделок – количество сработавших ордеров, помогает трейдеру оценить соотношение частоты сделок и полученной прибыли

Приоритетным выбором является максимальная прибыль при минимуме сделок, исходя из принципа, что каждый выставленный ордер – это риск (получить убыток).

  • Прибыльность – параметр, показывающий коэффициент соотношение прибыли к убытку

Идеальным соотношением является величина 2, когда прибыль превышает убыток вдвое, но реальные показатели находятся в пределах от 1 до 1,5. Меньше единицы – убыток выше прибыли, выбор таких параметров может привести к потере депозита.

  • Матожидание – вероятность получения прибыльной сделки, чем этот параметр выше, тем лучше
  • Просадка – отображена в двух столбиках, отражающих числовое значение в $ и относительное в процентах

Исходя из простой логики, трейдер выбирает прогоны с наименьшей просадкой.

Последний столбец содержит описание конкретных значений, заданных пользователем для оптимизации на втором шаге во вкладке «Входные параметры».

Программа Microsoft Excel при работе с таблицами обладает большим удобством и массой преимуществ, по сравнению с Metatrader. Полученные данные результатов оптимизации можно скопировать и перенести в Excel.

Сделать это достаточно просто – откройте страницу вкладки «Результаты оптимизации» и нажмите правой клавишей мыши в любом месте поля таблицы. В возникшем меню выберите функцию – «Копировать все».

Запустите программу Excel на компьютере, создайте новый или войдите в уже существующий файл, открыв новый лист Книги. Выгрузите содержимое буфера обмена, наведя предварительно курсор на левую верхнюю ячейку. Вставку можно провести с помощью клавиш Ctrl+V или опять воспользоваться меню, вызываемом правой клавишей мыши.

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

Каждый параметр набора настроек имеет собственное существенное влияние, например, период – на количество сделок, уровень стоп-лоссов – на размеры убытка и т.д. Сопоставляя и объединяя диаграммы, пользователь может визуально выбрать необходимое сочетание параметров, которое «пропустил» генетический алгоритм.

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

Полученные результаты оптимизации дают общее представления и набор множества вариантов параметров торговой системы. Чтобы получить детальное представление об эффективности работы каждого комплекта, трейдер должен провести тестирование Советника.
  • Выберите строку с нужным прогоном, установив на нее курсор мыши
  • Вызовите правым кликом клавиши дополнительное меню, переместите курсор на поле опции «Установить входные параметры» и кликните левой клавишей

  • В открывшемся поле тестера первой вкладки «Настройки» нажмите «Старт»

Тестер самостоятельно «пропишет» выбранный пакет установок торговой системы. Обратите внимание – отметка в опции «Оптимизация», которую пользователь ставил в начале процесса, автоматически снимается, остальные настройки: период и спред - сохраняют значения, но трейдер может их изменить.

После нажатия кнопки «Старт» запускается стандартный процесс тестирования Советника, в ходе которого тестер «пополняется» дополнительными вкладками: “Результаты”, “График”, “Отчет” и “Журнал”.

  • Результаты содержат таблицу с детальными характеристиками каждой сделки, доступную для сохранения в виде файла html или копированию и выгрузки в Exсel

  • График показывает изменение баланса и гистограмму размера лота (объема сделки)

  • Отчет – самая важная часть для оценки прогонов Советника, содержащая количественную и относительную оценку результатов прогона по стандартам Metatrader 4

  • Журнал логов – технический отчет выставленных и закрытых в автоматическом режиме ордеров

Выбор наилучшего прохода

Подобрать оптимальные параметры по результатам прогонов достаточно просто – трейдер должен придерживаться правил «золотой середины » и не стремиться использовать Советника по первым прогонам.

Не ограничивайтесь тестами первых двух или трех вариантов пакета настроек – тестируйте минимум 25%, а лучше 50% полученных результатов оптимизации. Сохраните для каждого из них график оптимизации и отчет. Проведите качественно-моделированный, визуальный и численный анализ отобранных вариантов по окончании процедуры тестирования.

На последнем этапе оставьте несколько пакетов настроек Советника для финального испытания робота на демонстрационных торгах.

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

Числовой анализ прогонов по вкладке отчет

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

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

Трейдер может составить простую систему присвоения плюсов «победителям », в обозначенных выше критериях, сравнивая прогоны по принципу «больше/меньше». Пакеты настроек, получившие большее количество отметок, выходят на финальную часть испытаний.

Работа Советника – это не всегда полностью автоматический режим управления средствами трейдера, перед выпуском оптимизированного робота на реальный счет трейдеру следует проверить открытие и закрытие ордеров на демо-счете, котировки и работа которого полностью совпадает с реальным счетом.

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

Чтобы получить объективную оценку теста на малых «нештатных» для применения стратегии таймфреймов, трейдер должен выбрать достаточно длинный отрезок испытаний (от 1000 свечей) и учесть следующие особенности:

  • Выбирать активные участки (европейской, американской) сессии
  • Останавливать робота в период выхода важных экономических новостей
  • Принимать во внимание 20% снижение результативности на малых таймфреймах

Финальный этап теста позволит выбрать наверняка правильный набор новых параметров Советника.

Файлы с расширением *.set – это готовые настройки Советника, написанные специально под алгоритм конкретного робота. Они автоматически изменяют текущие параметры торговой системы сразу после их загрузки.

Новые настройки для конкретного Советника в формате *.set можно получить от разработчика или на специализированных форумах в разделе Presets или “пресеты”. Новые настройки можно установить напрямую в текущую версию работающую версию Советника, но из соображений безопасности лучше прибегнуть к проверке работы новых шаблонов в тестере стратегии или демо счете.

Подготовка оптимизации и тестирование файлов *.set

  • Сохраните полученные пресеты в папке Presets

Запустите программу Metatrader 4 и нажмите опцию «Каталог данных » из меню «Файл ». В открывшемся окне войдите в папку MQL и поместите скачанные файлы перестов в директорию Presets.


  • Перезапустите Metatrader 4 и откройте тестер стратегий (Ctrl+R)
  • Зайдите во вкладку «Свойства эксперта» и настройте вкладку тестирования по вышеизложенной ранее методике
  • Откройте вкладку “Входные параметры”, сохраните текущие значения, нажав кнопку “Сохранить”

Эти Настройки уже присутствуют в директории Presets , но дополнительное сохранение позволит пользователю обозначить уникальное имя файла

  • Вернитесь к окну входных параметров и нажмите кнопку «Загрузить ». выбрав папку Preset, куда до этого были помещены полученные новые файлы *.set Советника. Замените на них текущие настройки.

  • Настройте столбцы старт, шаг и стоп
  • Нажмите ОК, включите опцию «Оптимизация» и генетический алгоритм, поставьте исторический период в соответствии с рекомендациями выше.

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

В любом случае – тестирование «чужих» пресетов перед применением на реальном счете обязательно.

Хранение и использование архива настроек с помощью файлов set

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

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

Файлы с готовыми настройками выглядят для многих трейдеров, как «грааль ». Владельцы Советника полагают, что может быть некое идеальное сочетание пакета настроек, связанное с невероятной способностью стратегии приносить постоянную, высокую прибыль. В реальности пресеты обладают следующими недостатками:

  • Погрешностью базовых условий тестирования и оптимизации

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

  • Проблемой доверия результатам тестирования пресетов

Тестер дает относительную точность результата, из-за проблем с моделированием котировок, которое зависит от полноты архива тиков на серверах брокера.

Трейдеру необходимо накапливать и отслеживать собственную историю оптимизаций. Постоянная работа со стратегией, поможет быстро обнаружить, какие именно настройки требуют постоянных изменений и установить их границы. В дальнейшем оптимизация Советника сводится к использованию постоянного набора шаблонов, чего никогда не произойдет при применении «чужих» файлов пресетов.

Как часто надо делать оптимизацию

Необходимость оптимизации определяется снижением прибыли при работе Советника. Перед применением стратегии на реальном счете, после тестирования стратегии в тестере и проверки ее работы на демонстрационном счете, трейдер должен установить для себя «эталонные» параметры: прибыльности, относительной просадки, процента убыточных сделок. Отклонение реальных показателей от этих значений на 30% - сигнал для оптимизации.

При долгосрочной работе стратегии с приемлемым результатом прибыли, не стоит полагаться на «вечную» торговую систему. Советник может мгновенно ухудшить результаты, значительно увеличив серию убыточных сделок. Как показывают эмпирические наблюдения, то потеря эффективности начинается после того, как Советник отработает 40% от использовавшегося в тестировании исторического периода. То есть если тестирование проходило на периоде в 100 дней, Советник начнет терять эффективность примерно через 40 дней.

Обязательно нанесите на график ценовые границы максимума и минимума периода тестирования Советника Выход за эти границы – сигнал к оптимизации стратегии, в 50% случаев индикаторы резко наращивают количество ложных сигналов при выходе котировок на не тестированные ценовые значения.

Заключение

Оптимизация – необходимая и обязательная процедура корректировки параметров стратегии, чтобы подстроить индикаторы Советника под цикличные изменения рынка. Благодаря программным решениям, реализованным в тестере Metatrader 4, этот процесс сегодня не сложен.

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

Особенности тестирования советников в MT4

Механические торговые системы все чаще используются в работе трейдера. Одним из преимуществ является уменьшение неблагоприятного влияния психологических факторов на процесс торговли. Торговая платформа MetaTrader 4 , являясь наиболее распространенным и популярным торговым терминалом, позволяет создавать и использовать разнообразные торговые автоматические и механические торговые системы, а так же проводить их тестирование и оптимизацию, как на исторических данных, так и в режиме «демо» работы.

Подготовка советника к тестированию в MetaTrader 4. Загрузка истории котировок

Для тестирования советника в торговом терминале MetaTrader 4 необходимо, прежде всего, загрузить историю котировок тех финансовых инструментов, с которыми планируете работать. При этом загружаются котировки минутного интервала. Это позволяет точнее аппроксимировать ценовые движения внутри бара в режиме тестирования торговых стратегий на больших тайм фреймах (H1, H4, D).

Что бы загрузить минутные данные, следует установить в терминале MetaTrader 4 размер исторических данных (меню «Сервис ->Настройки):

В поле «Макс. баров истории» во вкладке «Графики» следует установить вручную число, согласно следующих расчетов: минутные данные одного года содержат 525600 баров. Соответственно, понадобится более 5 млн. баров для 10-летней истории. Для вступления в силу значения новых параметров, необходим перезапуск программы.

Данные истории загружаются в модуле программы «Архив котировок» (пункт «Сервис ->Архив котировок»).

В появившемся окне необходимо выбрать период - 1 минута, а так же символ торгового инструмента, для которого требуется загрузить историю. Затем нажать на кнопку «Загрузить». Теперь, после загрузки, база данных содержит требуемое количество котировок. Следует помнить, что количество загруженных данных может у различных брокеров различаться.

Также необходимо провести согласованность котировок на различных временных интервалах, что достигается пересчетом данных минутного интервала в данные более крупных тайм фреймов. Выполняется такая операция с помощью скрипта «period_converter», который следует перетащить на минутный график финансового инструмента:

При этом в окне входных параметров следует указать длительность пересчитываемого временного в минутах (M15-15; H1-60; …). Согласование необходимо повторить для всех временных интервалов.

Алгоритм тестирования советника в торговом терминале MT4

Для тестирования советников используется модуль «Тестер стратегий» (пункт «Вид ->Тестер стратегий»):

Необходимо указать в окне тестера стратегий следующие настройки:

    анализируемый советник, а так же свойства

    необходимость визуализации процесса тестирования

    (в случае неустановленной опции «Использовать дату» тестирование будет проведено на всех исторических данных)

    необходимость проведения оптимизации параметров советника

Выбор советника и параметров тестирования в тестере стратегий

Необходимо в списке «Советники» выбрать советник для тестирования. В списке торгового терминала в папке «experts» находятся все скомпилированные эксперты. Кнопка «Свойства эксперта» позволяет открыть список дополнительных настроек советника. В графе «Тестирование» можно посмотреть и задать общие параметры советника:

Вы можете установить здесь валюту депозита, начальный размер торгового счета, характер торговых сделок: все сделки – Short и Long, только позиции на покупку – Only Long, только позиции на продажу – Only Short. Параметры оптимизации будут рассмотрены ниже.

Ниже приведена вкладка «Входные параметры», которая содержит основные переменные, оказывающие влияние на алгоритм работы эксперта:

Если вам необходимо изменить значения параметров, то для этого нужно отредактировать столбец значений. Установленные параметры следует сохранить на диске и позже загрузить. Для возврата значений по умолчанию следует кликнуть по кнопке «Сброс».

Настройки «Период» и «Символ» тестера стратегий

В поле «Символ» задается финансовый инструмент, на котором будет осуществляться тестирование советников, а в «Период» – тайм фрейм. Необходимым и важнейшим условием проведения качественного тестирования обязательное наличие минутных исторических котировок финансового инструмента.

Метод моделирования тестера

В выпадающем списке «Модель» необходимо выбрать пункт «Все тики». Этот способ обеспечивает точную эмуляцию ценовой динамики внутри бара и делает процесс тестирования более достоверным.

Временной диапазон тестирования

Если вам необходимо использовать не все исторические данные, а лишь часть, необходимо включить опцию тестера «Использовать дату» и ввести необходимые вам значения даты в полях окна «От» и «До».

Эффект визуализации тестирования

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

Запуск процесса тестирования и анализ полученных результатов

Запускается процесс тестирования нажатием кнопки «Старт» тестера стратегий. По индикатору хода выполнения можно оценить время выполнения операции:

После завершения процесса тестирования на экране появятся окна новых вкладок: «Результаты», «График», «Журнал» и «Отчет».

Во вкладке «Результаты» можно просмотреть все события и их последовательность во время тестирования стратегии:

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

Во вкладке «Журнал» находится отладочная информация непосредственно самого процесса тестирования эксперта. Здесь содержатся успешно выполненные операции, а также ошибки, возникшие во время работы советника:

Вкладка тестера стратегий «График» отображает баланс (линия синего цвета), а также динамику торгового счета с учетом открытых позиций (свободные средства – зеленая линия). Эти линии часто совпадают, а сильное расхождение говорит о том, что позиции передержаны.

Во вкладке тестера стратегий «Отчет» отображаются самые важные результаты тестирования советника.

Принято считать, что результаты тестирования достаточно точные, если индикатор моделирования равен и более 90%, а показатель ошибок рассогласования соответствует нулю. Если результаты худшие этих показателей, необходимо историю для минутного временного интервала перезагрузить.

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

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

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

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

Фактор восстановления (соотношение прибыли к максимальной просадке) – это важный показатель работы советника и его эффективности. При эффективной работе фактор восстановления должен быть более трех.

Так же, важными характеристиками советника являются средняя прибыльная/убыточная сделка. Оптимальным вариантом является соотношение средней прибыли к средним убыткам 1:3, а также превышение числа убыточных сделок над прибыльными на уровне 1:2. То есть, должна расти прибыль, а убытки быстро фиксироваться.

Большое значение имеет показатель психологического фактора, который определяется максимальным числом непрерывных проигрышных сделок. Если он высокий, то лучше использование такой торговой системы отложить, или трейдер должен быть готовым морально пережить «черную» полосу.

Визуализация тестирования советника в терминале MT4

Тестер стратегий позволяет трейдеру просмотреть торговые события непосредственно на графике, которые возникали в период анализа советника. Имеется два способа визуализации: во время теста советника и после проведения теста.

Для визуализации в режиме после проведения теста необходимо кликнуть на строку «Открыть график» на вкладке «Настройки». Откроется новая вкладка в окне MT4 с символами совершенных сделок и графиком тестируемой валютной пары.

Второй режим позволяет просматривать график тестируемого инструмента непосредственно в период тестирования. Данный режим можно активизировать опцией «Визуализация», расположенной на вкладке «Настройки» тестера. После нажатия на «Старт» график тестируемого валютного инструмента будет открыт автоматически, и на него будут поступать последовательно смоделированные тики. При этом, вы можете регулировать скорость их поступления, а так же приостановить поступление котировок полностью. Кнопкой «Пропустить до» трейдер имеет возможность запустить визуализацию с определенного момента времени.

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

Оптимизация советника в терминале MT4

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

Параметры оптимизации советника настраиваются в свойствах эксперта:

Для этого надо выбрать критерий выбора стратегии в списке «Оптимизируемый параметр». Чаще всего, выбирается значение «Баланс». При этом, включение опции «Генетический алгоритм» время процесса оптимизации ускоряет, используя для этого полученные данные отработанных проходов ранее. Это вносит некоторую погрешность в вычисления, поэтому окончательную оптимизацию следует проводить с отключенным генетическим алгоритмом.

Во «Входных параметрах» свойств эксперта отмечаются диапазонные вариации параметров эксперта. Участвующие в оптимизации параметры отмечаются галками, и для них задается шаг изменения параметра, а также начальное и конечное значения.

Вкладка «Оптимизация» позволяет трейдеру отвергнуть любой из результатов оптимизации, если достигается одно из перечисленных условий во время прогона:

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

Для выполнения оптимизации следует установить в тестере стратегий во вкладке «Настройки» опцию «Оптимизация» и нажать кнопку «Старт»:

Процесс оптимизации займет определенное время:

После его завершения появятся вкладки: «График оптимизации», а так же «Результаты оптимизации». Полученные результаты оптимизации включают все итоги проведенных прогонов:

Все данные отсортированы и скомпонованы по оптимизируемому параметру. Для установки выбранных оптимальных параметров советника необходимо в свойства эксперта сделать двойной клик на строке мышью.

График оптимизации демонстрирует область возможных прибыльных настроек:

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

Практическое использование МТС

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