compoundbystt

Ценовые опции составного объекта с помощью стандартного трехчленного дерева

Синтаксис

[Price,PriceTree] = compoundbystt(STTTree,UOptSpec,UStrike,USettle,UExerciseDates,UAmericanOpt,COptSpec,CStrike,CSettle,CExerciseDates)
[Price,PriceTree] = compoundbystt(___,Name,Value)

Описание

пример

[Price,PriceTree] = compoundbystt(STTTree,UOptSpec,UStrike,USettle,UExerciseDates,UAmericanOpt,COptSpec,CStrike,CSettle,CExerciseDates) цены соединяют опции с помощью стандартного трехчлена (STT) дерево.

пример

[Price,PriceTree] = compoundbystt(___,Name,Value) добавляет дополнительный аргумент пары "имя-значение" для CAmericanOpt.

Примеры

свернуть все

Создайте 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]}

Задайте составную опцию и вычислите цену.

USettle = '1/1/09';
UExerciseDates = '1/1/12';
UOptSpec =  'call';
UStrike = 95;
UAmericanOpt = 1;
CSettle = '1/1/09';
CExerciseDates = '1/1/11';
COptSpec = 'put';
CStrike = 5;
CAmericanOpt = 1;

Price= compoundbystt(STTTree, UOptSpec, UStrike, USettle, UExerciseDates,...
UAmericanOpt, COptSpec, CStrike, CSettle,CExerciseDates, CAmericanOpt)
Price = 1.7090

Входные параметры

свернуть все

Древовидная структура запаса для стандартного трехчленного дерева, заданного при помощи stttree.

Типы данных: struct

Определение базовой опции, заданной как 'call' или 'put' с помощью вектора символов.

Типы данных: char

Базовое значение цены исполнения опциона опции, заданное с неотрицательным целым числом с помощью 1-by-1 вектор.

Типы данных: double

Базовый расчетный день опции или торговая дата, заданная как 1-by-1 вектор с помощью последовательного номера даты или вектора символов.

Типы данных: double | char

Базовая дата осуществления опции, заданная как последовательный номер даты или вектор символов даты:

  • Для европейской опции используйте вектор a1-by-1 базовой даты осуществления. Для европейской опции на дате окончания срока действия опции существует только один ExerciseDates.

  • Для американской опции используйте 1-by-2 вектор базовых контуров даты осуществления. Опция может быть осуществлена в любую древовидную дату. Если только одна non-NaN дата перечислена, или если ExerciseDates является 1-by-1, опция может быть осуществлена между ValuationDate дерева запаса и одним перечисленным ExerciseDates.

Типы данных: double | char

Базовый тип опции, заданный как NINST-by-1 положительный целочисленный скаляр, отмечает с помощью значений:

  • 0 — Европеец

  • 1 — Американец

Если UAmericanOpt является NaN или не задан, опция является европейской опцией.

Типы данных: single | double

Определение составной опции, заданной как 'call' или 'put' с помощью вектора символов или массива ячеек из символьных векторов со значениями 'call' или 'put'.

Типы данных: char | cell

Составные значения цены исполнения опциона опции для европейской и американской опции, заданной с неотрицательным целым числом с помощью NINST-by-1 матрица. Каждая строка является расписанием для одной опции.

Типы данных: double

Составной расчетный день опции или торговая дата, заданная как 1-by-1 вектор с помощью последовательного номера даты или вектора символов даты.

Типы данных: double | char

Составные даты осуществления опции, заданные как последовательные числа даты или векторы символов даты:

  • Для европейской опции используйте матрицу aNINST-by-1 составных дат осуществления. Каждая строка является расписанием для одной опции. Для европейской опции на дате окончания срока действия опции существует только один ExerciseDates.

  • Для американской опции используйте NINST-by-2 вектор составных контуров даты осуществления. Для каждого инструмента опция может быть осуществлена в любую древовидную дату между или включая пару дат на той строке. Если только одна non-NaN дата перечислена, или если ExerciseDates является NINST-by-1, опция может быть осуществлена между ValuationDate дерева запаса и одним перечисленным ExerciseDates.

Типы данных: double | char

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: Price = compoundbystt(STTTree,UOptSpec,UStrike,USettle,UExerciseDates,UAmericanOpt,COptSpec,CStrike,CSettle,CExerciseDates,'CAmericanOpt',1)

Составной тип опции, заданный как пара, разделенная запятой, состоящая из 'CAmericanOpt' и NINST-by-1 положительный целочисленный скаляр, отмечает с помощью значений:

  • 0 — Европеец

  • 1 — Американец

Типы данных: single | double

Выходные аргументы

свернуть все

Ожидаемые цены за составные опции во время 0, возвращенный как NINST-by-1 вектор.

Структура с вектором составных цен опции в каждом узле, возвращенном как древовидная структура.

PriceTree является структурой MATLAB® деревьев, содержащих векторы цен на инструменты и вектор времен наблюдения для каждого узла.

PriceTree.PTree содержит цены.

PriceTree.tObs содержит времена наблюдения.

PriceTree.dObs содержит даты наблюдения.

Введенный в R2015b