Эффективность сделки и внутренние фильтры
Каждый раз, когда трейдер открывает позицию, он надеется на получение прибыли. Невозможно заранее сказать, будет ли сделка прибыльной или убыточной. Трейдинг - это игра с неопределенностью, со случайной величиной, которая определяет исход каждой конкретной сделки. Поэтому нельзя оценивать успешность того или иного трейдера по одной-двум сделкам, независимо от того, были они выигрышными или проигрышными. Трейдинг - это ставка на то, что в результате серии сделок накопленная прибыль от выигрышных сделок превысит полученный убыток от проигрышных.
Разница между прибылью и убытком определяется математическим ожиданием сделок, которые совершаются согласно заранее определенным правилам. Поэтому так важно использовать четкие правила на открытие и закрытие позиции, которые можно протестировать и определить эффективность подхода. Если торговая система имеет положительное матожидание сделки, то вероятность итоговой прибыли прямо пропорционально количеству совершенных сделок.
То есть, даже получив несколько убыточных сделок подряд, не нужно терять оптимизма и прекращать торговлю. Главное при оценке эффективности торговой системы - максимальная объективность и избегание подгонки параметров системы под прошлые данные. Эта грань очень расплывчата, поэтому трудно однозначно сказать, где проходит разумная оптимизация системы, а где - переподгонка под историческую "кривую котировок". Единственный выход - торговать несколько простых систем с положительным матожиданием.
Математическое ожидание сделки определяется четырьмя величинами: вероятностью и ожидаемой величиной прибыльной сделки, вероятностью и ожидаемой величиной убыточной сделки. На каждую их этих величин трейдер может повлиять, устанавливая те или иные правила торговой системы. Так величину допустимого убытка можно контролировать при помощи стоп-лосса. Величину прибыльной сделки можно контролировать, изменяя правила выхода из прибыльной позиции. Вероятность прибыли или убытка определяют начальные установки на открытие позиции, которые иногда именуются "сетапами" или "паттернами". Но есть еще одна величина, которая может значительно изменить вероятность прибыли в нашу сторону. Это различные независимые фильтры, которые определяют текущее состояние рынка и указывают, открывать ли позицию или дождаться следующего сигнала. В своей книге "Долгосрочные секреты краткосрочной торговли" Ларри Вильямс говорил, что будет торговать только, если имеется значительный сдвиг вероятности прибыльного исхода в его сторону. Так, для открытия длинных позиций, он использовал тренды на смежных рынках или теорию "недельной цикличности", согласно которой рынки ведут себя определенным образом в каждый день недели.
В этой статье я хочу рассмотреть и протестировать некоторые популярные фильтры, которые могут повлиять на эффективность сделки. Можно выделить три основные группы:
- внутренние факторы ;
- внешние факторы ;
- неценовые факторы .
Под внутренними факторами я подразумеваю собственные свойства рынка, его трендовость и цикличность. В этой группе я хочу проверить, зависит ли результат сделки от наличия тренда или дня недели, согласно теории Ларри Вильямса. Будут протестированы основные подходы для определения тренда:
1. Изменение цены закрытия за определенный период;
2. Изменение и направление скользящей средней линии цен закрытия;
3. Изменение и направление линии регрессии цен закрытия;
4. Изменение и направление значения R-квадрата линии регрессии;
5. Изменение и направление популярного индикатора тренда ADX;
6. Зависимость от дня недели.
Под внешними факторами я подразумеваю наличие межрыночных связей с другими фондовыми индексами, товарными и валютными фьючерсами. Будет определен коэффициент корреляции фьючерса РТС с другими рынками и фьючерсами. При наличии устойчивых связей будут протестированы следующие зависимости:
1. Зависимость от движения и направления тренда смежных рынков;
2. Зависимость от индекса относительной силы фьючерса РТС по отношению к смежным рынкам.
Под неценовыми факторами я подразумеваю наличие психологического влияния на фьючерс РТС других факторов, которые напрямую не связаны с ценами. К этой группе относятся различные индикаторы и индексы: отчеты СОТ, отношение пут/колл по опционам, отношение растущих и падающих акций, отношение "шортов" и "плеч", индексы настроений трейдеров и аналитиков. Так, например, теория "противоположного мнения" гласит, что нужно покупать акции, когда все кругом настроены крайне пессимистично и продавать, когда рынок полон радужных перспектив и эйфории.
Для объективного тестирования будет применен метод "случайного входа". Открытие позиции будет производиться случайным образом, после чего я буду измерять эффективность сделки на протяжении 21 бара. Тестирование будет проводиться на исторических котировках фьючерса на индексе РТС 30-минутной дискретности. Полученные показатели будут сравниваться с тестированием при случайном входе без фильтра.
При тестировании с использованием случайных входов будет полностью исключен фактор "хорошего входа", который сам по себе может сдвигать вероятность прибыли в нашу сторону. Каждый фильтр будет протестирован 440 раз для каждого времени удержания позиции (от 1 до 21 бара) и для каждого параметра фильтра. Полученные значения будут сведены в таблицу и будут рассчитаны среднестатистические показатели вероятности прибыли, общего профит-фактора и фактора прибыли/убытка на сделку.
Для начала протестируем полностью случайные входы без применения каких-либо фильтров. Позиция открывается случайным образом и измеряется эффективность одного, шести, одиннадцати, шестнадцати и двадцати одного бара. Смотрим сравнительную таблицу:
<>
нажми на график для увелияения
Хорошо видно, что вероятность прибыльной сделки выше 50% и возрастает со временем удержания позиции. Это объясняется наличием долгосрочного восходящего тренда на фондовом рынке. Таблица показывает, как распределены показатели эффективности для 1891 испытания при использовании случайных входов. Так для одного бара вероятность прибыльной сделки составляет чуть более 50%. При этом 90% значений укладываются в интервал от 49,24% до 52,1%. Эти показатели и будут использоваться в качестве базовых при сравнении с различными фильтрами. Диаграмма распределения показывает, что распределение эффективности системы при использовании случайных входов близко к нормальному. Обычно присутствует незначительная асимметрия, эксцесс, как правило, уменьшается с увеличением времени удержания позиции.
Хотя в этой статье будет проверяться только "длинная сторона" систем, проверим эффективность случайных продаж:
нажми на график для увелияения
Эффективность продаж падает со временем удержания позиции. Это означает, что простой случайный "шорт" гораздо менее эффективен, поскольку открывается против долгосрочной восходящей тенденции. Вероятность прибыли падает с 48,7% для одного бара до 47,7% для 19 баров. Распределение случайных шортов также близко к нормальному, с незначительной асимметрией и убывающим эксцессом.
Теперь, когда мы определили базовые характеристики случайных входов, становится понятно, что фильтр должен смещать вероятность прибыльного исхода заметно выше 50%.
Часть первая. Внутренние факторы .
Для тестирования фильтров, использующих собственные свойства фьючерса РТС, используем ту же методику случайных входов. Но теперь случайный вход в позицию будет фильтроваться определенными условиями, включенными в правила торговой системы. Также будет проведена серия испытаний, чтобы определить статистически важные показатели и амплитуду их колебаний.
Для начала протестируем фильтр, использующий простое движение. Длинная позиция будет открываться, только если цена закрытия бара выше, чем (10, 110, 210) баров назад. Будут измеряться показатели на 1,6,11,16,21 баре. Смотрим сводную таблицу:
нажми на график для увелияения
Видно, что смещение вероятности мало заметно на первом баре. И только на длинном временном интервале сказывается небольшой рост эффективности. Так, сравнение с предыдущим 210-м баром показало наилучшую эффективность. Сдвиг вероятности прибыли составил от 0,5% до 1% в зависимости от длительности удержания позиции. При этом вероятность прибыли изменялась во времени более гладко, чем при использовании более коротких фильтров. Так, например, диаграмма распределения вероятности прибыли при использовании 210-барного фильтра и удержания позиции в 16 баров показывает очень пологую вершину, характеризуя достоверность полученных показателей. Вывод: сравнение с ценой на больших интервалах является умеренно эффективным фильтром.
Второй фильтр использует скользящую среднюю линию цен закрытия для определения текущего тренда. Позиция будет открываться только, если значение скользящей средней выше значения 2 бара назад. Такой простой параметр характеризует рост скользящей средней линии, а значит, и наличие восходящей тенденции. Смотрим сводную таблицу:
нажми на график для увелияения
Показатели существенно не отличаются. Тот же сдвиг вероятности до 53,2% для периода удержания, равного 16 барам. Эффективность сделки растет со временем удержания позиции. Для средних (110 баров) и длинных (210 баров) трендов вырисовывается статистически значимый сдвиг профит-фактора до 1,15. При этом лишь 5% значений оказались ниже 1,02 для долгих позиций, фильтрованных длинным трендом. Вывод: фильтр на основании длинной скользящей средней является умеренно эффективным.
В третьем фильтре будет использован популярный индикатор тренда ADX. Его подробное описание можно найти в большинстве книг по техническому анализу. Скажу лишь, что он измеряет степень трендовости движения, не определяя направления тренда. Поэтому он будет испытываться в паре со сравнением цен закрытия за определенный период. При этом индикатор правильно идентифицирует тренд только при значениях выше 20 (базовое) и только, когда значения индикатора растут. Таким образом, фильтр состоит уже из трех условий, что может повлиять на его надежность. Условия для случайного открытия длинной позиции следующие:
- значение индикатора, рассчитанного по (20,60,100,140,180) барам, должно быть выше 20;
- значение индикатора должно быть выше, чем значение Х/5 баров назад, где Х - число периодов для расчета индикатора;
- значение цены закрытия также должно быть выше, чем цена закрытия Х/5 баров назад.
Смотрим сводную таблицу:
нажми на график для увелияения
На первый взгляд результаты кажутся просто отличными. Однако, здесь скрывается опасный подводный камень. Три условия отфильтровали большинство сделок, поэтому результат для 140- и 180-периодного индикатора вообще нельзя признать статистически достоверным. А 21-барная сделка при 100-барном фильтре имела место всего 6-7 раз за каждое из 441 испытания. Результат ненадежный и приведен лишь для сравнения. Зато, более короткие фильтры позволили сгенерировать достаточное количество сделок для определения средних показателей. 60-периодный фильтр более подробно представлен на самом правом графике. Эффективность сделки достигает 58% при 11-барном удержании позиции, после чего немного падает. Однако даже при этом падении остается выше базовых нефильтрованных значений. Вывод: эффективный среднеинтервальный фильтр, работа с которым требует большого внимания и тщательного тестирования.
В четвертой системе в качестве трендового фильтра будет использована линия простой линейной регрессии цен закрытия. Она более гибко и аккуратно описывает значения прошедших цен. Принцип тестирования будет тот же, что и при использовании скользящей средней линии. Позиция будет открываться, если значение регрессии будет выше значения 2 бара назад. Будет протестирована (50,100,150,200)-периодная регрессия. Смотрим таблицу:
нажми на график для увелияения
Результаты очень стабильны и многообещающи. Абсолютный сдвиг вероятности прибыли примерно сопоставим со скользящей средней, однако, налицо позитивная динамика эффективности сделки во времени. Такой фильтр очень подойдет трендследящим стратегиям, удерживающим позицию как можно дольше. Профит-фактор имеет незначительное смещение до 1,02 при использовании 150-периодной линии регрессии. Примечательно, что короткий фильтр вызвал заметное ухудшение показателей эффективности системы по сравнению с базовыми. Вывод: умеренно эффективный среднеинтервальный фильтр для трендследящих систем.
В пятой системе проверим еще одну статистическую величину, использующую для расчета линейную регрессию. Это R-квадрат, показывающий, насколько полно линейная регрессия описывает прошедшие цены. Также как и индикатор ADX, R-квадрат характеризует только силу тренда, ничего не говоря о его направлении. Поэтому для идентификации трендового движения потребуется дополнительно рост самого индикатора выше значения "статистической важности" и рост цены. Поэтому для открытия длинной позиции будут использоваться три условия:
- значение индикатора, рассчитанного за (20,40,60,80,100,120) периодов, должно быть выше уровня "95% статистической достоверности". Эти уровни обычно расписаны в специальных таблицах и зависят от длины исследуемого периода;
- индикатор должен расти. То есть значение индикатора должно быть выше, чем Х/4 периодов назад;
- цена закрытия должна быть выше, чем цена Х/2 периодов назад.
Сравнение с предыдущими периодами не является постоянной величиной, поэтому можно использовать и другие значения для определения роста индикатора и цены. Смотрим сравнительную таблицу:
нажми на график для увелияения
В отличие от индикатора ADX этот метод генерирует достаточное количество сделок, поэтому статистически более достоверен. Результаты очень позитивны, особенно на длинных интервалах. Вероятность прибыльной сделки доходит до 54,5%, а профит-фактор - до 1,19. Эксцесс на длинных интервалах заметно меньше единицы, лишь 5% испытаний из 441 (для периодов свыше 80) показали вероятность прибыли ниже 50,5%, что является очень позитивным моментом. Вывод: эффективный фильтр. Пока показал наиболее значимый сдвиг вероятности в нашу сторону.
В шестой, последней из систем, использующих внутренние фильтры, я хочу протестировать любимую теорию Ларри Вильямса. Проверю, влияет ли день недели на вероятность прибыльного исхода длинных позиций. Случайная позиция будет открываться только в определенный день недели, после чего будут измеряться показатели эффективности. Очень простой индикатор, поэтому минимальна вероятность сбоя или ошибки. Смотрим итоговую таблицу:
нажми на график для увелияения
Сразу бросается в глаза большая разница в направлении и структуре графиков. Понедельник и четверг - дни наименее пригодные для открытия длинных позиций. Вторник, четверг и пятница показывают умеренный сдвиг вероятности для длительных позиций. Показатели фильтра находятся на умеренном уровне, но дают четкое представление, когда от торговли лучше воздержаться. Вывод: эффективный фильтр, который вполне можно использовать в дополнение к более сильному.
В этой статье я рассмотрел 6 наиболее популярных фильтров, способных повлиять на эффективность сделок. Большинство из них действительно способны сместить вероятность прибыльного исхода случайной сделки в нашу сторону. Лучшие показатели продемонстрировали индикатор тренда R-квадрат, использующий при расчете линейную регрессию. Сдвиг вероятности составлял до 2%. Неплохо показал себя и индикатор "дней недели", подтвердивший теорию о важности выбора дня недели для определения направления сделки. Поэтому можно рекомендовать включение несложных фильтров в торговую систему.
Тарас Правдюк
Русский Трейдер