Адаптивные цифровые фильтры - страница 3

 
Математик пощяди, я же иногда и по руски не так читаю, про то что ты пишеш (ну выводы делаю не такие как ты ожидал :-)). А тут по англиски. Хотя понимаю что тут сказано, про то что это используют военные при попровождение движущихся объектов. Вродебы, но дословно не могу (неслушался маму, не учил англиский в детстве :-() Да еще перерисовка и FFT это разные вещи, можно использовать FFT и ничего перерисовываться не будет. За Коши пойду сейчас, читать. А следить за целью военные умеют :-). Только помехи и ложные цели спасают от гарантированного поражения, и то невсегда :-) (там давно уже борьба умов и алгоритмов идет, летчик в самолете нужен только что бы кнопку нажать и .... вроде все остальное уже алгоритмы).
 
Prival:
Да еще перерисовка и FFT это разные вещи, можно использовать FFT и ничего перерисовываться не будет. За Коши пойду сейчас, читать.

Ой как интересно. А я-то думал, что все псевдомашки, основанные на принципе "преобразование - фильтрация частот - обратное преобразование", обязательно перерисовываются...

А на Коши не трать время, ее p.d.f. - a/(b^2 + (x-m)^2). С нормировкой на единицу, разумеется. Но вот интеграл от p.d.f., умноженной на переменную х, уже расходится (это м.о.).

 
Mathemat:
Prival:
Да еще перерисовка и FFT это разные вещи, можно использовать FFT и ничего перерисовываться не будет. За Коши пойду сейчас, читать.

Ой как интересно. А я-то думал, что все псевдомашки, основанные на принципе "преобразование - фильтрация частот - обратное преобразование", обязательно перерисовываются...


Prival прав, все зависит от того, какую структуру/схему фильтра использовать. Если действительно интересно, то например, так:


никакой перерисовки нет. Сам когда то развлекался с такими фильтрами.

 
Что то задел меня JMA, типа лучший, адаптивный и т.д. (всех скушал, во как). А мы что лыком шиты :-). И левши типа на Руси перевелись, да не верю.
Смотрю, смотрю на него - формулы какие то непонятные, да и аватар не такой какой то :-) у меня получше вроде будет :-)
(Сравните http://www.jurikres.com/catalog/ms_ama.htm#top). Наш же самолетик лучше :-).

Поэтому предлагаю попробовать сделать и индикатор по лучше, еще адаптивнее. Может что хорошее и получиться.

Идея следующая.
1. За основу берем вот этот индикатор ('Оптимизированная АМА Кауфмана : Perry Kaufman AMA optimized'), над ним многие уже трудились не мне чета. Теория этого индикатора описана в файле (файл прилагается). Берем из этого индикатора (идеи) одну часть. Вычисление коэффициента эффективности ER (меняется от 0 до 1). Он будет определять период усреднения (выборки) от 2 до N (N – задается как входной параметр в алгоритме). А вот дальше чуть хитрее.
2. Используем не EMA (экспоненциальную скользящую среднюю) а полином. Максимальную степень полинома n (задаем тоже как внешний параметр). В принципе можно и остановиться, варьируя n и прогоняя в тестере, я думаю уже можно получить неплохие результаты. Но блоха ИХМО до конца еще не подкована, идем дальше.
3. Раз адаптивный так пусть будет адаптивным по полной. Добавка, следующая - степень полинома тоже рассчитывается (выбирается наилучшей по какому то критерию). Так как у нас нет априорной информации о шуме. Предлагаю использовать критерий - коэффициент детерминации. Вся логика выбора оптимального полинома по этому критерию расписана в файле (файл в архиве стр. 12, 13 и 14). Там даже есть программа написанная на MathCade, как это делать.

Если кто то заинтересуется, готов пункт 3 запрограммировать и перепроверить в маткаде. И помогать в создании такого индикатора на MQL в силу моих скромных возможностей.
Файлы:
 
А еще не забыть о том, что индюкатор просто обязан быть нелинейным. Во всяком случае, команда Джурика именно так и решила, чтобы удовлетворить всем четырем требованиям идеального адаптивного фильтра. А еще там что-то из теории информации накручено... grasn, у тебя есть идеи по поводу схемы нелинейного фильтра?
 
to Prival, Mathemat

Идея следующая.
1. За основу берем вот этот индикатор ('Оптимизированная АМА Кауфмана : Perry Kaufman AMA optimized'), над ним многие уже трудились не мне чета. Теория этого индикатора описана в файле (файл прилагается). Берем из этого индикатора (идеи) одну часть. Вычисление коэффициента эффективности ER (меняется от 0 до 1). Он будет определять период усреднения (выборки) от 2 до N (N – задается как входной параметр в алгоритме). А вот дальше чуть хитрее.
2. Используем не EMA (экспоненциальную скользящую среднюю) а полином. Максимальную степень полинома n (задаем тоже как внешний параметр). В принципе можно и остановиться, варьируя n и прогоняя в тестере, я думаю уже можно получить неплохие результаты. Но блоха ИХМО до конца еще не подкована, идем дальше.
3. Раз адаптивный так пусть будет адаптивным по полной. Добавка, следующая - степень полинома тоже рассчитывается (выбирается наилучшей по какому то критерию). Так как у нас нет априорной информации о шуме. Предлагаю использовать критерий - коэффициент детерминации. Вся логика выбора оптимального полинома по этому критерию расписана в файле (файл в архиве стр. 12, 13 и 14). Там даже есть программа написанная на MathCade, как это делать.


Мое скромное мнение самоучки такое: предложенная модель «адаптивного фильтра» работать не будет, свое время на это я тратить не буду. Это все, что угодно, только не адаптивная фильтрация. Есть цельная, стройная, проверенная теория адаптивной фильтрации. И если хотите сделать именно адаптивный фильтр – то тогда уж используйте именно эту теорию.

Если нет времени разбираться с этой теорией и проектировать АФ, то берите MathLab и сконструируйте нужный фильтр (если не специалисты в адаптивной фильтрации, то MathLab это сделает значительно лучше). Далее есть два пути: или генерите dll или копайтесь в m-файлах перекладывая их на MQL, благо они открыты.

 
grasn:

Мое скромное мнение самоучки такое: предложенная модель «адаптивного фильтра» работать не будет, свое время на это я тратить не буду. Это все, что угодно, только не адаптивная фильтрация. Есть цельная, стройная, проверенная теория адаптивной фильтрации. И если хотите сделать именно адаптивный фильтр – то тогда уж используйте именно эту теорию.

Если нет времени разбираться с этой теорией и проектировать АФ, то берите MathLab и сконструируйте нужный фильтр (если не специалисты в адаптивной фильтрации, то MathLab это сделает значительно лучше). Далее есть два пути: или генерите dll или копайтесь в m-файлах перекладывая их на MQL, благо они открыты.

Трудно не согласиться с этим мнением.
 
Предлагаю не валять дурака, надеясь на авось, а повозиться с клонами индюкаторов Джурика, выложенными у нас, и заодно проверить, так ли они хороши, - вначале на примере простейшей системы пересечения псевдомувингов.
 
NorthernWind:
grasn:

Мое скромное мнение самоучки такое: предложенная модель «адаптивного фильтра» работать не будет, свое время на это я тратить не буду. Это все, что угодно, только не адаптивная фильтрация. Есть цельная, стройная, проверенная теория адаптивной фильтрации. И если хотите сделать именно адаптивный фильтр – то тогда уж используйте именно эту теорию.

Если нет времени разбираться с этой теорией и проектировать АФ, то берите MathLab и сконструируйте нужный фильтр (если не специалисты в адаптивной фильтрации, то MathLab это сделает значительно лучше). Далее есть два пути: или генерите dll или копайтесь в m-файлах перекладывая их на MQL, благо они открыты.

Трудно не согласиться с этим мнением.


Интересно с каким мнением. Что я не знаю ЦОС и в частности одну из тем по которой когда то читал лекции (адаптивные цифровые фильтры). Или что это делать лучше в Matlabe? А мне кажется, автор и там и там ошибается. У меня есть "чутка" знаний в этой области, и есть язык программирования покруче МathLaba. И никаких dll ненужно, что бы передать результаты расчетов в терминал МТ4 (надо просто к komposter-у обратится).

Мне кажется, что написав в топку про мое предложение и утверждая, что там нет адаптивной фильтрации grasn ошибается. И не сможет ответить где, когда и по какой причине допустим нужно применять окно Хемминга, а когда его применение только вредит. Чем отличается адаптивный фильтр Винера от фильтра Уидроу-Хопфа при анализе их ФЧХ или фильтр Баттерворта от Чебышева, когда нужно и можно применять первый фильтр, а когда второй.

grasn и NorthernWind извините если резко наехал, но нельзя так мимо ходом отвергать идеи. Мне спрограммировать все то, что я написал на MathCade максимум 1-2 часа и ничья помощь для этого не нужна. Хотел помочь другим показать направление куда капать, если они хотят получить адаптивный фильтр и готов им помочь в этом деле. Адаптивных фильтров море и маленькая тележка.

Что бы Вы не так сильно сердились, позвольте Вам подарить как любителям MathLaba книжечку про ЦОС там кратенько на 989 страниц про эту штуку ЦОС, много примеров как раз на этом языке программирования, но по моему скромному мнению MathCad лучше :-)

Файлы:
read_me.zip  9488 kb
Причина обращения: