Альфред Хичкок
Альфред Хичкок Копипаст
14 апреля 2014, 21:00

Последняя надежда для сливающих :)

Перепост конечно.   traderobots.ru/lab/stocks/39-2010-10-24-15-33-06

 
Торговая система на основе трендследящего фильтра NRTR
24.10.2010 18:24
 
Статья была опубликована в журнале D' в октябре 2010 года. О фильтре NRTR до этого уже писал Николай Копыркин, который на его основе делал свои торговые системы. Тем не менее, еще раз проанализировать работу этого трендового индикатора лишним не будет. Код используемой стратегии для программы Wealth-lab прилагается. 
 
 

 

 
В наборе инструментов технического анализа найдется немало полезных индикаторов, которые могут помочь выявить трендовое движение. Из них первое, что приходит на ум – это скользящие средние различных видов (включая динамические), ADX, MACD. При определенных условиях, в качестве трендовых индикаторов можно с успехом использовать и осцилляторы, в частности, RSI. Однако любой из данных методов не является идеальным. Среди наиболее очевидных недостатков, которые так или иначе относятся к каждому индикатору, можно перечислить следующие: запаздывание в определении начала и окончания тенденции, досрочный выход при не глубоких коррекциях (в меньшей степени это относится к динамическим скользящим средним), полная неспособность работать на флэтовом рынке.

Сейчас мы рассмотрим еще один трендовый индикатор, о котором впервые написал русский трейдер Николай Копыркин. Основная его идея заключается в четком следовании за трендом, без угрозы досрочного выхода на коррекциях, которые могут происходить в рамках развивающейся тенденции. Привязанность индикатора к текущим значениям цены делает его практически независимым от вычислений, которые использовались для идентификации предыдущих трендов. В основе данного метода лежит так называемый “скользящий фильтр” – Trailing Reverse Filter, поэтому сам индикатор получил название Nick Rypock Trailing Reverse, или просто NRTR. Среди других названий можно встретить Nick Moving Average – NMA Swing trading system.
 

Особенности трендов

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

Построение индикатора

Для скользящего фильтра определим величину допустимой коррекции в К процентов. Это означает, что если на рынке развивается движение против тренда, то мы допускаем снижение или повышение цены на К процентов от предыдущего максимума или минимума, в зависимости от направления тренда. Такое введение абсолютно согласуется с тем, что глубину коррекции определяют в процентах (или пунктах) от пиков или впадин основного направленного движения. Таким образом, наш индикатор будет находиться на постоянном удалении от достигнутых экстремумов цен – под графиком для восходящего тренда и над графиком при нисходящей динамике. Максимальное расстояние от графика цен до индикатора, очевидно, равно величине К, которую можно назвать размером скользящего фильтра или его чувствительностью. По мере движения цен против тренда, расстояние между индикатором и графиком цены уменьшается. Смена положения фильтра (переход на противоположную сторону относительно цены) происходит после того, как коррекция достигла своего уровня в К процентов от экстремума, то есть цена достигла линии фильтра и пересела ее. Промежуток между индикатором и ценой назовем каналом. Реализованный таким образом скользящий фильтр свободно позволяет развиваться коррекциям, глубина которых определяется параметром К. Но здесь возникает следующий вопрос: а от каких экстремумов откладывать этот уровень коррекции?
Поскольку наша система меняет направление при пробитии уровня коррекции, очень важно, чтобы он не зависел от вычисления предыдущих трендов, поэтому, когда индикатор пересекает график цены, период ценового канала (исторический период, на котором определяются экстремумы) обнуляется, а значение истинного экстремума будет равно текущему экстремуму. При этом длинна канала будет увеличиваться динамически на единицу, после формирования каждой новой свечи, начиная с момента пересечения ценами индикатора. Соответственно и значение экстремума также может меняться (в более экстремальную сторону). Тем не менее, максимальный период канала лучше ограничить сверху некой величиной. Такая подстройка периода и заключат в себе суть динамического канала для NRTR.
1
рис 1. Индикатор NRTR
 
График индикатора представлен на рисунке 1. Во время восходящего тренда он отстоит на определенном расстоянии от цены, которое меньше либо равно К, причем равенство достигается в случае формирования нового максимума. Из рисунка также хорошо видно, что если новый максимум не формируется (рынок в боковом движении или корректируется), то значение индикатора остается неизменным. Если же мы имеем новый максимум и, соответственно, восходящий тренд продолжается, то индикатор вместе с ценами тоже устремляется вверх. Но, достигнув наивысшей точки, мы начинаем корректироваться. В данном случае движение против основной тенденции превысило значение фильтра К=10%, поэтому он переворачивается на противоположную сторону, сигнализируя о смене направления основного направления на нисходящее. С этого момента начинается новый период отсчета для ценового канала. Первое расчетное значение минимума за период будет равно первому минимуму после точки разворота, а дальше – в точках локальных впадин. Увеличение значения периода ценового канала будет происходить до тех пор, пока не достигнет своей верхней границы (которую должен задать трейдер самостоятельно), либо пока цены снова не пересекут индикатор в обратном направлении.
 
 

Торговля с NRTR

Что бы посмотреть на NRTR в действии, возьмем самую простую торговую систему: будем открывать длинную позицию при пересечении индикатора ценой снизу вверх (индикатор остается внизу), а закрывать ее при пересечении индикатора ценой сверху вниз (индикатор остается вверху). Чтобы не усложнять систему, ограничимся только длинными позициями. На рисунке 2 представлено пояснение к работе этой стратегии (на акции Apple Computer Inc). В точке “Вх1” индикатор перевернулся вниз, что является сигналом к покупке, поскольку предполагается, что дальнейшее движение будет восходящим. Однако нам не повезло и цена после открытия позиции сразу начала падать. Обратим внимание, что индикатор ни разу не поменял своего значения, потому что за все время, пока позиция была активна, нового максимума так и не сформировалось. В итоге, после того, как в точке “Вых1” индикатор снова перевернулся, мы фиксируем убыток. Если бы наша торговая система предполагала наличие коротких позиций, то здесь же нам необходимо было открыться на понижение. Тем не менее, следующая наша точка входа – “Вх2”. Длинная позиция открывается после очередного переворота индикатора вниз, а также начинается новый период отсчета для ценового канала. Выход в точке “Вых2” на этот раз происходит с прибылью, а в следующий заход “Вых3” мы попадаем на весьма приличное трендовое движение. На рисунке 3 представлена кривая капитала вышеописанной стратегии.
2
рис 2. Пояснение к работе стратегии
Несложно заметить, что, как и большинство других простейших трендовых индикаторов, NRTR замечательно работает на трендовых участках, позволяя развиваться неглубоким коррекциям. В качестве некой аналогии можно привести динамические скользящие средние (VIDYA, AMA), которые также с легкостью повторяют направленные ценовые движения, “отодвигаясь” от небольших ценовых откатов. Однако и те и другие дают сбой при боковом движении.
3
рис 3. Кривая капитала NRTR

Поправка на волатильность

Развивая тему скользящих фильтров, Константин Копыркин реализовал еще один подход к вычислению трендового индикатора прорыва динамического ценового канала, адаптировав его под текущую волатильность рынка. В качестве меры волатильности для расчета индикатора будем использовать реальный торговый диапазон (ATR – Average True Range), усредненный за некоторый период. В качестве инструмента сглаживания для True Range Копыркин предложил взвешенную скользящую среднюю. Важным фактором здесь является то, что последнее входящее в нее значение усредняемой величины имеет наибольший вес по сравнению с ее предыдущими значениями. Получив таким образом взвешенный реальный торговый диапазон (Weighted Average True Range – WATR) мы можем построить NRTR, который адаптирован к текущей волатильности. Для этого из текущего значения максимального пика за расчетный период, вместо фиксированной величины K (имеется ввиду К процентов от экстремума), будем вычитать M*WATR в случае восходящего тренда. А в случае нисходящего тренда к текущему значению минимальной впадины за расчетный период будем прибавлять M*WATR. Параметр М – это коэффициент при WATR, который определяет количество средневзвешенных реальных диапазонов, на которые должен отстоять индикатор от графика цены. Копыркин рекомендует выбирать значения М из интервала от 1 до 4, исходя из ситуации на рынке, психологических предпочтений, временного масштаба и прочих индивидуальных факторов. Таким образом, при росте волатильности индикатор будет больше “отодвигаться” от цен, освобождая, таким образом, место для случайных колебаний, которые могут выбить нас из позиции. Если волатильность на рынке низкая, то нам достаточно будет относительно небольшой коррекции, чтобы перевернуть индикатор и закрыть позицию.
3
рис 4.Поправка на волатильность
На рисунке 4 представлено пояснение к простейшей торговой системе, которую мы уже рассматривали, но только для индикатора NRTR_WATR. Видно, что значение индикатора теперь меняется независимо от того, появился новый экстремум за расчетный период или нет. Изображенная на рисунке 5 кривая капитала данной торговой системы практически не отличается от своего аналога на рисунке 3, за исключением чуть больших просадок у последней.
5
рис 5. Кривая капитала с поправкой на волатильность
Код индикатора NRTR_WATR приведен в Листинге 1. Кстати сказать, WealthScript Programming Guide программы Wealth-lab, в разделе Custom Indicators со ссылкой на Константина Копыркина, приведен код индикатора NRTR_WATR, который там называют адаптивным вариантом скользящего фильтра.
 
 
    Листинг 1.Фрагмент кода для NRTR c поправкой


 
 

В Заключении

NRTR все же нельзя считать самодостаточным индикатором, который в одиночку может справиться с рынком. Основное его слабое место – боковое движение. Очевидно, что требуется дополнительный фильтр на вход, который бы мог идентифицировать флэтовый рынок, или еще один индикатор на быстрый выход из убыточных сделок боковика. Но нужно сказать, что дополнительные возможности NRTR уже давно исследованы до нас Константином Копыркиным. Поэтому нам остается только посмотреть их результаты и рассказать о них в одном из следующих номеров.
 
 
Автор: Максим Ремизов,
Опубликовано в журнале D' (D-Штрих) №19 (103) от 18 октября 2010 года
3 Комментария
  • Евгений Черных
    15 апреля 2014, 08:21
    Этой системе уже как сто лет в обед
  • bambim
    15 апреля 2014, 09:03
    «О фильтре NRTR до этого уже писал Николай Копыркин»
    Он не Николай, он Константин
  • eevv
    15 апреля 2014, 09:04
    … только автор не Николай, а Константин Копыркин

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

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