Оценка структуры опций

Введение

Структура MATLAB® Options предоставляет дополнительный вход большинству функций оценки. Структура Options

  • Говорит функции оценки, как использовать дерево процентной ставки, чтобы вычислить цены на инструменты.

  • Определяет, какую дополнительную информацию Командное окно отображает наряду с ценами на инструменты.

  • Говорит функции оценки который метод использовать в оценке барьерных опционов.

Структура опций оценки, в основном, используется в оценке основанных на процентной ставке финансовых производных. Однако поле BarrierMethod в структуре позволяет вам использовать его в оценке барьерных опционов акции также.

Вы предоставляете оценивать возможности в дополнительном аргументе Options, переданном функции оценки. (См., например, bondbyhjm, bdtprice, barrierbycrr, barrierbyeqp или barrierbyitt.)

Структура по умолчанию

Если вы не задаете аргумент Options в вызове функции оценки, функция использует структуру по умолчанию. Чтобы наблюдать структуру по умолчанию, используйте derivset без любых аргументов.

Options = derivset
 
Options = 
 
    Diagnostics: 'off'
       Warnings: 'on'
      ConstRate: 'on'
  BarrierMethod: 'unenhanced'

Структура Options имеет четыре поля: Diagnostics, Warnings, ConstRate и BarrierMethod.

Поле диагностики

Diagnostics указывает, отображена ли дополнительная информация, если дерево изменяется. Значением по умолчанию для этой опции является 'off'. Если Diagnostics установлен в 'on', и ConstRate установлен в 'off', информация об отображении функций оценки, такая как количество узлов на последнем уровне дерева, сгенерированного для оценки целей.

Поле предупреждений

Warnings указывает, отобразить ли предупреждающие сообщения, когда входное дерево не достаточно для того, чтобы точно оценить инструменты. Значением по умолчанию для этой опции является 'on'. Если и ConstRate и Warnings является 'on', предупреждение выведено, если какой-либо из инструментов во входном портфеле имеет дату потока наличности между древовидными датами. Если ConstRate является 'off', и Warnings является 'on', предупреждение выведено, если дерево изменяется, чтобы совпадать с датами потока наличности на инструментах в портфеле.

Поле ConstRate

ConstRate указывает, должны ли процентные ставки быть приняты постоянные между древовидными датами. По умолчанию этой опцией является 'on', который не является предположением без арбитражей. Таким образом, функции оценки возвращают аппроксимированную цену за инструменты, показывающие потоки наличности между древовидными датами. Инструменты, показывающие потоки наличности только на древовидных узлах, не затронуты этой опцией и возвращают точные цены (без арбитражей). Когда ConstRate является 'off', функция оценки находит даты потока наличности всех инструментов в портфеле. Если эти потоки наличности не выравниваются точно с древовидными датами, новое дерево генерируется и используется для оценки. Это новое дерево показывает ту же энергозависимость и начальные спецификации уровня входного дерева, но содержит древовидные узлы для каждой даты, на которой по крайней мере один инструмент в портфеле имеет поток наличности. Следует иметь в виду, что количество узлов в дереве растет экспоненциально с количеством древовидных дат. Так, установка ConstRate 'off' существенно увеличивает память и требования процессора на компьютер.

Поле BarrierMethod

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

Поле BarrierMethod может быть установлено в 'unenhanced' (значение по умолчанию) или 'interp'. Если вы задаете 'unenhanced', никакое вычисление исправления не используется. В противном случае, если вы задаете 'interp', тулбокс обеспечивает расширенную оценку путем интерполяции между узлами на контурах барьера.

Вы задаете метод барьера в последнем входном параметре, Options, функций barrierbycrr, barrierbyeqp, barrierbyitt, crrprice, eqpprice, ittprice, crrsens, eqpsens или ittsens. Options является структурой, которую вы создаете с функциональным derivset. Используя derivset, вы задаете, использовать ли расширенное или нерасширенный метод.

Для получения дополнительной информации об этом алгоритме, смотрите Дермена, E. i. Kani, Д. Эрдженер и я. Bardhan, “Улучшенные Численные методы для Опций с Барьерами”, Журнал Финансовых аналитиков, (ноябрь -  декабрь 1995), стр 65–74.

Настройка структуры

Настройте Структуру опций передающим именем свойства / пары значения свойства к функции derivset.

Как пример, считайте Структуру опций с ConstRate 'off' и Diagnostics 'on'.

Options = derivset('ConstRate', 'off', 'Diagnostics', 'on')

Options = 

  Diagnostics: 'on'
     Warnings: 'on'
    ConstRate: 'off'
BarrierMethod: 'unenhanced'

Чтобы получить значение определенного свойства от Структуры опций, используйте derivget.

CR = derivget(Options, 'ConstRate')

CR =
Off

Примечание

Используйте derivset и derivget, чтобы создать Структуру опций. Эти функции, как гарантируют, останутся неизменными, в то время как реализация самой структуры может быть изменена в будущем.

Теперь наблюдайте эффекты установки ConstRate 'off'. Получите древовидные даты из дерева HJM.

TreeDates = [HJMTree.TimeSpec.ValuationDate;... 
HJMTree.TimeSpec.Maturity]

TreeDates =

     730486
     730852
     731217
     731582
     731947

datedisp(TreeDates)

01-Jan-2000 
01-Jan-2001 
01-Jan-2002 
01-Jan-2003 
01-Jan-2004 

Все инструменты в HJMInstSet обосновываются 1 января 2000, и у всех есть потоки наличности один раз в год, за исключением второй связи, которая показывает период 2. Эта связь имеет потоки наличности два раза в год с любым потоком наличности, следовательно, падающим между древовидными датами. Можно извлечь эту связь от портфеля, чтобы выдержать сравнение, как его цена отличается установкой ConstRate к 'on' и 'off'.

BondPort = instselect(HJMInstSet, 'Index', 2);

instdisp(BondPort)

Index Type CouponRate Settle      Maturity     Period Basis... 
1     Bond 0.04       01-Jan-2000 01-Jan-2004  2      NaN...

Первая цена связь с ConstRate 'on' (значение по умолчанию).

format long
[BondPrice, BondPriceTree] = hjmprice(HJMTree, BondPort)
Warning: Not all cash flows are aligned with the tree. Result will 
be approximated.

BondPrice =

  97.52801411736377

BondPriceTree = 
FinObj: 'HJMPriceTree'
 PBush: {1x5 cell}
AIBush: {[0]  [1x1x2 double] ... [1x4x2 double]  [1x8 double]}
  tObs: [0 1 2 3 4]

Теперь повторно вычислите цену установки ConstRate 'off' связи.

OptionsNoCR = derivset('ConstR', 'off')

OptionsNoCR = 

Diagnostics: 'off'
   Warnings: 'on'
  ConstRate: 'off'

[BondPriceNoCR, BondPriceTreeNoCR] = hjmprice(HJMTree,... 
BondPort, OptionsNoCR)
Warning: Not all cash flows are aligned with the tree. Rebuilding 
tree.

BondPriceNoCR =

  97.53342361674437

BondPriceTreeNoCR = 

FinObj: 'HJMPriceTree'
 PBush: {1x9 cell}
AIBush: {1x9 cell}
  tObs: [0 0.5000 1 1.5000 2 2.5000 3 3.5000 4]

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

size(BondPriceTree.PBush{end})

ans =

     1 8

size(BondPriceTreeNoCR.PBush{end})

ans =

     1 128

Различия становятся более очевидными путем исследования ценовых деревьев с treeviewer.

treeviewer(BondPriceTree, BondPort)

treeviewer(BondPriceTreeNoCR, BondPort)

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

All =

         -2.76         10.43          0.00         98.72
         -3.56         16.64         -0.00         97.53
       -166.18      13235.59        700.96          0.05
         -2.76         10.43          0.00         98.72
         -0.01          0.03             0        100.55
         46.95       1090.63         14.91          6.28
       -969.85     173969.77       1926.72          0.05
        -76.39        287.00          0.00          3.690

Смотрите также

| | | |

Связанные примеры

Больше о