Определение цены или чувствительности европейской корзины опционов с использованием модели аппроксимации Nengjiu Ju
указывает параметры, использующие один или несколько аргументов пары имя-значение в дополнение к входным аргументам в предыдущем синтаксисе.PriceSens = basketsensbyju(___,Name,Value)
Найдите европейский вариант колл-корзины из пяти акций. Предположим, что корзина содержит:
5% от первых торгов акциями по $110
15% второй акции торгуется по $75
20% от третьей торговли акциями по $40
25% от четвертой торговли акциями по $125
35% пятых торгов акциями по цене $92
Эти акции имеют годовую волатильность 20%, а корреляция между активами равна нулю. 1 мая 2009 года инвестор хочет купить 1-летний колл-опцион с ценой страйка $90. Текущий годовой, непрерывно увеличивающийся процент составляет 5%. Эти данные используются для вычисления цены и дельты опции «Корзина вызовов» в модели аппроксимации Ju.
Settle = 'May-1-2009'; Maturity = 'May-1-2010'; % Define RateSpec Rate = 0.05; Compounding = -1; RateSpec = intenvset('ValuationDate', Settle, 'StartDates', ... Settle, 'EndDates', Maturity, 'Rates', Rate, 'Compounding', Compounding); % Define the Correlation matrix. Correlation matrices are symmetric, and % have ones along the main diagonal. NumInst = 5; InstIdx = ones(NumInst,1); Corr = diag(ones(5,1), 0); % Define BasketStockSpec AssetPrice = [110; 75; 40; 125; 92]; Volatility = 0.2; Quantity = [0.05; 0.15; 0.2; 0.25; 0.35]; BasketStockSpec = basketstockspec(Volatility, AssetPrice, Quantity, Corr); % Compute the price of the call basket option. Calculate also the delta % of the first stock. OptSpec = {'call'}; Strike = 90; OutSpec = {'Price','Delta'}; UndIdx = 1; % First element in the basket [Price, Delta] = basketsensbyju(RateSpec, BasketStockSpec, OptSpec, Strike, Settle, ... Maturity, 'OutSpec', OutSpec,'UndIdx', UndIdx)
Price = 5.1610
Delta = 0.0297
Вычислить Delta в отношении второго актива:
UndIdx = 2; % Second element in the basket OutSpec = {'Delta'}; Delta = basketsensbyju(RateSpec, BasketStockSpec, OptSpec, Strike, Settle, Maturity, ... 'OutSpec',OutSpec,'UndIdx',UndIdx)
Delta = 0.0906
BasketStockSpec — BasketStock спецификацияBasketStock спецификация, указанная с помощью basketstockspec.
Типы данных: struct
OptSpec - Определение опциона 'call' или 'put' | массив ячеек символьных векторов со значениями 'call' или 'put'Определение опции как 'call' или 'put', указанный как символьный вектор или 2около-1 клеточный массив символьных векторов.
Типы данных: char | cell
Strike - Цена страйка опционаЦена страйка опциона, указанная как одно из следующих значений:
Для европейского или бермудского варианта: Strike - скаляр (европейский) или 1около-NSTRIKES (Бермудские острова) вектор цен забастовки.
Для американского варианта, Strike - скалярный вектор цены страйка.
Типы данных: double
Settle - Дата расчета или торговлиДата расчета или торговая дата для опции корзины, указанная как скалярный серийный номер даты или вектор символов даты.
Типы данных: double | char
Maturity - Дата погашенияДата погашения для опции корзины, указанная как скалярный серийный номер даты или вектор символов даты.
Типы данных: double | char
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
PriceSens = basketsensbyju(RateSpec,BasketStockSpec,OptSpec, Strike,Settle,Maturity,'OutSpec','delta')'OutSpec' - Определение выходных данных{'Price'}
(по умолчанию) | символьный вектор со значениями 'Price', 'Delta', 'Gamma', 'Vega', 'Lambda', 'Rho', 'Theta', и 'All' | массив ячеек символьных векторов со значениями 'Price', 'Delta', 'Gamma', 'Vega', 'Lambda', 'Rho', 'Theta', и 'All'Определите выходы, указанные как разделенная запятыми пара, состоящая из '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
'UndIdx' - Индекс базового инструмента для вычисления чувствительности[]
(по умолчанию) | скалярный числовойИндекс базового инструмента для вычисления чувствительности, указанный как пара, разделенная запятыми, состоящая из 'UndIdx' и скалярный числовой.
Типы данных: double
PriceSens - Ожидаемые цены или чувствительность для варианта корзиныОжидаемые цены или чувствительность (определяются с помощью OutSpec) для опции корзины, возвращенной как NINSTоколо-1 матрица.
Опцион на корзины - это опцион на портфель из нескольких базовых акционерных активов.
Выплата опциона корзины зависит от совокупной эффективности инкассации отдельных активов. Вариант корзины, как правило, дешевле, чем соответствующий портфель простых вариантов ванили по следующим причинам:
Если компоненты корзины коррелируют отрицательно, движения в значении одного компонента нейтрализуют противоположные движения другого компонента. Если все компоненты не коррелируют идеально, опцион на корзину дешевле, чем серия отдельных опционов на каждое из активов в корзине.
Вариант корзины минимизирует транзакционные издержки, поскольку инвестор должен приобрести только один вариант вместо нескольких отдельных вариантов.
Дополнительные сведения см. в разделе Параметры корзины.
[1] Нэнцзю Цзю. «Ценообразование азиатских и корзинных опционов через расширение Тейлора». Журнал вычислительных финансов. Том 5, 2002.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.