Цена ванильных опций на акции с помощью стандартного триномиального дерева
[
добавляет необязательные аргументы пары "имя-значение".Price
,PriceTree
]
= optstockbystt(___,Name,Value
)
Создайте RateSpec
.
StartDates = 'Jan-1-2009'; EndDates = 'Jan-1-2013'; Rates = 0.035; Basis = 1; Compounding = -1; RateSpec = intenvset('ValuationDate', StartDates, 'StartDates', StartDates,... 'EndDates', EndDates, 'Rates', Rates,'Compounding', Compounding, 'Basis', Basis)
RateSpec = struct with fields:
FinObj: 'RateSpec'
Compounding: -1
Disc: 0.8694
Rates: 0.0350
EndTimes: 4
StartTimes: 0
EndDates: 735235
StartDates: 733774
ValuationDate: 733774
Basis: 1
EndMonthRule: 1
Создайте StockSpec
.
AssetPrice = 85; Sigma = 0.15; StockSpec = stockspec(Sigma, AssetPrice)
StockSpec = struct with fields:
FinObj: 'StockSpec'
Sigma: 0.1500
AssetPrice: 85
DividendType: []
DividendAmounts: 0
ExDividendDates: []
Создайте STTTree
.
NumPeriods = 4; TimeSpec = stttimespec(StartDates, EndDates, 4); STTTree = stttree(StockSpec, RateSpec, TimeSpec)
STTTree = struct with fields:
FinObj: 'STStockTree'
StockSpec: [1x1 struct]
TimeSpec: [1x1 struct]
RateSpec: [1x1 struct]
tObs: [0 1 2 3 4]
dObs: [733774 734139 734504 734869 735235]
STree: {1x5 cell}
Probs: {[3x1 double] [3x3 double] [3x5 double] [3x7 double]}
Определите опции вызова и размещения и вычислите цену.
Settle = '1/1/09'; ExerciseDates = [datenum('1/1/11');datenum('1/1/12')]; OptSpec = {'call';'put'}; Strike =[100;80]; Price = optstockbystt(STTTree, OptSpec, Strike, Settle, ExerciseDates)
Price = 2×1
4.5025
3.0603
STTTree
- Древовидная структура для стандартного триномиального дереваСтруктура дерева запасов для стандартного триномиального дерева, заданная при помощи stttree
.
Типы данных: struct
OptSpec
- Определение опции 'call'
или 'put'
| массив ячеек векторов символов со значениями 'call'
или 'put'
Определение опции, заданное как 'call'
или 'put'
использование вектора символов.
Типы данных: char
| cell
Strike
- Значения цены опционной забастовкиОпциональное значение цены доставки, заданное как NINST
-by- 1
или NINST
-by- NSTRIKES
в зависимости от типа опции:
Для европейской опции используйте NINST
-by- 1
вектор страйк-цен.
Для опции Бермудских островов используйте NINST
-by- NSTRIKES
матрица страйк-цен. Каждая строка является расписанием для одной опции. Если опция имеет меньше NSTRIKES возможности упражнений, конец строки заполнен
NaN
с.
Для американской опции используйте NINST
-by- 1
цен на забастовку.
Типы данных: double
Settle
- Дата расчета или торговая датаДата расчета или торговая дата для опции ванили, заданная как NINST
-by- 1
вектор векторов символов дат или серийных номеров дат.
Примечание
The Settle
дата для каждой опции ванили устанавливается в ValuationDate
дерева запасов. Аргумент опции ванили Settle
игнорируется.
Типы данных: char
| double
ExerciseDates
- Даты опционных упражненийОпции даты упражнений, заданные как NINST
-by- 1
, NINST
-by- 2
, или NINST
-by- NSTRIKES
использование серийных номеров дат или векторов символов дат в зависимости от типа опции:
Для европейской опции используйте NINST
-by- 1
вектор дат. Каждая строка является расписанием для одной опции. Для европейской опции существует только один ExerciseDates
на дату истечения срока действия опции.
Для опции Бермудских островов используйте NINST
-by- NSTRIKES
вектор дат. Каждая строка является расписанием для одной опции.
Для американской опции используйте NINST
-by- 2
вектор контуров дат упражнения. Опция может быть использована в любую дату между или включая пару дат в этой строке. Если только один не - NaN
указана дата, или если ExerciseDates
является NINST
-by- 1
вектор, опция может быть реализована между ValuationDate
дерева запасов и одной перечисленной ExerciseDates
.
Типы данных: double
| char
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
Price = optstockbystt(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates,'AmericanOpt','1')
'AmericanOpt'
- Тип опции0
Европейский или Бермудские острова (по умолчанию) | целое число со значениями 0
или 1
Тип опции, заданный как разделенная разделенными запятой парами, состоящая из 'AmericanOpt'
и a NINST
-by- 1
вектор целочисленных флагов со значениями:
0
- Европейский или Бермудский
1
- Американский
Типы данных: single
| double
Price
- Ожидаемая цена опции в то время 0
Ожидаемая цена опции в то время 0
, возвращается как NINST
-by- 1
вектор.
PriceTree
- Структура, содержащая деревья векторов цен на приборы и начисленные проценты для каждого узлаСтруктура, содержащая деревья векторов цен приборов и накопленных процентов, и вектор времени наблюдения для каждого узла. Значения:
PriceTree.PTree
содержит чистые цены.
PriceTree.tObs
содержит время наблюдения.
PriceTree.dObs
содержит даты наблюдений.
A vanilla option - это категория опций, которая включает только самые стандартные компоненты.
Ванильная опция имеет срок годности и прямолинейную цену доставки. Опции в американском стиле и опции в европейском стиле классифицируются как опции ванили.
Выплата для ванильной опции следующая:
Для вызова:
Для размещения:
где:
St - цена базового актива на t времени.
K - цена доставки.
Для получения дополнительной информации смотрите Опцию Vanilla.
instoptstock
| sttprice
| sttsens
| stttimespec
| stttree
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.