Автор:Николай Камынин
Вернемся к формуле фильтра EMA
EMA(n) = EMA(n –1) + К*[Close(n) – EMA(n – 1)];
К = 2/(N + 1); -коэффициент фильтра
N – период средней.
И перепишем ее в следующем виде:
EMA(n) = EMA(n –1) –K* EMA(n – 1)];+ К*Close(n);
или EMA(n) = (1-K)*EMA(n –1)+ К*Close(n);
Коэффициент (1-K) — определяет долю предыдущей истории в текущем значении , назовем его “коэффициент памяти”, чем он меньше , тем быстрее забывается прошлое и быстрее фильтр реагирует на текущее изменение цены.
Обращаю Ваше внимание, что коэффициент памяти рассчитывается через коэффициент “K” , который определяет вклад текущего значения цены в оценку EMA.
В предыдущей заметке я показал , что EMA может сильно смещаться при наличии импульса цены. Так как EMA является оценкой среднего значений случайной величины, то для получению состоятельной оценки при наличии импульса цен существуют робастные (устойчивые) методы оценивая среднего значения. Рассмотрим один из них, называемый “медианный фильтр”.
В приведенном ранее примере расчета средней зарплаты в отделе.
Мы сумму зарплаты всех сотрудников разделили на число сотрудников и получили среднеарифметическое значение.
В методе медианы вычисление среднего производится так.
Все N значений случайной величины сортируются по убыванию, либо возрастанию. В качестве оценки среднего берется значение, находящееся на в середине полученного отсортированного ряда значений.
Вернемся к задаче оценки средней зарплаты в отделе, где 9 сотрудников получает по 10 тысяч, а начальник 110 тысяч. Среднеарифметического значение равно 20 тысяч и в 2 раза превышает зарплату 90% работников.
Применим метод медианы.
В середине отсортированного ряда будет число 10 тысяч. Таким образом, данный метод позволяет нам получить оценку зарплаты у 90% сотрудников отдела. Медиана показывает устойчивую статистику, которая отражает реальную ситуацию и характеризует большую массу исходных данных.
Давайте теперь перепишем формулу EMA в более общем виде следующим образом
EMA(n)=a1*EMA(n-1)+a2*EMA(n-2)+…..+aJ*EMA(n-J) + b1*Close(n)+b2*Close(n-1) +…bN*Close(n-K)
Т.е. в самом общем случаем, мы можем вычислить индикатор на основе J предыдущих его значений и N предыдущих значений цены.
При этом коэффициент [a1,a2,….aJ] и [b1,b2,…bN] будут определять фильтрующие свойства такого индикатора.
Теория расчета коэффициентов для фильтрации различных свойств исходной последовательности хорошо разработана. Есть соответствующие программы, например, в пакете МАТЛАБ, с помощью которых можно рассчитать эти коэффициенты для фильтрации различных закономерностей в поведении цены.
Одним из способов повышения избирательных свойств фильтра ( возможность подавлять более быстрые тренды относительно более медленных) является последовательное применение EMA
Например:
индикатор DEMA –2-х кратное применение EMA
индикатор TEMA –3-х кратное применение EMA
~~~~~~~~~~~~~~~~~~~~~~~~~~
Фондовые рынки относятся к типу сигналов называемых нестационарными.
Это их свойство приводит к тому, что фильтр, удачно работающий на некотором интервале, становиться полностью неработоспособным на другом.
Если при расчете EMA изменять значение коэффициент фильтра “K”, то будет изменяться глубина памяти фильтра и его чувствительность к текущему значению цены.
Если коэффициент ”K” изменять в зависимости от свойств фондового рынка, то фильтр будет подстраиваться под рынок и таким образом сохранять свои положительные свойства при изменении свойств рынка.
В этом случае фильтр EMA становиться адаптивным (подстраивающимся) под параметры модели рынка.
Примерами таких адаптивных фильтров являются фильтр KAMA(фильтр Кауфмана) и фильтр FRAMA (”фрактальный” фильтр).
Величина коэффициента в этих фильтрах меняется в зависимости от того трендовое или боковое движение рынка наблюдалось на заданном интервале истории.
Но об этом далее…