Вычислите американские цены опций и чувствительность с помощью модели ценообразования опционов Бэроуна-Адези и Вэли
Рассмотрите американский колл-опцион с ценой исполнения 120$. Опция истекает 1 января 2018. Запас имеет энергозависимость 14% в год, и пересчитываемый на год постоянно составляемый безрисковый уровень составляет 4% в год с 1 января 2016. Используя эти данные, вычислите цену американского вызова, приняв, что цена запаса составляет 125$ и выплачивает дивиденд 2%.
StartDate = 'Jan-1-2016'; EndDate = 'jan-1-2018'; Basis = 1; Compounding = -1; Rates = 0.04;
Задайте RateSpec
.
RateSpec = intenvset('ValuationDate',StartDate,'StartDate',StartDate,'EndDate',EndDate, ... 'Rates',Rates,'Basis',Basis,'Compounding',Compounding)
RateSpec = struct with fields:
FinObj: 'RateSpec'
Compounding: -1
Disc: 0.9231
Rates: 0.0400
EndTimes: 2
StartTimes: 0
EndDates: 737061
StartDates: 736330
ValuationDate: 736330
Basis: 1
EndMonthRule: 1
Задайте StockSpec
.
Dividend = 0.02;
AssetPrice = 125;
Volatility = 0.14;
StockSpec = stockspec(Volatility,AssetPrice,'Continuous',Dividend)
StockSpec = struct with fields:
FinObj: 'StockSpec'
Sigma: 0.1400
AssetPrice: 125
DividendType: {'continuous'}
DividendAmounts: 0.0200
ExDividendDates: []
Задайте американскую опцию.
OptSpec = 'call'; Strike = 120; Settle = 'Jan-1-2016'; Maturity = 'jan-1-2018';
Вычислите цену и чувствительность для американской опции.
OutSpec = {'price';'delta';'theta'}; [Price,Delta,Theta] = optstocksensbybaw(RateSpec,StockSpec,Settle,Maturity,OptSpec,Strike,'OutSpec',OutSpec)
Price = 14.5180
Delta = 0.6672
Theta = -3.1861
StockSpec
— Спецификация запаса для базового активаСпецификация запаса для базового актива. Для получения информации о спецификации запаса смотрите stockspec
.
stockspec
указатели несколько типов базовых активов. Например, для физических предметов потребления ценой является StockSpec.Asset
, энергозависимостью является StockSpec.Sigma
, и урожаем удобства является StockSpec.DividendAmounts
.
Типы данных: struct
Settle
— Расчетный деньРасчетный день для американской опции, заданной как NINST
- 1
матрица с помощью последовательного номера даты, вектора символов даты или объекта datetime.
Типы данных: double |
char
| datetime
Maturity
— Дата погашенияДата погашения для американской опции, заданной как NINST
- 1
матрица с помощью последовательного номера даты, вектора символов даты или объекта datetime.
Типы данных: double |
char
| datetime
OptSpec
— Определение опции 'call'
или 'put'
| массив строк со значениями 'call'
или 'put'
Определение опции как 'call'
или 'put'
, заданный как NINST
- 1
массив ячеек из символьных векторов или строковые массивы со значениями 'call'
или 'put'
.
Типы данных: char |
string
Strike
— Американское значение цены исполнения опциона опцииАмериканское значение цены исполнения опциона опции, заданное как неотрицательный скаляр или NINST
- 1
матрица значений цены исполнения опциона. Каждая строка является расписанием для одной опции.
Типы данных: single
| double
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
[Price,Delta,Theta] = optstocksensbybaw(RateSpec,StockSpec,Settle,Maturity,OptSpec,Strike,'OutSpec',OutSpec)
'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
— Ожидаемые цены или чувствительность для американских опцийОжидаемые цены или чувствительность для американских опций, возвращенных как NINST
- 1
матрица.
Вся чувствительность оценена путем вычисления дискретного приближения частной производной. Это означает, что опция повторно оценена с дробным изменением за каждый соответствующий параметр. Изменение в значении опции, разделенном на шаг, является аппроксимированным значением чувствительности.
vanilla option является категорией опций, которая включает только самые стандартные компоненты.
Опция ванили имеет дату истечения срока и прямую цену исполнения опциона. Американские параметры стиля и европейские параметры стиля оба категоризированы как опции ванили.
Выплата для опции ванили следующие:
Для вызова:
Для помещенного:
где:
St является ценой базового актива во время t.
K является ценой исполнения опциона.
Для получения дополнительной информации см. Опцию Ванили.
[1] Бэроун-Аклези, G. и Роберт Э. Вэли. “Эффективное аналитическое приближение американских значений опции”. Журнал финансов. Объем 42, выпуск 2 (июнь 1987), 301–320.
[2] Haug, E. Полное руководство по опции, оценивая формулы. Второй выпуск. McGraw-Hill Education, январь 2007.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
Вы щелкнули по ссылке, которая соответствует команде MATLAB:
Выполните эту команду, введя её в командном окне MATLAB.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.