Цена опции моделью Хестона, использующей конечные разности
[ задает опции с помощью одного или нескольких аргументов пары "имя-значение" в дополнение к входным параметрам в предыдущем синтаксисе.Price,PriceGrid,AssetPrices,Variances,Times] = optByHestonFD(___,Name,Value)
Задайте переменные опции и параметры модели Хестона.
AssetPrice = 10; Strike = 10; Rate = 0.1; Settle = '01-Jan-2017'; ExerciseDates = '02-Apr-2017'; V0 = 0.0625; ThetaV = 0.16; Kappa = 5.0; SigmaV = 0.9; RhoSV = 0.1;
Вычислите американскую цену пут-опциона.
OptSpec = 'Put'; Price = optByHestonFD(Rate, AssetPrice, Settle, ... ExerciseDates, OptSpec, Strike, V0, ThetaV, Kappa, SigmaV, RhoSV, 'AmericanOpt', 1)
Price = 0.5188
Rate — Постоянно составляемая безрисковая процентная ставкаПостоянно составляемая безрисковая процентная ставка, заданная как скалярное десятичное число.
Типы данных: double
AssetPrice — Текущая цена базового активаТекущая цена базового актива, заданная как числовое значение с помощью числового скаляра.
Типы данных: double
Settle — Расчетный день опции Расчетный день опции, заданный как скаляр с помощью последовательных чисел даты, векторов символов даты, массивов datetime или строковых массивов.
Типы данных: double | char | datetime | string
ExerciseDates — Даты осуществления опцииДаты осуществления опции, заданные как последовательный номер даты, вектор символов даты, массив строк или массив datetime:
Для европейской опции существует только один ExerciseDates значение и это являются датой окончания срока действия опции.
Для американской опции используйте 1- 2 вектор контуров даты осуществления. Опция может быть осуществлена в любую древовидную дату между или включая пару дат на той строке. Если только один non-NaN дата перечислена, опция может быть осуществлена между Settle дата и один перечисленный ExerciseDate.
Типы данных: double | char | string | datetime
OptSpec — Определение опции 'call' или 'put' | массив строк со значениями "call" или "put"Определение опции, заданной как скаляр с помощью массива ячеек из символьных векторов или строковых массивов со значениями 'call' или 'put'.
Типы данных: cell | string
Strike — Значение цены исполнения опциона опцииЗначение цены исполнения опциона опции, заданное как числовой скаляр.
Типы данных: double
V0 — Начальное отклонение базового активаНачальное отклонение базового актива, заданного как числовой скаляр.
Типы данных: double
ThetaV — Долгосрочное отклонение базового активаДолгосрочное отклонение базового актива, заданного как числовой скаляр.
Типы данных: double
Kappa — Средняя скорость версии для отклонения базового активаСредняя скорость версии для отклонения базового актива, заданного как числовой скаляр.
Типы данных: double
SigmaV — Энергозависимость отклонения базового активаЭнергозависимость отклонения базового актива, заданного как числовой скаляр.
Типы данных: double
RhoSV — Корреляция между процессами Вайнера для базового актива и его отклоненияКорреляция между процессами Вайнера для базового актива и его отклонения, заданного как числовой скаляр.
Типы данных: double
Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
[Price,PriceGrid,AssetPrices,Variances,Times] = optByHestonD(Rate,AssetPrice,Settle,ExerciseDates,OptSpec,Strike,V0,ThetaV,Kappa,SigmaV,RhoSV,'Basis',7)'Basis' — Основание дневного количества инструмента (значение по умолчанию) | числовые значения: 0,1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13Основание дневного количества инструмента, заданного как разделенная запятой пара, состоящая из 'Basis' и скаляр с помощью поддерживаемого значения:
0 = фактический/фактический
1 = 30/360 (СИА)
2 = Фактический/360
3 = Фактический/365
4 = 30/360 (PSA)
5 = 30/360 (ISDA)
6 = 30/360 (европеец)
7 = Фактический/365 (японский язык)
8 = фактический/фактический (ICMA)
9 = Фактический/360 (ICMA)
10 = Фактический/365 (ICMA)
11 = 30/360E (ICMA)
12 = Фактический/365 (ISDA)
13 = ШИНА/252
Для получения дополнительной информации смотрите Основание.
Типы данных: double
'DividendYield' — Постоянно составляемая доходность базовых активов
(значение по умолчанию) | числовой скалярПостоянно составляемая доходность базовых активов, заданная как разделенная запятой пара, состоящая из 'DividendYield' и числовой скаляр.
Если вы вводите значение для DividendYield, затем установите DividendAmounts и ExDividendDates = [ ] или не вводите их. Если вы вводите значения для DividendAmounts и ExDividendDates, затем установите DividendYield= 0 .
Типы данных: double
'DividendAmounts' — Суммы денежного дивиденда[ ]
(значение по умолчанию) | векторСуммы денежного дивиденда, заданные как разделенная запятой пара, состоящая из 'DividendAmounts' и NDIV- 1 вектор.
Каждая сумма дивиденда должна иметь соответствие без дивиденда дата. Если вы вводите значения для DividendAmounts и ExDividendDates, затем установите DividendYield= 0 .
Типы данных: double
'ExDividendDates' — Без дивиденда даты[ ]
(значение по умолчанию) | последовательный номер даты | вектор символов даты | массив строк | массив datetimeБез дивиденда даты, заданные как разделенная запятой пара, состоящая из 'ExDividendDates' и NDIV- 1 вектор последовательных чисел даты, векторов символов даты, строковых массивов или массивов datetime.
Типы данных: double | char | string | datetime
'AssetPriceMax' — Максимальная цена за ценовой контур сеткиМаксимальная цена за ценовой контур сетки, заданный как разделенная запятой пара, состоящая из 'AssetPriceMax' и положительная скалярная величина.
Типы данных: single | double
'VarianceMax' — Максимальное отклонение, чтобы использовать в контуре сетки отклонения (значение по умолчанию) | числовой скалярМаксимальное отклонение, чтобы использовать в контуре сетки отклонения, заданном как разделенная запятой пара, состоящая из 'VarianceMax' как числовой скаляр.
Типы данных: double
'AssetGridSize' — Размер сетки актива для сетки конечной разности
(значение по умолчанию) | числовой скалярРазмер сетки актива для сетки конечной разности, заданной как разделенная запятой пара, состоящая из 'AssetGridSize' и числовой скаляр.
Типы данных: double
'VarianceGridSize' — Количество узлов для сетки отклонения для сетки конечной разности
(значение по умолчанию) | числовой скалярКоличество узлов для сетки отклонения для сетки конечной разности, заданной как разделенная запятой пара, состоящая из 'VarianceGridSize' и числовой скаляр.
Типы данных: double
'TimeGridSize' — Количество узлов сетки времени для сетки конечной разности
(значение по умолчанию) | положительный числовой скалярКоличество узлов сетки времени для сетки конечной разности, заданной как разделенная запятой пара, состоящая из 'TimeGridSize' и положительный числовой скаляр.
Типы данных: double
'AmericanOpt' — Тип опции (Европейское) (значение по умолчанию) | скаляр со значением [0,1]Тип опции, заданный как разделенная запятой пара, состоящая из 'AmericanOpt' и скалярный флаг с одним из этих значений:
0 — Европеец
1 — Американец
Типы данных: double
Price — Цена опцииЦена опции, возвращенная как числовой скаляр.
PriceGrid — Сетка, содержащая цены, вычисленные методом конечной разностиСетка, содержащая цены, вычисленные методом конечной разности, возвращенным как 3D сетка с размером AssetGridSize ⨉ VarianceGridSize ⨉ TimeGridSize. Глубина не обязательно равна TimeGridSize, потому что осуществление и без дивиденда даты добавляются к сетке времени. PriceGrid(:, :, end) содержит цену за t = 0.
AssetPrices — Цены активаЦены актива, соответствующего первой размерности PriceGrid, возвращенный как вектор.
Variances — ОтклоненияОтклонения, соответствующие второму измерению PriceGrid, возвращенный как вектор.
Times \timesВремена соответствуя третьей размерности PriceGrid, возвращенный как вектор.
vanilla option является категорией опций, которая включает только самые стандартные компоненты.
Опция ванили имеет дату истечения срока и прямую цену исполнения опциона. Американские параметры стиля и европейские параметры стиля оба категоризированы как опции ванили.
Выплата для опции ванили следующие:
Для вызова:
Для помещенного:
где:
St является ценой базового актива во время t.
K является ценой исполнения опциона.
Для получения дополнительной информации см. Опцию Ванили.
Модель Хестона является расширением модели Black-Scholes, где энергозависимость (квадратный корень из отклонения) больше не принимается постоянным, и отклонение теперь следует за стохастическим (CIR) процесс. Это позволяет моделировать улыбки подразумеваемой волатильности, наблюдаемые на рынке.
Стохастическое дифференциальное уравнение:
где
r является непрерывным безрисковым уровнем.
q является непрерывной дивидендной доходностью.
S t является ценой активов во время t.
v t является отклонением цен активов во время t
v 0 является начальным отклонением цены активов в t = 0 для (v 0> 0).
θ является долгосрочным уровнем отклонения для (θ> 0).
κ является скоростью возвращения к среднему уровню для отклонения для (κ> 0).
σ v является энергозависимостью отклонения для (σ v> 0).
p является корреляцией между процессами Вайнера W t и W vt для (-1 ≤ p ≤ 1).
[1] Хестон, S. L. “Решение закрытой формы для опций со стохастической энергозависимостью с приложениями к опциям связи и валюты”. Анализ финансовых исследований. Vol 6, номер 2, 1993.
optByBatesFD | optByLocalVolFD | optByMertonFD | optBySensMertonFD | optSensByBatesFD | optSensByHestonFD | optSensByLocalVolFD | optstockbyfd | optstocksensbyfd
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.