HOME

"Кажется очевидным, что наши ТС непосредственно торгуют колебания цен СРЕДНЕЙ частоты, которые — в целях их исследования — было бы полезно отделить, с одной стороны, от высокочастотного шума, а с другой стороны — от низкочастотного медленного дрейфа, который является слишком медленным, чтобы на нем можно было нажиться, однако при этом именно он делает сигнал нестационарным. Казалось бы, прекрасное средство для такого разделения — те самые "центрованные" фильтры… Однако проблема с ними в том, что они не могут быть применены к крайним правым, самым последним точкам ценового ряда. То есть мы не можем непосредственно применить эти фильтры в МТС. Однако, возможно, нам следует применять эти фильтры для измерения каких-то "свойств" ценового ряда, КАК ЦЕЛОГО, хотя и без "полноценного" участия последних точек, а уже эти "измеренные свойства" ряда использовать в алгоритме МТС, который уже является ВЫЧИСЛИМЫМ вплоть до самых последних правых точек ряда и, соответственно, использует не "центрованные", а обычные скользящие средние ... Как вот только пробрасывать мостик от «свойств», измеряемых "центрованными фильтрами" к свойствам, измеряемым "обычными" скользящими средними, — вот вопрос?"

Иван FXS (форум у Мойши).

Индикатор "Centered Extremum Range" (CER) ©

(Центрированный разброс экстремумов)

С изменениями и дополнениями от 26.09.2001.

Данная методика является продолжением исследований в области создания простых "нематематических" индикаторов из серии NRTR (Nick Rypock Trailing Reverse). Особо внимательные посетители моего сайта и некоторые читатели "Современного трейдинга" могли заметить, что суть этих индикаторов заключается в том, что они "отстоят" на некотором расстоянии от ближайших локальных экстремумов цен закрытия. (http://konkop.narod.ru/nrma.htm , "Индикатор тренда на основе прорыва динамического ценового канала" )

Объективной проблемой этого метода является определение расстояния, на которое индикатор должен "отстоять" от цен. В статье в "Современном трейдинге" № 4 за 2001 г. я привел два способа установки этого расстояния (параметра NRTR) – в процентах и в мерах ATR. Несмотря на работоспособность, оба метода не являются достаточно объективными. В первом случае полностью отсутствует какая-либо адаптация параметра к текущему состоянию рынка. Во втором – индикатор, базирующийся на ценах закрытия, использует в параметре взаимное расположение других составляющих ценового ряда (High, Low). Кроме того, я вообще предпочитаю работать только с ценами закрытия, уменьшая таким образом базу нестационарных составляющих процесса (будь моя воля, я бы и цены закрытия исключил из анализа, только что-то меня останавливает J).

Логичным продолжением поисков оптимального адаптированного способа установки параметра NRTR стало создание нового индикатора, который я назвал "Centered Extremum Range" (CER), или "Центрированный разброс экстремумов".

В данном случае, под экстремумом цены мы будем понимать "точку перелома". Т.е. верхним экстремумом будет Close, у которой соседние значения цены слева и справа ниже, в свою очередь, нижним экстремумом будет Close с более высокими соседними значениями.

Рис.1. Красные стрелки – верхние экстремумы цены, синие стрелки – нижние экстремумы. Зеленая линия – центрированная 3-х периодная ПСС.

Таким образом, мы находим точки, в которых предыдущее направление движения цены меняется на противоположное. Эти "переломы" цен являются весьма важными с точки зрения NRTR, т.к. именно после ближайшего максимального (минимального) экстремума, индикатор принимает горизонтальное положение (в простом процентном варианте). Как бы занимая выжидательную позицию (дойдет или нет до него цена?). При этом разумным будет условие, чтобы NRTR, в этот момент, отстоял от цен на расстоянии не меньшем, чем "путь" до предполагаемого нового противоположного экстремума (разворота) цены.

Для вычисления этого предполагаемого расстояния мы воспользуемся измерением разброса экстремумов от среднего значения цены в текущий момент времени. Вот тут, как нельзя кстати, оказывается, известный, но редко применяемый по ряду причин, индикатор – центрированная скользящая средняя. Общеизвестный факт, что простые скользящие средние (ПСС) страдают одним недостатком – информация, которую они несут, имеет лаг (запаздывание) в половину периода усреднения. Точный результат можно получить, если сдвинуть ПСС назад (влево на графике цен) на величину этого запаздывания (точнее, на величину (n-1)/2, где n – период усреднения ПСС). Такая сдвинутая назад ПСС называется "центрированной". Однако мы тут же сталкиваемся с неприятным обстоятельством – отсутствие информации для последних значений цен в правой части графика. (см. эпиграф :)) Тем не менее, центрированную ПСС можно эффективно использовать…

Для формирования экстремума необходимо наличие трех ценовых значений. Узнать, что "сегодня" был экстремум, мы сможем только "завтра", при этом необходимо учитывать и "вчерашнюю" цену. Таким образом, точной (не запаздывающей) средней ценой для сформировавшейся точки экстремума будет значение трех-периодной ПСС, сдвинутой на (3-1)/2 = 1 периодов назад (т.е. как раз под точкой экстремума. Зеленая линия на рис.1). На самом деле, при расчетах, ничего сдвигать не надо, т.к. в трех-периодной ПСС мы просто "сегодня" получаем центрированную среднюю цену для "вчерашнего" дня.

Дальше все просто. Нам остается лишь вычислить расстояния от "точной" средней до верхних экстремумов, которые находятся выше нашей центрированной ПСС и до нижних экстремумов, которые находятся ниже ЦПСС (почти ЦК КПСС :))

Так мы получим величину разброса экстремумов от центрированного среднего значения цены сформировавшегося экстремума. Физический смысл полученного индикатора можно обозначить, как волатильность экстремумов. Мы вычисляем, насколько далеко цены уходят от средней, прежде чем наступит перелом. На спокойном рынке, когда цены совершают незначительные колебания, значение индикатора будет относительно низким. При возрастании размаха ценовых колебаний, значение индикатора будет увеличиваться. Полученные данные можно графически изобразить различными способами. На приведенном ниже рисунке, в средней части, показаны отдельно разбросы верхних (красная линия) и нижних (синяя линия) экстремумов. В нижней части рисунка, абсолютные значения разброса и верхних и нижних экстремумов изображены в виде светло-зеленой гистограммы. Темно-зеленая линия представляет собой абсолютное значение разброса экстремумов, сглаженное трех-периодной ПСС. Именно в таком виде полученный индикатор уже можно использовать в качестве адаптированного к рыночным условиям параметра для NRTR. С целью более удобного применения полученного индикатора все вычисления произведены в процентах.

Код индикатора CER для Омеги:

{***************************************
Written by: Konstantin Kopyrkin (aka konkop) 22.09.2001
Description: Centered Extremum Range (CER) indicator.
Copyright(c) konkop, 2001
****************************************}
Inputs: Len(1); {Smoothing length}
Vars: CentAvg(C), Up(0), Dn(0), CER(0);

CentAvg = Average(C,3);
If C[2]<C[1] and C<C[1] then begin
Dn = 0;
Up = 100*(C[1]-CentAvg)/CentAvg;
End;
If C[2]>C[1] and C>C[1] then begin
Up = 0;
Dn = 100*(C[1]-CentAvg)/CentAvg;
End;

CER = Up – Dn;
Plot1(Average(CER,Len),"CER");

Таким образом, мы получили индикатор, который показывает в процентном выражении, насколько далеко от средней цены происходили ближайшие локальные развороты цен. Использование центрированной скользящей средней в расчетах повышает точность и объективность полученных результатов. Базовый (несглаженный) CER лишен изменяемых параметров, что позволяет избежать какой-либо "подгонки" индикатора, при использовании его в торговых системах. Сглаживать или нет CER - вопрос предпочтений. На самом деле, я не заметил особых отличий в использовании сглаженного и несглаженного индикатора, просто, интуитивно, хочется избавиться от случайных (а может и нет?) выбросов. Например, 30%-й "хвост" на Сбербанке в сентябре 1998 года выглядит довольно внушительно, тем не менее, влияния на сделки не оказывает.

В самом общем случае можно принять, что прогнозируемый "размах" ценового движения между противоположными экстремумами будет равен удвоенному значению CER. В таком (или похожем) виде, данный индикатор можно использовать в качестве адаптированного параметра NRTR. В этом случае, при низкой волатильности экстремумов, когда возможный размах ценового движения невелик, индикатор NRTR будет приближаться к текущим ценам. При высокой волатильности экстремумов, NRTR будет отодвигаться от цен, давая простор широким пилообразным колебаниям и фильтруя ложные сигналы. Как один из вариантов использования адаптированного параметра на основе сглаженного CER, я умножил его значение на 2.2 (для установки небольшого запаса в ценовых движениях), с дополнительным условием, что CER не может быть меньше 1% (при снижении волатильности экстремумов до "неприлично низкого" уровня). Сравнительные результаты торговых систем приведены в конце статьи.

В заключение, хочу попросить зубров от математики не судить меня строго за неточность терминологии и формулировок. Мне и так смешно видеть, до каких "дебрей" я докатился JJJ

Дополнения от 26.09.2001

На этом этапе, по ставшей уже доброй традиции, к процессу подключился Дм. Толстоногов (DT). Он предложил преобразовать формулу CER следующим образом:

Inputs: Len(1);{Smoothing length}
Vars: CentAvg(C), Up(0), Dn(0), CER(0);

CentAvg = Average(C,3);
If C[2]<C[1] and C<C[1] then Up = 100*(C[1]-CentAvg)/CentAvg;
If C[2]>C[1] and C>C[1] then Dn = 100*(C[1]-CentAvg)/CentAvg;
CER = Up – Dn;
Plot1(Average(CER,Len),"CER");

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

Вот как такой индикатор выявляет зоны с относительно высокой волатильностью экстремумов (в данном примере, индикатор сглажен 3-х периодной ПСС):

Вторым предложением DT было заменить простую центрированную скользящую среднюю на экспоненциальную, т.к. «ФЧХ у нее лучше». Для этого третью строчку кода надо изменить, как в примере ниже:

Inputs: Len(1);{Smoothing length}
Vars: CentAvg(C), Up(0), Dn(0), CER(0);

CentAvg = 0.5*(С + CentAvg[1]);
If C[2]<C[1] and C<C[1] then Up = 100*(C[1]-CentAvg)/CentAvg;
If C[2]>C[1] and C>C[1] then Dn = 100*(C[1]-CentAvg)/CentAvg;
CER = Up – Dn;
Plot1(Average(CER,Len),"CER");

Это уже специфические «математические» преобразования, в которых я не силен, но внешний вид индикатора слегка изменяется, а тестирование систем с использованием CER показывает значительное улучшение результата.

Вот как выглядит полученный индикатор, сглаженный 3-х периодной ПСС (синяя гистограмма внизу рисунка), и он же, примененный в качестве параметра NRTR (красная кривая). Хорошо видно, как на участке рынка с большим разбросом экстремумов, NRTR отодвигается от текущих цен (желтый овал), в свою очередь, на однонаправленных участках (серый овал), индикатор приближается вплотную к ценам. Для сравнения – синяя кривая – NRTR с фиксированным процентным параметром.

Пока все. Но, судя по идущему обсуждению, продолжение следует…

© Copyright, konkop 2001

HOME

Приложения:

Результаты теста торговой системы для дневных данных РАО ЕЭС (ммвб) на базе NRTR. Сделки только лонг, капитал на сделку $10 000, торговля в направлении подтвержденного повышательного тренда. В качестве параметра индикатора NRTR использовался фиксированный процент (K = 5%).

Total Net Profit $38 504.54   Open position P/L $0.00
Gross Profit   $52 437.78   Gross Loss   ($13 933.24)
Total # of trades 52   Percent profitable 50.00%
Number winning trades 26   Number losing trades 26
Largest winning trade $8 684.47   Largest losing trade ($1 111.11)
Average winning trade $2 016.84   Average losing trade ($535.89)
Ratio avg win/avg loss 3.764   Avg trade (win & loss) $740.47
Max consec. Winners 4   Max consec. losers 4
Avg # bars in winners 11   Avg # bars in losers 4
Max intraday drawdown ($2 288.68)        
Profit Factor   3.76  

Результаты теста той же торговой системы, с использованием в качестве параметра NRTR адаптированного коэффициента на основе Centered Extremum Range (K = 2.2*(IFF(CER < 1, 1, CER))).

Total Net Profit $43 459.64   Open position P/L $0.00
Gross Profit   $55 650.18   Gross Loss   ($12 190.54)
Total # of trades 53   Percent profitable 58.49%
Number winning trades 31   Number losing trades 22
Largest winning trade $9 650.42   Largest losing trade ($1 033.60)
Average winning trade $1 795.16   Average losing trade ($554.11)
Ratio avg win/avg loss 3.240   Avg trade (win & loss) $819.99
Max consec. Winners 6   Max consec. losers 3
Avg # bars in winners 9   Avg # bars in losers 3
Max intraday drawdown ($2 494.75)        
Profit Factor   4.57  

Может показаться, что прирост результатов не столь значителен, как мог бы быть. Однако не стоит забывать, что торговые системы на основе NRTR, уже в базовом варианте, настолько хороши и робастны, что для достижения даже небольших улучшений требуются поистине титанические усилия J Кроме того, на менее ликвидных бумагах эффект оказался более впечатляющим. На скорую руку проверил Sber, Nkel, Sngs, Msng, Tatn, Lkoh, Gazp. Во всех случаях (кроме Sngs, на котором получились те же результаты), профит-фактор увеличился от 1.5 до 2-х (!) раз.

 

Hosted by uCoz