Определите цены опции или чувствительность с помощью модели дерева бинома Лайзена-Раймера
добавляют дополнительные аргументы пары "имя-значение" для PriceSens = optstockbylr(___,Name,Value)AmericanOpt и OutSpec.
В этом примере показано, как вычислить цены опции и чувствительность с помощью модели дерева бинома Лайзена-Раймера. Рассмотрите европейские колл-опционы и пут-опционы с ценой исполнения 100$, которые истекают 1 декабря 2010. Базовый запас стоит на уровне 100$ 1 июня 2010 и имеет энергозависимость 30% в год. Пересчитываемый на год постоянно составляемый безрисковый уровень составляет 7% в год. Используя эти данные, вычислите цену, дельту и гамму опций с помощью модели Лайзена-Раймера с деревом 25 временных шагов и PP2 метод.
AssetPrice = 100; Strike = 100; ValuationDate = 'June-1-2010'; Maturity = 'December-1-2010'; % define StockSpec Sigma = 0.3; StockSpec = stockspec(Sigma, AssetPrice); % define RateSpec Rates = 0.07; Settle = ValuationDate; Basis = 1; Compounding = -1; RateSpec = intenvset('ValuationDate', ValuationDate, 'StartDates', Settle, ... 'EndDates', Maturity, 'Rates', Rates, 'Compounding', Compounding, 'Basis', Basis); % build the Leisen-Reimer (LR) tree with 25 time steps LRTimeSpec = lrtimespec(ValuationDate, Maturity, 25); % use the PP2 method LRMethod = 'PP2'; TreeLR = lrtree(StockSpec, RateSpec, LRTimeSpec, Strike, 'method', LRMethod); % compute prices and sensitivities using the LR model: OptSpec = {'call'; 'put'}; OutSpec = {'Price', 'Delta', 'Gamma'}; [Price, Delta, Gamma] = optstocksensbylr(TreeLR, OptSpec, Strike, Settle, ... Maturity, 'OutSpec', OutSpec)
Price = 2×1
10.1332
6.6937
Delta = 2×1
0.6056
-0.3944
Gamma = 2×1
0.0185
0.0185
LRTree — Древовидная структура запасаДревовидная структура запаса, заданная lrtree.
Типы данных: struct
OptSpec — Определение опции 'call' или 'put'Определение опции как 'call' или 'put', заданный как NINST- 1 массив ячеек из символьных векторов со значениями 'call' или 'put'.
Типы данных: char | cell
Strike — Значения цены исполнения опциона опцииЗначение цены исполнения опциона опции, заданное с неотрицательным целым числом:
Для европейской опции используйте NINST- 1 вектор цен исполнения опциона.
Для опции Бермуд используйте NINST- NSTRIKES вектор цен исполнения опциона. Каждая строка является расписанием для одной опции. Если опция имеет меньше, чем NSTRIKES осуществите возможности, конец строки дополнен NaNs.
Для американской опции используйте NINST- 1 вектор цен исполнения опциона.
Типы данных: double
Settle — Урегулирование или торговая датаУрегулирование или торговая дата, заданная как NINST- 1 матрица с помощью последовательных чисел даты или векторов символов даты.
Типы данных: double | char
ExerciseDates — Даты осуществления опцииДаты осуществления опции, заданные как вектор векторов символов даты или последовательных чисел даты, где каждая строка является расписанием для одной опции и последнего элемента каждой строки, должны совпасть со зрелостью дерева.
Для европейской опции используйте NINST- 1 вектор дат. Для европейской опции существует только один ExerciseDate на дате окончания срока действия опции.
Для опции Бермуд используйте NINST- NSTRIKEDATES вектор дат.
Для американской опции используйте NINST- 1 вектор дат осуществления. Для американского типа опция может быть осуществлена на любых древовидных данных между ValuationDate и древовидная зрелость.
Типы данных: double | char
Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
[Price,Delta,Gamma] = optstocksensbylr(LRTree,OptSpec,Strike,Settle,ExerciseDates,'OutSpec',OutSpec)'AmericanOpt' — Тип опции Европеец или Бермуды (значение по умолчанию) | значения: [0,1]Тип опции, заданный как разделенная запятой пара, состоящая из 'AmericanOpt' и NINST- 1 вектор флагов со значениями:
0 — Европеец или Бермуды
1 — Американец
Типы данных: double
'OutSpec' — Задайте выходные параметры{'Price'}
(значение по умолчанию) | массив ячеек из символьных векторов со значениями: '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 вектор.
Типы данных: double
vanilla option является категорией опций, которая включает только самые стандартные компоненты.
Опция ванили имеет дату истечения срока и прямую цену исполнения опциона. Американские параметры стиля и европейские параметры стиля оба категоризированы как опции ванили.
Выплата для опции ванили следующие:
Для вызова:
Для помещенного:
где:
St является ценой базового актива во время t.
K является ценой исполнения опциона.
Для получения дополнительной информации см. Опцию Ванили.
[1] Лейсен Д.П., М. Раймер. “Биномиальные модели для Оценки Опции – Исследование и Улучшение Сходимости”. Прикладные Математические Финансы. Номер 3, 1996, стр 319–346.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.