Вычислите европейские цены опции распространения или чувствительность с помощью модели ценообразования Кирка
возвращает европейские цены опции распространения или чувствительность с помощью модели ценообразования Кирка.PriceSens
= spreadbykirk(RateSpec
,StockSpec1
,StockSpec2
,Settle
,Maturity
,OptSpec
,Strike
,Corr
)
добавляют дополнительные аргументы пары "имя-значение".PriceSens
= spreadsensbykirk(___,Name,Value
)
Задайте даты опции распространения.
Settle = '01-Jun-2012'; Maturity = '01-Sep-2012';
Задайте актив 1. Цена и энергозависимость бензина RBOB
Price1gallon = 2.85; % $/gallon Price1 = Price1gallon * 42; % $/barrel Vol1 = 0.29;
Задайте актив 2. Цена и энергозависимость сырой нефти WTI
Price2 = 93.20; % $/barrel
Vol2 = 0.36;
Задайте корреляцию между ценами базового актива актива 1 и актива 2.
Corr = 0.42;
Задайте опцию распространения.
OptSpec = 'call';
Strike = 20;
Задайте RateSpec
.
rates = 0.05; Compounding = -1; Basis = 1; RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle, ... 'EndDates', Maturity, 'Rates', rates, ... 'Compounding', Compounding, 'Basis', Basis)
RateSpec = struct with fields:
FinObj: 'RateSpec'
Compounding: -1
Disc: 0.9876
Rates: 0.0500
EndTimes: 0.2500
StartTimes: 0
EndDates: 735113
StartDates: 735021
ValuationDate: 735021
Basis: 1
EndMonthRule: 1
Задайте StockSpec
для этих двух активов.
StockSpec1 = stockspec(Vol1, Price1)
StockSpec1 = struct with fields:
FinObj: 'StockSpec'
Sigma: 0.2900
AssetPrice: 119.7000
DividendType: []
DividendAmounts: 0
ExDividendDates: []
StockSpec2 = stockspec(Vol2, Price2)
StockSpec2 = struct with fields:
FinObj: 'StockSpec'
Sigma: 0.3600
AssetPrice: 93.2000
DividendType: []
DividendAmounts: 0
ExDividendDates: []
Вычислите цену опции распространения и чувствительность на основе модели Кирка.
OutSpec = {'Price', 'Delta', 'Gamma'}; [Price, Delta, Gamma] = spreadsensbykirk(RateSpec, StockSpec1, StockSpec2, Settle, ... Maturity, OptSpec, Strike, Corr, 'OutSpec', OutSpec)
Price = 11.1904
Delta = 1×2
0.6722 -0.6067
Gamma = 1×2
0.0191 0.0217
StockSpec1
— Спецификация запаса для базового актива 1Спецификация запаса для базового актива 1. Для получения информации о спецификации запаса смотрите stockspec
.
stockspec
может обработать другие типы базовых активов. Например, для физических предметов потребления цена представлена StockSpec.Asset
, энергозависимость представлена StockSpec.Sigma
, и урожай удобства представлен StockSpec.DividendAmounts
.
Типы данных: struct
StockSpec2
— Спецификация запаса для базового актива 2Спецификация запаса для базового актива 2. Для получения информации о спецификации запаса смотрите stockspec
.
stockspec
может обработать другие типы базовых активов. Например, для физических предметов потребления цена представлена StockSpec.Asset
, энергозависимость представлена StockSpec.Sigma
, и урожай удобства представлен StockSpec.DividendAmounts
.
Типы данных: struct
Settle
— Расчетные дни для опции распространенияРасчетные дни для опции распространения, заданной как векторы символов даты или как последовательные числа даты с помощью NINST
- 1
векторный массив или массив ячеек дат вектора символов.
Типы данных: char |
cell
| double
Maturity
— Дата погашения для опции распространенияДата погашения для опции распространения, заданной как векторы символов даты или как последовательные числа даты с помощью NINST
- 1
векторный массив или массив ячеек дат вектора символов.
Типы данных: char |
cell
| double
OptSpec
— Определение опции 'call'
или 'put'
| массив ячеек из символьных векторовОпределение опции как 'call'
или 'put'
, заданный как NINST
- 1
массив ячеек из символьных векторов.
Типы данных: char |
cell
Strike
— Значения цены исполнения опциона опцииЗначения цены исполнения опциона опции, заданные как целое число с помощью в качестве NINST
- 1
вектор значений цены исполнения опциона.
Если Strike
равен нулю, эта функция вычисляет цену и чувствительность обменной опции.
Типы данных: single
| double
Corr
— Корреляция между ценами базового активаКорреляция между ценами базового актива, заданными как целое число с помощью в качестве NINST
- 1
вектор.
Типы данных: single
| double
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
PriceSens = spreadsensbykirk(RateSpec,StockSpec1,StockSpec2,Settle,Maturity,OptSpec,Strike,Corr,OutSpec,{'All'})
'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
PriceSens
— Ожидаемая цена или значения чувствительности опции распространенияОжидаемая цена или значения чувствительности (заданный OutSpec
) из опции распространения, возвращенной как NINST
- 1
или NINST
- 2
вектор.
spread option является опцией, записанной на различии двух базовых активов.
Например, европеец обращаются к различию двух активов, X1 и X2 имели бы следующее, окупаются в зрелости:
где:
K является ценой исполнения опциона.
Для получения дополнительной информации см. Опцию Распространения.
[1] Кармона, R., Деррлмен, V. “Оценок и Хеджирование Опций Распространения”. Анализ SIAM. Издание 45, № 4, стр 627–685, Общество Промышленной и Прикладной математики, 2003.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.