AlgoTrading
AlgoTrading Блог компании StockSharp
13 мая 2013, 15:33

Торговая система на основе индикатора ConnorsRSI

ConnorsRSI

Торговая система на основе индикатора ConnorsRSI

В этой статье я хотел бы рассказать вам о новом индикаторе, который был недавно реализован в Wealth lab. Данный индикатор называется ConnorsRSI.
Данный индикатор был разработан Ларри Коннорсом из Connors Research его доклад вы легко сможете найти в интернете по запросу
“Connors Research Trading Strategy Series An Introduction to ConnorsRSI”. И так давайте рассмотрим, что же из себя представляет индикатор ConnorsRSI.

ConnorsRSI состоит из трех компонентов. Два из них используют расчеты, проводимые индикатором RSI.
Третий компонент измеряет последние ценовые изменения по шкале от 0 до 100. В сочетании все эти три компонента формируют осциллятор, то есть индикатор,
который колеблется в диапазоне от 0 до 100 и указывает на уровень перекупленности или перепроданности. А сейчас, давайте вспомним, что из себя представляет
RSI.

Индикатор RSIсравнивает величину подъемов цены актива за последнее время с величиной ее падений и предоставляет эту информацию в виде числа находящегося
в диапазоне от 0 до 100. Единственный параметр данного индикатора это временной период, то есть количество свечек используемых в расчете индикатора.
В индикатор заложена простая идея:
Рост цены отражает силу быков, ее падение говорит о преимуществе медведей. Проше говоря, индикатор RSI считает долю бычьих белых свечей на выбранном интервале.

Если RSI>70%, то на рынке правят быки, цены растут.
Если же RSI<30%, то настроение определяют медведи, цены падают.


Ну а теперь давайте вернемся к нашему индикатору ConnorsRSI. Как я уже говорил, ConnorsRSI состоит из 3 компонентов.

Ценовой Импульс (Price Momentum) — использует индикатор RSI для измерения уровней перекупленности и перепроданности рынка.
По умолчанию, ConnorsRSI использует RSI с периодом 3 применительно к ценам закрытия. Будем ссылаться на это значение как на RSI(Close,3).
Длительность Бычьего/Медвежьего Тренда: Когда текущая цена закрытия ниже предыдущей, это значит, что рынок закрылся с понижением. Если наоборот,
то рынок закрылся с повышением. Исследования Connors Research показали, что чем дольше длиться медвежий тренд (последовательность из нисходящих цен закрытия),
тем более сильным будет рост, когда рынок развернется. То же самое можно сказать и о бычьем тренде.

Иными словами, длительность тренда – это также индикатор перекупленности и перепроданности рынка.
Но проблема в том, что теоретически она неограниченна во времени. Хотя зачастую мы можем установить некоторые искусственные границы, основываясь на прошлом.
К примеру, изучив исторические данные, можно заметить, что на определенном инструменте было очень мало случаев,
когда последовательность из нисходящих или восходящих ценовых баров длилась больше 20 баров.
Но это еще не дает нам значения индикатора, которое вписывается в диапазон от 0 до 100.

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

Цена закрытия второго бара выше, чем цена закрытия первого бара, поэтому мы наблюдаем бычий тренд, который длится один бар.
На третьем баре цена снова закрывается выше предыдущей. Теперь наш тренд длится уже два бара. На четвертом баре цена закрывается ниже цены предыдущего бара,
давая нам медвежий тренд длительностью в один бар (тут мы указываем негативное значение: -1). Медвежий тренд продолжается на 5 и 6 баре (-2 и -3).
На седьмом баре цена закрытия остается неизменной, поэтому показатель продолжительности тренда возвращается к 0.
На восьмом баре цена закрытия снова растет, тем самым увеличивая показатель продолжительности тренда до 1.

Следующая часть в решения проблемы заключается в способе применения расчетов RSI к последовательности значений длительности тренда (о которой только что шла речь).
По умолчанию, для этой части расчетов для ConnorsRSI используется период 2. Будем обозначать его как RSI(Streak,2).
В результате мы получаем следующую зависимость:
чем больше продолжительность бычьего тренда, тем ближе к 100 будет значение RSI(Streak,2), и наоборот, чем больше продолжительность нисходящего тренда,
тем ближе к 0 будет значение RSI(Streak,2). Теперь у нас есть два показателя:
  • RSI(Close,3)
  • RSI(Streak,2)
Оба используют шкалу от 0 до 100. Которая указывает на перекупленность или перепроданность рынка.

Относительная Величина Изменения Цены: Это последний компонент индикатора ConnorsRSI. Он измеряет размер текушего ценового изменения относительно предыдущих цен.
Для этого используется градация в процентах (Percent Rank). Конкретное значение указывает на процент прошлых значений, которые меньше текущего значения.
В данном случае мы измеряем расчеты не в рублях, а в процентах от цены предыдущего бара.
Этот процентный показатель прибыли или убытка рассматривается как однодневный возврат средств.
Если, цена закрытия предыдущего бара была 80.00, а цена закрытия текущего равна 81.60, то данный показатель составит: (81.60 ‐ 80.00) / 80.00 = 0.02 = 2.0%.
Чтобы определить значение Percent Rank, нам нужно выбрать временной период.

Значением Percent Rank – это сумма значений за выбранный период, которые меньше текущего значения, деленное на общее количество значений за данный период.
Например, если мы выбрали период 20 баров, то нужно сравнивать текучее 2.0% значение с аналогичными значениями для всех 20 баров выбранного периода.
Давайте предположим, что 3 из 20 значений меньше 2.0%. В этом случае Percent Rank будет рассчитываться следующим образом:
Percent Rank = 3 / 20 = 0.15 = 15%
Временной период Percent Rank по умолчанию равен 100. Обозначается как PercentRank(100).

Мы сравниваем текуший процентный показатель с аналогичными показателями для всех 100 баров.
Конечный расчет индикатора ConnorsRSI заключается в простом вычислении среднего значения трех компонентов.
Формула с параметрами по умолчанию выглядит следующим образом: ConnorsRSI(3,2,100) = [ RSI(Close,3) + RSI(Streak,2) + PercentRank(100) ] / 3

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

Доходность:

Торговая система на основе индикатора ConnorsRSI

Характеристики:
  • Инструмент: обыкновенные акции Сбербанка (скачан с финама)
  • Таймфрейм: 1 час
  • Период тестирования: 14.05.2008 — 10.05.2013
  • Проскальзывание: не учитывалось. Комиссия 0.05 на сделку.
  • Комиссия 0.05 на сделку.


Настраиваемые параметры:
  • Oversold Level 29
  • Overbought Level 32
  • RSI Period 20
  • Streak Period 25
  • PercentRank Period 29

Алгоритм для открытия длинной позиции:
Ecли ConnorsRSI(на текущем баре)пересекает уровень перепроданности снизу вверх, то покупаем по рынку(покупка по открытию следующей свечи).

Алгоритм для закрытия длинной позиции:
Если на текушем баре обнаружен свечной паттерн LongBlackLine, то продаем по рынку(по открытию следующего бара).

Алгоритм для входа в короткую позицию:
Ecли ConnorsRSI(на текущем баре)пересекает уровень перекупленности сверху вниз, то продаем по рынку(по открытию следующего бара).

Алгоритм для закрытия короткой позиции:
Если на текушем баре обнаружен свечной паттерн LongWhiteLine, то продаем по рынку(по открытию следующего бара).

Код:

P.S.
Цель данной статьи была в том что бы донести до вас сведения о существовании такого интересного индикатора как СonnorsRSI.
В представленной стратегии есть большое пространство для манёвра по улучшению её характеристик.
К примеру, вы можете заменить код для закрытия открытых позиций на что-нибудь другое или же можно добавить какой либо фильтр для отсечения убыточных сделок.
2 Комментария
  • kasha
    13 мая 2013, 15:44
    Хочу добавить фильтр для отсечения таких постов.
    Этот сайт похож на порнографическую хрень вроде forum.mt5.com/
    Куча новых тем и 99% бредятины.
  • siva
    13 мая 2013, 15:52
    А теперь сделайте систему на RSI и посмотрите эквити.
    Называется «найди 10 отличий»

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн