Форум » Идеи для статей » Статистические методы прогнозирования.Асимметрия » Ответить

Статистические методы прогнозирования.Асимметрия

Genry: Асимметрия(skewness). Начало темы: [quote] Scriptong пишет: С хвостатыми свечами проблема та же, что и с сигналами множества других торговых систем: когда не знаешь, будет ли сигнал отработан мгновенно. Верно то, что часто после образования хвостатой свечи наблюдается коррекция, позволяющая зайти по более выгодной цене. Но верно и то, что в других случаях цена практически без коррекций (болтание в пределах 10 пунктов я не считаю коррекцией) уходит в направлении сигнала. Genry пишет: Даааа, это задачка. Решая ее, я уже года 3 кручу идею, о которой много раз упоминал на старом форуме - асимметрия цены. Ее привлекательность в том, что асимметрия дает опережающий прогноз. Недостаток в том, что переход от левой асимметрии к правой сложно идентифицировать - по крайней мере мне самому. И сама величина "разброса" или отклонения от средней достаточно мала - поэтому я, как и Вы в "Методе конечных разностей", оценивал асимметрию High и Low цены и смотрел, на каком конце свечи фиксировался рост отклонений от средней или от цены закрытия. Scriptong пишет: Возможно, удастся найти закономерность, позволяющую определять, к какому из типов относится данная хвостатая свеча. Для этого и можно было бы использовать другой критерий, что-то вроде фильтра. Но пока подходящего не нашел. Все имеющиеся фильтры, вместе с ложными сигналами, режут добротные профитные сигналы. Genry пишет: Индикатор асимметрии имеет опережающий сигнал и редко режет профит, но он так меняет направление, что сложно поймать преход через 0 и есть вероятность встать против рынка, хотя, только что, индикатор указывал правильное направление. Я попробую обобщить результат исследования и показать скрины - как это работает. Частично я это делал раньше в ветке с прогнозами валют.[/quote]

Ответов - 28, стр: 1 2 All

Genry: Первый индикатор по теме мне попался на Кодабасе(codebase.mql4) в мае 2011 года, автор Федор Igumnov.Я тогда искал возможность "поймать" начало 1 волны, а в описании индикатора было указано: "Асимметрией называют отношение центрального момента третьего порядка к кубу среднеквадратичного отклонения. Центральный момент третьего порядка - среднее отклонение членов выборки от дисперсии выборки. Так как среднеквадратичные отклонения из-за дробных котировок очень малы, асимметрия считается для значений индикатора RSI. Получается трендовый индикатор. Высокие значение говорят о начале нового тренда. Низкие - флэт. " Последующего развития тема не получила и дальше пришлось разбираться самому. Немного теории с MATLab - Описание функции skewness: y = skewness(X) функция предназначена для расчета точечной оценки коэффициента асимметрии y выборки Х. Если Х задана как вектор, то точечная оценка коэффициента асимметрии рассчитывается по всем его элементам. Для выборки определенной в виде матрицы точечная оценка коэффициента асимметрии рассчитывается для каждого столбца Х. Расчет проводится по формуле, где - среднее арифметическое значение выборки Х, - точечная оценка среднего квадратического отклонения выборки Х, E(t) - наиболее вероятная оценка параметра t. Коэффициент асимметрии выборки является мерой смещенности распределения относительно среднего арифметического значения. Отрицательный коэффициент асимметрии соответствует распределению смещенному влево относительно среднего значения. Положительный коэффициент асимметрии соответствует распределению смещенному вправо относительно среднего значения. Для нормального закона, или любого другого симметричного распределения, коэффициент асимметрии равен нулю. y = skewness(X,flag) функция позволяет рассчитать несмещенную (flag=0) и смещенную (flag=1, значение по умолчанию) точечную оценку коэффициента асимметрии y выборки Х. Величина смещения выборочного коэффициента асимметрии зависит от объема выборки. Если Х является выборкой из генеральной совокупности, для получения несмещенной точечной оценки коэффициента асимметрии flag должен быть равен 0. Остальное с примерами можно посмотреть здесь:MATLab

Genry: Взяв за основу индикатор Федора, и используя свои кривые познания MQL, для начала сделал обзорный цифровой MTF-индикатор, который показывал ситуацию с асимметрией на всех ТФ инструмента. Поучилась картинка, которая давала представление о том, где растет асимметрия и значит можно ожидать движения цены к среднему значению. Параметр NulVal - показывает сколь бар назад значение асимметрии было около или =0 и цену. Верхнее значение - нулевой бар, затем -1, -2, -3 и соответствующая цена. Следующим шагом было добавление к кривой, которую рисовал Федор (cтроилась по Close - желтого цвета), еще двух линий, которые строились по High (зеленая) и Low(красная). Это дало представление о том, на каком конце свечи значение асимметрии растет сильнее, что подсказывает, в каком направлении может двинуться рынок. А также видно, когда цена "проскакивает" нулевой уровень и возможно обратное движение. Если красная линия выше зеленой - можно ожидать движения вниз, если в процессе линии меняются местами, то возможна смена направления движения. Появление еще одного индикатора - azzx_ema_rsi_1_0.mq4 позволило рассчитать асимметрию отдельно для растущих и уменьшающихся значений индикатора RSI. Для удобства значения пришлось сгладить - получились 4 кривые. Но возникла приличная бяка - я столкнулся с тем, что индикатор перерисовывает . Ну и еще одно замечание - нередко тренд идет без отклонения от среднего значения, тогда асимметрия не возникает и можно пропустить "вкусное" движение. Если менять период индикатора, то отыщется асимметрия, которая двинула цену, но это добавляет сложности в подборе параметров для торговли. Наличие асимметрии как таковой - тоже достаточно интересная информация, она показывает что нарастает импульс, способный двинуть цену. Даже если направление не определено можно поставить отложенные ордера. На ночном рынке к высоким значениям асимметрии младших ТФ надо относиться с некоторой долей скепсиса - движение может быть незначительным. --------------------- Чтож, обзорную часть закончил, описание, как использовались индикаторы для прогноза уже лежит в ветке "Свободное общение.Прогноз валют" . Осталось добавить скрин со сглаженными кривыми - это сделал недавно.

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


Scriptong: Покумекаю над формулами. Там пока не все понятно, где и что брать, но, думаю, со временем разберусь. Сама идея асимметрии в идеале - здорово. Не один я заметил, что цене свойственно уходить на какое-то расстояние от средней скользящей линии, после которого происходит возврат цены к средней. Причем, смотря на историю, просто диву даешься, насколько хорошо эта закономерность работает. Проблема, как всегда, в поиске точек возврата цены к средней линии.

Genry: Scriptong пишет: Проблема, как всегда, в поиске точек возврата цены к средней линии. Величина асимметрии растет - уходим от средней, начинает убывать - это признак разворота, а когда =0 предполагаем, что вернулись к средней. Scriptong пишет: Покумекаю над формулами. Там пока не все понятно, где и что брать, но, думаю, со временем разберусь. Игорь, чтобы ускорить процесс я могу сложить в архив и выслать те программы, которые описал выше. С точки зрения образцов программирования и безопасности применения - думаю они вредны, поэтому не выкладываю в открытый доступ, а вот с точки зрения посмотреть как работает предложенная идея - могут дать представление. Описание тоже не ахти - самому-то все понятно, постараюсь выставить параметры по умолчанию так, чтобы было видно результат, но у меня 5-ти знак.

Genry: Scriptong пишет: Проблема, как всегда, в поиске точек возврата цены к средней линии. Genry пишет: Величина асимметрии растет - уходим от средней, начинает убывать - это признак разворота, а когда =0 предполагаем, что вернулись к средней. На сканере это хорошо видно. По сути он отражает волновую картину и распределение сил на всех ТФ инструмента. Интересно смотреть как происходит движение, например: 1.рост асимметрии на Н1 и согласованное движение на младших ТФ, когда все показатели дружно стали зелеными 2. краснеет М1, пошла коррекция, захватывает м5, м15 - затухла, снова пошло все зеленеть, пошел рост на Н1 или как на скрине ниже:

Genry: Игорь, день добрый! Статью проглотил , сейчас распечатал - буду читать уже неспеша. Ваш глубокий подход к предмету, с первой прочинанной мною статьи вызывает уважение - примите респект и в этот раз! Спасибо! Ушел читать и тестировать .....

Genry: Прочел, посмотрел индикатор - все работает, завтра потестирую на живом рынке. Цитата из статьи: Scriptong пишет: Но все будет далеко не так радужно, если рассмотреть другой участок истории (см. рис. 2). Из трех сигналов индикатора два первых сигнала приводят к явным убыткам. Лишь третий сигнал (покупка) можно рассматривать как относительно успешный. Это происходит по той причине, что индикатор показывает распределение асимметрии по выборке в целом, без привязки к ее началу или окончанию. Некоторый опыт работы с индикаторами, которые я использовал до появления SkewnessFeatMA и Skewness: 1. хороший вход в рынок дает использование не нулевого, а экстремальных значений индикатора; 2. пересечение нулевой линии, в этои случае, подтверждает развитие ситуации, когда позиция была открыта на MAX или MIN - это повод для "доливки". 3. закрытие позиции - после достижения противоположного экстремума или срабатывает SL, который подтягивается за ценой; 4. иногда значение индикатора оставалось в экстремальных зонах долго - показания индикатора в это врема незначительно изменялись вверх/вниз. На рисунке уровень локального максимума справа отмечено горизонтальной линией №1, затем значение немного понизилось. В этом случае позиция остается открытой, пока значения индикатора оставались в некотором заданном "допуске" от ранее достигнутого локального максимума. На скрине порог для уменьшения максимального значения показан линией 2" - если значение асимметрии упало ниже, то позиция была бы закрыта, а так будет открыта пока обнавляется максимум и не опускается ниже порога, или сработает подтягиваемый к цене SL. Данный подход дает возможность "взять" профит на двух движениях рынка, которые были убыточными. Игорь, если формируется ТЗ на эксперт - может сразу предусмотреть вариант работы от экстремумов?

Genry: Genry пишет: Прочел, посмотрел индикатор - все работает, завтра потестирую на живом рынке. Нашел некоторую проблему: на пятизнаке (EurUSD) SkewnessFeatMA работает нормально, а у трехзначной USDJPY стрелки не появляются - проверил на разных ТФ. Индикатор загружен и в логе ошибок нет, информационные сообщения типа "08:13:01 SkewnessFeatAM USDJPY,H1: Существенность: " - пишет, но стрелок нет как на истории, так и после запуска в он-лайне То-же на XagUSD, XAUEUR, #QQQ - наверно, что-то общее в расчете для них, связанное со знаком или с большой целой величиной.

Genry: PS. Возможно, что ситуацию с как в правой части на скрине выше, когда значение асимметрии осталось высоким, а цена перешла во флет можно разрешить используя коэффициент эксцесса (kurtosis). Kurtosis позволяет оценить "крутизну" распределяемого ряда и отнести асимметрию к остроконечному или плосковершинному типу. При островершинном подразумевается хорошо выраженное ядро плотности распределения, внутри которого диапазон колебания величины остатков небольшой. Но этот подход тянет за собой необходимость реализовывать инструмент оценки плотности распределения. Часто для этого используют алгоритм Епанечникова для поиска частоты распределения в заданном интервале значеаний. График плотности ядра создается сглаживанием, при котором значениям присваиваются определенные веса - чем дальше от оцениваемой точки, тем легче вес. Результат можно сравнить с нормальным распределением, для чего надо оценивать значимость критериев Жака-Бера проверки нулевой гипотезы о нормальном распределении статистического ряда Самому мне это запрограммировать было слабо , так что тузик сдох и я действовал как описал выше, а ведь можно разработать очень приличную систему, построенную на прогнозе коридора цены, в продолжение темы начатой Вами и Анаваром. Пример работы такой системы публикует эксперт ассоциации российских банков В.Брюков, я читал его статьи и работы - получается очень интересный результат для месячного, 2-х недельного, недельного и дневного прогноза коридора верхних и нижних значений курса валют. Пример сегодня помещу сюда. -------------------------------- Кстати, попалась интересная статья Computing skewness and kurtosis in one pass, вернее две Computing linear regression in one pass

Genry: Сначала прогноз В.Г. Брюкова на 15 июля (сделан для ассоциации российских банков) с учетом отклонений. Прогноз на середину августа 2013 года С учетом последних данных построим новые точечные и интервальные прогнозы по курсам валют на 15 августа. При этом рассчитаем точечные прогнозы не только для бокового тренда, но и отдельно для повышательного и понижательного трендов. Прогнозы для различных трендов составлены с учетом предположения, что ожидаемый ежемесячный рост или снижение курса валюты будут равны их среднему значению за 15 лет. Если инвестор полагает, что с 15 июля по 15 августа американский доллар не будет иметь четко выраженного тренда, то тогда в качестве его ожидаемого курса на конец периода следует взять 32,55 рубля, то есть точечный прогноз для бокового тренда (см. таблицу 3). Если инвестор считает, что доллар в прогнозируемый период будет расти, либо, напротив, будет падать, то в качестве ориентира по его курсу на конец периода он может взять либо 32,91 рубля (точечный прогноз для повышательного тренда), либо 32,20 рубля (точечный прогноз для понижательного тренда). Но точечные прогнозы нельзя назвать надежными, так как они показывают будущую динамику валюты, исходя из предположения о средней силе повышательного, либо понижательного тренда в то время как сила тренда может изменяться в результате воздействия случайных факторов. Очевидно, что инвестору далеко не всегда удается правильно определить направление тренда, поэтому более надежными считаются интервальные прогнозы, составленные с 95-процентным уровнем надежности (или с 5-процентным риском выхода за рамки интервального прогноза). Так, согласно интервальному прогнозу, составленному с 95% уровнем надежности, курс доллара США на 15 августа 2013 года должен оказаться в пределах от 31,33 рубля до 34,80 рубля. Аналогичные интервальные и точечные прогнозы даны и по другим валютам - см. таблицу 3, в которой следует обратить особое внимание на два важных показателя - индикатор роста/падения и индикатор длины тренда. Оба индикатора, составленные по различной методике, показывают вероятность сохранения текущего тренда. Если стоящая рядом с цифрой стрелка показывает вверх ?, то, следовательно, дается оценка вероятности дальнейшего роста курса валюты, а если стрелка показывает вниз ? - оценка вероятности дальнейшего его снижения. При этом индикатор длины тренда рассчитывает вероятность сохранения тренда с учетом его длительности (месяцев роста или падения), а индикатор роста/падения показывает вероятность сохранения тренда на основе данных о том, насколько курс валюты вырос или потерял в стоимости в результате текущего тренда. При этом индикатор роста/падения и индикатор длины тренда показывают, что наиболее перепроданным из 15 валют сегодня можно считать австралийский доллар, вероятность сохранения понижательного тренда у которого равна, соответственно, 5,6% и 4,7%.

Genry: Курсы покупки и продажи Теперь остановимся на рекомендуемых ценах покупки и продажи, рассчитанных на основе фактического распределения остатков (см. таблицы 4 и 5). К сожалению, эти прогнозы не дают 100% гарантии успеха, но могут быть полезны тем участникам рынка, кто вкладывает средства в валюту на короткий период - с инвестиционным горизонтом не более одного месяца. Здесь даются прогнозы-рекомендации не только по курсам важнейших валют к рублю, но и по курсам валют к американскому доллару, а также по бивалютной корзине, которые обычно используются для торговли на бирже ММВБ-РТС и на рынке Форекс. Прогнозы валют к доллару США даются на основе кросс-курсов, рассчитанных на основе официальных курсов валют, установленных Банком России. В таблице 4 даны рекомендуемые цены продажи валют. Так, цена продажи американского доллара к рублю с 15-процентным риском означает, что при продаже этой валюты по цене не ниже 33,20 рубля инвестор в 85% случаях продаст ее по более высокому курсу по сравнению с ожидаемым курсом в начале будущего инвестиционного периода. При желании уровень риска можно снизить за счет повышения рекомендуемой цены продажи, но тогда у инвестора повысится риск упущенной прибыли, поскольку валюта может не вырасти до курса продажи. Таблица 4. Рекомендуемые цены продажи валют с различным уровнем риска с 16 июля по 15 августа 2013 года В таблице 5 даны рекомендуемые цены покупки валют. Так, цена покупки евро к рублю с 15-процентным риском означает, что при приобретении этой валюты по цене 41,72 рубля инвестор с 85-процентной вероятностью купит ее по более низкому курсу, чем в начале будущего инвестиционного периода. При желании уровень риска можно снизить за счет снижения рекомендуемой цены, но у инвестора повысится риск упущенной прибыли, обусловленный тем, что курс валюты может не упасть до установленного уровня. Таблица 5. Рекомендуемые цены покупки валют с различным уровнем риска с 16 июля по 15 августа 2013 года Более подробно можно посмотреть в статье "Ждать ли рублевого дефолта " от 19.07.2013 00:21 Мировой валютный рынок: виды на август.// Владимир Брюков, специально для Bankir.Ru

Genry: Игорь, если от статьи к статье постепенно (неспешно!) создавать элементы используемые В. Брюковым можно выйти на полноценную систему для ежедневного прогноза с приличной точностью. Как Вам такой подход?

Scriptong: Genry пишет: 1. хороший вход в рынок дает использование не нулевого, а экстремальных значений индикатора; На этот счет никто не спорит. Проблема за малым - вовремя определить, что это именно экстремум. В итоге нам дано: опаздывать на один бар с большой погрешностью определения экстремума или на несколько баров с достаточно низкой погрешностью. Ну или вообще не опаздывать со входом, но погрешность определения будет заоблачная. Это то же самое, как многие работают по ZZ - увидели очередной экстремум и, не задумываясь, входят в обратную сторону. Genry пишет: 2. пересечение нулевой линии, в этои случае, подтверждает развитие ситуации, когда позиция была открыта на MAX или MIN - это повод для "доливки". Этот момент тоже рассматривал, но там больше ложных сигналов получается. К тому же, хотелось использовать инструмент максимально близко к его математическому описанию (его ведь неглупые люди придумали), где четко указано, на какую асимметрию стоит обращать внимание. Genry пишет: 3. закрытие позиции - после достижения противоположного экстремума или срабатывает SL, который подтягивается за ценой; См. п. 1. Genry пишет: 4. иногда значение индикатора оставалось в экстремальных зонах долго - показания индикатора в это врема незначительно изменялись вверх/вниз. На рисунке уровень локального максимума справа отмечено горизонтальной линией №1, затем значение немного понизилось. В этом случае позиция остается открытой, пока значения индикатора оставались в некотором заданном "допуске" от ранее достигнутого локального максимума. Вроде бы выход для ловли экстремумов, но, боюсь, здесь слишком уж необъективным может оказаться этот допуск. Genry пишет: Как Вам такой подход? Посмотрим. Надо для начала изучить материалы г-на Бирюкова. Сходу так ничего не скажешь.

Scriptong: Genry пишет: Нашел некоторую проблему: на пятизнаке (EurUSD) SkewnessFeatMA работает нормально, а у трехзначной USDJPY стрелки не появляются - проверил на разных ТФ. Индикатор загружен и в логе ошибок нет, информационные сообщения типа "08:13:01 SkewnessFeatAM USDJPY,H1: Существенность: " - пишет, но стрелок нет как на истории, так и после запуска в он-лайне То-же на XagUSD, XAUEUR, #QQQ - наверно, что-то общее в расчете для них, связанное со знаком или с большой целой величиной. Да, для символов, у которых целая часть несравнима по величине с дробной частью, асимметрия оказывается слишком малой, не выходя за пределы коридора существенных значений. В итоге SkewnessFeatMA не получает начального сигнала от асимметрии (выход за пределы существенности). Надо будет подумать, что с этим можно сделать, а то ведь целый класс символов останется без анализа.



полная версия страницы