Вычислите цены опции ванили или чувствительность с помощью метода конечной разности
[PriceSens,PriceGrid,AssetPrices,Times]
= optstocksensbyfd(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates)[PriceSens,PriceGrid,AssetPrices,Times]
= optstocksensbyfd(___,Name,Value)[ вычисляет цены опции ванили или чувствительность с помощью метода конечной разности. PriceSens,PriceGrid,AssetPrices,Times]
= optstocksensbyfd(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates)
[ добавляют дополнительные аргументы пары "имя-значение". PriceSens,PriceGrid,AssetPrices,Times]
= optstocksensbyfd(___,Name,Value)
Создайте RateSpec.
AssetPrice = 50; Strike = 45; Rate = 0.035; Volatility = 0.30; Settle = '01-Jan-2015'; Maturity = '01-Jan-2016'; Basis = 1; RateSpec = intenvset('ValuationDate',Settle,'StartDates',Settle,'EndDates',... Maturity,'Rates',Rate,'Compounding',-1,'Basis',Basis)
RateSpec = struct with fields:
FinObj: 'RateSpec'
Compounding: -1
Disc: 0.9656
Rates: 0.0350
EndTimes: 1
StartTimes: 0
EndDates: 736330
StartDates: 735965
ValuationDate: 735965
Basis: 1
EndMonthRule: 1
Создайте StockSpec.
StockSpec = stockspec(Volatility,AssetPrice)
StockSpec = struct with fields:
FinObj: 'StockSpec'
Sigma: 0.3000
AssetPrice: 50
DividendType: []
DividendAmounts: 0
ExDividendDates: []
Вычислите цену и чувствительность для европейского колл-опциона ванили с помощью метода конечной разности.
ExerciseDates = 'may-1-2015'; OptSpec = 'Call'; OutSpec = {'price'; 'delta'; 'theta'}; [PriceSens, Delta, Theta] = optstocksensbyfd(RateSpec,StockSpec,OptSpec,Strike,Settle,... ExerciseDates,'OutSpec',OutSpec)
PriceSens = 6.7352
Delta = 0.7765
Theta = -4.9999
StockSpec — Спецификация запаса для базового активаСпецификация запаса для базового актива. Для получения информации о спецификации запаса смотрите stockspec.
stockspec обрабатывает несколько типов базовых активов. Например, для физических предметов потребления ценой является StockSpec.Asset, энергозависимостью является StockSpec.Sigma, и урожаем удобства является StockSpec.DividendAmounts.
Типы данных: struct
OptSpec — Определение опции 'call' или 'put' | массив строк со значениями 'call' или 'put'Определение опции как 'call' или 'put', заданный как вектор символов или массив строк со значениями 'call' или 'put'.
Типы данных: char | string
Strike — Значение цены исполнения опциона опцииЗначение цены исполнения опциона опции, заданное как неотрицательный скаляр или вектор.
Для европейской опции используйте скаляр цены исполнения опциона.
Для опции Бермуд используйте 1-by-NSTRIKES вектор цен исполнения опциона.
Для американской опции используйте скаляр цены исполнения опциона.
Типы данных: single | double
Settle — Урегулирование или торговая датаУрегулирование или торговая дата барьерного опциона, заданного как последовательный номер даты, вектор символов даты или объект datetime.
Типы данных: double | char | datetime
ExerciseDates — Даты осуществления опцииДаты осуществления опции, заданные как неотрицательное скалярное целое число, вектор символов даты или объект datetime:
Для европейской опции используйте 1-by-1 вектор дат, заданных как неотрицательное скалярное целое число, вектор символов даты или объект datetime. Для опции Бермуд используйте 1-by-NSTRIKES вектор дат, заданных как неотрицательное скалярное целое число, вектор символов даты или объект datetime.
Для американской опции используйте 1-by-2 массив ячеек векторов символов даты. Опция может быть осуществлена в любую дату между или включая пару дат на той строке. Если только одна non-NaN дата перечислена, или если ExerciseDates является 1-by-1 вектор последовательных чисел даты или массив ячеек векторов символов даты, опция может быть осуществлена между Settle и одной перечисленной датой в ExerciseDates.
Типы данных: double | char | cell | datetime
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
PriceSens = optstocksensbyfd(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates,'OutSpec',{'All'},'AssetGridSize',1000)'OutSpec' — Define выходные параметры{'Price'} (значение по умолчанию) | вектор символов со значениями 'Price', 'Delta', 'Gamma', 'Vega', 'Lambda', 'Rho', 'Theta' и 'All' | массив ячеек из символьных векторов со значениями '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'}
Типы данных: char | cell
'AssetGridSize' — Размер сетки актива используется для сетки конечной разности400 (значение по умолчанию) | положительная скалярная величинаРазмер сетки актива используется для сетки конечной разности, заданной как пара, разделенная запятой, состоящая из 'AssetGridSize' и положительной скалярной величины.
Типы данных: double
'AssetPriceMax' — Максимальная цена за ценовой контур сеткиStockSpec вычисляются с помощью дистрибутивов актива в зрелости (значение по умолчанию) | положительная скалярная величинаМаксимальная цена за ценовой контур сетки, заданный как пара, разделенная запятой, состоящая из 'AssetPriceMax' и положительной скалярной величины.
Типы данных: single | double
'TimeGridSize' — Размер сетки времени используется для сетки конечной разности100 (значение по умолчанию) | положительная скалярная величинаРазмер сетки времени используется для сетки конечной разности, заданной как пара, разделенная запятой, состоящая из 'TimeGridSize' и положительной скалярной величины.
Типы данных: double
'AmericanOpt' — Тип опции0 (европеец/Бермуды) (значение по умолчанию) | скаляр со значениями [0,1]Тип опции, заданный как пара, разделенная запятой, состоящая из 'AmericanOpt' и NINST-by-1 положительный целочисленный скаляр, отмечает с помощью значений:
0 — Европеец/Бермуды
1 — Американец
Типы данных: double
PriceSens — Ожидаемые цены или чувствительность для опций ванилиОжидаемая цена или чувствительность (заданный OutSpec) опции ванили, возвращенной как 1-by-1 массив.
PriceGrid — Сетка, содержащая цены, вычисленные методом конечной разностиСетка, содержащая цены, вычисленные методом конечной разности, возвращенным как двумерная сетка с размером PriceGridSize*length(Times). Количество столбцов не должно быть равно TimeGridSize, потому что без дивиденда даты в StockSpec добавляются к сетке времени. Цена за t = 0 содержится в PriceGrid(:, end).
\times Времена соответствуя второму измерению PriceGridВремена соответствуя второму измерению PriceGrid, возвращенного как вектор.
[1] Хог, Например, Дж. Хог и А. Льюис. "Назад к основам: новый подход к дискретной проблеме дивиденда". Издание 9, журнал Wilmott, 2003, стр 37–47.
[2] Ву, L. и И. К. Квок. "Фиксирующий переднюю сторону метод конечной разности для оценки американских опций". Журнал Финансовой Разработки. Издание 6.4, 1997, стр 83–97.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.