Определите европейские цены опции радуги или чувствительность на минимуме двух опасных использований активов модель ценообразования опционов Stulz
PriceSens = minassetsensbystulz(RateSpec,StockSpec1,StockSpec2,Settle,Maturity,OptSpec,Strike,Corr)
PriceSens = minassetsensbystulz(___,Name,Value)
вычисляет цены опции с помощью модели ценообразования опционов Stulz.PriceSens
= minassetsensbystulz(RateSpec
,StockSpec1
,StockSpec2
,Settle
,Maturity
,OptSpec
,Strike
,Corr
)
задает опции с помощью одного или нескольких дополнительных аргументов пары "имя-значение" в дополнение к входным параметрам в предыдущем синтаксисе.PriceSens
= minassetsensbystulz(___,Name,Value
)
Рассмотрите европейский пут-опцион радуги, который дает держателю право продать или акции A или запас B в забастовке 50,25, какой бы ни имеет нижнее значение на дату истечения срока 15 мая 2009. 15 ноября 2008 запас A стоит в 49,75 с непрерывной ежегодной дивидендной доходностью 4,5% и имеет энергозависимость возврата 11%. Сток Б торгует в 51 с непрерывной дивидендной доходностью 5% и имеет энергозависимость возврата 16%. Безрисковый уровень составляет 4,5%. Используя эти данные, если корреляция между нормами прибыли-0.5, 0, и 0.5, вычисляют цену и чувствительность минимума двух активов, которые являются европейскими пут-опционами радуги. Во-первых, создайте RateSpec
:
Settle = 'Nov-15-2008'; Maturity = 'May-15-2009'; Rates = 0.045; Basis = 1; RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle,... 'EndDates', Maturity, 'Rates', Rates, 'Compounding', -1, 'Basis', Basis)
RateSpec = struct with fields:
FinObj: 'RateSpec'
Compounding: -1
Disc: 0.9778
Rates: 0.0450
EndTimes: 0.5000
StartTimes: 0
EndDates: 733908
StartDates: 733727
ValuationDate: 733727
Basis: 1
EndMonthRule: 1
Создайте два определения StockSpec
.
AssetPriceA = 49.75;
AssetPriceB = 51;
SigmaA = 0.11;
SigmaB = 0.16;
DivA = 0.045;
DivB = 0.05;
StockSpecA = stockspec(SigmaA, AssetPriceA, 'continuous', DivA)
StockSpecA = struct with fields:
FinObj: 'StockSpec'
Sigma: 0.1100
AssetPrice: 49.7500
DividendType: {'continuous'}
DividendAmounts: 0.0450
ExDividendDates: []
StockSpecB = stockspec(SigmaB, AssetPriceB, 'continuous', DivB)
StockSpecB = struct with fields:
FinObj: 'StockSpec'
Sigma: 0.1600
AssetPrice: 51
DividendType: {'continuous'}
DividendAmounts: 0.0500
ExDividendDates: []
Вычислите цену и дельту для различных уровней корреляции.
Strike = 50.25; Corr = [-0.5;0;0.5]; OptSpec = 'put'; OutSpec = {'Price'; 'delta'}; [P, D] = minassetsensbystulz(RateSpec, StockSpecA, StockSpecB,... Settle, Maturity, OptSpec, Strike, Corr, 'OutSpec', OutSpec)
P = 3×1
3.4320
3.1384
2.7694
D = 3×2
-0.4183 -0.3496
-0.3746 -0.3189
-0.3304 -0.2905
Вывод Delta
имеет два столбца: первый столбец представляет Delta
относительно запаса (актив 1), и второй столбец представляет Delta
относительно запаса B (актив 2). Значение 0.4183 представляет Delta
относительно запаса для уровня корреляции-0.5. Delta
относительно запаса B, для корреляции нуля-0.3189.
RateSpec
— Пересчитанный на год, постоянно составляемая структура термина уровняПересчитанный на год, постоянно составляемая структура термина уровня, заданное использование intenvset
.
Типы данных: structure
StockSpec1
— Спецификация запаса для актива 1Спецификация запаса для актива 1, заданное использование stockspec
.
Типы данных: structure
StockSpec2
— Спецификация запаса для актива 2Спецификация запаса для актива 2, заданное использование stockspec
.
Типы данных: structure
Settle
— Урегулирование или торговые датыУрегулирование или торговые даты, заданные как NINST
-by-1
вектор числовых дат.
Типы данных: double
Maturity
— Даты погашенияДаты погашения, заданные как NINST
-by-1
вектор.
Типы данных: double
OptSpec
— Тип опции'call'
или 'put'
Тип опции, заданный как NINST
-by-1
массив ячеек из символьных векторов со значением 'call'
или 'put'
.
Типы данных: cell
Strike
— Цены исполнения опционаЦены исполнения опциона, заданные как NINST
-by-1
вектор.
Типы данных: double
Corr
— Корреляция между ценами базового активаКорреляция между ценами базового актива, заданными как NINST
-by-1
вектор.
Типы данных: double
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
[PriceSens] = minassetsensbystulz(RateSpec, StockSpecA,StockSpecB,Settle,Maturity,OptSpec,Strike,Corr,'OutSpec',OutSpec)
'OutSpec'
— Define выходные параметры{'Price'}
(значение по умолчанию) | массив ячеек из символьных векторов со значениями 'Price'
, 'Delta'
, 'Gamma'
, 'Vega'
, 'Lambda'
, 'Rho'
, 'Theta'
и 'All'
Задайте выходные параметры, заданные как пара, разделенная запятой, состоящая из 'OutSpec'
и NOUT
- 1
или 1
-by-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'}
Типы данных: cell
PriceSens
— Ожидаемые цены или чувствительностьОжидаемые цены или чувствительность, возвращенная как NINST
-by-1
или NINST
-by-2
вектор.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.