optstocksensbybjs

Определите американские цены опции или чувствительность с помощью модели ценообразования опционов Bjerksund-Stensland 2002

Описание

пример

PriceSens = optstocksensbybjs(RateSpec,StockSpec,Settle,Maturity,OptSpec,Strike) вычисляет американские цены опции или чувствительность с помощью модели ценообразования опционов Bjerksund-Stensland 2002.

Примечание

optstocksensbybjs вычисляет цены американских опций с непрерывной дивидендной доходностью с помощью модели ценообразования опционов Bjerksund-Stensland. Вся чувствительность оценена путем вычисления дискретного приближения частной производной. Это означает, что опция повторно оценена с дробным изменением за каждый соответствующий параметр, и изменение в значении опции, разделенном на шаг, является аппроксимированным значением чувствительности.

PriceSens = optstocksensbybjs(___,Name,Value) добавляет дополнительный аргумент пары "имя-значение" для OutSpec.

Примеры

свернуть все

В этом примере показано, как вычислить американские цены опции и чувствительность с помощью модели ценообразования опционов Bjerksund-Stensland 2002. Рассмотрите четыре американских пут-опциона с ценой исполнения 100$. Опции истекают 1 октября 2008. Примите, что базовый запас платит непрерывную дивидендную доходность 4% и имеет энергозависимость 40% в год. Пересчитываемый на год постоянно составляемый безрисковый уровень составляет 8% в год. Используя эти данные, вычислите delta\Gamma, и price из американских пут-опционов, принимая следующие текущие цены запаса 1 июля 2008: 90$, 100$, 110$ и 120$.

Settle = 'July-1-2008';
Maturity = 'October-1-2008';
Strike = 100;
AssetPrice = [90;100;110;120];
Rate = 0.08;
Sigma = 0.40;
DivYield = 0.04;

% define the RateSpec and StockSpec
StockSpec = stockspec(Sigma, AssetPrice, {'continuous'}, DivYield);

RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle,...
'EndDates', Maturity, 'Rates', Rate, 'Compounding', -1);

% define the option type
OptSpec = {'put'};

OutSpec = {'Delta', 'Gamma', 'Price'};

[Delta, Gamma, Price] = optstocksensbybjs(RateSpec, StockSpec, Settle, Maturity,...
OptSpec, Strike, 'OutSpec', OutSpec)
Delta = 4×1

   -0.6572
   -0.4434
   -0.2660
   -0.1442

Gamma = 4×1

    0.0217
    0.0202
    0.0150
    0.0095

Price = 4×1

   12.9467
    7.4571
    3.9539
    1.9495

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

свернуть все

Структура термина процентной ставки (пересчитанный на год и постоянно составляемый), заданный RateSpec полученный из intenvset. Для получения информации о спецификации процентной ставки смотрите intenvset.

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

Спецификация запаса для базового актива. Для получения информации о спецификации запаса смотрите stockspec.

stockspec указатели несколько типов базовых активов. Например, для физических предметов потребления ценой является StockSpec.Asset, энергозависимостью является StockSpec.Sigma, и выражением удобства является StockSpec.DividendAmounts.

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

Урегулирование или торговая дата в виде последовательного номера даты или вектора символов даты с помощью NINST- 1 вектор.

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

Дата погашения для опции в виде последовательного номера даты или вектора символов даты с помощью NINST- 1 вектор.

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

Определение опции как 'call' или 'put'В виде NINST- 1 массив ячеек из символьных векторов со значениями 'call' или 'put'.

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

Значение цены исполнения опциона опции в виде неотрицательного NINST- 1 вектор.

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

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

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

Пример: [Delta,Gamma,Price] = optstocksensbybjs(RateSpec,StockSpec,Settle,Maturity,OptSpec,Strike,'OutSpec',OutSpec)

Задайте выходные параметры в виде разделенной запятой пары, состоящей из 'OutSpec' и NOUT- 1 или 1- NOUT массив ячеек из символьных векторов с возможными значениями 'Price'\delta\Gamma, 'Vega'\lambda\rho, 'Theta', и 'All'.

OutSpec = {'All'} указывает, что выходом должен быть Delta\Gamma, Vega\lambda\rho, Theta, и Price, в том порядке. Это совпадает с определением OutSpec включать каждую чувствительность:

Пример: OutSpec = {'delta','gamma','vega','lambda','rho','theta','price'}

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

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

свернуть все

Ожидаемые будущие цены или значения чувствительности, возвращенные как NINST- 1 вектор.

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

Больше о

свернуть все

Опция ванили

vanilla option является категорией опций, которая включает только самые стандартные компоненты.

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

Выплата для опции ванили следующие:

  • Для вызова: max(StK,0)

  • Для помещенного: max(KSt,0)

где:

St является ценой базового актива во время t.

K является ценой исполнения опциона.

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

Ссылки

[1] Bjerksund, P. и Г. Стенслэнд. “Приближение закрытой формы американских Опций”. Скандинавский Журнал управления. Издание 9, 1993, Suppl., стр S88–S99.

[2] Bjerksund, P. и Г. Стенслэнд. “Закрытая Оценка Формы американских Опций”. Документ для обсуждения 2002 (https://www.scribd.com/doc/215619796/Closed-form-Valuation-of-American-Options-by-Bjerksund-and-Stensland#scribd)

Представленный в R2008b