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

 

Prival

Вы меня извините, был не аккуратен в высказываниях. Лично я ни когда не думал высказывать сомнений о Вашей компетентности в вопросах ЦОС. Думаю, и grasn то же (надеюсь grasn меня извинит, за то что за него "расписался"). Речь идет о самой идее и методологии исследований. Ничего личного. Ко всем авторам, которые активно "копают математические методы" на этом форуме, отношусь строго положительно, в виду уникальности этого комьюнити. И в виду тех перспектив которые оно (комьюнити) имеют. Но согласиться с Вашим предложением не могу ввиду полного неверия в полиномы как инструмент имеющий какую то "предсказательную силу". Речь идет о временных отрезках меньше суток, а вы я так понимаю именно на малых отрезках хотите эксплуатировать свою идею. Просто не вижу той причины, которая заставит полином, - по сути абсолютно адаптированную к сигналу (по какому то критерию) функцию, совершать прогноз поведения цен. Потому что прогноз будет всегда примерно 50\50. Это связано как с самими процессами происходящими на "рынке", так и с формой представления сигнала, который по сути по своей совершенно искажает картину. Хотите использовать ЦОС в торговле, - пожалуйсто, но сначала подготовьте для ЦОС адекватные данные. Сам по себе "сигнал" безусловно присутствует в цене, но. Но уровень этого сигнала (как совершенно правильно отметил Mathemat кажется) во много раз меньше "шума" (хотя "шума" на "рынке" нет). На это накладывается нестационарность самого сигнала. В результате почти ничего из традиционных методов не работает. Думаю не потому что теория ЦОС не верна, - конечно же верна, просто здесь совершенно другой сигнал. Сигнал, в котором огромная часть информации просто потеряна. И как не парадоксально, огромная часть информации просто лишняя. Вы говорили что Вы - военный, так отнеситесь к этому как к тому что все ваши приборы забиты помехами за которыми не видно сигнала от вражеского самолета. И помехи эти очень качественные. Но стоит выйти на улицу, взглянуть на небо - всё сразу станет видно. Правда прицеливаться и стрелять от бедра то же не самое лучшее решение. :)

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

 
Предлагаю переключиться на другую задачу: надо преобразовать обычное представление чарта (на основе баров с равными астрономическими интервалами времени) в такое, на котором как можно меньше катастроф (желательно со стационарной p.d.f. returns). Это, кстати, может быть одной из задач адекватной подготовки данных к ЦОС, о которой упомянул NorthernWind. Катастрофы (особенно микрокатастрофы внутри флэтов) ломают практически все известные традиционные индюкаторы. Преобразование, между прочим, совсем не обязано быть взаимно однозначным (многие индюкаторы не являются взаимно однозначной операцией над данными, и нам это не мешает).

Если есть обоснованные аргументы против - прошу критиков присоединяться.
 
NorthernWind:

Prival

Вы меня извините, был не аккуратен в высказываниях. Лично я ни когда не думал высказывать сомнений о Вашей компетентности в вопросах ЦОС. Думаю, и grasn то же (надеюсь grasn меня извинит, за то что за него "расписался"). Речь идет о самой идее и методологии исследований. Ничего личного. Ко всем авторам, которые активно "копают математические методы" на этом форуме, отношусь строго положительно, в виду уникальности этого комьюнити. И в виду тех перспектив которые оно (комьюнити) имеют. Но согласиться с Вашим предложением не могу ввиду полного неверия в полиномы как инструмент имеющий какую то "предсказательную силу". Речь идет о временных отрезках меньше суток, а вы я так понимаю именно на малых отрезках хотите эксплуатировать свою идею. Просто не вижу той причины, которая заставит полином, - по сути абсолютно адаптированную к сигналу (по какому то критерию) функцию, совершать прогноз поведения цен. Потому что прогноз будет всегда примерно 50\50. Это связано как с самими процессами происходящими на "рынке", так и с формой представления сигнала, который по сути по своей совершенно искажает картину. Хотите использовать ЦОС в торговле, - пожалуйсто, но сначала подготовьте для ЦОС адекватные данные. Сам по себе "сигнал" безусловно присутствует в цене, но. Но уровень этого сигнала (как совершенно правильно отметил Mathemat кажется) во много раз меньше "шума" (хотя "шума" на "рынке" нет). На это накладывается нестационарность самого сигнала. В результате почти ничего из традиционных методов не работает. Думаю не потому что теория ЦОС не верна, - конечно же верна, просто здесь совершенно другой сигнал. Сигнал, в котором огромная часть информации просто потеряна. И как не парадоксально, огромная часть информации просто лишняя. Вы говорили что Вы - военный, так отнеситесь к этому как к тому что все ваши приборы забиты помехами за которыми не видно сигнала от вражеского самолета. И помехи эти очень качественные. Но стоит выйти на улицу, взглянуть на небо - всё сразу станет видно. Правда прицеливаться и стрелять от бедра то же не самое лучшее решение. :)

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

Северный Ветер а ты никогда не задумывался, что линии поддержки (сопротивления) это полином первой степени (уравнение прямой) y(x)=a*x+b. И работать он может и вроде работает не только внутри суток. При подходе к уровню какого то мощного сопротивления цена отскакивает или допустим начинается коррекция и в этом месте изгиб этой кривой можно описать полиномом второй степени (параболой) y(x)=c*x^2+a*x+b. Для каких то устойчивых колебаний в канале можно по МНК подобрать полином более высокой степени. Т.е. нужно по какому то критерию выбрать степень полинома (научить комп это делать, как делает это человек) + многие уже пришли к выводу, что знай (умей) они определять с какого момента начинать строить допустим PriceCannel (глубину выборки), то можно построить очень неплохую ТС.

А ведь в предложенной идее это есть, выбор степени полинома + глубину N мы можем задать допустим неделю, а алгоритм уже сам выберет использовать всю выборку N или только её часть, он же может выбрать любое количество данных (цифр) для анализа от 2 последних цифр до N и подобрать полином. И допустим гэп это максимальная дисперсия, следовательно, алгоритм должен выбрать 2 последние точки, а через 2 точки только прямая, запаздывание = 0. Как-то так.

Это так просто идея их много, может, что путное и получится. Я старался, как можно понятнее показать тем, кто хочет построить, что то адаптивное, как это делать, не прибегая к сложным терминам. А вот про это «но сначала подготовьте для ЦОС адекватные данные», да действительно этим и занимаюсь, т.к. считаю, что по оси X тоже случайное число и про это не стоит забывать. По оси Y вон сколько на придумано, а по X как строили 100 лет назад бары (с постоянным интервалом), так и строим. Я вот тут про это писал ('Сборщики тиков. Оптимизация. DDE в VB (VBA)'), даже у Renata подарок получил. Теперь думаю, как же все это корректно приготовить для ЦОС :-) + тоже все время думаю, что же тут сигнал (полезная составляющая, что двигает эту кривую), и есть ли тут шум.

P.S. А то что человек спорит, не соглашается это же хорошо. В спорах (корректных) иногда рождается истина. И с Вами готов спорить и не только подарки в виде книг, передавать. Я бы и коньячку налил, только вот никак не могу его прикрепить :-).

 
Mathemat:
Предлагаю переключиться на другую задачу: надо преобразовать обычное представление чарта (на основе баров с равными астрономическими интервалами времени) в такое, на котором как можно меньше катастроф (желательно со стационарной p.d.f. returns). Это, кстати, может быть одной из задач адекватной подготовки данных к ЦОС, о которой упомянул NorthernWind. Катастрофы (особенно микрокатастрофы внутри флэтов) ломают практически все известные традиционные индюкаторы. Преобразование, между прочим, совсем не обязано быть взаимно однозначным (многие индюкаторы не являются взаимно однозначной операцией над данными, и нам это не мешает).

Если есть обоснованные аргументы против - прошу критиков присоединяться.

Во пока писАл, тут уже Mathemat телепатом стал :-). Я за. Только предлагаю последовательно, сначало минимизируем "катастрофы", а потом за returns беремся. А ломаются не только индикаторы, старый добрый фурье улетает, и как его кушать если частота дискретизации непоими какая, тоже затруднительно
 
Mathemat:
Предлагаю переключиться на другую задачу: надо преобразовать обычное представление чарта (на основе баров с равными астрономическими интервалами времени) в такое, на котором как можно меньше катастроф (желательно со стационарной p.d.f. returns). Это, кстати, может быть одной из задач адекватной подготовки данных к ЦОС, о которой упомянул NorthernWind. Катастрофы (особенно микрокатастрофы внутри флэтов) ломают практически все известные традиционные индюкаторы. Преобразование, между прочим, совсем не обязано быть взаимно однозначным (многие индюкаторы не являются взаимно однозначной операцией над данными, и нам это не мешает).

Если есть обоснованные аргументы против - прошу критиков присоединяться.

Здесь, не так давно, был набег нетерпеливых м0тематиков-максималистов, в одной из соседних веток. Хоть и разговор с ними получился не очень, не смотря на это хотелось бы сказать, что они очень правильно говорят, практически «думают мои мысли». Самое главное что было сказано и на что я настоятельно обращаю внимание всех заинтересованных лиц. Работать нужно на настоящем рынке, а не на форексном ДЦ. Тогда у вас появится информация не только о цене, но и о объемах, интересе, стаканах, потоке котировок и прочем. Спору нет, биржа сложнее чем процесс угадывания в тотализаторе ДЦ направления изменения циферок на экране, но и гораздо ближе к понятию живого рынка, где цена диктуется балансом спроса-предложения и настроениями участников. Безусловно, что Квик и ему подобное - это убожество по сравнению с Метатрейдер, но и на этом люди работают. Кстати, если метаквоты не задумаются над освоением этой нищи, то их удел так и останется тем который сейчас есть.

К чему я это говорю, к тому что можно очень глубоко копать котировки дц, и можно даже чего то там накопать, но это что то будет иметь довольно шаткие основы. Прошу понять правильно, здесь нет критики дц или критики процесса формирования дц циферок. Они всё делают правильно и в основной своей массе (те которые посолиднее) ни кого не обманывают. Но, если посмотреть отвлеченно на то как данные поступают с «рынка», через дц к клиенту то возникает мысль о том, что дц – фильтратор и рендомизатор. О том что происходит если на некий осмысленный процесс наложить процесс случайный я уже рассказывал, - результирующий процесс будет то же случайным.

Что бы избежать вопроса «верю ли я что на форексном дц можно зарабатывать» скажу сразу, - да, считаю что можно. Но немного и не долго и далеко не всем. Практически, с не очень высоким риском можно играться на сутках и более, но и доходы от этого будут, если правильно играться, такие же как и изменение цен за сутки, то есть не очень высокие.

Вот такое вот у меня мнение. Возвращаясь к обсуждаемому вопросу, о преобразовании традиционного чарта в другой, могу сказать что лично мне такое преобразование помогло, в моих поисках. Но не сильно. Практически выбора нет, из всех возможностей у нас на руках только цена не понятно чего. Есть ещё понятие скорости поступления тиков, которые как то соответствуют активности мировых рынков, но степень этого соответствия иллюзорна и эфемерна. Что с эти со всем можно сделать? Ну, во первых рассматривать историю только до 2004-2003 года, дальше не смотреть ибо «рынок тогда был другой». Рассматривать каждые недели\сутки отдельно. Рассматривать переход с одной недели на другую, то есть выходные, отдельно. Хоть как то учитывать время активности основных бирж. Хоть как то учесть те несколько новостей в году на которых рынок действительно отреагировал. Отмести OHLC как пережиток темного прошлого. Не рассматривать локальные экстремумы (зигзаг, каги\ренко) как истину в последней инстанции, очень призрачны эти экстремумы. Ну и так далее. Практически это всё выливается в то, что придется из исходного потока тиков (или минуток) формировать собственные данные, в собственном представлении.

Ну и последнее. Заметьте, я ни когда не говорю что я всё всегда правильно знаю. Так и тут, возможно что ошибаюсь.

 

Prival 13.01.2008 03:08

Северный Ветер а ты никогда не задумывался, что линии поддержки (сопротивления) это полином первой степени (уравнение прямой) y(x)=a*x+b. И работать он может и вроде работает не только внутри суток. При подходе к уровню какого то мощного сопротивления цена отскакивает или допустим начинается коррекция и в этом месте изгиб этой кривой можно описать полиномом второй степени (параболой) y(x)=c*x^2+a*x+b. Для каких то устойчивых колебаний в канале можно по МНК подобрать полином более высокой степени. Т.е. нужно по какому то критерию выбрать степень полинома (научить комп это делать, как делает это человек) + многие уже пришли к выводу, что знай (умей) они определять с какого момента начинать строить допустим PriceCannel (глубину выборки), то можно построить очень неплохую ТС.

Если речь идет о так называемых «канальных» стратегиях, суть которых является выделение каких то трендов, пусть даже описываемых не простой линейной регрессией а полиномами – то в общем то я в них верую. Более того, считаю что на рынке только то и есть что тренды в восходящих и нисходящих каналах. Но традиционные линии поддержки\сопротивления, думаю, имеют к ним мало отношения. Проблема с этими каналами в том, что они на традиционных данных показывают традиционно не высокий результат. По крайней мене у меня так получилось. Очень много данных, которые «мешают» построить с помощью МНК тренд максимально характеризующий тенденции изменения цен. Чаще получается тренд

изменения характера «шума».

А ведь в предложенной идее это есть, выбор степени полинома + глубину N мы можем задать допустим неделю, а алгоритм уже сам выберет использовать всю выборку N или только её часть, он же может выбрать любое количество данных (цифр) для анализа от 2 последних цифр до N и подобрать полином. И допустим гэп это максимальная дисперсия, следовательно, алгоритм должен выбрать 2 последние точки, а через 2 точки только прямая, запаздывание = 0. Как-то так.

Да, это обсуждается уже давно и на этом форуме и в «параллельной ветке». Практически с этого и началось здешнее комьюнити. Но мне кажется что к традиционным адаптивным фильтрам это не очень относится.

Это так просто идея их много, может, что путное и получится. Я старался, как можно понятнее показать тем, кто хочет построить, что то адаптивное, как это делать, не прибегая к сложным терминам. А вот про это «но сначала подготовьте для ЦОС адекватные данные», да действительно этим и занимаюсь, т.к. считаю, что по оси X тоже случайное число и про это не стоит забывать. По оси Y вон сколько на придумано, а по X как строили 100 лет назад бары (с постоянным интервалом), так и строим. Я вот тут про это писал ('Сборщики тиков. Оптимизация. DDE в VB (VBA)'), даже у Renata подарок получил. Теперь думаю, как же все это корректно приготовить для ЦОС :-) + тоже все время думаю, что же тут сигнал (полезная составляющая, что двигает эту кривую), и есть ли тут шум.

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

P.S. А то что человек спорит, не соглашается это же хорошо. В спорах (корректных) иногда рождается истина. И с Вами готов спорить и не только подарки в виде книг, передавать. Я бы и коньячку налил, только вот никак не могу его прикрепить :-).

:)

ЗЫ ужастно не удобный движок у форума.

 

to Prival

Prival, я извиняться за свой пост не буду, там все правильно написано. И там нет ни слова о том, что Вы ничего не понимаете в ЦОС, а есть только отношение к конкретной предложенной «адаптивной фильтрации».

Мне кажется, что написав в топку про мое предложение и утверждая, что там нет адаптивной фильтрации grasn ошибается.

Не ошибаюсь ни по одному пункту.

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

Наехали? В общем, конечно, правильно сделали, ну а смысл? Не считая нескольких гигов электронной макулатуры по ЦОС, на полке стоит еще пять книг, которые, представьте себе – читал (настольными правда не стали). И на ваши вопросики, господин преподаватель, ответить конечно смогу. Prival, я же писал, что самоучка, но это не означает, что я полный идиот.

PS1: Служил то я как раз в ПВО, вот зачитываю свою должность из пункта 27 военного билета (для придания большей солидности :о): «командир отделения радиотехнических средств управления зенитных ракет малой дальности». И знаю более чем хорошо (как обычно пишут – не понаслышке :о), что наши хваленые комплексы (да и не только наши) не то бы СБИТЬ, они цели то толком НЕ ВИДЯТ. Prival, будьте аккуратны с радиолокацией на форексе,…, а особенно с частотой Найквиста, которая управляет миром. :о)

PS2: Prival, Вам со мной не очень повезло – то, что вы преподавали ЦОС для меня ничего, кроме уважения не означает. И если я вижу откровенную фигню – то я так и пишу, не взирая на должности и звания :о)

to Северный Ветер

Рад видеть!!!! Я вот так же практически перестал участвовать на форуме, правда иногда ругаюсь с Prival-ом. Есть к тебе вопрос. Помниться ты проводил исследования с использованием зигзага, и описывал его как очень простой, придуманный кем-то чуть ли не в позапрошлом веке или еще позже. Хочу его использовать для небольшого эксперимента в продолжении к 'Стохастический резонанс' (пост grasn 28.10.2007 13:26).
Не мог бы ты его подробнее описать или ссылочку привести? Нужно кое-какую мысль проверить.

 
NorthernWind:

Prival 13.01.2008 03:08

Да, это обсуждается уже давно и на этом форуме и в «параллельной ветке». Практически с этого и началось здешнее комьюнити. Но мне кажется что к традиционным адаптивным фильтрам это не очень относится.


Что бы тебе сильно не копаться (хотя ссылка в этой ветке была уже на лекции по ЦОС). Выкладываю кусочек. Что есть фильтры которые строятся по МНК а глубина выборки важна, почти для всех видов фильтра, а у МНК особенно.

to grasn ты же сам давал ссылку на этот материал, а как же это (Тема №3)? То что невзирая на звания и т.д., то ето гуд. А за радиолокацию я уже в писменном виде отчитывался, за то что здесь писал :-( Жаль без 13 остался, те балбесы сначало наказывают а потом разбираются

Файлы:
filtr_mnk.zip  87 kb
 
Prival:
NorthernWind:

Prival 13.01.2008 03:08

Да, это обсуждается уже давно и на этом форуме и в «параллельной ветке». Практически с этого и началось здешнее комьюнити. Но мне кажется что к традиционным адаптивным фильтрам это не очень относится.


Что бы тебе сильно не копаться (хотя ссылка в этой ветке была уже на лекции по ЦОС). Выкладываю кусочек. Что есть фильтры которые строятся по МНК а глубина выборки важна, почти для всех видов фильтра, а у МНК особенно.

to grasn ты же сам давал ссылку на этот материал, а как же это (Тема №3)? То что невзирая на звания и т.д., то ето гуд. А за радиолокацию я уже в писменном виде отчитывался, за то что здесь писал :-( Жаль без 13 остался, те балбесы сначало наказывают а потом разбираются

Prival, немного не те наименьшие квадраты и немного другой фильтр я по крайне мере имел ввиду. раздел "Адаптивный алгоритм наименьших квадратов Уидроу-Хопфа" Тема 11, а вовсе не 3
Таки смог прикрепить.

PS: Prival, я немного не понял, Вас лишили премии за то, что Вы написали на форуме трейдеров слово «радиолокация»?

Файлы:
dsp11.zip  124 kb
 

grasn 13.01.2008 14:14

Рад видеть!!!! Я вот так же практически перестал участвовать на форуме, правда иногда ругаюсь с Prival-ом. Есть к тебе вопрос. Помниться ты проводил исследования с использованием зигзага, и описывал его как очень простой, придуманный кем-то чуть ли не в позапрошлом веке или еще позже. Хочу его использовать для небольшого эксперимента в продолжении к 'Стохастический резонанс' (пост grasn 28.10.2007 13:26).
Не мог бы ты его подробнее описать или ссылочку привести? Нужно кое-какую мысль проверить.

То же рад видеть и с удовольствием попробую ответить на вопросы.

По зигзагу. В книге в которой я в первый раз увидел его определение это конечно не называлось зигзагом (кажется у Кендалла и Стюарта). Там речь шла о нахождении точек локальных экстремумов первого порядка. Ничего особенного там про это не писали, просто сказали, что локальный экстремум это когда точки на графике справа и слева от рассматриваемой обе меньше или обе больше. Вот и всё. Там ещё речь шла о локальных экстремумах второго порядка, это когда экстремумы первого порядка слева и справа обе меньше или больше. Только в этом случае нужно смотреть не соседние экстремумы а через один, так как соседние в любом случае будут меньше или больше. Ну а третьего порядка точно так же как второго только строится на экстремумах второго порядка. И так далее. Не безызвестное тебе каги-построение эксплуатирует туже самую идею, только вместо понятий «меньше»\»больше» используется «меньше Н»\»больше Н». Вот собственно и всё. Алгоритм подходит для точек и плохо применим для OHLC, в виду того, что в точке получается 4 значения. Есть хитрость, когда одна из точек равна соседней, то тут приходится принимать решение, - мудрые старцы не говорят какое. Лично я просто преобразовывал все соседние точки с равными значениями в одну. Что ещё, смотрел как реализованы зигзаги у людей, там очень сложно у них как то, массивы какие то временные и прочее, мне почему то хватило нескольких переменных и одного прохода. Всего то там нужно хранить для сравнения последний найденный экстремум (который может меняться) и предыдущий найденный экстремум. То есть анализируется три точки: текущая, последний найденный экстремум, который ещё не завершен, и предпоследний экстремум. Это для случая каги.

По ссылке. Разделяю вот эту вот фразу: «При этом, сигнал учитывает «энергетическую структуру» исходных данных и в некотором смысле лучше классического зигзага, чья обоснованность экстремумов для меня весьма сомнительна». Я и сам как то баловался именно такими построениями, минимумы и максимумы искал по каким то осреднениям (функциям). К сожалению проблема оказалась несколько сложнее. У меня по крайней мере. Сам по себе идея о том, что эти экстремумы как то характеризуют состояние настроений покупать\продавать менял и торговцев – захватывающая идея. И на некой простенькой мат.модели толпы покупающей и продающей именно так и получалось. Только реалии другие и многие выделенные таким образом экстремумы абсолютно ничего толкового не показывали. Так что я это идею отложил, в таком виде но не забываю о ней. Уж больно она простая и ясная. Но это у меня, другие могут быть более удачливы.

Prival 13.01.2008 14:24

Что бы тебе сильно не копаться (хотя ссылка в этой ветке была уже на лекции по ЦОС). Выкладываю кусочек. Что есть фильтры которые строятся по МНК а глубина выборки важна, почти для всех видов фильтра, а у МНК особенно

Аааа! Так речь вон о чем! Скажу по секрету, я именно эти фильтры, которые описаны по ссылке, и использую. Только я их воспринимаю не как «фильтр», а как функцию дающаю некую наилучшую оценку с точки зрения вероятности и заданного закона. Хотя конечно, можно смотреть на них как на фильтры. К сожалению, те формулы дают оценку для средней точки, по этому использую как инструмент исследования, но не прогнозирования. Честно говоря, надо было бы конечно вывести форму для оценки крайней точки, но всё как то лень.

Кстати, дополнительно к тому что у вас есть на руках, по этой тематике, можно посмотреть у Т.Андерсона "Статистический анализ временных рядов". Глава 3.3.1 "Сглаживающие процедуры".

И кстати, есть особый вид сплайнов с подобными свойствами, когда на основе простейших функций строится кривая дающая некую наилучшую оценку с точки зрения МНК.