Теория случайных потоков и FOREX - страница 19

 

lna01

«…В частности уже на данном этапе вызывает вопрос произвол в выборе длины линейной регрессии…»

Согласен. Но я думаю на этот вопрос можно найти ответ. Надо исследовать время "жизни моделей". Мне кажется, что оно (время) должно определять глубину линейной регрессии. Вот там искусство и начнется, т. к. критерий расхождения модели, да и саму модель и её параметры каждый может вложить какие считает нужными + погонять по истории + собрать статистику. И только тогда можно делать какие то выводы. Хочу привести высказывание Yurixx который очень точно подметил «На самом деле нет исследований, которые бы приводили статистику по продолжительности жизни моделей. Тем более, нет данных по количеству информации (=времени запаздывания), необходимой для распознавания модели. Даже те, кто эти модели вводит и использует, предпочитают такие исследования не проводить или не публиковать. Очевидно считается, что если стратегия имеет положительное мо, то все-таки модель распознается раньше, чем выравниваются вероятности.»

Получив ответ на время жизни модели и времени необходимой для её распознавания Вы будете находиться в 1 шаге от создания ТС.

Mathemat

«…Теперь надо заменить a*x+b на что-нибудь более осмысленное, реально убирающее тренд…»

Конечно можно, только вопрос, на какой степени полинома остановиться. Так же можно и сплайнами аппроксимировать еще точнее будет.

Все таки мне кажется надо остановиться на прямой из следующих соображений. 1. МОЖ=нулю. 2. Многие часто отмечали, что цена как бы совершает колебания относительно какого то уровня. Вроде прямая более подходит к уровню, чем парабола. Когда сможем сделать все необходимые инструменты для анализа потока, к этому вопросу можно будет вернуться и обязательно посмотреть будет ли лучше. Только давай с начало с прямой разберемся, что бы было с чем сравнивать.

Я действительно хочу детрендировать процесс и анализировать его остатки. Как это сказал CANDID !!!. Уравнение прямой (тренд) есть всегда. Нужно только ответить на вопрос на какую глубину его строить.

Сегодня занимался моделированием потока котировок, взял GBPUSD M1 за 23.11.2007. Вот график (рис.1)

Рис.1

Рис.2

Из АКФ были взяты СКО, время корреляции и собственная частота.

И подставлены в уравнения

Результаты представлены на графике. Красная линия это модель. Синяя котировки после вычитания тренда.

Рис.3

Описание различных моделей есть тут. Стр.279. Тихонов В.И. «Нелинейные преобразования случайных процессов.» –М.; «Радио и связь» 1986 г.

Рекомендую тем, кто заинтересовался и хочет исследовать рынок, найти эту книгу. Вот фраза из неё.

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

В частности модель, которую я использовал, это модель описывающая поведение колебательного контура после воздействия на него случайного процесса. Вот вид АКФ этого процесса

Рис.4

А теперь десерт :-). Найдите 10 отличий рис.4 и рис.2.

P.S. Тренд есть всегда, прямую могу построить на любом тайк фрейме, при любых котировках. Вопрос только в том сколько он живет !!!

P.P.S И флэт есть всегда, вопрос только в частоте, амплитуде и коэффициентах затухания

 
rsi:
Prival:

rsi постарайтесь ответить на вопрос "...вероятностные . ." на вероятность чего настраивает Better нейросеть ?

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


Я бы строил с точностью на оборот. Сначало, определился бы с выходом (на что настраивается сеть), а потом бы уже думал о входе.

И мне кажется Batter дал подсказку "Позиции закрываются, когда повышается вероятность движения курса в противоположном направлении. " Как бы я строил нейро сеть, возможно Batter и пошел по этому пути. 1. Есть прекрасный индикатор ZigZag. С его помощью на котировках нахожу критические точки, точки в которых происходит смена направления движения курса. 2. Ищу набор индикаторов и их параметры на входе НС, которые позволяют с какой-то вероятностью попасть в эти точки (скорее области), лучше с вероятностью 1 :-).

Я и иду по этому пути, только хочу не просто перебирать все возможные индикаторы и их параметры на входе НС, что бы попасть в эти точки (распознать). А подавать на вход модели «поведения рынка» заложенные в фильтр Калмана. Предварительно исследовав эти модели на адекватность, время жизни и время необходимое для их обнаружения. Скорее всего будут 3 типа моделей при классификации из по времени жизни. Малое, среднее и большое. Тогда и получиться 3 в 1.

Только вот будит ли это НС в классическом её понимании, не думаю.

Вот допустим один из входов. Это модификация индикатора про который в этой ветке часто говорили.

 

Построить график баров разбиение которых основано на тиках, а не времени !! Великолепная идея Mathemat’a высказанная в другой ветке.

Просто хотел бы отразить её и здесь с пояснениями. Исходный поток это поток тиков. Любое его преобразование в виде баров – это нелинейное преобразование, но из-за того что достоверно восстановить его историю мы можем только на минутках, то вынуждены работать с ними.

Предложенное построение сводит тот нестационарный поток, который мы пытаемся анализировать к потоку интенсивность которого равна const. На первой странице про это говорилось ИП – моментная функция первого порядка одна из важнейших его характеристик. Это будет уже другой ценовой ряд с другими характеристиками, но результат действительно может быть интересным. Например, очень интересно как будет себя вести ATR на этом ряду, да и другие стандартные индикаторы. Какая будет AKF и спектр этого ряда.

З.Ы. Если у кого, то есть архив тиков. Пусть хотя бы недельный поделитесь. Пожалуйста, дайте этот архив komposter’у. Он волшебник он справиться. Или выложите его здесь с пояснениями какая валюта и интервал времени. Графики построим и выложим обязательно

P.P.S. Может рынок живет в своем временном измерении и 1 сек у него это 1 тик.

 

Архив тиков начиная с 2000 г. по годам и месяцам: http://ratedata.gaincapital.com/

Идея тикфреймов (в отличие от таймфреймов) обсуждалась здесь неоднократно и давно. Авторство ее явно народное, так как установить личность того, кто поднял вопрос впервые не сможет даже КГБ. Высказывалось пожелание, чтобы МТ5 давал возможность иметь тикфреймы в стандартном наборе средств отображения графиков цены. Может разраюботчики это и сделают. На форуме fxclub Северный Ветер публиковал весьма интересные материалы, содержащие между прочим исследование и распределений тиков: http://forum.fxclub.org/showthread.php?t=32864 и http://forum.fxclub.org/showthread.php?t=32942

А то, что у рынка свое время - в этом нет сомнений.

 

Да, идея обсуждалась давно, и с этими исследованиями Северного Ветра я знаком. Просто я обратил на нее внимание не в контексте торговли, а в контексте функции распределения и вообще совершенно другого характера процесса.

Собака зарыта именно в дикой нестационарности процесса тиковых лагов (это и есть истинная причина толстых хвостов и прочих мерзостей), а сами-то тики по амплитуде имеют очень ясную дискретную ФР (фактически - два острых пика +-1, амплитуды которых почти равны даже на сильном тренде; вклад остальных тиков с большими амплитудами незначителен). Мы очень любим рассуждать о ценовой компоненте рынкета, а о временной задумываемся редко.

Что касается архива тиков, тут надо осторожнее, т.к. плотность потока тиков у разных дилеров может различаться очень сильно. Да и нужен ли этот архив для индюкатора? Вполне достаточно данных о тиковых объемах.

P.S. Конечно, данных о тиковых объемах не достаточно. Но если иметь тиковые объемы минуток, этого уже вполне достаточно для построения "почти эквиобъемных" баров.

 

Prival попросил - я ответил.

А по поводу распределния - не пойму в чем проблема. Построить бары равного объема - 10 строк кода, построить для них функцию распределения - еще столько же усилий. Все мероприятие можно уложить в весьма компактный скрипт. Что мешает ?

И при чем здесь плотность потока тиков ? Зачем опять примешивать сюда время, если, как предполагается, именно оно портит всю картину ? К тому же, для баров постоянного объема более высокая плотность приведет только к тому, что их будет больше на том же временном интервале. Ну и что ? При чем здесь временной интервал, если идея в том, чтобы уйти от привязки ко времени ? И наконец, при чем здесь разные диллеры ? Вот именно, что они разные ! Если методика для одних диллеров работает, а для других нет - в мусор.

Короче, если интересно посмотреть, то надо смотреть, а не придумывать отмазки. Если бы это было в сфере моих интересов, давно бы уже все сделал.

 
Prival, нашёл индикатор, может пригодится. Там есть адрес автора.
Файлы:
 
rsi:
Prival, нашёл индикатор, может пригодится. Там есть адрес автора.

Спасибо. Посмотрел, название красивое. Но к сожалению это не фильтр Калмана, если я понял правильно код, это вырожденный случай, так называемый альфа-бетта фильтр. Т.е фильт с постоянными коэффициентами Sharpness и K в этом индикаторе + он вроде перерисовывается. Настоящий (правильный) фильт эти коэффициенты должен расчитывать сам, как бы производит адаптацию к входному потоку + он (фильтр) многомерный.

Вот один из возможных алгоритмов, так называемая S модификация фильтра Калмана 


 p/s/ хотя вот эта строчка неплохая мысль, может и пригодиться. Спасибо еще раз. 

return((iHigh(NULL,0,shift)+iLow(NULL,0,shift)+iClose(NULL,0,shift)+iClose(NULL,0,shift))/4);
 

Prival, у Вас есть работоспособная версия этого фильтра, написанного в среде Mathсad? Если да, то выложите, пожалуйста, с необходимыми пояснениями, в формате не новее Mathcad2001 Worksheet. Как я понимаю, у кода должен быть один вход, один выход и несколько настраиваемых параметров. Посмотрим, что это за зверюга!

 
Neutron:

Prival, у Вас есть работоспособная версия этого фильтра, написанного в среде Mathсad? Если да, то выложите, пожалуйста, с необходимыми пояснениями, в формате не новее Mathcad2001 Worksheet. Как я понимаю, у кода должен быть один вход, один выход и несколько настраиваемых параметров. Посмотрим, что это за зверюга!

Вот выкладываю, это один из моих рабочих вариантов. Только пока не все там гладко как хочу добиться. По настраиваемым параметрам, там их нет в обычном смысле. Фильтр Калмана настраивается вложением (заданием) с помощью трех матриц. 1-ая это матрица Ф которая содержит модель фильтруемого процесса в программе это скорость потока + его ускорение V(k)+a(k). 2-ая матрица это шумы возбуждения модели Dx. И 3-я матрица это дисперсия шумов измерения, в программе вырожденный случай D_скор=const.

В процессе работы фильтр сам настраивается на то чему больше доверять измерениям или модели.

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


в архиве два файла один для маткада 14 другой попытался сохранить для 11 версии, но он что то ругался
Файлы:
kalman.zip  116 kb
Причина обращения: