Вашему вниманию предлагается краткое и упрощённое описание широко известной модели LPPL, при помощи которой можно прогнозировать даты окончания пузырей на финансовых рынках.
Введение
Модель LPPL (Log-Periodic Power Law, «Лог-периодический степенной закон») была предложена Didier Sornette и др. примерно в 2003 году.
Сразу приведу основные источники, если кто-то захочет разобраться подробнее:
1) Sornette, Johansen, Bouchaud «Stock market crashes, Precursors and Replicas» (1996; Journal de Physique I, 6: 167-175)
2) Sornette, Johansen «Large financial crashes» (1997; Physica A, 245: 411-422)
3) Johansen, Ledoit, Sornette «Crashes as critical points» (2000; International Journal of Theoretical and Applied Finance, 3, no.2: 219-255)
4) Sornette «Why Stock Markets Crash (Critical Events in Complex Financial Systems)» (2003, Princeton: PUP)
5) Sornette «Critical Market Crashes»
В основе этой модели лежат следующие тезисы:
— Трейдеры повторяют чужие решения;
— Локальная кооперация между трейдерами приводит к глобальной кооперации;
— Глобальная кооперация между трейдерами приводит к обвалу рынка;
— Обвал на рынке происходит, когда большая группа трейдеров одновременно решает начать продавать;
— По мере того, как цена растёт — растёт и вероятность того, что трейдеры осознают, что цена завышена относительно справедливой;
— Трейдеры стараются заработать изо всех сил, так что пузырь является «игрой с нулевой суммой» для тех, кто хочет на нём «прокатиться» и тех, кто хочет заработать на обвале рынка;
— Дата начала обвала рынка неизвестна, но её можно охарактеризовать hazard rate — вероятностью на единицу времени того, что обвал произойдёт, если он ещё не произошел.
Имеет ли отношение вся эта математика к рыночной реальности?
Вот немного картинок из книги Sornette, на которых представлены графики инструментов с пузырями (впоследствии лопнувшими) и подогнанной к ним модели LPPL.
Ну как, впечатляет? 🙂
Формулы
Предполагается, что цена подчиняется следующему стохастическому дифференциальному уравнению:
, где:
— темп роста цены,
— на сколько процентов упадёт цена, когда пузырь лопнет.
Добавим hazard rate (вероятность наступления обвала в единицу времени) в уравнение для динамики цены:
;
;
.
Торговля является «игрой с нулевой суммой», т.е. , откуда следует , т.е. цена растёт по мере того, как увеличивается вероятность обвала рынка, компенсируя этот риск.
Подставив последнее выражение в уравнение динамики цены и учитывая (до тех пор, пока пузырь не лопнул) находим решение:
.
То есть информация о динамике цены заключена в том, как эволюционирует вероятность обвала рынка.
В модели LPPL используется следующее уравнение для динамики hazard rate: .
Решение этого уравнения имеет вид .
Sornette и его соавторы предполагают, что параметр может являться комплексным числом, и предлагают использовать следующее решение для hazard rate: .
Подставив последнее выражение в решение уравнения для динамики цены получаем модель LPPL:
.
Пожалуйста, имейте ввиду, что параметры этого выражения не имеют ничего общего с ранее возникавшими обозначениями (например, B и beta). Я делаю так для удобства, а также чтобы они были унифицированы с тем, что будет указано в подписях на моих графиках. В любом случае, все эти параметры нужно оценивать численно, а если вам и в самом деле нужно протащить переменную от начала и до конца решения — вы можете посмотреть статьи Sornette или вывести решение сами.
Оценивание параметров
Эта задача сложнее, чем может показаться на первый взгляд.
Модель имеет 7 параметров: , однако линейна она лишь по 3 из них: .
Разберемся подробнее со смыслом параметров:
— определяет максимальную цену, до которой может дорасти пузырь;
— определяет вклад степенного роста в динамику пузыря;
— определяет вклад смеси степенного роста и лог-периодических колебаний в динамику пузыря;
— определяет критический момент времени, к которому пузырь должен лопнуть;
— характеризует степенной рост цены;
— определяет частоту лог-периодических колебаний; чем ближе к критическому моменту времени — тем больше нарастает частота;
— определяет фазу лог-периодических колебаний.
В качестве критерия оптимизации модели можно использовать сумму квадратов ошибок. Разумными подходами при оптимизации, на мой взгляд, являются следующие:
а) Стохастическая оптимизация (simulated annealing, differential evolution) по всем параметрам;
б) Стохастическая оптимизация по параметрам, входящим в модель нелинейно + метод наименьших квадратов для параметров для каждого фиксированного набора прочих параметров.
Для того, чтобы получалось что-то разумное при оптимизации — необходимо накладывать ограничения на параметры (самое очевидное: ). Более сложные критерии вы можете найти в различных публикациях, посвященных этой модели.
Как я увернулся от падения крипты
Начнём с картинок, которые представляют собой варианты калибровки модели LPPL к курсу BTC/USD, найденные мною 30 ноября 2017 года. Чтобы не занимать место — в статье будет 1 картинка в полном размере, а остальные будут уменьшены (вы можете просмотреть картинки в полном размере нажав по ним).
Как видим, модель легла на реальные цены феноменально хорошо. Учитывая количество шума вокруг крипты в 2017 году — в наличии пузыря сомневаться не приходилось. Так что главный вопрос был «когда он лопнет?».
Ответ на этот вопрос дают параметры модели и . Так как у меня было несколько наборов параметров, при которых модель достаточно хорошо соответствовала цене — я получил доверительные интервалы для двух основных характеристик развития пузыря.
Максимально возможный курс BTC/USD оценивался в диапазоне $12k — $15k. Доверительный интервал для даты обвала BTC/USD получился равным 4 декабря 2017 года — 20 декабря 2017 года.
Внутри спрогнозированного интервала было несколько ощутимых падений BTC/USD, связанных с сетевыми атаками на крупнейшие биржи, однако настоящее падение началось 21 декабря, когда сеть Bitcoin была перегружена транзакциями (а, значит, сложно было вывести BTC с биржи или перекинуть средства с одной биржи на другую, что вызывало проблемы у арбитражеров). Максимальный курс BTC/USD в этом пузыре составил около $20k.
Я не понёс никаких убытков на падении крипты, т.к. снизил активность по предоставлению ликвидности в начале декабря. Были отдельные дни, когда я всё же включал робота (например, 16 декабря 2017). К началу обвала BTC/USD я конвертировал всё до единого сатоши в доллары.
Не забудьте переслать эту статью своим знакомым, которые купили крипту выше $12k! 🙂