exponenta event banner

sttsens

Чувствительность инструментов и цены с использованием стандартного триномиального дерева

Описание

пример

[Delta,Gamma,Vega,Price] = sttsens(STTTree,InstSet) для формирования чувствительности инструментов и цен с использованием стандартного триномиального (STT) дерева.

пример

[Delta,Gamma,Vega,Price] = sttsens(___,Name,Value) для генерации чувствительности инструментов и цен с использованием стандартного триномиального (STT) дерева с необязательным аргументом пара имя-значение для Options.

Примеры

свернуть все

Загрузите данные в рабочую область MATLAB ® .

load deriv.mat

STTTree и STTInstSet являются входными аргументами, необходимыми для вызова функции sttprice. Используйте команду instdisp для изучения набора инструментов, содержащихся в переменной STTInstSet.

instdisp(STTInstSet)
Index Type     OptSpec Strike Settle         ExerciseDates  AmericanOpt Name  Quantity
1     OptStock call    100    01-Jan-2009    01-Jan-2011    1           Call1 10      
2     OptStock put      80    01-Jan-2009    01-Jan-2012    0           Put1   5      
 
Index Type    OptSpec Strike Settle         ExerciseDates  AmericanOpt BarrierSpec Barrier Rebate Name     Quantity
3     Barrier call    105    01-Jan-2009    01-Jan-2012    1           ui          115     0      Barrier1 1       
 
Index Type     UOptSpec UStrike USettle        UExerciseDates UAmericanOpt COptSpec CStrike CSettle        CExerciseDates CAmericanOpt Name      Quantity
4     Compound call     95      01-Jan-2009    01-Jan-2012    1            put      5       01-Jan-2009    01-Jan-2011    1            Compound1 3       
 
Index Type     OptSpec Strike Settle         ExerciseDates  AmericanOpt Name      Quantity
5     Lookback call    90     01-Jan-2009    01-Jan-2012    0           Lookback1 7       
6     Lookback call    95     01-Jan-2009    01-Jan-2013    0           Lookback2 9       
 
Index Type  OptSpec Strike Settle         ExerciseDates  AmericanOpt AvgType    AvgPrice AvgDate Name   Quantity
7     Asian call    100    01-Jan-2009    01-Jan-2012    0           arithmetic NaN      NaN     Asian1 4       
8     Asian call    100    01-Jan-2009    01-Jan-2013    0           arithmetic NaN      NaN     Asian2 6       
 

Набор приборов содержит восемь приборов:

  • Два варианта ванили (Call1, Put1)

  • Один вариант барьера (Barrier1)

  • Один составной вариант (Compound1)

  • Два варианта обратного просмотра (Lookback1, Lookback2)

  • Два азиатских варианта (Asian1, Asian2)

Использовать sttsens для расчета цены и чувствительности для каждого инструмента в наборе инструментов.

[Delta,Gamma,Vega,Price] = sttsens(STTTree, STTInstSet)
Delta = 8×1

    0.5267
   -0.0943
    0.4726
   -0.0624
    0.2313
    0.3266
    0.5706
    0.6646

Gamma = 8×1
105 ×

    0.0000
    0.0000
    0.0000
    0.0000
   -1.8650
   -1.9119
    1.8650
    1.9119

Vega = 8×1

   52.8980
   42.4369
   25.9792
   -9.5266
   70.3758
   92.9226
   25.8122
   37.8757

Price = 8×1

    4.5025
    3.0603
    3.7977
    1.7090
   11.7296
   12.9120
    1.6905
    2.6203

Создать RateSpec.

StartDates = 'Jan-1-2015'; 
EndDates = 'Jan-1-2020'; 
Rates = 0.025; 
Basis = 1; 

RateSpec = intenvset('ValuationDate',StartDates,'StartDates',StartDates,...
'EndDates',EndDates,'Rates',Rates,'Compounding',-1,'Basis',Basis)
RateSpec = struct with fields:
           FinObj: 'RateSpec'
      Compounding: -1
             Disc: 0.8825
            Rates: 0.0250
         EndTimes: 5
       StartTimes: 0
         EndDates: 737791
       StartDates: 735965
    ValuationDate: 735965
            Basis: 1
     EndMonthRule: 1

Создать StockSpec.

AssetPrice = 80; 
Sigma = 0.12; 
StockSpec = stockspec(Sigma,AssetPrice)
StockSpec = struct with fields:
             FinObj: 'StockSpec'
              Sigma: 0.1200
         AssetPrice: 80
       DividendType: []
    DividendAmounts: 0
    ExDividendDates: []

Создать STTTree.

TimeSpec = stttimespec(StartDates, EndDates, 20);
STTTree = stttree(StockSpec, RateSpec, TimeSpec)
STTTree = struct with fields:
       FinObj: 'STStockTree'
    StockSpec: [1x1 struct]
     TimeSpec: [1x1 struct]
     RateSpec: [1x1 struct]
         tObs: [1x21 double]
         dObs: [1x21 double]
        STree: {1x21 cell}
        Probs: {1x20 cell}

Определите конвертируемую облигацию. Конвертируемая облигация может называться начиная с 1 января 2016 года с ценой страйка 95.

CouponRate = 0.03;
Settle = 'Jan-1-2015'; 
Maturity = 'April-1-2018'; 
Period = 1;
CallStrike = 95; 
CallExDates = [datenum('Jan-1-2016') datenum('April-1-2018')];
ConvRatio = 1;
Spread = 0.025;

Оцените конвертируемую облигацию с использованием стандартной модели триномиального дерева.

[Price,PriceTree,EqtTre,DbtTree] = cbondbystt(STTTree,CouponRate,Settle,Maturity,ConvRatio,...
'Period',Period,'Spread',Spread,'CallExDates',CallExDates,'CallStrike',CallStrike,'AmericanCall', 1)
Price = 90.2511
PriceTree = struct with fields:
    FinObj: 'TrinPriceTree'
     PTree: {1x21 cell}
      tObs: [1x21 double]
      dObs: [1x21 double]

EqtTre = struct with fields:
    FinObj: 'TrinPriceTree'
     PTree: {1x21 cell}
      tObs: [1x21 double]
      dObs: [1x21 double]

DbtTree = struct with fields:
    FinObj: 'TrinPriceTree'
     PTree: {1x21 cell}
      tObs: [1x21 double]
      dObs: [1x21 double]

Вычислите дельту и гамму конвертируемой связи.

InstSet= instcbond(CouponRate,Settle,Maturity,ConvRatio,'Spread',Spread,...
'CallExDates',CallExDates,'CallStrike',CallStrike,'AmericanCall',1);
[Delta,Gamma] = sttsens(STTTree,InstSet)
Delta = 0.3945
Gamma = 0.0324

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

свернуть все

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

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

Переменная, содержащая коллекцию NINST приборы, указанные как структура. Инструменты разбиваются по типам, и каждый тип может иметь различные поля данных.

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

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

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: [Delta,Gamma,Vega,Price] = sttsens(STTTree,InstSet,'Options',deriv)

Опционы ценообразования деривативов, указанные как пара, разделенная запятыми, состоящая из 'Options' и структура, которая создается с помощью derivset.

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

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

свернуть все

Коэффициент изменения цен инструментов относительно изменения цены акций, возвращаемый в виде NINSTоколо-1 вектор дельт. Дополнительные сведения о дереве заготовки см. в разделе stttree.

Коэффициент изменения дельт инструмента относительно изменения цены акций, возвращаемый в виде NINSTоколо-1 вектор гамм.

Скорость изменения цен инструментов относительно изменения волатильности цены акций, возвращаемой в виде NINSTоколо-1 вектор вегаса. Дополнительные сведения о дереве заготовки см. в разделе stttree.

Ожидаемые цены на каждый инструмент в момент времени 0, возвращено как NINSTоколо-1 вектор. Цены вычисляются посредством динамического программирования в стандартном триномиальном (STT) дереве запасов. Если инструмент не может быть оценен, NaN возвращается в этой записи.

Представлен в R2015b