normalvolbysabr

Подразумеваемая нормальная (холостяцкая) волатильность по модели SABR

Описание

пример

outVol = normalvolbysabr(Alpha,Beta,Rho,Nu,Settle,ExerciseDate,ForwardValue,Strike) вычисляет подразумеваемую волатильность Normal (Bachelier) при помощи модели стохастической волатильности SABR.

пример

outVol = normalvolbysabr(___,Name,Value) задает опции, использующие один или несколько аргументы пары "имя-значение" в дополнение к входным параметрам в предыдущем синтаксисе.

Примеры

свернуть все

Задайте параметры модели и данные опций.

ForwardValue = 0.0209;
Strike = 0.02;
Alpha = 0.041;
Beta = 0.5;
Rho = -0.2;
Nu = 0.33;

Settle = datenum('15-Feb-2018');
ExerciseDate = datenum('15-Feb-2020');

Вычислите нормальную (холостяцкую) волатильность с помощью модели SABR .

ComputedVols = normalvolbysabr(Alpha,Beta,Rho,Nu,Settle,ExerciseDate,ForwardValue,Strike)
ComputedVols = 0.0059

Чтобы использовать модель Normal SABR, установите Beta параметр в нуле. Отрицательные процентные ставки допускаются, когда модель Normal SABR используется в комбинации с подразумеваемой волатильностью Normal (Bachelier).

Задайте параметры модели и данные опций.

ForwardValue = -0.00383;
Strike = -0.003;
Alpha = 0.007;
Beta = 0;  % Set the Beta parameter to zero to use the Normal SABR model
Rho = -0.18;
Nu = 0.29;

Settle = datenum('17-Jan-2018');
ExerciseDate = datenum('17-Apr-2018');

Вычислите нормальную (холостяцкую) волатильность с помощью модели Normal SABR.

ComputedVols = normalvolbysabr(Alpha,Beta,Rho,Nu,Settle,ExerciseDate,ForwardValue,Strike)
ComputedVols = 0.0070

Входные параметры

свернуть все

Текущая волатильность SABR, заданная в виде скалярного числа.

Типы данных: double

Экспонента SABR CEV, заданная в виде скалярного числа.

Примечание

Установите Beta параметр в 0 разрешить отрицательное ForwardValue и Strike.

Типы данных: double

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

Типы данных: double

Волатильность волатильности, заданная как скалярное число.

Типы данных: double

Дата расчета, заданная как скаляр с использованием последовательного неотрицательного номера даты или вектора символов даты.

Типы данных: double | char

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

Типы данных: double | char

Текущее прямое значение базового актива, заданное в виде скалярного числа или вектора размера NumVols-by- 1.

Типы данных: double

Значение цены доставки опции, заданное в виде скалярного числа или вектора размера NumVols-by- 1.

Типы данных: double

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: outVol = normalvolbysabr(Alpha,Beta,Rho,Nu,Settle,ExerciseDate,ForwardValue,Strike,'Basis',2)

Дневной базис инструмента, заданный как разделенная запятыми пара, состоящая из 'Basis' и положительное целое число из множества [1...13].

  • 0 = факт/факт

  • 1 = 30/360 (SIA)

  • 2 = факт/360

  • 3 = факт/365

  • 4 = 30/360 (PSA)

  • 5 = 30/360 (ISDA)

  • 6 = 30/360 (европейский)

  • 7 = факт/365 (японский)

  • 8 = факт/факт (ICMA)

  • 9 = факт/360 (ICMA)

  • 10 = факт/365 (ICMA)

  • 11 = 30/360E (ICMA)

  • 12 = факт/365 (ISDA)

  • 13 = BUS/252

Для получения дополнительной информации см. раздел Базиса.

Типы данных: double

Выходные аргументы

свернуть все

Нормальная (Башелье) волатильность, вычисленная моделью SABR, возвращенная в виде скалярного числа или вектора размера NumVols-by- 1.

Алгоритмы

Два алгоритма общего случая для normalvolbysabr не являются банкоматами At-The-Money (ATM) и ATM.

Для не ATM (FK):

σN(α,β,ρ,υ,F,K,T)=α(FK)(1β)F(1β)K(1β)(zx(z)){1+[β(β2)α224Fmid22β+ρβυα4Fmid1β+23ρ224υ2]T}=υ(FK)x(z){1+[β(β2)α224Fmid22β+ρβυα4Fmid1β+23ρ224υ2]T}Fmid=F+K2z=υα(F1βK1β1β)          x(z)=ln(12ρz+z2+zρ1ρ)

Для ATM (F = K):

σN,ATM(α,β,ρ,υ,F,T)=αFβ{1+[β(β2)α224F22β+ρβυα4F1β+23ρ224υ2]T}

Специальный случай для normalvolbysabr где β = 0 для не ATM (FK) является:

σN(α,ρ,υ,F,K,T)=υ(FK)x(ζ)(1+23ρ224υ2T)ζ=υα(FK)x(ζ)=ln(12ρζ+ζ2+ζρ1ρ)

Для ATM (F = K):

σN,ATM(α,ρ,υ,T)=α(1+23ρ224υ2T)

Специальный случай для normalvolbysabr где β = 1 для не ATM (FK) является:

σN(α,ρ,υ,F,K,T)=υ(FK)x(ζ){1+[α224+ρυα4+23ρ224υ2]T}ζ=υαlnFKx(ζ)=ln(12ρζ+ζ2+ζρ1ρ)

Для ATM (F = K):

σN,ATM(α,ρ,υ,F,T)=αF{1+[α224+ρυα4+23ρ224υ2]T}

Ссылки

[1] Хаган, П. С., Д. Кумар, А. С. Лесневски и Д. Е. Вудворд. «Управление риском улыбки». Журнал Wilmott. Сентябрь 2002, с. 84-108.

Введенный в R2018b