Поговорим о фильтрах (индикаторах).Часть 1.

27 августа, 2011

Автор: Николай Камынин

Задача любого трейдера (робота) на фондовом рынке сводится к фильтрации получаемой информации в конечную точку решения.

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

При этом нам остается лишь догадываться, каким образом было получено то или иное решение, о котором говорят как об озарении или интуиции.

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

Большинство широко известных индикаторов, являются либо фильтрами нижних частот (интеграторами), либо фильтрами верхних частот (дифференциаторами).

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

Данная статья посвящена фильтрам нижних частот ( мувингам, скользящим средним)

Применение любого метода (фильтра) для предсказания поведения цены в будущем всегда основано на некоторой модели предсказываемого процесса.

В основе применения мувингов (фильтров нижних частот)  лежит гипотеза о том что , движение цен обладает инертностью и если движение происходит в некотором направлении, то более вероятно, что оно продолжится в этом же направлении.

Поэтому будущее направление движения цен определяется путем сравнения текущей цены со средним значением на интервале наблюдения в прошлом.

Для оценки среднего значения цены применяются фильтры нижних частот(мувинги).

Простейший фильтр нижних частот представляет собой арифметическое среднее цен( С ) на некотором интервале (T), либо по заданному (N) числу сделок.

Интервал T называют интервалом наблюдения.

Предположим, что интервал наблюдения мы оставляем неизменным.

Введем минимальный тайм-фрейм в виде DT, тогда интервал наблюдения Т можно заменить

числом отсчетов на интервале N=T/DT.

Таким образом, в начальный момент, средняя цена на интервале N определяется как Y[0]=(x[1]+x[2]+….x[N])/N;

Тогда при появлении новой сделки x[N+1] , новое значении средней цены запишется как

Y[1]=(x[2]+….+x[N]+x[N+1])/N;

или

Y[1]=Y[0]+(x[N+1]-x[1])/N;

Далее Y[2]=Y[1]+(x[N+2]-x[2])/N;

Обозначим через n –номер очередного отсчета графика цены.

Тогда формулу скользящего среднего можно записать в виде:

Y[n]=Y[n-1]+(x[n]-x[n-N])/N;

Или

Y[n]=x[n]*(1/N)+Y[n-1]-x[n-N]/(1/N); (1)

A=(1/N)

Y[n]=x[n]*A-x[n-N]*A+Y[n-1];

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

Поэтому в общем случае фильтр первого порядка, к которым относится мувинг, запишется в виде Y[n]=Сумма(Ak*x[n-k])-A*y[n-1]

Фильтр нижних частот запишется в виде

Y[n]=A*Y[n-1]+X[n]*(1-A); (2)

тоже позволяет оценить среднюю цену на некотором интервале наблюдения.

В отличии от приведенной выше формулы (1), вычисление по формуле (2) проще, так как не требует помнить предыдущие значения цен X[].

Фильтры, в которых каждое результирующее значение вычисляется на основе всей исходной информации на интервале наблюдения, называется КИХ фильтром,

Фильтр , в которых каждое результирующее значение вычисляется на основе предыдущей оценки результата, называется БИХ фильтром.

В БИХ фильтре , текущее значение средней цены определяется как предыдущее значение, умноженное на коэффициент A<1, увеличенное на значение новой цены, умноженное на весовой коэффициент (1-A)<1.

Коэффициент A называют коэффициентом памяти.

Чем ближе этот коэффициент к 1, тем больший вклад в значение текущей оценки среднего вносит предшествующая оценка среднего.

В предельных случаях получаем:

Если A=1, то Y[n]=Y[n-1], — новые значения не влияют. Среднее не зависит от будущего.

Если A=0, то Y[n]=X[n] – история не влияет. Среднее не зависит от прошлого.

Коэффициент А часто определяют через период усреднения мувинга.

Таким образом, изменяя величину коэффициента A, мы меняем инерционность оценки среднего значения.  Чем ближе коэффициент А к 1, тем медленнее изменяется сигнал на выходе фильтра и более плавно изменяется индикатор мувинг.

Вопросы для размышления:

1) Возможно ли построить успешную торговую систему на мувингах с неизменным коэффициентом «A»

для произвольных рынков и продолжительных интервалов торговли ?

2) Можно ли превратить убыточную систему в прибыльную на исторических данных путем подгонки коэффициента «А»?

3) Если Вам предлагают успешного робота на мувинге и предлагают самим подобрать «A»(период мувинга). Что же Вы покупаете в действительности?

Работа робота с 22.08.2011 по 26.08.2011

26 августа, 2011

Робот торгует акциями Сбербанка обычка.
Без плеча.
Без реинвестирования прибыли.
Торговля на 100 тыс.руб.
Тайм-фрейм 5 минут. Связка Амиброкер-QUIK.
комис.брокера 0.35%
Сигнал формируется в 10 секундный интервал на закрытии 5 минутной свечи.
На открытии следующей свечи, при наличии сигнала  совершается сделка.
Если система была в лонге, то лонг закрывается и открывается шорт и наоборот.
Основа алгоритма робота -фильтр Кауфмана и уровни поддержки и сопротивления.

Statistics
All trades Long trades Short trades
Initial capital 100000.00 100000.00 100000.00
Ending capital 125255.04 113565.06 111689.99
Net Profit 25255.04 13565.06 11689.99
Net Profit % 25.26 % 13.57 % 11.69 %
Exposure % 88.14 % 45.12 % 43.02 %
Net Risk Adjusted Return % 28.65 % 30.06 % 27.18 %
Annual Return % 83910113974.51 % 10992025.45 % 2405918.11 %
Risk Adjusted Return % 95203045704.53 % 24361162.76 % 5592953.37 %

All trades 29 15 (51.72 %) 14 (48.28 %)
Avg. Profit/Loss 870.86 904.34 835.00
Avg. Profit/Loss % 0.87 % 0.90 % 0.84 %
Avg. Bars Held 18.24 17.73 18.79

Winners 22 (75.86 %) 11 (37.93 %) 11 (37.93 %)
Total Profit 28672.67 14733.43 13939.24
Avg. Profit 1303.30 1339.40 1267.20
Avg. Profit % 1.30 % 1.34 % 1.27 %
Avg. Bars Held 20.73 22.82 18.64
Max. Consecutive 12 7 6
Largest win 3717.36 3635.28 3717.36
# bars in largest win 26 74 26

Losers 7 (24.14 %) 4 (13.79 %) 3 (10.34 %)
Total Loss -3417.62 -1168.37 -2249.25
Avg. Loss -488.23 -292.09 -749.75
Avg. Loss % -0.49 % -0.29 % -0.75 %
Avg. Bars Held 10.43 3.75 19.33
Max. Consecutive 2 2 1
Largest loss -882.78 -682.73 -882.78
# bars in largest loss 30 6 30

Max. trade drawdown -2400.84 -1632.39 -2400.84
Max. trade % drawdown -2.36 % -1.56 % -2.36 %
Max. system drawdown -2755.66 -1668.83 -2400.84
Max. system % drawdown -2.59 % -1.54 % -2.36 %
Recovery Factor 9.16 8.13 4.87
CAR/MaxDD 32453483971.61 7125500.83 1019476.09
RAR/MaxDD 36821193196.79 15791947.19 2369940.28
Profit Factor 8.39 12.61 6.20
Payoff Ratio 2.67 4.59 1.69
Standard Error 1252.00 929.59 962.93
Risk-Reward Ratio 1956.54 1265.61 1322.10
Ulcer Index 0.73 0.62 0.70
Ulcer Performance Index 115268685203.15 17669776.23 3446667.22
Sharpe Ratio of trades 36.26 42.90 31.80
K-Ratio 0.2754 0.1782 0.1861