ОПБШ. Технические тонкости |
Автор: q-trader |
18.05.2015 09:00 |
В прошлой заметке я вывел законы динамики обобщенного процесса Блэка-Шоулза в дифференциальной и интегральной формах. Теперь пришло время рассмотреть ряд технических моментов. Возможно, что для широкого круга читателей они не особенно интересны. Тем не менее, по ряду причин мне важно зафиксировать это публично. Как уже говорилось, ОПБШ можно представить в виде следующего СДУ: dPt/Pt = (μ - γ(ln(Pt/P) - (μ - ½σ2)t))dt + σdWt. Параметр μ говорит о том, насколько быстро растет актив за единицу времени в процентном "формате". Казалось бы оценить его проще простого: достаточно рассчитать обычную среднюю арифметическую доходность по историческим ценам и разделить ее на dt. Однако, строго говоря, dt - величина инфинитезимальная, т.е. сколь угодно малая. На практике же всегда приходится работать с дискретными данными, например, дневными ценами закрытия и т.п., заменяя дифференциал dt на конечную разность ∆t. Это уже просто малая величина. Для удобства положим, что в году 250 торговых дней. Тогда при оперировании с дневными ценами ∆t = 1/250 = 0.004 года. Поскольку решение этого СДУ известно, непрерывный процесс можно дискретизировать. Так как на практике удобнее работать с логарифмами, далее все выводы будут делаться для логцены lnPt. Для перехода к разностной форме сначала нужно записать решение в более общем виде, допускающем, что процесс стартует не только в нулевой, но и в произвольный момент времени t < T: lnPT = lnP + μT + (lnPt - lnP - μt)exp(-γ(T - t)) + N(½σ2(1 - exp(-2γ(T - t)))/γ). Если T = t: lnPt = lnP + μt + (lnPt - lnP - μt)exp(-γ(t - t)) + N(½σ2(1 - exp(-2γ(t - t)))/γ) = lnP + μt + (lnPt - lnP - μt)exp(0) + N(½σ2(1 - exp(0))/γ) = lnP + μt + (lnPt - lnP - μt)1 + N(½σ2(1 - 1)/γ) =
Ecли t = 0: lnPT = lnP + μT + (lnP0 - lnP - μ0)exp(-γ(T - 0)) + N(½σ2(1 - exp(-2γ(T - 0)))/γ) = lnP + μT + (lnP0 - lnP)exp(-γT) + N(½σ2(1 - exp(-2γT))/γ), что соответствует частному случаю, с которого все и началось. Теперь удобнее обозначить T = t, t = t - ∆t: lnPt = lnP + μt + (lnPt - ∆t - lnP - μ(t - ∆t))exp(-γ(t - (t - ∆t))) + N(½σ2(1 - exp(-2γ(t - (t - ∆t))))/γ). После упрощения остается: lnPt = lnP + μt + (lnPt - ∆t - lnP - μ(t - ∆t))exp(-γ∆t) + N(½σ2(1 - exp(-2γ∆t))/γ). Если вычесть и слева и справа lnPt - ∆t, можно перейти к разностям: lnPt - lnPt - ∆t = ∆lnPt = lnP + μt + (lnPt - ∆t - lnP - μ(t - ∆t))exp(-γ∆t) - lnPt - ∆t + N(½σ2(1 - exp(-2γ∆t))/γ). Отметим, что lnPt - ∆t - не случайная величина, а некоторое конкретное "стартовое" значение. После раскрытия скобок и перегруппировки переменных для лучшего восприятия получаем: ∆lnPt = μ∆t + (exp(-γ∆t) - 1)(lnPt - ∆t - lnP - μ(t - ∆t)) + N(½σ2(1 - exp(-2γ∆t))/γ). Корректность подтверждается в том числе тем, что при уменьшении ∆t: μ∆t → μdt; (exp(-γ∆t) - 1) → -γdt; lnPt - ∆t - lnP - μ(t - ∆t) → lnPt - lnP - μt; ½σ2(1 - exp(-2γ∆t))/γ → σ2dt. Тем самым восстанавливается исходное dlnPt = (μ - γ(lnPt - lnP - μt))dt + σdWt. В общем случае логарифмическая доходность процесса - нормально распределенная случайная величина: ∆lnPt ~ N(μ∆t + (lnP0 - lnP)(exp(-γt) - exp(-γ(t - ∆t))), σ2((1 - exp(-2γt))/2 + (1 - 2exp(-γ∆t))(1 - exp(-2γ(t - ∆t)))/2)/γ). Обозначим среднюю доходность в момент t как μt, а ее дисперсию как σt2. Тогда ∆lnPt ~ N(μt, σt2). Отметим, что μt легко выводится тривиальным вычитанием средних уровней процесса в моменты t и t - ∆t, а вот для нахождения дисперсии σt2 требуется знание его ковариационной функции. Подробнее об этом - чуть ниже... "Сырые" линейные доходности распределены логнормально со средней доходностью exp(μt + ½σt2). Чтобы получить "чистую" доходность, достаточно вычесть из нее единицу, а чтобы перевести в базисное время - разделить на ∆t. Увеличивая частоту дискретизации, получаем: lim ∆t → 0: (exp(μt + ½σt2) - 1)/∆t = μ + ½σ2 - γ(lnP0 - lnP)exp(-γt). lim t → ∞: μ + ½σ2 - γ(lnP0 - lnP)exp(-γt) = μ + ½σ2. Дисперсия логнормальной величины (exp(σt2) - 1)exp(2μt + σt2). Для перевода в базис она просто делится на ∆t. Единицу здесь вычитать не надо поскольку константы не влияют на величину дисперсии. Предел этого выражения: lim ∆t → 0: (exp(σt2) - 1)exp(2μt + σt2) = σ2. Таким образом, в пределе высокочастотных и долгосрочных выборок с малым ∆t и большим t, "наивные" выборочные оценки μ и σ стремятся к теоретическим величинам, как и должно быть. На практике однако возможности увеличения частоты дискретизации ограничены трудоемкостью и издержками возни с высокочастотными данными. Кроме того, есть и естественный предел этому процессу в виде тиков. Мы же желаем оценить теоретическую модель в непрерывном времени. Поэтому следует "не бить в лоб", а поискать другие методы. Для этого полезно изучить поведение основных характеристик процесса в зависимости от ∆t и t. Поскольку отклонения от линии тренда lnPt - lnP - μt следуют обычному процессу Орнштейна-Уленбека с нулевым равновесным уровнем и с такими же как у процесса с трендом γ и σ, ковариацию этих отклонений можно вычислить по известной формуле для обычного ОУ: cov(lnPt - lnP - μt, lnPt - ∆t - lnP - μ(t - ∆t)) = ½σ2exp(-γ(t - (t - ∆t)))(1 - exp(-2γ(t - ∆t)))/γ. Поскольку "нейтрализация" тренда в моменты t и t - ∆t - это прибавление констант, по свойствам ковариации ковариационная функция для для процесса с трендом в логарифмах выглядит так: cov(lnPt, lnPt - ∆t) = ½σ2exp(-γ(t - (t - ∆t)))(1 - exp(-2γ(t - ∆t)))/γ. После упрощения она переписывается: cov(lnPt, lnPt - ∆t) = ½σ2exp(-γ∆t)(1 - exp(-2γ(t - ∆t)))/γ. Теперь можно найти дисперсию логдоходностей lnPt - lnPt - ∆t = ∆lnPt. Из свойств дисперсии следует, что: var(∆lnPt) = var(lnPt - lnPt - ∆t) = var(lnPt) + var(lnPt - ∆t) - 2cov(lnPt, lnPt - ∆t). Тогда: var(∆lnPt) = ½σ2(1 - exp(-2γt))/γ + ½σ2(1 - exp(-2γ(t - ∆t)))/γ - σ2exp(-γ∆t)(1 - exp(-2γ(t - ∆t)))/γ, или после упрощения: var(∆lnPt) = σ2((1 - exp(-2γt))/2 + (1 - 2exp(-γ∆t))(1 - exp(-2γ(t - ∆t)))/2)/γ. Как видно, к сожалению, волатильность доходностей зависит от времени, прошедшего с момента старта процесса. Однако можно получить безусловную дисперсию доходности, если устремить время к бесконечности, т.е. в стационарном режиме процесса. Получается, что при t → ∞ дисперсия доходностей стремится к: var(∆lnP∞) = σ2((1 - 0)/2 + (1 - 2exp(-γ∆t))(1 - 0)/2)/γ = σ2(1 - exp(-γ∆t))/γ. Таким образом, асимптотически безусловная дисперсия: var(∆lnP∞) = σ2(1 - exp(-γ∆t))/γ. При помощи аналогичной техники можно найти безусловную доходность: mean(∆lnPt) = μ∆t. Вообще, говоря о параметрах ОПБШ, следует учитывать регрессионный характер этой модели. Так, если μ и σ обычного процесса БШ можно просто оценить по выборке логдоходностей как безусловные величины, то для ОПБШ такой поход уже не работает. Подробнее об этом поговорим в отдельной заметке. |
Комментарии
q-trader
Руслан
EVVA
Харита
q-trader