主要内容

定价选项结构

简介

MATLAB®选项结构为大多数定价功能提供了额外的输入。的选项结构

  • 告诉定价函数如何使用利率树来计算工具价格。

  • 确定命令窗口与仪器价格一起显示的附加信息。

  • 告诉定价函数在定价障碍期权中使用哪种方法。

定价期权结构主要用于基于利率的金融衍生品的定价。然而,BarrierMethod字段的结构允许您使用它来定价股权障碍期权以及。

您可以在可选选项中提供定价选项选项参数传递给定价函数。(例如,bondbyhjmbdtpricebarrierbycrrbarrierbyeqp,或barrierbyitt.)

默认的结构

如果没有指定选项参数调用定价函数时,该函数使用默认结构。要观察默认结构,使用derivset没有任何争论。

选项=衍生集
选项=诊断:'关闭'警告:'对'构造:'对' BarrierMethod: 'unenhanced'

选项结构有四个字段:诊断警告ConstRate,BarrierMethod

诊断领域

诊断指示如果修改了树,是否显示附加信息。此选项的默认值为“关闭”.如果诊断设置为“上”而且ConstRate设置为“关闭”时,定价函数显示为定价目的而生成的树的最后一层的节点数等信息。

预警领域

警告指示当输入树不足以准确地对工具定价时是否显示警告消息。此选项的默认值为“上”.如果两个ConstRate而且警告“上”,如果输入组合中的任何工具在树日期之间有现金流日期,则会显示警告。如果ConstRate“关闭”,警告“上”,如果树被修改为与投资组合中工具的现金流日期相匹配,则会显示警告。

ConstRate领域

ConstRate指示在树日期之间是否应假定利率为常数。默认情况下,该选项为“上”这并不是一个无套利假设。因此,定价函数返回树日期之间以现金流为特征的工具的近似价格。仅在树节点上具有现金流的工具不受此选项的影响,并返回精确的(无套利)价格。当ConstRate“关闭”,定价函数查找投资组合中所有工具的现金流日期。如果这些现金流与树的日期不完全一致,就会生成一个新的树并用于定价。这个新树具有与输入树相同的波动率和初始利率规格,但包含每个日期的树节点,其中投资组合中至少有一个工具具有现金流。请记住,树中的节点数量随着树日期的数量呈指数增长。因此,设置ConstRate“关闭”极大地增加了计算机的内存和处理器需求。

BarrierMethod领域

当使用二叉树为障碍期权定价时,当树节点与障碍水平不一致时,可能需要许多树步骤才能获得准确的结果。与BarrierMethod字段时,工具箱提供了一种增强方法,可以提高结果的准确性,而不必使用大型树。

BarrierMethod字段可以设置为“unenhanced”(默认)或的插值函数.如果你指定“unenhanced”时,不进行修正计算。否则,如果指定的插值函数,该工具箱通过在屏障边界上的节点之间进行插值来提供增强的估值。

在最后一个输入参数中指定barrier方法,选项,函数的barrierbycrrbarrierbyeqpbarrierbyittcrrpriceeqppriceittpricecrrsenseqpsens,或ittsens选项结构是你用函数创建的吗derivset.使用derivset,指定是使用增强的方法还是未增强的方法。

有关该算法的更多信息,请参阅Derman, E., I. Kani, D. Ergener和I. Bardhan,“带障碍的期权的增强数值方法”。金融分析师杂志,(1995年11月至12月),第65-74页。

自定义结构

对象的属性名/属性值对来自定义Options结构derivset函数。

例如,考虑一个Options结构withConstRate“关闭”而且诊断“上”

选项=衍生集(“ConstRate”“关闭”“诊断”“上”
选项=诊断:'on'警告:'on' conate: 'off' BarrierMethod: 'unenhanced'

若要从Options结构中获取特定属性的值,请使用derivget

CR =衍生工具(选项,“ConstRate”
CR =关

请注意

使用derivset而且derivget构造Options结构。这些功能保证保持不变,而结构本身的实现在未来可能会被修改。

现在观察设置的效果ConstRate“关闭”.从HJM树中获取树日期。

TreeDates = [hjmtree . timep . valuationdate;...HJMTree.TimeSpec.Maturity]
TreeDates = 730486 730852 731217 731582 731947
datedisp (TreeDates)
2001年1月1日-2002年1月-2003年1月-2004年1月

所有仪器HJMInstSet所有债券都在2000年1月1日结算,除了第二种债券,它的周期为2。这种债券每年有两次现金流,每一次现金流都在树日期之间。您可以从投资组合中提取该债券,以比较其价格随设置的差异ConstRate“上”而且“关闭”

BondPort = instselect(HJMInstSet,“指数”2);instdisp (BondPort)
结算到期日基准…1 Bond 0.04 01-Jan-2000 01-Jan-2004 2 NaN…

首先为债券定价ConstRate“上”(默认)。

格式[BondPrice, BondPriceTree] = hjmprice(HJMTree, BondPort)
警告:并不是所有的现金流都与树一致。结果将被近似。BondPrice = 97.52801411736377 BondPriceTree = FinObj: 'HJMPriceTree' PBush: {1x5 cell} AIBush: {[0] [1x1x2 double]…[1x4x2 double] [1x8 double]} tObs: [0 1 2 3 4]

现在重新计算债券设置的价格ConstRate“关闭”

OptionsNoCR =衍生集(“若干”“关闭”
OptionsNoCR =诊断:'关闭'警告:'打开'构造:'关闭'
[BondPriceNoCR, BondPriceTreeNoCR] = hjmprice(HJMTree,...BondPort OptionsNoCR)
警告:并不是所有的现金流都与树一致。重建树。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]

正如上一个警告中所指出的,由于债券的现金流与树日期不一致,生成了一个新的树来为债券定价。这种定价方法返回更准确的结果,因为它保证了该过程是无套利的。它还需要更长的计算时间,需要更多的内存。的价格树结构的字段表示增加的内存使用量。BondPriceTree.tObs只有五个元素,而BondPriceTreeNoCR.tObs有九个。虽然这看起来不是一个很大的差异,但它对最后一个节点中的状态数量有很大的影响。

大小(BondPriceTree.PBush{结束})
Ans = 1 8
大小(BondPriceTreeNoCR.PBush{结束})
Ans = 1 128

通过检查价格树,差异变得更加明显树状视图

treeview (BondPriceTree BondPort)

treeview (BondPriceTreeNoCR BondPort)

All = [Delta ./ Price, Gamma ./ Price, Vega ./ Price, Price]
全部= -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

另请参阅

||||

相关的例子

更多关于