Блог им. 3Qu

Сравнение ЕМА и фильтра Баттерворта 2-го порядка.

    • 24 января 2020, 20:39
    • |
    • 3Qu
  • Еще
В связи с моим топиком  Фильтр Гаусса N-ного порядка как индикатор, в комментариях возник вопрос сравнения задержек фильтра Баттерворта 2-го порядка и ЕМА.
Для сравнения групповых задержек различных фильтров обычно сравнивают их отклики на единичный скачок 1(t). Это, типа, ступенька высотой 1.
Сравнение ЕМА и фильтра Баттерворта 2-го порядка.
На рисунке сравниваются отклики на единичный скачок 2-х фильтров с периодом 50. SMA с периодом 50 приведена здесь как калибровочная.
Из рисунка можно видеть, что групповая задержка фильтра Баттерворта при одинаковом периоде Т составляет по уровню 0.5 на ~5 отсчетов больше чем у ЕМА.
Простите, а что-же вы хотели увидеть, если фильтром Баттерворта мы обрезали ВЧ часть спектра сигнала? ЕМА плохо подавляет ВЧ компоненты сигнала, отсюда и такая нервная реакция на любой чих.
Спрашивается, а зачем тогда вообще фильтр, если он мало что подавляет?
Хотите, чтобы фильтр подавлял меньше ВЧ компонент, так уменьшите период сглаживания. Сделаем период сглаживания фильтра Баттерворта Т=25, т.е. расширим полосу пропускания фильтра.

Сравнение ЕМА и фильтра Баттерворта 2-го порядка.
Теперь по 
Ну и где разница? Групповые задержки по уровню 0.5 у ЕМА и фильтра Баттерворта стали одинаковыми, а время установления фильтра Баттерворта при одинаковых групповых задержках много лучше, чем у хваленой ЕМА. Ну, и естественно, подавление ВЧ компонент вне полосы пропускания много лучше чем у ЕМА, даже при ее Т=50.

PS Вообще-то, он пишется - Butterworth filter, но не переделывать же картинки.
★10
Предлагаю в сравнение добавить SMA с периодом 15
avatar

Eugene Logunov

Eugene Logunov, а мысленно прямую линию провести от 1 до 16? Да и вообще любую другую прямую.)
avatar

3Qu

3Qu, Я как раз мысленно и провёл. Зачем же тогда брать фильтр Баттерворта, если простейшая SMA с правильно выбранным периодом так хороша?))

p.s. Лично мне EMA нравится.
avatar

Eugene Logunov

Eugene Logunov, Вообще-то SMA как фильтр совсем никакая.) А ЕМА почти никакая.)
avatar

3Qu

Eugene Logunov, 
Лично мне EMA нравится.
И чем же она может нравится? Как сглаживающая функция?
Сглаживающая функция должна быть гладкой, для чего у нее должны быть непрерывными хотя бы 1 производная, а лучше и больше.
У ЕМА разрывы уже в 1-й производной. Что она сглаживает?
avatar

3Qu

3Qu,
1. Очень простой алгоритм;
2. Сложно получить проблемы с накоплением погрешностей, которые в SMA, реализованной на кольцевом буфере, возникнут обязательно;
3. Легко адаптируется к работе с данными, которые наблюдаются с непостоянным шагом по времени;
4. Постепенно забывает данные, в отличие от SMA, которая забудет какой-нибудь outlier только когда он выйдет из окна.
avatar

Eugene Logunov

Eugene Logunov, про SMA вообще разговора нет.
А про ЕМА, по факту, если нет уже 1-й производной, то ЕМА немногим отличается от кусочно-линейной интерполяции на каждом отсчете, да еще и отстает.) И на фиг такое чудо нужно?
ЗЫ Хотя, понимаю.
Если играть руками, то мозги общую картину сами как-бы восстанавливают.
Если использовать какой-то доп софт для анализа, простейшие индикаторы уже не прокатывают.
avatar

3Qu

3Qu, Разговор, разумеется, не про торговлю руками)

Насчёт производных у меня вот такие мысли:
1. Если исходный процесс нигде не дифференцируем почти наверное (ну или очень близок к подобному) — то требования существования производных выглядят немного странно.
2. Если уж очень хочется соорудить дифференцирующее ядро — можно взять разность двух EMA с разными периодами. И при этом остаются все плюсы, указанные в моем предыдущем комменте.
avatar

Eugene Logunov

Eugene Logunov, процесс недифференцируем — то так.
Но если мы его сглаживаем, то сглаживающая функция обязана иметь производные. Для этого достаточно всего-лишь ограничить спектр, что мы и делаем Баттервортом.
Разность двух недиффиренцируемых функций (двух ЕМА) никак не может дать в итоге дифференцируемую
avatar

3Qu

3Qu, не вижу ни одной причины париться насчет дифференцируемости чего бы то ни было при расчете индикаторов для рынка. Уж если мы пороговые и экстремальные статистики используем, чего волноваться? 
Имхо, ЕМА тем и хороша, что она от всего берет понемножку. Все плоховато, но все есть.
avatar

SergeyJu

SergeyJu, под любую вашу ЕМА можно всегда подобрать параметры фильтра 2-го порядка, кот сделает все тоже самое, но много лучше.)
И париться действительно ни к чему.)
avatar

3Qu

3Qu, попробуйте сформулировать, что именно «тоже самое». Стандартные критерии типа формы АЧХ или ФЧХ тут не применимы. 
avatar

SergeyJu

3Qu, математически неверно. Возьмите сумму дифференцируемой и недифференцируемой. Сумма будет недифференцируемой. Теперь вычтите из суммы вторую компоненту.
avatar

MS

Ниче се у вас тут спор.
avatar

Андрей К

А зачем сравнивать задержки фильтров?
Их надо просто знать и всё.
Мне больше фильтр Чебышева 2 типа нравится. Правда применял в другой предметной области.
avatar

Валентин

Валентин, плавали, знаем.))  Аналогичная цифровая реализация посложней будет. А в нашей области трейдинга разница неощутима.

avatar

3Qu

Спасибо, интересно.
avatar

Foudroyant

Для каждого фильтра надо строить статистику. Что показывает сейчас — каким будет изменение цены через его период запаздывания. Если есть корреляция — в торговлю его, нет — выбрасываем.
avatar

MS

Интересный фильтр!
avatar

AlexGood

Напишите плиз порядок расчета фильтра для чайников )
Врач-бондиатОр, для начала попробуйте фильтр Гаусса из статьи. В статье есть все необходимые формулы.
Когда разберётесь с особенностями применения, тогда вам, возможно, понадобится и Баттерворт.
Это не чудо-индикатор, и без понимания зачем он конкретно нужен, он немногим лучше ЕМА.
avatar

3Qu

3Qu, прочитал статью, ваши топики и др.
Скажите, на практике ваши результаты от применения значительно улучшились?
Сам использую 2 КАМА (или АМА), привык уже что ли.
avatar

asfa

asfa, для сравнения нужен опыт. У меня практически нет опыта использования стандартных ТА и индикаторов в ТС. Стандартные индикаторы изначально не подошли к моим ТС, по причинам, изложенным в топике и комментах.
Однако я не возьмусь утверждать, что на стандартных индикаторах нельзя построить рабочую ТС.
avatar

3Qu

3Qu, у меня математика осталась на уровне 11 классов средней школы середины 90-х, поэтому полиномов мы там не проходили...
Я правильно понимаю, что итоговая формула 3 порядка выглядит как 
Three Poles: f =  3 g + 3(1-)f[1] — 3(1-) 2 f[2] + (1-) 3 f[3]

....все тэги
2010-2020
UPDONW