КИХ-фильтры - страница 4

 
begemot61 >>:

Генератор цифровых методов сделан с ошибкой. Автор видимо правильно считает коэффициенты, но использует только половину этих коэффициентов.

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

у меня тоже есть претензии к софту, но не нужно преувеличивать.. ничего общего..

никто не запрещает фильтры каскадировать если затухания одного фильтра не достаточно

 
begemot61 >>:

Генератор цифровых методов сделан с ошибкой. Автор видимо правильно считает коэффициенты, но использует только половину этих коэффициентов.

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

Во первых, он в 2 раза короче. Соответственно-как бы "быстрее". Во вторых, частотная характеристика не обеспечивает заданного подавления.

Код для MQL4 из "Генератора цифровых методов" - это не то что автор хотел получить.

Любой индикатор на базе "Генератора цифровых методов" будет фильтровать не совсем так, как задумывал автор.

Фильтрация значительно хуже чем ожидается, но задержка меньше, так как фильтр короче.

Какая фильтрация нужна? Понятия не имею. Но предпочитаю понимать, что я делаю.

В качестве примера FIR фильтра можете попробовать индикатор на базе ФНЧ с окном Кайзера.

Эта аппроксимация позволяет получать большое подавление. Хотя на мой

взгляд, увеличение задержки сводит на нет достоинства фильтрации.

Но природу обмануть сложно, хотя и очень хочется. Чем больше подавление,

тем больше длина фильтра и, соответственно, запаздывание.

Взял сгенерированный Вами индикатор ED_Raiser_LPF и спользовал его вместо МАшки в своем кластерном индикаторе CL1i_V01.

Получилась картинка, приводимая ниже, которая намного лучше, чем та, что получалась с МАшкой.

Чтобы получить такую линию цены, какую рисует Ваш индикатор, надо долго подбирать период МАшки, но все равно такая же "хорошая " линия не получается.



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

Практически все позиции закрываются с прибылью.

"В качестве примера FIR фильтра можете попробовать индикатор на базе ФНЧ с окном Кайзера." - не подскажете что это такое и где можно об этом почитать ?

И я не понял - это Ваш индикатор, или Вы его сгенерировали с помощью обсуждаемой здесь программы ?

Если ВАм не трудно, подскажите как уменьшать/увеличивать чувствительность приведенного Вами индикатора.....

Чувствительность надо уменьшать при переходе со старших ТФ на младшие, иначе сильно лихорадит...

Файлы:
 
sab1uk >>:

было бы странно если бы он не плыл

я хотел в первую очередь показать людям что есть хорошая альтернатива машкам

согласитесь при прочих равных условиях бегать за плавающим спектром лучше вооружившись нормальными фильтрами вместо машек

почему любители машек не озадачиваются убегающим спектром я не знаю

ведь применение машек не освобождает от проблемы нестационарности

Я с Вами согласен.

Искал сегодня на тему: "Real-time neuro-fuzzy digital filtering", но ничего бесплатного не нашёл...

 
renegate >>:

Я с Вами согласен.

Искал сегодня на тему: "Real-time neuro-fuzzy digital filtering", но ничего бесплатного не нашёл...

так этот бесплатный генератор клоуны впаривают за кругленькие суммы http://www.finware.ru/orderdi.html

 
sab1uk >>:

так этот бесплатный генератор клоуны впаривают за кругленькие суммы http://www.finware.ru/orderdi.html

Да, про этот генератор я знаю. А искал информацию про создание полосовых фильтров, но нелинейных (нейро-нечётких).

 
sab1uk >>:

у меня тоже есть претензии к софту, но не нужно преувеличивать.. ничего общего..

никто не запрещает фильтры каскадировать если затухания одного фильтра не достаточно

Я имел ввиду то что вы задаете параметры фильтрации, т.е. частоту среза и подавление, а получаете совсем другие характеристики. И из за этой глупой ошибки, очень хорошая совтяра вводит людей в заблуждение. С тем же успехом можно взять произвольные коэффициенты и получить приемлемые результаты. Это тоже будет фильтр. Вы просто не будете знать его параметров. А вот если вы хотите создать что то более сложное, например набор полосовых фильтров, тогда желательно представлять что вы используете.

 
begemot61 >>:

Я имел ввиду то что вы задаете параметры фильтрации, т.е. частоту среза и подавление, а получаете совсем другие характеристики. И из за этой глупой ошибки, очень хорошая совтяра вводит людей в заблуждение. С тем же успехом можно взять произвольные коэффициенты и получить приемлемые результаты. Это тоже будет фильтр. Вы просто не будете знать его параметров. А вот если вы хотите создать что то более сложное, например набор полосовых фильтров, тогда желательно представлять что вы используете.

подавление и биения там непонятные

но по моим измерениям АЧХ резонансная частота фильтра получается та которую указываешь генератору

есть там еще глюки при неудачной комбинации параметров, которые нужно тоже контролировать по АЧХ

 
ssd >>:

Взял сгенерированный Вами индикатор ED_Raiser_LPF и спользовал его вместо МАшки в своем кластерном индикаторе CL1i_V01.

Получилась картинка, приводимая ниже, которая намного лучше, чем та, что получалась с МАшкой.

Чтобы получить такую линию цены, какую рисует Ваш индикатор, надо долго подбирать период МАшки, но все равно такая же "хорошая " линия не получается.



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

Практически все позиции закрываются с прибылью.

"В качестве примера FIR фильтра можете попробовать индикатор на базе ФНЧ с окном Кайзера." - не подскажете что это такое и где можно об этом почитать ?

И я не понял - это Ваш индикатор, или Вы его сгенерировали с помощью обсуждаемой здесь программы ?

Если ВАм не трудно, подскажите как уменьшать/увеличивать чувствительность приведенного Вами индикатора.....

Чувствительность надо уменьшать при переходе со старших ТФ на младшие, иначе сильно лихорадит...

Если англицкий не проблема, то для начала я бы почитал вот это:

The Scientist and Engineer's Guide to Digital Signal Processing

Digital Filters: An Introduction


Хотя это требует начальных знаний в области радиотехники.


Буду рад если мой индикатор окажется вам полезен.

О параметрах поговорим вечером, когда приеду с работы.

 
begemot61 >>:

Если англицкий не проблема, то для начала я бы почитал вот это:

The Scientist and Engineer's Guide to Digital Signal Processing

Digital Filters: An Introduction


Хотя это требует начальных знаний в области радиотехники.


Буду рад если мой индикатор окажется вам полезен.

О параметрах поговорим вечером, когда приеду с работы.

Большое спасибо за внимание. С английским, да и с радиотехникой, проблем нет, почитаю.

Есть проблемы со временем, поэтому, если Вы уделите мне внимание и растолкуете смысл

разработанного Вами индикатора, буду весьма признателен.

А иначе получается, что я его использовал, не разобравшись, собственно, что он делает...

 
ssd >>:

Большое спасибо за внимание. С английским, да и с радиотехникой, проблем нет, почитаю.

Есть проблемы со временем, поэтому, если Вы уделите мне внимание и растолкуете смысл

разработанного Вами индикатора, буду весьма признателен.

А иначе получается, что я его использовал, не разобравшись, собственно, что он делает...


Немного о свойствах этих фильтров.

Обычный МА обладает подавлением около 20 дБ. Для того чтобы улучшить подавление, взвешивающие коэффициенты умножают на некоторую функцию, называемую функцией окна.

Окно Кайзера позволяет получить заданное значение подавления, изменяемое в широких пределах. При расчете задаются неравномерность в полосе пропускания и

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

Еще одним часто используемым методом расчета является применение алгоритма Паркса-Мак'Келана (иногда называемый алгоритмом Ремеза).

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

Я использовал окно Кайзера. Проще считать, а результат сравним по качеству с алгоритмом Ремеза.


Немного о параметрах фильтра нижних частот.


PassBandBars-полоса пропускания в Барах


StopBandBars-ширина переходной зоны, т.е. между полосой пропускания и частотой, где обеспечивается требуемое подавление. Тоже в количестве Баров.


StopBandAttenuation- подавление в полосе затухания.


Измерять частоту в Барах не совсем корректно, так как это время а не частота. В действительности, частота измеряется в соответствующих ей временных интервалах.

F=1/Bars. Т.е. при 1 баре частота равна 1 и это частота дискретизации. При 2 барах частота равна 0.5Fd и т.д.

StopBandBars может быть любым действительным числом больше 2.


Длина фильтра (эквивалент периоду МА) не задается в явном виде и рассчитывается исходя из заданных полос и затухания.

Чем больше StopBandBars или чем больше StopBandAttenuation, тем длиннее фильтр. Те он больше запаздывает и лучше сглаживает.

Причина обращения: