exponenta event banner

dblbarriersensbyfd

Расчет цены опциона с двойным барьером и чувствительности с использованием метода конечных разниц

Описание

пример

[PriceSens,PriceGrid,AssetPrices,Times] = dblbarriersensbyfd(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates,BarrierSpec,Barrier) вычисляет европейский или американский колл или выставляет двойную цену барьерного опциона и чувствительность одного базового актива с использованием метода конечных разниц. dblbarrierbyfd предполагает, что барьер постоянно контролируется.

пример

[PriceSens,PriceGrid,AssetPrices,Times] = dblbarriersensbyfd(___,Name,Value) указывает параметры, использующие один или несколько аргументов пары имя-значение в дополнение к входным аргументам в предыдущем синтаксисе.

Примеры

свернуть все

Вычислите цену и чувствительность для американского двойного барьерного опциона для двойного нокаута (вниз и и) колл-опцион с уступкой, используя следующие данные:

Rate = 0.05;
Settle = '01-Jun-2018';
Maturity = '01-Dec-2018';
Basis = 1;

Определение RateSpec.

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

Определение StockSpec.

AssetPrice = 100; 
Volatility = 0.25;
StockSpec = stockspec(Volatility, AssetPrice);

Определите опцию двойного барьера.

LBarrier = 80; 
UBarrier = 130; 
Barrier = [UBarrier LBarrier];
BarrierSpec = 'DKO';
OptSpec = 'Call';
Strike = 110;
Rebate = 1;
OutSpec = {'price'; 'vega'; 'theta'};

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

[Price, Vega, Theta] = dblbarriersensbyfd(RateSpec, StockSpec, OptSpec, Strike, Settle, Maturity, BarrierSpec, Barrier,'Rebate', Rebate, 'AmericanOpt', 1,'Outspec', OutSpec)
Price = 4.0002
Vega = -1.9180e+03
Theta = -6.6509

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

свернуть все

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

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

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

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

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

Определение параметра, заданного как символьный вектор со значением 'call' или 'put'или строковый скаляр со значениями "call" или "put".

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

Значение цены страйка опциона, указанное как скалярное число.

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

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

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

Даты выполнения опции, указанные как порядковый номер даты, вектор символов даты или объект datetime.

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

  • Для американского варианта используйте 1около-2 вектор границ даты упражнения. Опцион может быть реализован на любую дату между или включая пару дат. Если только один не -NaN дата указана, опцион может быть осуществлен между Settle и единственная дата, указанная в ExerciseDates.

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

Тип параметра двойного барьера, заданный как символьный вектор или строка с одним из следующих значений:

  • 'DKI' - Двойная врезка

    'DKI' опцион вступает в силу, когда цена базового актива достигает одного из барьеров. Это дает держателю опциона право, но не обязательство покупать или продавать основное обеспечение по цене страйка, если базовый актив выходит за пределы барьерных уровней в течение срока действия опциона.

  • 'DKO' - Двойной выбивание

    'DKO' опцион дает держателю опциона право, но не обязательство покупать или продавать основное обеспечение по цене страйка, пока базовый актив остается между барьерными уровнями в течение срока действия опциона. Этот вариант прекращается, когда цена базового актива проходит один из барьеров.

ВыборТип барьераОкупаемость, если какой-либо барьер преодоленОкупаемость, если барьеры не преодолены
Вызов/вводДвойная врезкаСтандартный вызов/вводБесполезный
Вызов/вводДвойной выбиваниеБесполезныйСтандартный вызов/ввод

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

Уровень барьера, указанный как 1около-2 вектор числовых значений, где первый столбец является верхним барьером (1) (UB), а второй столбец является нижним барьером (2) (LB). Барьер (1) должен быть больше барьера (2).

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

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

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

Пример: PriceSens = dblbarriersensbyfd(RateSpec,StockSpec,OptSpec,Strike,Settle,Maturity,BarrierSpec,Barrier,'OutSpec',{'delta','gamma','vega','lambda','rho','theta','price'},'AmericanOpt',1)

Определите выходы, указанные как разделенная запятыми пара, состоящая из '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 | string

Значение бонуса, указанное как пара, разделенная запятыми, состоящая из 'Rebate' и одно из следующих:

  • Для опции Double Knock-out используйте 1около-2 вектор значений бонуса, где первый столбец является выплатой, если поражен верхний барьер (1) (UB), и второй столбец является выплатой, если поражен нижний барьер (2) (LB). Скидка выплачивается при достижении барьера.

  • Для параметра Double Stock-in используйте скалярное значение скидки. Скидка выплачивается по истечении срока действия.

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

Размер сетки активов, используемой для сетки конечных разностей, указанной как разделенная запятыми пара, состоящая из 'AssetGridSize' и положительный скалярный числовой.

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

Размер временной сетки, используемой для сетки конечных разностей, указанной как разделенная запятыми пара, состоящая из 'TimeGridSize' и положительный скалярный числовой.

Примечание

Фактическая временная сетка может иметь больший размер, поскольку даты упражнений и бывших дивидендов могут быть добавлены в сетку из StockSpec.

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

Тип опции, указанный как разделенная запятыми пара, состоящая из 'AmericanOpt' и скалярный флаг с одним из следующих значений:

  • 0 - Европейский

  • 1 - американский

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

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

свернуть все

Ожидаемые цены или чувствительность (определяются с помощью OutSpec) для вариантов двойного барьера, возвращаемых как 1около-NOUT матрица.

Сетка, содержащая цены, рассчитанные методом конечных разниц, возвращаемые как двумерная сетка с размером AssetGridSize*TimeGridSize. Количество столбцов не должно быть равно TimeGridSize, потому что даты упражнений и бывших дивидендов в StockSpec добавляются к временной сетке. PriceGrid(:, end) содержит цену для t = 0.

Цены актива, определенные StockSpec соответствует первому измерению PriceGrid, возвращено как вектор.

Время, соответствующее второму размеру PriceGrid, возвращено как вектор.

Подробнее

свернуть все

Опция «Двойной барьер»

Опция двойного барьера аналогична стандартной опции одиночного барьера, за исключением того, что она имеет два уровня барьера: нижний барьер (LB) и верхний барьер (UB).

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

Ссылки

[1] Бойл, П. и Я. Тянь. «Подход явной конечной разницы к ценообразованию барьерных опционов». Прикладное математическое финансирование. Том 5, номер 1, 1998, стр. 17-43.

[2] Халл, J. Опционы, фьючерсы и другие деривативы. Четвертое издание. Река Верхнее Седло, Нью-Джерси: Прентис Холл, 2000, стр. 646-649.

[3] Рубинштейн, М. и Э. Рейнер. «Разрушение барьеров.» Риск. Том 4, номер 8, 1991, стр. 28-35.

[4] Зван, Р., П. А. Форсайт и К. Р. Вецаль. «Методы PDE для вариантов ценового барьера». Журнал экономической динамики и контроля. Том 24, номер 11-12, 2000, стр. 1563-1590.

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