Стратегии долгосрочного распределения активов, основанные на моделях GARCH - имитационное упражнение на R

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

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

Я публикую только сокращенную версию на Medium. Я настоятельно рекомендую прочитать более подробную «статью» (вместе со ссылками), которой я поделился на моем GitHub.

1. Методология

Процесс создания данных

В количественных финансах обычно работают с доходностью активов, которую можно определить как

где P обозначает цену актива, а t - временной индекс. Следующие уравнения представляют процесс генерации данных в эксперименте:

с участием

Уравнение условного среднего (первое уравнение) регулируется процессом авторегрессии с запаздыванием 1-й степени, а уравнение условной дисперсии представляет собой модель GJR-GARCH Глостена, Джаганнатана и Ранкл (1993). Это расширение известной модели GARCH (Обобщенная авторегрессионная условная гетероскедастичность ) Боллерслева (1986) с дополнительным преимуществом, заключающимся в рассмотрении случаев, в которых влияние положительных и отрицательных инноваций на дисперсию различно. Другими словами, параметр alpha измеряет эффект от положительных нововведений, а параметр alpha + gamma используется в случае отрицательных нововведений. Модель GARCH получается установкой гаммы для GJR-GARCH на 0.

Процесс создания данных основан на спецификации, предоставленной Вильгельмссоном (2013). Однако этот эксперимент фокусируется на точечных прогнозах доходности акций и связанной с ними дисперсии с использованием его спецификации, без моделирования высших моментов (асимметрии и эксцесса).

Для этого анализа учитываются как модели GARCH, так и GJR-GARCH, и рассматриваются следующие распределения инноваций (z_t): нормальное (N), косое нормальное (SN), t (T), перекос- t (ST), обобщенное распределение ошибок (GED) и его аналог с перекосом (SGED).

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

Подводя итог, подход с фиксированным окном всегда использует один и тот же набор данных, скользящее окно использует то же количество данных, но из разных периодов, а расширяющееся окно использует самый большой объем данных. Таким образом, я исследую 36 комбинаций типов моделей GARCH, распределений инноваций и вариантов оценки.

Моделирование траекторий выборки

Я решаю проблему долгосрочного распределения активов, моделируя N выборочных путей длиной K периодов для выбранных доходностей акций. Я использую плагин, т.е., я работаю в предположении, что параметры распределения известны. Чтобы получить их (вместе с такими переменными, как время T_0 инновации и условная дисперсия, необходимые для инициализации моделирования), я оцениваю выбранные модели GARCH для всех спецификаций с использованием MLE и реализую оценочные параметры для генерации случайных инноваций из избранные дистрибутивы. Чтобы быть более точным, я генерирую N * K случайных инноваций, где горизонт K находится в диапазоне от 1 до 52, в зависимости от временной точки моделирования.

Проблема динамического распределения активов

В этом эксперименте я выбираю только один фондовый индекс и ограничиваю вес в диапазоне от 0% до 100% с шагом сетки в 1% из-за проклятия размерности при работе с численными методами. С сегодняшними быстрорастущими вычислительными мощностями и облачными решениями расширение этого до мультиактивного фреймворка не должно быть проблемой. Однако я слежу за исследовательскими работами и пока сосредотачиваюсь на одном рискованном активе.

Поскольку моделирование безрисковой ставки не является целью этого проекта, я сохраняю ее постоянной во времени и равной среднему значению безрисковой ставки за период оценки (что составляет -0,0819%).

Кроме того, я предполагаю, что инвестор сталкивается с инвестиционным горизонтом в K периодов, а его период распределения начинается во времени T_0. Он оценивает одну из рассмотренных моделей с использованием выборки оценки (данные до момента времени T_0) и указывает оптимальный вес своего портфеля w_ {T_0}. Затем он переходит к периоду времени T_0 + 1, таким образом, в случае скользящего / расширяющегося окна изменяется набор информации и он может повторно оценить рассматриваемую модель с обновленной выборкой оценки. При продвижении во времени на один период его инвестиционный горизонт сокращается до K - 1. В период T_0 + K - 1 его горизонт равен 1, и он может использовать все доступные данные до этого момента, чтобы выбрать свой последний вес распределения в зависимости от метода оценки. Последовательность K весов портфеля, полученная описанным процессом, приводит к одному конечному значению богатства w_ {T_0 + K}. Я следую подходу, аналогичному представленному в Barberis (2000). Предпочтения инвестора описываются функцией полезности CRRA (постоянное относительное неприятие риска). Начальное богатство нормализуется к 1. Я напрямую оптимизирую функцию полезности мощности, чтобы получить оптимальные веса.

Обратите внимание, что проблема инвестора может быть описана как максимизация следующего уравнения:

это означает, что инвестор максимизирует конечное богатство (W) общих решений с момента T_0 и далее.

Один из способов аппроксимации условных ожиданий - это взятие среднего значения для всей выборки:

Однако в этом случае это невозможно из-за того, что разные пути имеют разные моделируемые переменные-предикторы, что, в свою очередь, подразумевает разные условные ожидания. Используются следующие переменные-предикторы: условная дисперсия и моделированная доходность с запаздыванием из-за авторегрессионной структуры уравнения условного среднего. Следуя Брандту и ван Бинсбергену (2007), я использую поперечную регрессию OLS для аппроксимации условного ожидания. Среднее значение попутной выборки можно использовать на самом последнем этапе алгоритма. Для более подробного описания шагов стратегии распределения активов с обратной рекурсией, пожалуйста, обратитесь к статье Брандта и ван Бинсбергена (2007).

Оценка эффективности различных спецификаций для долгосрочного инвестора

Априори, я ожидаю, что модели с более сложным распределением инноваций и / или модели, использующие скользящее / расширяющееся окно, превзойдут простые модели. Поэтому я измеряю производительность моделей, сравнивая их с эталонной моделью среди рассмотренных. В качестве меры сравнения используется следующий модифицированный коэффициент Шарпа (mSR).

где m_0 и sigma_0 - это средняя доходность и волатильность эталонной спецификации, а индекс p относится к более сложной спецификации в сравнении. Одним из недостатков этой меры является то, что она не учитывает более высокие моменты (асимметрия, эксцесс) доходности портфеля. Другими словами, влияние ненормальности распределения не рассматривается.

2. Аналитическая часть в R

Загрузка и управление данными

Для этого упражнения я использую доходность индекса S&P 500, взвешенного по рыночной капитализации индекса 500 крупнейших публично торгуемых компаний США. Я выбираю его из-за того, что рынок США является крупнейшим рынком с точки зрения процента от мировой рыночной капитализации и объема торгов, и поэтому вряд ли он будет приводить к результатам из-за экстремального поведения, которого можно было бы ожидать от более экзотических данных.

Я загружаю цены закрытия за неделю из Yahoo Finance, используя функцию get.hist.quote() из пакета tseries.

По загруженным ценам я рассчитываю простой возврат.

Помимо ряда доходностей, мне нужны некоторые внешние данные, т.е.., Безрисковая ставка и инфляция. В качестве безрисковой ставки я беру ставку Федерального фонда. Я также корректирую доходность с учетом инфляции, используя данные ИПЦ (индекс потребительских цен) из базы данных FRED. Вы также можете найти данные на моем GitHub.

Я разделил набор данных на две подвыборки: оценочную выборку (охватывающую 1988–1999 годы, всего 626 наблюдений) и оценочную выборку (2000 год с 52 наблюдениями).

Следующий шаг включает изменение периодичности безрисковой инфляции и инфляции с ежемесячной на еженедельную.

Наконец, мне нужно учесть инфляцию в серии доходностей.

Сводные статистические данные

Первый важный аспект, на который следует обратить внимание, - это тот факт, что среднегодовая доходность оценочной выборки отрицательна. В этот период также наблюдается более высокая дисперсия. Обе эти характеристики влияют на эффективность стратегии распределения активов. Отрицательная асимметрия и избыточный эксцесс (более высокие моменты) соответствуют стилизованным фактам доходности активов, т. Е., распределение доходности активов не гауссово и может быть охарактеризовано как пиковое, с толстым хвостом (эффект избыточного эксцесса) и отрицательно искаженного распределения. Однако тест нормальности Жарка-Бера подтверждает эту гипотезу только в случае оценочной выборки. Есть также некоторые свидетельства серийной корреляции в доходности (также в квадрате доходности). Корреляция в квадрате доходности подразумевает изменение второго момента во времени, что также соответствует стилизованным фактам доходности активов.

Запуск моделирования

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

  • тип модели: GARCH или GJR-GARCH
  • Распределение инноваций: гауссово, искаженное гауссово, t, искаженное t, обобщенное распределение ошибок и искаженное GED
  • тип оценки: фиксированное / скользящее / расширяющееся окно

Для оценки моделей GARCH я использую пакет rugarch, который содержит все необходимые спецификации GARCH (вариант GJR, а также несколько дистрибутивов для нововведений). Поскольку эти вычисления довольно тяжелые и требуют много времени, я запускаю их параллельно, используя doParallel и foreach. Еще одно предположение, которое я делаю, касается уровня неприятия риска инвесторами - я рассматриваю только инвестора, который не очень склонен к риску, с коэффициентом неприятия риска lambda = 5. Конечно, результаты для других значений параметров можно легко получить, изменив значение параметра в вызове функции. Чтобы гарантировать стабильность результатов, для каждой конфигурации я запускаю n = 100000 симуляции.

Анализ результатов

В этом разделе представлены результаты имитационного эксперимента. Я не буду включать оценочные коэффициенты моделей GARCH из-за большого количества предполагаемых вариантов. Вместо этого я сосредотачиваюсь на доходности портфеля и сравнении различных спецификаций.

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

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

На следующем рисунке представлена ​​динамика смоделированной доходности портфеля во времени. Анализ графика приводит к выводу, что использование различных спецификаций модели приводит к некоторым схожим характеристикам стратегии распределения. Однако есть несколько периодов, когда можно наблюдать разную доходность портфеля. Примечательно, что, следуя стратегии, основанной на моделях GARCH, инвестор может получить меньшую отрицательную доходность, чем просто инвестируя в индекс S&P 500 (как в апреле 2000 г.). Следовательно, потери снижаются. Поскольку графики, относящиеся к типам оценки скользящего / расширяющегося окна, можно интерпретировать аналогично, я не прилагаю их здесь.

Последний шаг включает оценку того, насколько стратегии распределения активов, основанные на более продвинутых моделях, превосходят простой эталонный тест. Для этого я выбрал гауссовскую модель GARCH с фиксированным окном в качестве простейшей модели и буду использовать ее в качестве эталона. Оценка превосходства выполняется с помощью модифицированного коэффициента Шарпа, и результаты представлены в следующей таблице.

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

3. Выводы

В этом упражнении я исследовал, может ли инвестор получить выгоду от точного прогнозирования доходности акций (в случае индекса S&P 500) с использованием различных спецификаций моделей AR (1) - (GJR) GARCH. Таким образом, я принял постоянную безрисковую ставку и уровень неприятия риска инвестора. Эмпирические результаты показывают, что в некоторых случаях использование более сложных и одномерных моделей приводит к более прибыльным стратегиям распределения активов с помощью модифицированного коэффициента Шарпа. Например, (GJR-) GARCH с распределением косого t и расширяющейся оценкой окна имеет наибольшее преимущество по сравнению с эталонной моделью.

Некоторые идеи для дальнейшей работы:

  • Добавьте дополнительные объекты в эксперимент
  • Добавьте дополнительные экзогенные переменные в уравнение условного среднего (дополнительно из авторегрессионного компонента)
  • Убедитесь, что использование одной и той же структуры распределения активов с разными моделями (регрессионные модели со многими переменными, которые могут повлиять на цену акций) может привести к лучшему распределению активов.

На этом короткий эксперимент закончится. Пожалуйста, дайте мне знать, если у вас есть какие-либо мысли по этому поводу. Как всегда, весь код R вместе с более подробной версией исследовательской статьи можно найти на моем GitHub.

Недавно я опубликовал книгу об использовании Python для решения практических задач в финансовой сфере. Если вам интересно, я разместил статью, знакомящую с содержанием книги. Приобрести книгу можно на Амазонке или сайте Пакта.

Ссылки:

  • Барберис, Н. (2000) Долгосрочное инвестирование, когда доходность предсказуема, The Journal of Finance, 55 (1), 225–264.
  • Боллерслев Т. (1986) Обобщенная авторегрессионная условная гетероскедастичность, Журнал эконометрики, 31 (3), 307–327.
  • Глостен, Л., Джаганнатан, Р. и Ранкл, Д. (1993) О связи между ожидаемой стоимостью и волатильностью номинальной избыточной доходности по акциям, Journal of Finance, 48, 1779–1801.
  • Вильгельмссон, А. (2013) Прогнозирование плотности с изменяющимися во времени более высокими моментами: подход с модельным набором достоверности, Журнал прогнозирования, 32 (1), 19–31.
  • Ван Бинсберген, Дж. Х. и Брандт, М. В. (2007). Решение задач динамического выбора портфеля путем рекурсии по оптимизированным весам портфеля или по функции ценности, Computational Economics, 29 (3–4), 355–367.