exponenta event banner

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

Подробнее

свернуть все

Вариант ванили

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

Вариант ванили имеет срок годности и простую цену страйка. Варианты в американском и европейском стиле классифицируются как варианты ванили.

Окупаемость опциона на ваниль выглядит следующим образом:

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

  • Для put: max (K St, 0)

где:

St - цена базового актива в момент времени t.

K - цена удара.

Дополнительные сведения см. в разделе Параметр ванили.

Ссылки

[1] Бьерксунд, П. и Г. Стенсланд. «Аппроксимация американских вариантов в закрытой форме». Скандинавский журнал управления. т. 9, 1993, Суппл., стр. S88-S99.

[2] Бьерксунд, П. и Г. Стенсланд. «Закрытая форма оценки американских опционов». Дискуссионный документ 2002 года (https://www.scribd.com/doc/215619796/Closed-form-Valuation-of-American-Options-by-Bjerksund-and-Stensland#scribd)

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