10 февраля 2017 в 12:29

Лаборатория торговых систем. Часть 3: Как использовать уровни Фибоначчи с целью создания выигрышной системы.

Автор «Лаборатории торговых систем» ставит перед собой цель исследовать параметры, которые могут принести прибыль в долгосрочной перспективе. В третьей части серии статей он займётся работой с уровнями Фибоначчи*. Тестирование проведётся на примере немецких акций без фиксированного дивиденда, цена которых вновь упала по отношению к торговому диапазону одного из уровней по Фибоначчи. Годовой доход от данной системы в течение 10 лет составил от 13 % до 59 %.

Общий обзор системы

Данный шаблон на основе уровней Фибоначчи должен создать сигнал на покупку при достижении определённого спада по Фибоначчи. Главная идея заключается в том, что между большим спадом, измеренным в пунктах, который имел место в прошлом после достижения максимума, и возвратом к максимуму, создаётся диапазон в процентах от 0 (минимум отката) до 100 % (максимум отката). Если цена корректируется, начиная с определённого максимума, и достигает, например, 78,6 %, будет достигнут уровень в 78,6 % на откате. На рис. 1 показан пример данной операции. Максимум после разворота находится на уровне в 3,47 евро, минимум точки разворота на уровне в 3,10 евро. Диапазон цен, таким образом, 3,47 - 3,10 = 0,37 евро. 78,6 % отката: 3,47 – 0,786 x 0,37 = 3,18 евро. Чтобы получить точки отсчёта для данной системы, нам нужен индикатор для каждого уровня, который бы сообщал нам, где расположен уровень отката. Для этого нам нужно знать диапазон между максимумом и минимумом на каждом уровне; например, производный от предыдущих переломных моментов. В этом и заключается вся трудность.

Нам нужен индикатор точки разворота

Так как мы хотим открыть длинную позицию, используем последний максимум и минимум точки разворота. Важно в этот момент иметь в виду, что коррекция, которая имеет место после формирования диапазона между максимумом и минимумом не должна приниматься во внимание при расчёте диапазона максимум-минимум, она принимается во внимание, только если формируется новый максимум выше настоящего. Большинство наиболее популярных показателей для этого не пригодны. Таким образом, необходимо разработать индикатор, который удовлетворит наши потребности. Этот показатель должен фильтровать шум рынка (то есть, случайные небольшие колебания) с точки зрения временной оси (оси X), а также с точки зрения цены (ось Y). В соответствии с этой статьей индикатор получил название «брокер STL».

Если цена падает ниже какой-либо из линии Фибоначчи, срабатывает входной сигнал. За основу берутся поочерёдно самая низкая цена и цена закрытия соответствующего бара (свечи). Сигнал считается действительным, только если у акции достаточно силы тренда. Сила тренда измеряется с помощью индикатора ADX (средний индекс направленного движения) *, который должен быть выше определенного порога. Если при выполнении данных условий генерируется сигнал, вход осуществится на следующий день. Стоп-ордер ставится на обратном уровне от входного сигнала или на другом уровне Фибоначчи. Если лимитный ордер не вступает в силу на следующий день, он удаляется. Учитывая то, что ADX означает наличие силы тренда, а не его направление, направление определяется с помощью простого сравнение цены закрытия со средним значением* (SMA, простое скользящее среднее), в результате которого можно увидеть, возросла ли цена в течение последних 20 дней. Если цена закрытия выше SMA и SMA находится выше скользящего среднего за последние 20 дней, тренд восходящий.

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

Если цены дойдут до нашего лимита, сработает автоматический выход при достижении целевой прибыли (тейк-профита) или после определённого количества дней торгов. Кроме того, мы должны установить стоп-лосс. Тейк-профит и стоп-лосс должны располагаться на уровнях Фибоначчи. Как и в случае с входом, также проведём параметризацию выхода на основе направления тренда. На рис. 1 показан пример работы данной стратегии. После падения до уровня в 78,6 % устанавливается лимитный ордер (зелёная стрелка) на уровне в 138,2 %. В этом примере, целевая цена была достигнута на пятый день на уровне в 123,6 % (красная стрелка). Ниже мы продолжим рассматривать особенности параметризации, ведущей к получению прибыли, самые надёжные уровни Фибоначчи для входа и выхода, а также научимся определять точки перегиба и т. д.

Основы анализа

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

• Испытательный срок: как и в случае предшествующих торговых систем нашей лаборатории испытаем нашу стратегию в течение 10 лет, то есть с 2006 до 2015 года. Мы использовали исторические данные в течение этих лет, а результат получившегося шаблона был смоделирован на основе особых параметров системы в течение этого десятилетия.

• Портфель: в нашем анализе мы использовали акции, входящие в DAX, MDAX и TecDAX. Из общего количества в 110 значений исключаем те, которые не имеют историю цен за период тестирования, чтобы избежать искажений. Остаются 83 акции. В этом случае набор используемых индексов основывается на их состоянии от 21/03/2016.

• Временной диапазон: используем дневной график.

• Данные: можно использовать бесплатные данные с свободным доступом, которые описывают цены открытия, закрытия, максимумы и минимумы. Используем биржу Xetra. Цены соответствуют корпоративным акциям (сплит, дивиденды).

• Комиссии: 0,1 % от стоимости покупки и продажи соответственно.

• Скольжение: также 0,1 % от покупки и продажи. Так как мы открываем позиции с застрахованными лимитными ордерами, не обязательно иметь в виду скольжения.

Установка параметров

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

Размер позиции: Во избежание риска, распределим наш капитал равномерно, по крайней мере, на 7 позиций. Так что, каждая конкретная позиция будет соответствовать 15 % установленного капитала. Если увеличить количество позиций, усилие для создания и регулирования позиций также увеличиться. Рассчитываем максимум на 15 позиций, что составляет 7 % от капитала.

Входной сигнал:

а) Создается сигнал на вход, когда минимум или цена закрытия падает ниже определенного уровня Фибоначчи. Уровни Фибоначчи: 38,2 %, 50 %, 61,8 %, 76,4 %, 78,6 %, 100 % и 123,6 %. Для определения критических точек индекса «брокера STL» используем 1, 2 или 3 свечи и определим ATR с 0; 0,5; 1; 1,5 и 2. Как период расчёта ATR используем 10, 20, 30, 40, 50 и 60 периодов.

б) уровень отката определяется в пределах указанных значений с учётом направления тренда. Предположим, что тренда восходящий, если цена закрытия с интервалом в 10 выше, чем SMA, рассчитанное за периоды 100 и 200, и, кроме того, рассчитанное SMA выше, чем за последние 20 дней. Предположим, что тренд нисходящий, когда цена закрытия ниже скользящего среднего, и SMA находится ниже, чем за последние 20 дней. Если направление тренда не определенно, торговля не начинается.

Сигнал фильтра: с учетом того, что во время бокового движения мы не ожидаем заработать с параметрами Фибоначчи, войдём, только если существует сила тренда. Сила тренда определяется с помощью индикатора ADX с длиной периода от 10 до 60. Тренд считается достаточно сильным, когда таким образом рассчитанный ADX выше 0, 10, 20 или 30.

Классификация: индикатор классификации показывает, в каком порядке сигналы должны привести к формированию ордеров на покупку. Это важно в случае, если общая стоимость входов по сигналам превысит наши свободные средства. Как и в предыдущих выпусках, мы хотим использовать в качестве показателей классификации, кроме того, отношение между индексом относительной силы RSI *, индекс среднего направления движения (ADX), индекс товарного канала (CCI), нормализированный средний истинный диапазон (NATR), стандартное отклонение, доходность, коэффициент Шарпа *, волатильность или расстояние до среднего значения. Индикатор классификации рассчитывается по тому же периоду ATR * и ADX.

Вход: Для расчёта лимита на покупку, также используется откат по Фибоначчи, который может быть точно таким же, как и начальный сигнал, но может быть и меньше. Также он может быть полезен, чтобы определить верхнюю границу. Лимитный ордер будет действителен в течение одного дня и он должен быть удален, если он не придёт в действие. Данный лимит может изменяться в зависимости от направления тренда. Учитываются следующие линии Фибоначчи: 21,4 %, 23,6 %, 38,2 %, 50 %, 61,8 %, 76,4 %, 78,6 %, 100 %, 123,6 %, 127,2 %, 138,2 %, 150 % и 161,8 %.

Выход: в этой конфигурации выход имеет место при достижении стоп-лосса или тейк-профита или через несколько дней торгов.

Стоп-лосс: включает в себя следующие уровни отката, которые отличаются в зависимости от направления тренда: 50 %, 61,8 %, 76,4 %, 78,6 %, 100 %, 123,6 %, 127,2 %, 138,2 %, 150 %, 161,8 %, 176,4 %, 200 %, 261,8 % и 423,6 %. Лимит потерь не корректируется в течение периода поддержания позиции.

Тейк-профит: устанавливается подобно стоп-лоссу, за исключением того, что здесь мы используем уровни Фибоначчи по-разному для восходящих и нисходящих трендов. Существуют, однако, проценты, которые относятся к диапазону между максимумом разворота и минимумом-концом разворота. Учёт значения входа может послужить хорошим началом для расчёта тейк-профита. Пример: максимум — 100, минимум — 80. Вход на уровне 50 %, то есть на уровне в 90. Если мы хотим установить тейк-профит на уровне в 150 %, значит он будет на уровне в 120 (вход 90 + 150 % разницы между 100 и 80).

Выход на основе времени: если рынок боковой, ни стоп-лосс, ни тейк-профит достигнуты не будут, поэтому мы должны будем выйти из позиции, чтобы освободить капитал для входа в другие более прибыльные позиции. Используем временной диапазон от 1 до 10 дней, и максимальный срок удержания должен быть равен 2 неделям. Здесь опять же учитываются нисходящие и восходящие тренды.

Результаты

С целью определения и расчёта рентабельности в результате изменения параметров в пределах разумного периода времени используем новый метод оптимизации с помощью искусственного интеллекта, так называемый алгоритм PBIL (на основе поэтапного изучения). Этот метод описывает все возможные комбинации индикаторов и параметров с помощью вектора вероятностей (основанный на образце), который учится на каждом этапе теста (Incremental Learning). Все комбинации в начале процесса обладают одинаковой вероятностью. Но вероятность выигрышных параметров увеличивается на каждом этапе. Применяем метод оптимизации с целью поиска максимально устойчивой системы.

Пример использования стратегии показывает в деталях параметризацию настроек, которые подробно описаны ниже. Капитал распределяется равномерно на 7 позиций. Общий капитал в 140 000 евро после разделения на семь позиций подразумевает покупку акций на 20 000 по каждой позиции. Если цена акции опускается ниже 78,6 % от отката, будет подан сигнал для входа. Точки изгиба для определения отката можно рассчитать с помощью индекса брокера STL 2 свечей и ATR 1,5 по 40 периодам. Вход будет иметь место только тогда, когда ADX по 40 периодам превысит 10. Таким образом, тренд будет считаться восходящим или нисходящим, следовательно, не будет никакого бокового движения. Тренд будет считаться восходящим, когда цена закрытия SMA (140) и скользящее среднее (140) выше, чем за последние 20 дней. Аналогично измеряется нисходящий тренд, цена закрытия должна быть ниже скользящего среднего (140) и ниже его минимального значения за последние 20 дней. Используйте NATR (нормализованный средний истинный диапазон), рассчитанный за 40 периодов, в качестве индикатора классификации. Выбирайте акции с повышенной волатильностью. Входите со стоп-лоссом на уровне в 138,2 % от отката. Стоп-лосс должен быть действителен только в течение одного торгового дня. Ограничьте потери с помощью стоп-лосса на уровне в 423,6 % от отката. Тейк-профит должен быть установлен на уровне в 123,6 % от расширения Фибоначчи в случае восходящего тренда, в нисходящем тренде он будет установлен на уровне в 150 % от расширения. Если не удается достигнуть стоп-лосса или тейк-профита, выйдите из позиции после открытия на девятый день (восходящий тренд) или на шестой день (нисходящий тренд). Перечисленные параметры оставались без изменений в течение всего срока испытания, с 2006 до 2015 года.

На рис. 2 показана эволюция капитала (верхняя часть) и кривая потерь (нижняя часть) системы с применением описанной параметризации. Первоначальный капитал в 100 000 евро к концу 2015 года вырос бы до 1 412 816 евро. Как обычно, рассчёт производился с учётом комиссий и скольжения, но не учитывался ни вывод капитала, ни налоги. На рис. 3 показано распределение прибыли в течение отчётного периода. В таблице 1 приведены наиболее важные параметры статистики системы.

Следует подчеркнуть, что в около 84 % случаев имели место выходы по временному фактору. Тейк-профит был достигнут примерно в 12 % случаев. У нас уже были похожие результаты в одном из прошлых анализов. Такие результаты в данном анализе показывают, что уровень Фибоначчи может быть выгодно использован для входа, но лучше всё-таки не доходить до расширения для выхода. В оставшиеся 4 процента случаев был достигнут стоп-лосс, который был установлен в качестве границы безопасности на уровне в 423,6 %, т.е. относительно далеко от входа.

Заключение

Несмотря на то, что открытие чисел Фибоначчи имело место во времена средневековья, их применение до сих пор помогает нам получать прибыль. Возможно, из-за большой популярности уровней Фибоначчи, мы продолжаем находить им самое разное и удивительное применение. В нашем случае, протестированная система может принести прибыль в среднем в 30 процентов годовых. Максимальные потери в 24 % были зафиксированы в 2008 году. Оптимизация портфеля не учитывалась, хотя она, возможно, могла бы улучшить конечный результат. Для сравнения: DAX во время испытательного срока имел доходность в среднем около 7 %, но его максимальная потеря достигла почти 55 %.

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

 

 

 

 

 

 

Ссылка на Часть 3

Ссылка на Часть 2

Оставить комментарий
Комментарии
Комментарий отправлен на модерацию.
Не удалось отправить комментарий.