Вычисление чувствительности инструмента Equity

О чувствительности можно сообщить либо как об изменениях цен в долларах США, либо о процентных изменениях цен. Чувствительности к дельте, гамме и веге, которые вычисляет тулбокс, являются чувствительностью к доллару.

Функции crrsens, eqpsens, ittsens, и sttsens вычислите чувствительность инструментов к дельте, гамме и веге с помощью дерева запасов. Они также опционально возвращают рассчитанную цену для каждого инструмента. Функции чувствительности требуют тех же двух входных параметров, используемых функциями ценообразования (CRRTree и CRRInstSet для CRR, EQPTree и EQPInstSet для EQP, ITTTree и ITTInstSet для ITT и STTTree и STTInstSet для СТТ).

Как и в случае с функциями ценообразования для приборов, необязательный входной параметр Options также разрешено. Вы бы включили этот аргумент, если вы хотите, чтобы функция чувствительности сгенерировала цену для барьерной опции в качестве одного из его выходов и хотите управлять методом, который тулбокс использует для выполнения операции ценообразования. См. "Структура опций ценообразования" или " derivset функция для получения дополнительной информации.

Для зависящих от пути опций (lookback и Asian) дельта и гамма вычисляются конечными различиями в вызовах crrprice, eqpprice, ittprice, и sttprice. Для других опций (опцион запаса, барьер и составная часть) дельта и гамма вычисляются из деревьев CRR, EQP, ITT и STT и соответствующего дерева цен опций. (См. Крисс, Нил, Блэк-Скоулз и за его пределами, стр. 308-312.)

Пример чувствительности CRR

Синтаксис вызова для функции чувствительности:

[Delta, Gamma, Vega, Price] = crrsens(CRRTree, InstSet, Options)

Использование примера данных в deriv.mat, вычислите чувствительность приборов.

load deriv.mat
[Delta, Gamma, Vega, Price] = crrsens(CRRTree, CRRInstSet);

Можно удобно изучить чувствительность и цены, расположив их в одну матрицу.

format bank
All = [Delta, Gamma, Vega, Price]
All =

      0.59            0.04       53.45          8.29
     -0.31            0.03       67.00          2.50
      0.69            0.03       67.00         12.13
     -0.12           -0.01      -98.08          3.32
     -0.40       -45926.32       88.18          7.60
     -0.42      -112143.15      119.19         11.78
      0.60        45926.32       49.21          4.18
      0.82       112143.15       41.71          3.42

Как и в случае с ценами, каждая строка векторов чувствительности соответствует аналогично индексированному инструменту в CRRInstSet. Чтобы просмотреть чувствительность за доллар, разделите каждую чувствительность доллара на соответствующую цену инструмента.

All = [Delta ./ Price, Gamma ./ Price, Vega ./ Price, Price]
All =

       0.07         0.00        6.45        8.29
      -0.12         0.01       26.78        2.50
       0.06         0.00        5.53       12.13
      -0.04        -0.00      -29.51        3.32
      -0.05     -6041.77       11.60        7.60
      -0.04     -9522.02       10.12       11.78
       0.14     10987.98       11.77        4.18
       0.24     32771.92       12.19        3.42

Пример чувствительности ITT

Синтаксис вызова для функции чувствительности:

[Delta, Gamma, Vega, Price] = ittsens(ITTTree, ITTInstSet, Options)

Использование примера данных в deriv.mat, вычислите чувствительность приборов.

load deriv.mat
warning('off', 'fininst:itttree:Extrapolation');
[Delta, Gamma, Vega, Price] = ittsens(ITTTree, ITTInstSet);

Можно удобно изучить чувствительность и цены, расположив их в одну матрицу.

format bank
All = [Delta, Gamma, Vega, Price]
All =

          0.24          0.03         19.35          1.65
         -0.43          0.02         49.69         10.68
          0.35          0.04         12.29          2.41
         -0.07          0.00          6.73          3.23
          0.63     142945.66         38.90          0.54
          0.60      22703.21         68.92          6.18
          0.32    -142945.66         18.48          3.21
          0.67     -22703.21         17.75          6.61

Как и в случае с ценами, каждая строка векторов чувствительности соответствует аналогично индексированному инструменту в ITTInstSet.

Примечание

В этом примере предупреждения экстраполяции выключаются перед вычислением чувствительности, чтобы избежать отображения многих предупреждений в Командном окне при вычислении чувствительности.

Если предупреждения экстраполяции включены

warning('on', 'fininst:itttree:Extrapolation');
и ittsens повторяется, предупреждения экстраполяции прокручиваются по мере выполнения команды:
[Delta, Gamma, Vega, Price] = ittsens(ITTTree, ITTInstSet)
Warning: The option set specified in StockOptSpec was too narrow for the
generated tree.
This made extrapolation necessary. Below is a list of the options that were
outside of the
range of those specified in StockOptSpec.

Option Type: 'call'   Maturity: 01-Jan-2007  Strike=67.2897
Option Type: 'put'   Maturity: 01-Jan-2007  Strike=37.1528
Option Type: 'put'   Maturity: 01-Jan-2008  Strike=27.6066
Option Type: 'put'   Maturity: 31-Dec-2008  Strike=20.5132
Option Type: 'call'   Maturity: 01-Jan-2010  Strike=164.0157
Option Type: 'put'   Maturity: 01-Jan-2010  Strike=15.2424
 
> In itttree>InterpOptPrices (line 680)
  In itttree (line 285)
  In stocktreesens>stocktreevega (line 193)
  In stocktreesens (line 94)
  In ittsens (line 79) 

Delta =

          0.24
         -0.43
          0.35
         -0.07
          0.63
          0.60
          0.32
          0.67


Gamma =

          0.03
          0.02
          0.04
          0.00
     142945.66
      22703.21
    -142945.66
     -22703.21


Vega =

         19.35
         49.69
         12.29
          6.73
         38.90
         68.92
         18.48
         17.75


Price =

          1.65
         10.68
          2.41
          3.23
          0.54
          6.18
          3.21
          6.61

Эти предупреждения являются следствием необходимости экстраполяции, чтобы найти цену опции для узлов дерева. В этом примере набор входов опций был слишком узким для сдвига в узлах дерева, введенных нарушением порядка, используемой для вычисления чувствительности. В результате была необходима экстраполяция для некоторых узлов. Поскольку входные данные довольно близки экстраполированным данным, ошибка, введенная экстраполяцией, довольно низка.

Пример чувствительности STT

Синтаксис вызова для функции чувствительности:

[Delta, Gamma, Vega, Price] = sttsens(STTTree, InstSet, Name, Value)

Использование примера данных в deriv.mat, вычислите чувствительность приборов.

load deriv.mat
[Delta, Gamma, Vega, Price] = sttsens(STTTree, STTInstSet);

Можно удобно изучить чувствительность и цены, расположив их в одну матрицу.

format bank
All = [Delta, Gamma, Vega, Price]
All =

          0.53          0.02         52.90          4.50
         -0.09          0.00         42.44          3.06
          0.47          0.03         25.98          3.80
         -0.06          0.00         -9.53          1.71
          0.23    -186495.25         70.38         11.73
          0.33    -191186.43         92.92         12.91
          0.57     186495.25         25.81          1.69
          0.66     191186.43         37.88          2.62

См. также

| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |

Похожие примеры

Подробнее о