Использование модели GARCH для прогнозирования
Частные лица и финансовые компании используют волатильность для измерения изменения цен на акции, криптовалюты, форекс, индексы и товары (например, золото). В этом проекте мы будем использовать модель GARCH для прогнозирования волатильности криптовалют с течением времени.
Следует отметить, что этот проект также можно использовать для прогнозирования других криптовалют
Подготовка данных
Набор данных для этого проекта загружается из Alpha Vantage через API-запросы. В документации к API указано, что Этот API возвращает ежедневные исторические временные ряды для цифровой валюты (например, BTC), торгуемой на определенном рынке (например, CNY/китайский юань), обновляемые ежедневно в полночь (UTC). Цены и объемы указаны как в валюте конкретного рынка, так и в долларах США.
Новые записи поступают из обновлений API каждую полночь (UTC), поэтому необходимо сохранять последние извлеченные данные в базе данных. Это делается с помощью базы данных sqlite3.
Исследовательский анализ данных
Следует отметить, что масштабы этого проекта - с 10 апреля 2020 года по 4 января 2023 года.
Следующий линейный график показывает, что самая высокая сумма, зарегистрированная BTC, составляет около 67 000 долларов США в ноябре 2021 года, а наименьшая зарегистрированная сумма — 7 000 долларов США в апреле 2020 года.
Следующая гистограмма показывает, что распределение дневной доходности BTC является равномерным.
Следующий линейный график показывает, что самая высокая скользящая волатильность за 30 дней была зарегистрирована в июне 2021 года, мае 2021 года и феврале 2021 года.
Оценка и проверка модели
В наборе данных 5 объектов и 1000 наблюдений, однако столбец «закрыть» использовался для создания столбца «возврат», который затем использовался для построения модели.
Очищенные данные были загружены в модель garch, и производительность модели была измерена с использованием лагов и уровня значимости (P › |t|).
Модель гарча была использована, потому что при визуализации существует кластер малых квадратов процентных доходностей.
Лучшие показатели, зарегистрированные для этой модели:
- р = 1 и д = 1
- Значение альфа [1] = 0,102
- Значимость бета [1] = 0,000
- Значение омеги [1] = 4,074e-03
- AIC = 3817,72 и BIC = 3835,92.
Наилучшими значениями значимости являются значения менее 0,05, и эти значения были достигнуты при бета[1] и омега[1]. Только альфа[1] имеет значение больше 0,05.
Поскольку индекс набора данных представляет собой временные метки, необходимо генерировать прогнозы с помощью проверки вперед.
Метод шаговой проверки был использован для создания тестовых прогнозов ежедневной доходности ниже:
date 2022-03-11 4.323363 2022-03-12 4.253152 2022-03-13 4.169073 2022-03-14 4.126524 2022-03-15 4.141623 dtype: float64
Сообщать о выводах и результатах
Вывод из исследования и модели:
- Средняя дневная волатильность составляет примерно 3,628.
- Среднегодовая волатильность составляет примерно 69,307.
- Наибольшее значение, зафиксированное BTC, составляет 67525,83 доллара США в ноябре 2021 года.
- Наименьшее значение, зафиксированное BTC, составляет $6621,24 в апреле 2020 года.
- Наибольшее процентное изменение BTC (USD) с 11 апреля 2020 года составляет 19,54%, а наименьшее -15,38%.
- Наиболее частая условная волатильность находится между 3,5 и 4,0.
В конце этого проекта была создана интерактивная панель инструментов для прогнозирования волатильности, максимальной и минимальной цены BTC в долларах США.
Ссылка на блокнот:
https://github.com/GentRoyal/volatility/blob/main/Predicting%20Volatility.ipynb