主要内容

用树为股票衍生品定价

计算工具的价格

投资组合定价函数crrprice,设备价格,ittprice根据二叉股票价格树、隐含三叉树或标准三叉树计算任何一组支持工具的价格金宝app。这些功能可以为下列仪器类型定价:

  • 普通股票期权

    • 美国和欧洲的看跌期权和看涨期权

  • 奇异期权

    • 亚洲

    • 障碍

    • 复合

    • Lookback

    • 股票期权(百慕大看跌和买入时间表)

调用函数的语法crrprice是:

[Price, PriceTree] = crrprice(CRRTree, InstSet, Options)

的语法设备价格是:

[Price, PriceTree] = eqpprice(EQPTree, InstSet, Options)

的语法ittprice是:

Price = ittprice(ITTTree, ITTInstSet, Options)

的语法标准价格是:

[Price, PriceTree] = sttprice(STTTree, InstSet, Name, Value)

这些函数需要两个输入参数:股票价格树和工具集,InstSet,并允许第三个可选参数。

所需的参数

CRRTreeCRR股票价格树创建使用crrtreeEQPTree等概率股票价格树是用什么创建的eqptreeITTTreeITT的股权价格树是用什么创建的itttreeSTTTree标准的三项式股票价格树是用什么创建的stttree.看到构建二叉树建造隐含的三项式树学习如何创建这些结构。

InstSet是一个结构,它表示使用该模型独立定价的一组工具。

可选参数

你可以输入第三个可选参数,选项,在为障碍期权定价时使用。有关详细信息,请参阅期权定价结构

这些定价函数在内部对仪器进行分类,并为每种仪器类型调用相应的单独仪器定价函数。CRR的定价函数是asianbycrr,barrierbycrr,compoundbycrr,lookbackbycrr,optstockbycrr.EQP、ITT和STT定价也有类似的功能。也可以直接使用这些函数来计算同类型成套仪器的价格。有关这些单独函数的进一步信息,请参阅参考页面。

使用CRR计算价格

考虑下面的示例,它使用mat文件中的投资组合和股票价格数据deriv.mat包含在工具箱中。将数据加载到MATLAB®工作区。

负载deriv.mat

使用MATLAB命令显示从mat文件加载的变量列表。

名称大小字节类属性BDTInstSet 1x1 27344 struct BDTTree 1x1 7322 struct BKInstSet 1x1 27334 struct BKTree 1x1 8532 struct crinstset 1x1 21066 struct CRRTree 1x1 7086 struct EQPInstSet 1x1 21066 struct EQPTree 1x1 7086 struct HJMInstSet 1x1 27336 struct HJMTree 1x1 8334 struct HWInstSet 1x1 27334 struct HWTree 1x1 8532 structITTInstSet 1x1 21070结构ITTTree 1x1 12660结构STTInstSet 1x1 21070结构STTTree 1x1 7782结构ZeroInstSet 1x1 17458结构ZeroRateSpec 1x1 2152结构

CRRTreeCRRInstSet是调用函数所需的输入参数吗crrprice

使用instdisp检查变量中包含的一组仪器CRRInstSet

instdisp (CRRInstSet)
指数类型OptSpec罢工结算执行日期美国专利名称数量1 OptStock call 105 01-Jan-2003 01-Jan-2005 1 call 110 2 OptStock put 105 01-Jan-2003 01-Jan-2006 0 Put1 5指数类型OptSpec罢工结算执行日期美国专利Barrier美国专利Barrier出口退税名称数量3 Barrier call 105 01-Jan-2003 01-Jan-2006 1 ui 102 0 Barrier 1索引类型UOptSpec USETLE UExerciseDates UAmericanOpt COptSpec CStrike CSettle CExerciseDates CAmericanOpt Name QUOTE 4复合呼叫130 01-Jan-2003 01-Jan-2006 1 put 5 01-Jan-2003 01-01-2005 1复合呼叫5 01-Jan-2003 01-01-2005 1复合呼叫1 3索引类型OptSpec罢工结算执行日期AMERCICANOPT Name 5回望呼叫115 01-Jan-2003 01-Jan-2006 0回望1回溯电话11501-Jan-2003 01-Jan-2007回溯指数类型OptSpec罢工结算练习日期AmericanOpt AvgType AvgPrice AvgDate名称数量7亚洲put 11001-Jan-2003 01-Jan-2006 0算术南亚1 4 8亚洲put 11001-Jan-2003 01-Jan-2007 0算术南亚2 6

笔记

由于考虑到空间,上面的复合选项(指数4)已被压缩以适应页面。的instdisp命令显示计算机屏幕上的所有复合选项字段。

整套仪器包括八个仪器:

  • 两种选择(Call1,Put1)

  • 一个障碍选项(Barrier1)

  • 一个复合选项(Compound1)

  • 两个回溯选项(Lookback1,Lookback2)

  • 两个亚洲选择(Asian1,Asian2)

每个工具都有一个对应的索引,该索引标识了由返回的价格向量中的工具价格crrprice

现在使用crrprice计算仪器组中每台仪器的价格。

Price = crrprice(CRRTree, CRRInstSet)
价格= 8.2863 2.5016 12.1272 3.3241 7.6015 11.7772 4.1797 3.4219

使用EQP计算价格

将数据加载到MATLAB工作区中。

负载deriv.mat

使用MATLAB命令显示从mat文件加载的变量列表。

名称大小字节类属性BDTInstSet 1x1 27344 struct BDTTree 1x1 7322 struct BKInstSet 1x1 27334 struct BKTree 1x1 8532 struct crinstset 1x1 21066 struct CRRTree 1x1 7086 struct EQPInstSet 1x1 21066 struct EQPTree 1x1 7086 struct HJMInstSet 1x1 27336 struct HJMTree 1x1 8334 struct HWInstSet 1x1 27334 struct HWTree 1x1 8532 structITTInstSet 1x1 21070结构ITTTree 1x1 12660结构STTInstSet 1x1 21070结构STTTree 1x1 7782结构ZeroInstSet 1x1 17458结构ZeroRateSpec 1x1 2152结构

EQPTreeEQPInstSet调用函数需要输入参数吗设备价格

使用命令instdisp检查变量中包含的一组仪器EQPInstSet

instdisp (EQPInstSet)
指数类型OptSpec罢工结算执行日期美国专利名称数量1 OptStock call 105 01-Jan-2003 01-Jan-2005 1 call 110 2 OptStock put 105 01-Jan-2003 01-Jan-2006 0 Put1 5指数类型OptSpec罢工结算执行日期美国专利Barrier美国专利Barrier出口退税名称数量3 Barrier call 105 01-Jan-2003 01-Jan-2006 1 ui 102 0 Barrier 1索引类型UOptSpec USETLE UExerciseDates UAmericanOpt COptSpec CStrike CSettle CExerciseDates CAmericanOpt Name QUOTE 4复合呼叫130 01-Jan-2003 01-Jan-2006 1 put 5 01-Jan-2003 01-01-2005 1复合呼叫5 01-Jan-2003 01-01-2005 1复合呼叫1 3索引类型OptSpec罢工结算执行日期AMERCICANOPT Name 5回望呼叫115 01-Jan-2003 01-Jan-2006 0回望1回溯电话11501-Jan-2003 01-Jan-2007回溯指数类型OptSpec罢工结算练习日期AmericanOpt AvgType AvgPrice AvgDate名称数量7亚洲put 11001-Jan-2003 01-Jan-2006 0算术南亚1 4 8亚洲put 11001-Jan-2003 01-Jan-2007 0算术南亚2 6>> instdisp(EQPInstSet) Index Type OptSpec Strike Settle ExerciseDates AmericanOpt Name Quantity 1 OptStock call 105 01-Jan-2003 01-Jan-2005 1 Call1 10 2 OptStock put 105 01-Jan-2003 01-Jan-2006 0 Put1 5 Index Type OptSpec Strike Settle ExerciseDates AmericanOpt BarrierSpec Barrier Rebate Name Quantity 3 Barrier call 105 01-Jan-2003 01-Jan-2006 1 ui 102 0 Barrier1 1 Index Type UOptSpec UStrike USettle UExerciseDates UAmericanOpt COptSpec CStrike CSettle CExerciseDates CAmericanOpt Name Quantity 4 Compound call 130 01-Jan-2003 01-Jan-2006 1 put 5 01-Jan-2003 01-Jan-2005 1 Compound1 3 Index Type OptSpec Strike Settle ExerciseDates AmericanOpt Name Quantity 5 Lookback call 115 01-Jan-2003 01-Jan-2006 0 Lookback1 7 6 Lookback call 115 01-Jan-2003 01-Jan-2007 0 Lookback2 9 Index Type OptSpec Strike Settle ExerciseDates AmericanOpt AvgType AvgPrice AvgDate Name Quantity 7 Asian put 110 01-Jan-2003 01-Jan-2006 0 arithmetic NaN NaN Asian1 4 8 Asian put 110 01-Jan-2003 01-Jan-2007 0 arithmetic NaN NaN Asian2 6

笔记

由于考虑到空间,上面的复合选项(指数4)已被压缩以适应页面。的instdisp命令显示计算机屏幕上的所有复合选项字段。

整套仪器包括八个仪器:

  • 两种选择(Call1,Put1)

  • 一个障碍选项(Barrier1)

  • 一个复合选项(Compound1)

  • 两个回溯选项(Lookback1,Lookback2)

  • 两个亚洲选择(Asian1,Asian2)

每个工具都有一个对应的索引,该索引标识了由返回的价格向量中的工具价格设备价格

现在使用设备价格计算仪器组中每台仪器的价格。

Price = eqpprice(EQPTree, EQPInstSet)
价格= 8.4791 2.6375 12.2632 3.5091 8.7941 12.9577 4.7444 3.9178

使用ITT计算价格

考虑下面的示例,它使用mat文件中的投资组合和股票价格数据deriv.mat包含在工具箱中。将数据加载到MATLAB工作区中。

负载deriv.mat

使用MATLAB命令显示从mat文件加载的变量列表。

名称大小字节类属性BDTInstSet 1x1 27344 struct BDTTree 1x1 7322 struct BKInstSet 1x1 27334 struct BKTree 1x1 8532 struct crinstset 1x1 21066 struct CRRTree 1x1 7086 struct EQPInstSet 1x1 21066 struct EQPTree 1x1 7086 struct HJMInstSet 1x1 27336 struct HJMTree 1x1 8334 struct HWInstSet 1x1 27334 struct HWTree 1x1 8532 structITTInstSet 1x1 21070结构ITTTree 1x1 12660结构STTInstSet 1x1 21070结构STTTree 1x1 7782结构ZeroInstSet 1x1 17458结构ZeroRateSpec 1x1 2152结构

ITTTreeITTInstSet调用函数需要输入参数吗ittprice.使用命令instdisp检查变量中包含的一组仪器ITTInstSet

instdisp (ITTInstSet)
索引类型OptSpec罢工解决ExerciseDates AmericanOpt名称数量1 OptStock拨打95 01 - 1月- 2006年12月31日- 2008 1 Call1 10 2 OptStock把80 01 - 1月- 2006年01 - 1月- 2010 0 Put1 4指数类型OptSpec罢工解决ExerciseDates AmericanOpt BarrierSpec屏障退税名称数量3屏障拨打85 01 - 1月- 2006年12月31日- ui - 2008 115 0 Barrier1 1索引Type UOptSpec UStrike USettle UExerciseDates UAmericanOpt COptSpec CStrike CSettle CExerciseDates CAmericanOpt Name Quantity 4 Compound call 99 01-Jan-2006 01-Jan-2010 1 put 5 01-Jan-2006 01-Jan-2010 1 Compound1 3 Index Type OptSpec Strike ExerciseDates AmericanOpt Name Quantity 5 Lookback call 85 01-Jan-2006 01-Jan-2008 0 Lookback1 7 6回看电话85 01- 1- 2006 01- 1- 2010 0 Lookback2 9索引类型OptSpec Strike Settle ExerciseDates AmericanOpt AvgType AvgPrice AvgDate Name Quantity 7 Asian call 55 01- 1- 2006 01- 1- 2008 0 arithmetic NaN Asian1 5 8 Asian call 55 01- 1- 2006 01- 1- 2010 0 arithmetic NaN Asian2 7

整套仪器包括八个仪器:

  • 两种选择(Call1,Put1)

  • 一个障碍选项(Barrier1)

  • 一个复合选项(Compound1)

  • 两个回溯选项(Lookback1,Lookback2)

  • 两个亚洲选择(Asian1,Asian2)

每个工具都有一个对应的索引,该索引标识了由返回的价格向量中的工具价格ittprice

现在使用ittprice计算仪器组中每台仪器的价格。

价格=ittprice(ITTTREY,ITTINSSET)
价格= 1.6506 10.6832 2.4074 3.2294 0.5426 6.1845 3.2052 6.6074

使用STT计算价格

考虑下面的示例,它使用mat文件中的投资组合和股票价格数据deriv.mat包含在工具箱中。将数据加载到MATLAB工作区中。

负载deriv.mat

使用MATLAB命令显示从mat文件加载的变量列表。

名称大小字节类属性BDTInstSet 1x1 27344 struct BDTTree 1x1 7322 struct BKInstSet 1x1 27334 struct BKTree 1x1 8532 struct crinstset 1x1 21066 struct CRRTree 1x1 7086 struct EQPInstSet 1x1 21066 struct EQPTree 1x1 7086 struct HJMInstSet 1x1 27336 struct HJMTree 1x1 8334 struct HWInstSet 1x1 27334 struct HWTree 1x1 8532 structITTInstSet 1x1 21070结构ITTTree 1x1 12660结构STTInstSet 1x1 21070结构STTTree 1x1 7782结构ZeroInstSet 1x1 17458结构ZeroRateSpec 1x1 2152结构

STTTreeSTTInstSet调用函数需要输入参数吗标准价格.使用命令instdisp检查变量中包含的一组仪器STTInstSet

instdisp (STTInstSet)
指数类型OptSpec罢工结算执行日期美国OPT名称数量1 OptStock call 100 01-Jan-2009 01-Jan-2011 1 call 110 2 OptStock put 80 01-Jan-2009 01-Jan-2012 0 Put1 5指数类型OptSpec罢工结算执行日期美国OPT Barrier SPEC Barrier退税名称数量3 Barrier call 105 01-Jan-2009 01-Jan-2012 1 ui 115 0 Barrier 1 1 1指数类型UOptSpec USETLE UExerciseDates UAmericanOpt COptSpec CStrike CSettle CExerciseDates CAmericanOpt Name QUOTE 4复合呼叫95 01-Jan-2009 01-Jan-2012 1 put 5 01-Jan-2009 01-2011 1 1复合呼叫1 3索引类型OptSpec罢工结算执行日期MERICANOPT Name 5回望呼叫90 01-Jan-2009 01-Jan-2012 0回望7 6回溯呼叫95 01-Jan-2009 01-Jan-2013 0回溯2 9索引类型OptSpec罢工结算练习日期AmericanOpt AvgType AvgPrice AvgDate姓名数量7亚洲呼叫100 01-Jan-2009 01-Jan-2012 0算术南亚1 4 8亚洲呼叫100 01-Jan-2009 01-Jan-2013 0算术南亚2 6

整套仪器包括八个仪器:

  • 两种选择(Call1,Put1)

  • 一个障碍选项(Barrier1)

  • 一个复合选项(Compound1)

  • 两个回溯选项(Lookback1,Lookback2)

  • 两个亚洲选择(Asian1,Asian2)

每个工具都有一个对应的索引,该索引标识了由返回的价格向量中的工具价格标准价格

现在使用标准价格计算仪器组中每台仪器的价格。

value = sttprice(sttree, STTInstSet)
价格=4.5025 3.0603 3.7977 1.7090 11.7296 12.9120 1.6905 2.6203

从定价函数检查产出

输出向量中的价格价格对应于观测时刻0的价格(tObs=0),它被定义为权益树的估值日期。内仪表标度价格与中的索引相同InstSet

在CRR例子中,价格向量与仪器按这个顺序对应。

InstNames = instget (CRRInstSet,的字段名,“姓名”)
InstNames = Call1 Put1 Barrier1 Compound1 Lookback1 Lookback2 Asian1 Asian2

所以,在价格向量,第四个元素,3.3241,表示第四种工具的价格(Compound1),第六个元素,11.7772,代表第六种乐器的价格(Lookback2).

在ITT的例子中,价格价格向量与仪器按这个顺序对应。

InstNames = instget (ITTInstSet,的字段名,“姓名”)
InstNames = Call1 Put1 Barrier1 Compound1 Lookback1 Lookback2 Asian1 Asian2

所以,在价格向量,第一个元素,1.650,表示第一个仪器的价格(Call1),第八元素6.607表示第八种乐器的价格(Asian2).

CRR的价格树输出

如果你调用一个带有两个输出参数的定价函数,例如:

[Price,PriceTree]=crrprice(CRRTEE,CRRInstSet)

您将生成价格树结构以及价格信息。

这个价格树结构PriceTree持有所有价格信息。

PriceTree=FinObj:'BinPriceTree'PTree:{[8x1 double][8x2 double][8x3 double][8x4 double][8x5 double]}tObs:[0 1 2 3 4]dObs:[731582 731947 732313 732678 733043]

这个结构的第一个领域,菲诺布,表示此结构表示价格树。第二个领域,,是树的每个节点中持有仪器价格的树。最后是第三和第四个字段,强加于人,表示各层的观测时间和日期,以复利周期为单位。

使用命令行界面,您可以直接进行检查PriceTree。树,领域内PriceTree结构,它包含每个状态的价格树和价格向量。第一个节点表示tObs=0,对应于估价日期。

PriceTree。PTree {1}
Ans = 8.2863 2.5016 12.1272 3.3241 7.6015 11.7772 4.1797 3.4219

通过这个界面,你可以观察投资组合中所有工具在特定时间的价格。

这个函数设备价格还返回一个价格树,您可以以同样的方式检查它。

ITT的价格树输出

如果你调用一个带有两个输出参数的定价函数,例如:

[Price, PriceTree] = ittprice(ITTTree, ITTInstSet)

您将生成价格树结构以及价格信息。

这个价格树结构PriceTree持有所有价格信息。

PriceTree = FinObj: 'TrinPriceTree' PTree: {[8x1 double] [8x3 double] [8x5 double] [8x7 double] [8x9 double]} tObs: [0 1 2 34] dObs: [732678 733043 733408 733773 734139]

这个结构的第一个领域,菲诺布,表示该结构表示三项式价格树。第二个字段,是树中每个节点上设备的价格。最后,第三和第四个字段,强加于人,表示各层的观测时间和日期,以复利周期为单位。

使用命令行界面,您可以直接进行检查PriceTree。树,领域内PriceTree结构,它包含每个状态的价格树和价格向量。第一个节点表示tObs=0,对应于估价日期。

PriceTree。PTree {1}
Ans = 1.6506 10.6832 2.4074 3.2294 0.5426 6.1845 3.2052 6.6074

通过这个界面,你可以观察投资组合中所有工具在特定时间的价格。

回顾和亚洲股票期权树的价格

回看选项和亚洲选项是依赖路径的,因此,除了根节点之外,对任何节点都没有唯一的价格。因此,价格树中的回看和亚洲选项的相应值被设置为,唯一的例外是根节点。如果您检查第二个节点(则= 1的CRR价格树:

PriceTree。PTree {2}
ans = 11.9176 0 0.9508 7.1914 16.4600 2.6672 2.5896 5.0000 NaN NaN NaN NaN NaN

检查第二个节点中的价格(则= 1)的ITT价格树显示:

PriceTree。PTree {2}
ans=3.9022 0 6.3736 13.3743 22.1915 5.6914 0 0 2.7663 3.8594 5.0000南南

股权衍生树的图形表示

你可以使用这个函数树状视图要显示树的图形表示,允许您交互地检查树的节点上的价格和费率,直到成熟为止。CRR、EQP和LR树的图形表示相当于Black-Derman-Toy (BDT)树,因为它们都是二叉重组树。ITT树和STT树的图形表示与Hull-White树(HW)等价,因为它们都是三项式重组树。看到树的图形表示的使用概述树状视图使用CRR树、EQP树、LR树、ITT树和STT树及其相应的期权价格树。遵循BDT树的说明。

另见

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

相关实例

更多关于