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 должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: 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