Форум » Статьи MQLabs » Асимметрия рынка » Ответить

Асимметрия рынка

Scriptong: Часть 1. Расчет асимметрии рынка как показателя вырождения тренда. Часть 2. Использование показателей эксцесса и плотности вероятности цены совместно с асимметрией. Исправлена первая версия индикатора, рассчитывающего асимметрию. Часть 3. Перевод формул на "рельсы" пакета EViews и расчет критерия Жака-Бера.

Ответов - 58, стр: 1 2 3 4 All

Genry: Scriptong пишет: Да, для символов, у которых целая часть несравнима по величине с дробной частью, асимметрия оказывается слишком малой, не выходя за пределы коридора существенных значений. В итоге SkewnessFeatMA не получает начального сигнала от асимметрии (выход за пределы существенности). Надо будет подумать, что с этим можно сделать, а то ведь целый класс символов останется без анализа. Игорь, если будет время поправьте, pls, индикатор SkewnessFeatMA. Он так и остался на старой версии асимметрии и не берет 2-3х значные инструменты .

Scriptong: Genry пишет: Он так и остался на старой версии асимметрии и не берет 2-3х значные инструменты . А вот здесь попрошу немного ввести меня в курс дела. Где-то далеко в памяти что-то вроде шевелится, но, посмотрев код, не могу даже приблизительно вспомнить, что есть старая, а что есть новая версии асимметрии. Excel или Eviews?

Genry: День добрый, Игорь! Genry пишет: цитата: Он так и остался на старой версии асимметрии и не берет 2-3х значные инструменты. Scriptong пишет: А вот здесь попрошу немного ввести меня в курс дела. Где-то далеко в памяти что-то вроде шевелится, но, посмотрев код, не могу даже приблизительно вспомнить, что есть старая, а что есть новая версии асимметрии. Excel или Eviews? Хронология изменений такова: 1. Первая версия асииметрии, на которой реализован индикатор SkewnessFeatMA, основана на медиане - это она содержит описанный недостаток; 2 Вторая версия на базе Excel содержит правильный расчет асимметрии, который работает со всеми инструментами. Scriptong пишет: цитата " Перед рассмотрением новых статистических показателей вернемся на шаг назад и решим одну проблему, которая не была замечена в прошлый раз. Проблема заключается в неправильном выборе формулы расчета асимметрии. Такой выбор в итоге привел к отсутствию существенных показателей асимметрии для финансовых инструментов, у которых целая часть значения котировки превышает единицу на два порядка (т. е. значения, близкие к 100). После того, как указанная проблема была обнаружена, выяснилось, что для рыночных котировок правильнее применять формулу расчета асимметрии, используемую в Microsoft Excel, а не ту, которая основана на медиане (см. формулу (1) статьи "Асимметрия рынка"). " 3. Третья версия на базе Eviews, описана в статье " Критерий Жака-Бера" и содержит улучшенный расчет асимметрии, на базе этого алгоритма Вы разработали последующие версии статистических индикаторов. Scriptong пишет: цитата "Несколько вариантов формул расчета асимметрии и эксцесса нами были рассмотрены ранее (см. "Асимметрия рынка" и " Эксцесс и плотность вероятности"), но не будем умалчивать и о других интерпретациях нахождения этих величин. В текущем контексте рассмотрим вариант формул, используемых в эконометрическом пакете EViews. Взяв за основу индикатор SkewnessExcel, изменим его код в соответствии с формулами (3) и (4). В результате получим индикатор SkewnessEviews и следующее соответствие кривых линий индикаторов (см. рис. 1). Рис. 1. Сравнение кривых линий индикаторов SkewnessExcel и SkewnessEViews. При беглом сравнении двух кривых линий создается впечатление, что показания индикаторов идентичны. Но, как обычно, все главное кроется в деталях (см. рис. 2). Рис. 2. Различие показаний индикаторов. Оказывается, что у двух индикаторов идентичными являются только формы кривых линий. Показания, как и следовало ожидать, в виду различных формул расчета, разные. Подобное расхождение показаний нельзя сбрасывать со счетов, т. к. на данные от индикатора асимметрии мы ориентировались как на часть торгового сигнала. Напомним, что одной из составляющих сигнала продажи как раз являлся момент формирования пика линии асимметрии выше верхней границы существенных значений. Поэтому, если бы мы руководствовались показаниями индикатора SkewnessExcel, то после медвежьей свечи, показанной на рис. 2, следовало бы совершить продажу, что привело бы к получению убытка. Если же смотреть на показания индикатора SkewnessEViews, то торгового сигнала в данной ситуации попросту нет. Следовательно, убыточная сделка была бы пропущена. Вышеприведенные рассуждения ни в коей мере не стоит рассматривать под соусом агитации в пользу индикатора SkewnessEViews как более "правильного" индикатора в сравнении с индикатором SkewnessExcel. Вовсе нет. Цель рис. 2 - обратить внимание на различие показаний и, как следствие, на различные наборы торговых сигналов, которые могут быть получены при использовании того или иного индикатора при равных значениях настроечных параметров. В итоге версия на базе алгоритма Eview использовалась чаще - лучше взять ее.


Scriptong: Genry пишет: В итоге версия на базе алгоритма Eview использовалась чаще - лучше взять ее. Спасибо за хронологию. Освежили память Изменил в коде индикатора тип расчета асимметрии, а заодно перевел на новый MQL4. Индикатор добавлен в список индикаторов на нашем сайте.

Genry: Scriptong пишет: Изменил в коде индикатора тип расчета асимметрии, а заодно перевел на новый MQL4. Индикатор добавлен в список индикаторов на нашем сайте. Вот и подарок уходящего лета! спасибо, Игорь!

Scriptong: Genry пишет: Вот и подарок уходящего лета! спасибо, Игорь! Пока идет процесс "устаканивания" работы сайта и реализация множества ранее задуманных сервисов. Поэтому сейчас, к сожалению, не могу полноценно работать над развитием стратегий, как раньше. Надеюсь, к концу года разгребу эту кучу.

Genry: Scriptong пишет: Пока идет процесс "устаканивания" работы сайта и реализация множества ранее задуманных сервисов. Поэтому сейчас, к сожалению, не могу полноценно работать над развитием стратегий, как раньше. Надеюсь, к концу года разгребу эту кучу. Желаю скорейшего успеха в задуманном! ---------------- PS Кстати, в настройках индикатора я нашел еще сюрприз - расчет как по цене, так и по объему! Интересно, буду смотреть

Scriptong: Genry пишет: PS Кстати, в настройках индикатора я нашел еще сюрприз - расчет как по цене, так и по объему! Интересно, буду смотреть Он и раньше был. Видимо, не был так заметен, когда указывалось false/true. Теперь же, в новом MQL4, можно указывать любое перечисление явно, без использования всяческих шифров

Genry: Scriptong пишет: Он и раньше был. Видимо, не был так заметен, когда указывалось false/true. Игорь, скорее всего Вы уже работали со своей версией индикатора. Та, которая шла со статьей, была без этого параметра: // Настроечные параметры индикатора extern int i_skewnessPeriod = 30; extern int i_skewnessPrice = PRICE_CLOSE; extern int i_maFastPeriod = 15; extern int i_maSlowPeriod = 30; extern int i_maPrice = PRICE_WEIGHTED; extern int i_usedTF = 15; extern int i_indBarsCount = 500; Так что для меня сюрприз остался сюрпризом

Genry: Игорь, день добрый! Иногда индикатор выдает вот такую ошибку. Она возникает очень редко при тестировании, причина не понятна. Возможно у тестера с памятью проблемы. 2014.08.31 20:09:53.339 SkewnessEViewsFeatMA_614 EURUSD,M15: initialization failed (1) 2014.08.31 20:09:53.339 SkewnessEViewsFeatMA_614 EURUSD,M15: Alert: SkewnessEViewsFeatMA_614: не удалось инициализировать класс Skewness. Индикатор отключен. 2014.08.31 20:09:53.339 SkewnessEViewsFeatMA_614 EURUSD,M15: Alert: SkewnessEViewsFeatMA_614: ошибка распределения памяти для размещения выборки.

Scriptong: Genry пишет: Игорь, скорее всего Вы уже работали со своей версией индикатора. Та, которая шла со статьей была без этого параметра: Да, прошу прощения. Перепутал с индикатором SkewnessEviews_614, который был описан в статье Асимметрия и объемы. Модернизация индикатора SkewnessFeatMA происходила на основании класса Skewness, в котором можно было выбирать между расчетом по цене и по объему. Вот новый параметр и оказался в индикаторе автоматически.

Scriptong: Genry пишет: Возможно у тестера с памятью проблемы. Это происходит в тех случаях, когда размер выборки (значение параметра "Глубина выборки") достаточно большое. Ошибка может возникать в результате выполнения вот этого участка кода: // Проверка доступности памяти if (ArrayResize(m_sampleData, m_skewnessPeriod) != m_skewnessPeriod) { Alert(WindowExpertName(), ": ошибка распределения памяти для размещения выборки. "); return false; }

Genry: Scriptong пишет: Это происходит в тех случаях, когда размер выборки (значение параметра "Глубина выборки") достаточно большое. Игорь, спасибо за подсказку, это при первом прогоне я параметры ставлю шире для определения рабочего диапазона, а потом их уменьшаю. Поэтому редко выскакивает. Теперь причина понятна.



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