blsimpv

Подразумеваемая волатильность Блэка-Шоулза

Описание

пример

Volatility = blsimpv(Price,Strike,Rate,Time,Value) использование модели Black-Scholes вычисляет подразумеваемую волатильность базового актива от рыночной стоимости европейских опций. Если Class аргумент значения имени пуст или не задан, значением по умолчанию является колл-опцион

Примечание

Входные параметры Price, Strike, RateВремяЗначение, Yield, и Class могут быть скаляры, векторы или матрицы. Если скаляры, то то значение используется для расчета подразумеваемая волатильность из всех опций. Если больше чем одни из этих входных параметров являются вектором или матрицей, то размерности всех нескалярных входных параметров должны быть тем же самым.

Кроме того, обеспечьте тот RateВремя, и Yield описываются в сопоставимых модулях времени.

пример

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

Примеры

свернуть все

В этом примере показано, как вычислить подразумеваемую волатильность для европейского колл-опциона, торгующего на уровне 10$ с ценой исполнения 95$ и три месяца до истечения. Примите, что базовый запас не выплачивает дивиденда и отраслей на уровне 100$. Безрисковый уровень составляет 7,5% в год. Кроме того, примите, что вы интересуетесь подразумеваемой волатильностью, не больше, чем 0,5 (50% в год). При этих условиях следующие операторы все вычисляют подразумеваемую волатильность 0,3130, или 31,30% в год.

Volatility = blsimpv(100, 95, 0.075, 0.25, 10, 'Limit', 0.5);
Volatility = blsimpv(100, 95, 0.075, 0.25, 10, 'Limit',0.5,'Yield',0,'Class', {'Call'});
Volatility = blsimpv(100, 95, 0.075, 0.25, 10, 'Limit',0.5,'Yield',0, 'Class', true);
Volatility = blsimpv(100, 95, 0.075, 0.25, 10, 'Limit',0.5,'Yield',0, 'Class', true,'Method','jackel2016')
Volatility = 0.3130

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

свернуть все

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

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

Цена исполнения опции в виде числового скаляра.

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

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

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

Время к истечению опции в виде номера лет с помощью числового скаляра.

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

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

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

Аргументы name-value

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

Пример: Volatility = blsimpv(Yield,CouponRate,Settle,Maturity,'Method','jackel2016')

Верхняя граница подразумеваемой волатильности ищет интервал в виде разделенной запятой пары, состоящей из 'Limit' и числовая положительная скалярная величина. Если Limit пусто или не задан, значением по умолчанию является 10, или 1 000% в год.

Примечание

Если вы используете Method со значением 'jackel2016', Limit аргумент проигнорирован.

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

Пересчитываемое на год постоянно составляемое выражение базового актива по жизни опции в виде разделенной запятой пары, состоящей из 'Yield' и десятичное число. Если Yield пусто или пропавшие без вести, значением по умолчанию является 0.

Например, для опций, записанных на индексах запаса, Yield мог представлять дивидендную доходность. Для опций валюты, Yield могла быть внешняя безрисковая процентная ставка.

Примечание

blsimpv может обработать другие типы, лежит в основе как фьючерсы и Валюты. При оценке фьючерсов (Черная модель), введите входной параметр Yield как:

Yield = Rate
При оценке валют (модель Garman-Kohlhagen), введите входной параметр Yield как:
Yield = ForeignRate
где ForeignRate постоянно составлен, пересчитал на год безрисковую процентную ставку в иностранном государстве.

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

Допуск завершения подразумеваемой волатильности в виде разделенной запятой пары, состоящей из 'Tolerance' и числовая положительная скалярная величина. Если пустой или пропавшие без вести, значением по умолчанию является 1e-6.

Примечание

Если вы используете Method со значением 'jackel2016', Tolerance аргумент проигнорирован.

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

Класс опции, указывающий на тип опции (вызывают или помещенный), из которого подразумеваемая волатильность выведена в виде разделенной запятой пары, состоящей из 'Class' и логический индикатор, массив ячеек из символьных векторов или массив строк.

Чтобы задать колл-опционы, установите Class = true или Class = {'call'}. Чтобы задать пут-опционы, установите Class = false или Class = {'put'} или Class = ["put"]. Если Class пусто или не задан, значением по умолчанию является колл-опцион.

Типы данных: логический | cell | string

Метод для вычисления подразумеваемой волатильности в виде разделенной запятой пары, состоящей из 'Method' и вектор символов со значением 'search' или 'jackel2016' или строка со значением "search" или "jackel2016".

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

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

свернуть все

Подразумеваемая волатильность базового актива выведена из европейских цен опции, возвращенных как десятичное число. Если никакое решение не найдено, blsimpv возвращает NaN.

Ссылки

[1] Оболочка, Джон К. Опции, фьючерсы и Другие Производные. 5-й выпуск, Prentice Hall, 2003.

[2] Jäckel, Питер. "Давайте Будем Рациональны". Журнал Wilmott., январь 2015 (https://onlinelibrary.wiley.com/doi/pdf/10.1002/wilm.10395).

[3] Luenberger, Дэвид Г. Инвестиционная наука. Издательство Оксфордского университета, 1998.

Представлено до R2006a