Определите европейские цены опции радуги на минимум двух опасных использований активов модель ценообразования опционов Stulz
Price = minassetbystulz(RateSpec,StockSpec1,StockSpec2,Settle,Maturity,OptSpec,Strike,Corr)
вычисляет цены опции с помощью модели ценообразования опционов Stulz.Price
= minassetbystulz(RateSpec
,StockSpec1
,StockSpec2
,Settle
,Maturity
,OptSpec
,Strike
,Corr
)
Рассмотрите европейский пут-опцион радуги, который дает держателю право продать или акции 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'; Price = minassetbystulz(RateSpec, StockSpecA, StockSpecB, Settle,... Maturity, OptSpec, Strike, Corr)
Price = 3×1
3.4320
3.1384
2.7694
Значения 3.43, 3.14, и 2.77 являются ценой европейских пут-опционов радуги с уровнем корреляции-0.5, 0, и 0.5 соответственно.
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
Price
— Ожидаемые цены опцииОжидаемые цены опции, возвращенные как NINST
-by-1
вектор.
intenvset
| maxassetsensbystulz
| minassetsensbystulz
| stockspec
Вы щелкнули по ссылке, которая соответствует команде MATLAB:
Выполните эту команду, введя её в командном окне MATLAB.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.