定价选项结构
简介
MATLAB®选项
结构为大多数定价功能提供了额外的输入。的选项
结构
告诉定价函数如何使用利率树来计算工具价格。
确定命令窗口与仪器价格一起显示的附加信息。
告诉定价函数在定价障碍期权中使用哪种方法。
定价期权结构主要用于基于利率的金融衍生品的定价。然而,BarrierMethod
字段的结构允许您使用它来定价股权障碍期权以及。
您可以在可选选项中提供定价选项选项
参数传递给定价函数。(例如,bondbyhjm
,bdtprice
,barrierbycrr
,barrierbyeqp
,或barrierbyitt
.)
默认的结构
如果没有指定选项
参数调用定价函数时,该函数使用默认结构。要观察默认结构,使用derivset
没有任何争论。
选项=衍生集
选项=诊断:'关闭'警告:'对'构造:'对' BarrierMethod: 'unenhanced'
的选项
结构有四个字段:诊断
,警告
,ConstRate
,BarrierMethod
.
诊断领域
诊断
指示如果修改了树,是否显示附加信息。此选项的默认值为“关闭”
.如果诊断
设置为“上”
而且ConstRate
设置为“关闭”
时,定价函数显示为定价目的而生成的树的最后一层的节点数等信息。
预警领域
警告
指示当输入树不足以准确地对工具定价时是否显示警告消息。此选项的默认值为“上”
.如果两个ConstRate
而且警告
是“上”
,如果输入组合中的任何工具在树日期之间有现金流日期,则会显示警告。如果ConstRate
是“关闭”
,警告
是“上”
,如果树被修改为与投资组合中工具的现金流日期相匹配,则会显示警告。
ConstRate领域
ConstRate
指示在树日期之间是否应假定利率为常数。默认情况下,该选项为“上”
这并不是一个无套利假设。因此,定价函数返回树日期之间以现金流为特征的工具的近似价格。仅在树节点上具有现金流的工具不受此选项的影响,并返回精确的(无套利)价格。当ConstRate
是“关闭”
,定价函数查找投资组合中所有工具的现金流日期。如果这些现金流与树的日期不完全一致,就会生成一个新的树并用于定价。这个新树具有与输入树相同的波动率和初始利率规格,但包含每个日期的树节点,其中投资组合中至少有一个工具具有现金流。请记住,树中的节点数量随着树日期的数量呈指数增长。因此,设置ConstRate
“关闭”
极大地增加了计算机的内存和处理器需求。
BarrierMethod领域
当使用二叉树为障碍期权定价时,当树节点与障碍水平不一致时,可能需要许多树步骤才能获得准确的结果。与BarrierMethod
字段时,工具箱提供了一种增强方法,可以提高结果的准确性,而不必使用大型树。
的BarrierMethod
字段可以设置为“unenhanced”
(默认)或的插值函数
.如果你指定“unenhanced”
时,不进行修正计算。否则,如果指定的插值函数
,该工具箱通过在屏障边界上的节点之间进行插值来提供增强的估值。
在最后一个输入参数中指定barrier方法,选项
,函数的barrierbycrr
,barrierbyeqp
,barrierbyitt
,crrprice
,eqpprice
,ittprice
,crrsens
,eqpsens
,或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 =关
现在观察设置的效果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
另请参阅
instasian
|instbarrier
|instcompound
|instlookback
|instoptstock