Ассиметричный Гауссовский Микс с Нулевыми Средними, Распредление Цен

Я нашел то что искал. Распределение а) способное с достаточной точностью аппроксимировать Эмпирическое Распределение цен на диапазонах 180, 360, 720 дней б) имеющее достаточно простую форму в) с возможностью маштабировать.

Ассиметричный Гауссовской Микс из 3х компонент, отдельно для Положительных и Отрицательных изменений, с Фиксированными Нулевыми Средними. Это 8 параметров, но два из них определяются оч точно и требуют мизера данных, поэтому их можно не учитывать, остается 6 параметров, 6 сигм. Это много, но фиттинг будет на десятках лет так что данных достаточно.

Финальная подстройка — сжать/растянуть полученную модель на текущую волатильность, будет по 1-2 параметрам.

На графиках, зеленый положит изменения цен, красный отрицательные. Яркие цвета — эмпирическое, зеленый красный полутон Гауссовский Микс, бирюзовый/розовый полутона — Обобщенное Гиперболическое (добавил чисто для сравнения, оно приближает хуже и непредсказуемо, причем самую важную часть — хвост).

Ассиметричный Гауссовский Микс с Нулевыми Средними, Распредление Цен


( Читать дальше )

Gaussian Mixture vs Generalised Hyperbolic, Прогноз Цены Акций

Апроксимация Распределения Вероятностей цен MSFT за 360, 180 и 30 дней.

Явно видно что Нормальный Микс из 3х компонент намного лучше повторяет форму распределения чем Обобщенная Гиперболическая Модель.

Проблемы:

— Непонятно как менять его волатильность? В нормальном мы меняем сигму — и распределение меняется, а здесь 3 компоненты, у каждого своя сигма и среднее. Если есть идеи как маштабировать полученный нормальный микс было бы интересно услышать.
— Лучшее совпадение не значит что это лучше, это может быть оверфиттинг.

Маштабирование:

Нужно для настройки модели на текущую волатильность. Скажем мы на истории за десятки лет определили общую форму Нормального Микса для MSFT как меняются акции за 1 мес. Но, нам ведь интересно затем настроить (маштабировать) эту общую форму на текущую волатильность MSFT, отмаштабировав общую форму, на текущую волатильность MSFT за последний месяц. Непонятно как это сделать.

Зачем это нужно:

Знать будущее распределение цен (у нас правда не будущее, а прошлое, которое мы за неимением лучшего используем как будущее) — может быть полезно для моделирования различных сценариев и подбора гиперпараметров, расчета цен опционов, формирования оптимального по тому или иному критерию портфеля, симуляция стресс теста, расчет цен опционов, и т.п.

( Читать дальше )
  • обсудить на форуме:
  • Microsoft

Талеб был прав, Гауссовский Микс работает неплохо

Апроксимация изменений цен Гауссовским Миксом, отдельно для положительных и отрицательных изменений.

Благодарность Михаилу, что поправил алгоритм фиттинга модели для Гауссовского Микса.

Микрософт, 360 дней, зеленая положительные изменения, красная — отрицательные. Слабозеленая/слабокрасная гауссовский микс. Почти невидимая зеленая/красная — обычное гауусовское распредление.

Для каждого случая два графика, графики одинаковы и показывают P(X > x) (комплементарная CDF), но в разных масштабах, логарифмическом и линейном, на одном лучше видна голова на другом хвост.

Талеб был прав, Гауссовский Микс работает неплохо

Микрософт 180 дней



( Читать дальше )

Калибровка Не Нормальных Моделей Распределения Цен

Прежде чем запускать калибровку на реальных данных цен, сделал простейший тест — а можно ли его вообще использовать, насколько хорошо он работает?

Калибровка — определение неизвестных параметров для известного распределения, двумя методами — Maximum Likelihood и Bayesian.

а) задал простейшую модель, с известными параметрами, б) сгенерировал с нее огромный сэмпл 10000 точек, в) затем фиттинг на полученном сэмпле и г) сравнение полученных резуьтатов с исходными параметрами.

Тестовая модель, Гауссовский Микс:

weights = [0.5, 0.5], means = [0, 0], sigmas = [1, 2]

Результат, точнее его отсутствие, картина ниже (питоновский код):

Калибровка Не Нормальных Моделей Распределения Цен
Параметры определяются совершенно неверно. Причем случай идеальный, простейшая модель, огромный сэмпл.

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

П.С.

Гиперболическое Распределение

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



( Читать дальше )

Не Нормальное Распределение Цен

Продолжаю сравнивать распределения изменения цены, логарифмы, отцентрированые пo среднему, для 360 и 30 дней, отдельно графики положительных изменений (зеленые) и отрицательных (красные). Сравнение с нормальным (полупрозрачные зеленые и красные линии), как видно — не совпадает, и ассиметрия также заметна.

Микрософт, 360 дней

Не Нормальное Распределение Цен
Микрософт, 30 дней



( Читать дальше )

Распределение Цен, QQ График #опционы

Я допустил неточность в прошлом посте, где сравнивал логарифмы от изменения цен на QQ графике.
Ошибки: я выбрал интервал квантилей (шаг) слишком большим 0.05, и исключил экстремумы мин/мах, что сгладило график и не позволило увидеть нелинейность во всей полноте.
Ниже графики с шагом 0.01, и мин/мах добавлены.

Гораздо лучше видны а) ненормальный характер распределения, б) максимальные отклонения на интервалах 360д и 180д почти одинаковы, (неожиданно, интервал увеличился вдвое, а амплитуда изменений осталась почти такой же) в) при уменьшении интервала изменений, от 360д до 180 и до 1д, видно как меняется характер распределения, и оно меняется от средне тяжелых хвостов, и становится все более и более экстремальным с тяжелыми хвостами. г) неадекватность линейной шкалы (квантили), для например дискретизации лучше использовать прогрессивную шкалу. И это при том что изменения уже «нормированы» логарифмом. д) известная работа Мандельброта, и его (верное, оно хорошо видно на другом лог-лог графике) заключение о распределении Парето насколько я понимаю относится к дневным изменениям. Но распределение для больших интервалов, например полгода, год, хотя и с тяжелыми хвостами, но уже не такое экстремальное, уже не Парето.

( Читать дальше )

Можно ли использовать симметричные распределения для цен акций?

Ведь движения цены вверх и вниз могут иметь разную природу, и реальное распределение может не быть симметричным. Ниже сравнение распределения для положительных и отрицательных движений цены (логарифмов изменений цены, log(p[i]/p[i-360]) для интервалов 360 и 180 дней), и сравнил их на QQ графике. Для одинаковых положительных и отрицательных движений цены — должна быть прямая линия.

Они явно отличаются, отчасти это и понятно, в среднем акции немного двигаются вверх:

Можно ли использовать симметричные распределения для цен акций?



На графике ниже изменения отцентрированы (из логарифмов изменений вычтена их медиана, показана черной горизонтальной линией), чуть лучше, но все равно есть отличия:



( Читать дальше )

Изменения цен акций, Q-Q график

Хотел одной картинкой охватить особенности конкретной акции. Чем MCD (стабильная) отличается от MSFT (волатильная растущая) или NEM (волатильная боковая). И QQ график получился интересной иллюстрацией. Маленькие точки это энный квантиль, жирная точка 0.5 квантиль (медиана). 

Логарифмы изменения цен за 360д

Изменения цен акций, Q-Q график



Логарифмы изменения цен за 180д



( Читать дальше )

Распределение вероятностей изменения цен, где Тяжелый Хвост?

Есть гипотеза что изменения цен на акции описываются гибридным распределением — нормальным для головы, и парето для хвоста.

Распределение парето f(x) = Cx^-a можно увидеть на лог/лог графике как прямую линию. 

Я построил эмпирическое распределение CDF, реальных цен на акцию, но не могу найти на нем «хвост», прямую линию, где она? (просто для сравнения я также построил нормальное распределение откалиброванное на тех же данных).

Распределение вероятностей изменения цен, где Тяжелый Хвост?



На графике показана только часть CDF, положительные измемения, в маштабле лог/лог. Также, изменения цен трансформированы, как: 1) лог траснформа и 2) отцентрированы относительно медианы. Нормальное распределение откалибровано на тех же трансформированных данных, с насильно принятым 0 взятым из медианы в качестве арифметического среднего (т.е. для нормального насильно поставлена медиана вместо арифметич среднего, так график лучше совпадает).

Данные — изменения цен на акцию, посчитаны как изменения за год, для каждого дня, diff_i=price_i/price_{i-360}, для цен одной акции за несколько десятилетий.

( Читать дальше )

Отличие инвестиций от спекуляций

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

Спекуляции основаны на корелляции. При анализе данных ищуются паттерны, причинно следственная связь не устанавливается, ставка делается на то что эти паттерны сохранятся в будущем.

Поведение в кризис при падении активов.

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

При корелляциях прогноз сделать нельзя, корелляция найденная на прошлых данных может работать, может нет, будущее непредсказуемо.

Исторические данные

Для прицинно следственной связи не важны, достаточно точечно установить причины.

Для корелляций совершенно необходимы океаны данных, достаточно детальных, и большой, десятки лет временной период.

( Читать дальше )

теги блога Alex Craft

....все тэги



UPDONW
Новый дизайн