Neil Rosenthal Знания | Статьи | Системы / Стратегии

Как поставить цели прибыли и контролировать убытки

12 января 2013  Источник / http://kroufr.ru/
В первой статье этой серии мы представили систему случайных входов, которая базировала открытия позиций на бросках виртуальной монеты (см. “Справочник по разработке системы торговли"). Для базовой системы был проведен бектестинг по данным евро за четыре года, чтобы собрать торговые данные для статистического анализа. Как мы увидели, базовая система оказалась нерентабельной. Говоря математическими терминами, у основной системы было отрицательное ожидание -0.81. Ожидание - важный показатель. Это то количество, которое Вы можете ожидать выиграть или потерять на каждый доллар, которым рискуете. Оно вычисляется по следующей формуле:

(Процент выигрышей x Средний выигрыш) - (Процент проигрышей x Средний проигрыш)

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

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

Время входа 8:00 (EST) было выбрано произвольно. Это вполне может быть та критичная переменная, которая может спасти нашу модель и позволить продолжить разработку системы. Действительно, оказывается, это так и есть. Простая оптимизация времени входа (пошаговая, с 3:00 EST, от открытия Лондона, до 8:00 EST, с приращениями по часу) дает нам прибыльную систему. При проведении бектестинга на тех же самых данных время входа 4:00 дает чистую прибыль 2 853$. Ожидание получилось положительным 2.75. Теперь мы можем применить методы управления сделкой, чтобы посмотреть, можно ли улучшить результаты.

Форвардный анализ

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

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

Период этих, внепримерных, данных обычно составляет какой-то процент периода примерных данных. Результаты внепримерных тестов регистрируются. Затем процесс повторяется, сдвигая вперед период примерных данных, а затем параметры оптимизируются повторно. Количество, на которое примерные данные двигаются вперед, равно длине начального периода примерных данных (см. “Форвардное тестирование” ниже).

ФОРВАРДНОЕ ТЕСТИРОВАНИЕ
Этот график иллюстрирует, как мы выполняем форвардный анализ, повторно оптимизируя параметры нашей системы и проверяя их на невидимых ранее данных.

Как поставить цели прибыли и контролировать убытки


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

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

Постановка стопов

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

Чтобы установить этот стоп, мы используем анализ Максимальной Неблагоприятной Экскурсии (MAE). MAE - самое большое расстояние, в пунктах или тиках (в зависимости от контракта), на которое рынок перемещается против сделки, когда она открыта. В случае проигрышной сделки MAE будет совпадать с ценой выхода. Вспомните, что мы собрали данные MAE по базовой системе и выполнили простой статистический анализ этих данных: Мы измерили медиану, среднее и стандартное отклонение данных MAE. Этот анализ формирует базу для нашего форвардного анализа, чтобы найти оптимальный стоп-лосс.

Данные MAE, собранные при бектестинге по времени входа 4:00, привели к следующим результатам:

Среднее: Выигрыши: 0.00334 (33.4 пипса); убытки: 0.01016 (101.6 пипса)
Медиана: Выигрыши: 0.00290 (29.0 пипсов); убытки: 0.00900 (90.0 пипса)
Станд. дев.: Выигрыши: 0.00269 (26.9 пипсов); убытки: 0.00605 (60.5 пипса)

Вероятно, что оптимальный начальный стоп-лосс будет находиться где-нибудь между средними величинами MAE выигрышных и убыточных сделок. В идеале, оптимальная величина сократит убытки проигрывающих сделок, не выходя преждевременно из выигрышных. Конечно, так будет не всегда: из некоторых сделок, которые были бы прибыльны при отсутствии начального стоп-лосса, выход будет ранним. Трейдинг - это серия компромиссов; будем надеяться найти лучший.

Если мы вычтем одно стандартное отклонение от средней потери MAE, результатом будет приблизительно 41 пипс. Это значение лежит около среднего выигрыша MAE, и является, таким образом, приемлемой нижней границей нашего тестового диапазона. Если мы добавим два стандартных отклонения к среднему выигрышу MAE, результат составит приблизительно 87 пипсов - около средней потери MAE. Это - приемлемая верхняя граница нашего тестового диапазона. Округлив, получим:

Нижняя граница тестового диапазона: 40 пипсов
Верхняя граница тестового диапазона: 88 пипсов

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

С нашим диапазоном величин MAE мы начнем форвардную оптимизацию ISL. Чтобы гарантировать, что особенности данных тестов будут ближе к текущему состоянию рынка, мы возьмем для форвардного анализа диапазон дат от января 2010 до декабря 2011. Поскольку это дневная система торговли, мы будем использовать небольшой период оптимизации - шесть месяцев, с периодом внепримерных данных два месяца. У нас получается девять проходов по данным. Начиная с данных за январь 2010, последовательность оптимизации и форвардный анализ проводятся согласно модели, показанной на рисунке “Форвардное тестирование”.

Для простоты мы выберем величину стоп-лосса, которая возвращает самую высокую прибыль. Такой выбор оптимизированного параметра может уменьшить робастность, но будет достаточен в демонстрационных целях. Результаты девяти проходов показаны на рисунке “Анализ потерь” (ниже). Мы можем сравнить окончательный результат с бектестингом базовой системы на тех же самых данных.

Вот результат:

Профит без ISL: Прибыль в размере 1 428,52$
Профит с ISL: 775,92$ (ожидание: 1.19)

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

АНАЛИЗ ПОТЕРЬ
Результаты тестов, включающие наш начальный стоп-лосс, с использованием анализа MAE.
Символ: EUR/USD Период: 3/01/10 (04:00) - 12/30/11 (17:00) Начальный депозит $10,000.00
Чистая прибыль: $775.92 Прибыль: $20,600.70 Убыток: -$19,824.78
Профит-фактор: 1.039 Ожидание: 1.19
Абсолютная просадка: S1466.70 Макс. просадка: $1761.30 (17.109%) Относит. просадка: 17.109% ($1761.30)
Число сделок: 652 Короткие {% выигр.): 328 (42.988%) Длинные (% выигр.): 324 ;45.679%)
Прибыльные сделки (% от общ.): 289 (44.325%) Убыточные сделки (% от общ.): 363 (55.675%)

Как поставить цели прибыли и контролировать убытки


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

Точки прибыли

Максимальная Благоприятная Экскурсия (MFE) является самым большим расстоянием, которое прошел рынок в течение времени, когда сделка открыта. Наша стратегия оптимизации цели прибыли подобна таковой для оптимизации ISL. В этом случае, однако, мы проводим целевой анализ прибыли уже со стоп-лоссом.

Вот данные MFE, собранные по начальному бектесту:

Среднее: Выигрыши: 0.01055 (105.5 пипса); убытки: 0.00355 (35.5 пипса)
Медиана: Выигрыши: 0.00973 (97.3 пипса); убытки: 0.00303 (30.3 пипса)
Станд. дев.: Выигрыши: 0.00563 (56.3 пипса); убытки: 0.00307 (30.7 пипса)

Средняя выигрышная сделка принесла 70,98$ или приблизительно 71 пипс. Похоже, что средняя выигрышная сделка отдает приблизительно 34 пипса прежде, чем закрыться в конце сессии. Поскольку наша цель состоит в том, чтобы попытаться захватить эти пипсы, 71 пипс будет логичной величиной для нижней границы тестового диапазона. Для верхней границы мы добавим два стандартных отклонения к среднему выигрышу MFE; получилось приблизительно 218 пипсов. Хотя такая прибыль может выглядеть, как принятие желаемого за действительное, отметьте, что крупнейшая выигрышная сделка с ISL дала 293 пипса. Округляя к ближайшему кратному пяти числу, мы имеем:

Нижняя граница тестового диапазона: 70 пипсов
Верхняя граница тестового диапазона: 220 пипсов

Если мы проведем оптимизацию с шагом пять пипсов, то на цель прибыли будет проверена 31 возможная величина. Мы снова используем наши границы для оптимизации начального стоп-лосса с приращением два пипса. Общее количество комбинаций для каждой переменной: 25 x 31 = 775 возможных комбинаций начального стоп-лосса и прибыли. На сей раз, оптимизация займет немного больше времени, возможно, несколько минут или больше, в зависимости от скорости Вашего компьютера. Результаты показаны на рисунке “Общие результаты” (ниже).

ОБЩИЕ РЕЗУЛЬТАТЫ
Добавление цели прибыли вместе со стоп-лоссом значительно уменьшило результаты.
Символ: EUR/USD Период: 3/01/10 (04:00) - 12/30/11 (17:00) Начальный депозит: $10,000.00
Чистая прибыль: $103.05 Прибыль: $7187.45 Убыток: -$7084.40
Профит-фактор: 1.015 Ожидание: 0.264
Абсолютная просадка: $1.70 Макс. просадка: $1094.15 (9.797%) Относит. просадка: 9.797% ($1094.15)
Число сделок: 391 Короткие (% выигр.): 192 (0.00%) Длинные (% выигр.): 199 (49.749%)
Прибыльные сделки (% от общ.): 99 (25.32%) Убыточные сделки (% от общ.): 292 (74.68%)

Как поставить цели прибыли и контролировать убытки


Добавление цели прибыли к оборудованной стопом системе заставило доходность снизиться от 775,92$ до 103,05$; ожидание осталось положительным, но упало до 0.264. Результаты форвардного анализа за период с ноября по декабрь 2011 уничтожили почти всю прибыль, которая накопилась во время предшествующих форвардных периодов. Такой результат подвергает сомнению надежность системы.

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

/Элитный Трейдер, ELITETRADER.RU/
При полном или частичном использовании материалов - ссылка обязательна http://elitetrader.ru/index.php?newsid=166619. Об использовании информации.