仪器价格从希思 - 贾罗 - 莫顿利率树
从数据文件加载HJM树和工具deriv.mat
。
加载deriv.mat;HJMSubSet = instselect(HJMInstSet,“类型”, {“债券”,'帽'});instdisp(HJMSubSet)
指数类型CouponRate结算期限为基础EndMonthRule IssueDate FirstCouponDate LastCouponDate StartDate可以面对名称数量1键0.04 01 - 1月- 2000年01 - 2003年1月- 1南南南南南南南4%债券100 2债券0.04 01 - 1月- 2000年01 - 2004年1月- 2南南南南南南南4%债券50指数类型罢工解决成熟度CapReset基础主体名称数量3帽0.03 01 - 1月- 2000年01 - 2004年1月- 1南南帽30 3%
用hjmprice
以价格手段。
[Price, PriceTree] = hjmprice(HJMTree, hjm子集)
警告:并非所有的现金流都与树对齐。结果是近似值。在hjmprice(第85行)中,Price = 98.7159 97.5280 6.2831 PriceTree = FinObj: 'HJMPriceTree' PBush: {[3x1 double] [3x1x2 double] [3x4x2 double] [3x8 double]
您可以使用树状视图
沿着价格树查看这三种乐器的价格。
树状视图
有关利率期限结构的数据如下:
率= (0.035;0.042147;0.047345;0.052707);ValuationDate =“扬1-2010”;startdate可以= ValuationDate;EndDates = {“2011年1月- 1”;“2012年1月- 1”;“2013年1月- 1”;“2014年1月- 1”};复合= 1;
创建一个RateSpec
。
RS = intenvset ('ValuationDate'ValuationDate,startdate可以的,StartDates,…“EndDates”EndDates,“价格”,价格,“复利”复合)
RS =同场的结构:起始时间:[4x1双]结束时间:[4x1双]结束日期:[4x1双]开始日期:734139值日期:734139基础:0结束月规则:1
创建一个不同期限的阶梯式息票债券组合。
定居=' 01 - 1月- 2010;成熟= {' 01 - 1月- 2011;' 01 - 1月- 2012;' 01 - 1月- 2013;' 01 - 1月- 2014};CouponRate = {{' 01 - 1月- 2011.042;' 01 - 1月- 2012. 05;' 01 - 1月- 20130.06;' 01 - 1月- 201407}};ISet = instbond(优惠券,结算,到期,1);instdisp (ISet)
索引类型CouponRate Settle的成熟期基础EndMonthRule IssueDate FirstCouponDate LastCouponDate的StartDate面1邦德[电池] 01-JAN-2010 01-JAN-2011 1 0 1楠楠楠楠100 2邦德[电池] 01-JAN-2010 01-Jan-2012 1 0 1楠楠楠楠100 3邦德[电池] 01-JAN-2010 01-JAN-2013 1 0 1楠楠楠楠100 4邦德[电池] 01-JAN-2010 01-JAN-2014 1 0 1楠楠楠楠100
构建具有下列数据的树:
波动率= [2;.19;只要;.17];CurveTerm = [1;2;3;4);HJMTimeSpec (ValuationDate, enddate);HJMVolSpec = HJMVolSpec (“比例”,波动性,CurveTerm,1E6);HJMT = hjmtree(HJMVolSpec,RS,HJMTimeSpec)
HJMT =同场的结构:FinObj: 'HJMFwdTree' VolSpec: [1x1 struct] TimeSpec: [1x1 struct] RateSpec: [1x1 struct] tObs: [0 1 23] dObs: [734139 734504 734869 735235] TFwd: {[4x1双][3x1双][2x1双][3]}
计算了息债券的价格。
hjmprice(HJMT, ISet)
PHJM =4×1100.6763 100.7368 100.9266 101.0115
有关利率期限结构的数据如下:
率= (0.035;0.042147;0.047345;0.052707);ValuationDate =“扬1-2010”;startdate可以= ValuationDate;EndDates = {“2011年1月- 1”;“2012年1月- 1”;“2013年1月- 1”;“2014年1月- 1”};复合= 1;
创建一个RateSpec
。
RS = intenvset ('ValuationDate'ValuationDate,startdate可以的,StartDates,…“EndDates”EndDates,“价格”,价格,“复利”复合)
RS =同场的结构:起始时间:[4x1双]结束时间:[4x1双]结束日期:[4x1双]开始日期:734139值日期:734139基础:0结束月规则:1
创建工具组合三个阶梯,可赎回债券和三个阶梯香草债券和显示仪表组合。
定居=' 01 - 1月- 2010;成熟= {' 01 - 1月- 2012;' 01 - 1月- 2013;' 01 - 1月- 2014};CouponRate = {{' 01 - 1月- 2011.042;' 01 - 1月- 2012. 05;' 01 - 1月- 20130.06;' 01 - 1月- 201407}};OptSpec =“电话”;罢工= 100;ExerciseDates =' 01 - 1月- 2011;一年内赎回具有隐含期权债券%= instoptembnd(优惠券,结算,到期,期权,罢工,罢工)…ExerciseDates,“时间”,1);%纯债券ISet = instbond(ISet, CouponRate, Settle, Maturity, 1);instdisp (ISet)
索引类型CouponRate Settle的成熟度OptSpec击ExerciseDates周期为基础EndMonthRule IssueDate FirstCouponDate LastCouponDate的StartDate工作面AmericanOpt 1 OptEmBond [电池] 01-JAN-2010 01-JAN-2012呼叫100 01-JAN-2011 1 0 1楠楠楠楠100 0 2 OptEmBond[电池] 01-JAN-2010 01-JAN-2013呼叫100 01-JAN-2011 1 0 1楠楠楠楠100 0 3 OptEmBond [电池] 01-JAN-2010 01-JAN-2014呼叫100 01-Jan-2011 1 0 1楠楠楠楠100 0索引类型CouponRate Settle的成熟期基础EndMonthRule IssueDate FirstCouponDate LastCouponDate的StartDate工作面4邦德[电池] 01-JAN-2010 01-JAN-2012 1 0 1楠楠楠楠100 5债券[细胞] 01-JAN-2010 01-JAN-2013 1 0 1楠楠楠楠100 6邦德[电池] 01-JAN-2010 01-JAN-2014 1 0 1楠楠楠楠100
构建具有下列数据的树:
波动率= [2;.19;只要;.17];CurveTerm = [1;2;3;4);HJMTimeSpec (ValuationDate, enddate);HJMVolSpec = HJMVolSpec (“比例”,波动性,CurveTerm,1E6);HJMT = hjmtree(HJMVolSpec,RS,HJMTimeSpec)
HJMT =同场的结构:FinObj: 'HJMFwdTree' VolSpec: [1x1 struct] TimeSpec: [1x1 struct] RateSpec: [1x1 struct] tObs: [0 1 23] dObs: [734139 734504 734869 735235] TFwd: {[4x1双][3x1双][2x1双][3]}
价格器械包使用hjmprice
。
hjmprice(HJMT, ISet)
PHJM =6×1100.3682 100.1557 99.9232 100.7368 100.9266 101.0115
前三行对应于价格的阶梯式可赎回债券,最后三个行对应于阶梯香草债券的价格。
有关利率期限结构的数据如下:
率= (0.035;0.042147;0.047345;0.052707);ValuationDate =“2011年1月- 1”;startdate可以= ValuationDate;EndDates = {“2012年1月- 1”;“2013年1月- 1”;“2014年1月- 1”;“2015年1月- 1”};复合= 1;
创建一个RateSpec
。
RS = intenvset ('ValuationDate'ValuationDate,startdate可以的,…StartDates,“EndDates”EndDates,“价格”,价格,“复利”复合)
RS =同场的结构:起始时间:[4x1 double]结束时间:[4x1 double]结束日期:[4x1 double]开始日期:734504 ValuationDate: 734504 Basis: 0结束月规则:1
用以下数据创建一个包含两个范围音符和一个浮动利率音符的工具组合,并显示结果:
扩展= 200;定居=“2011年1月- 1”;成熟=“2014年1月- 1”;%第一音域RateSched(1).Dates = {“2012年1月- 1”;“2013年1月- 1”;“2014年1月- 1”};RateSched(1)。率= [0.045 0.055;0.0525 - 0.0675;0.06 - 0.08);%第二范围注RateSched(2)。日期= {“2012年1月- 1”;“2013年1月- 1”;“2014年1月- 1”};RateSched(2)。率= [0.048 0.059;0.055 - 0.068;0.07 - 0.09);%创建一个InstSetInstSet = instadd ('RangeFloat',利差,结算,到期,利率);增加一张浮动利率票据InstSet = instadd (InstSet,'浮动'(利差,安定,成熟);%显示组合仪器instdisp (InstSet)
索引类型传播Settle的成熟度RateSched FloatReset基础主要EndMonthRule 1 RangeFloat 200 01-JAN-2011 01-JAN-2014 [STRUCT] 1 0 100 1 2 RangeFloat 200 01-JAN-2011 01-JAN-2014 [STRUCT] 1 0 100 1索引类型传播Settle的成熟度FloatReset基础主要EndMonthRule癸FloorRate 3浮球200 01-JAN-2011 01-JAN-2014 1 0 100 1 Inf文件-Inf
构建树的数据如下:
波动率= [2;.19;只要;.17];CurveTerm = [1;2;3;4);MaTree = {“2012年1月- 1”;“2013年1月- 1”;“2014年1月- 1”;“2015年1月- 1”};HJMTS = hjmtimespec(ValuationDate,MaTree);HJMVS = hjmvolspec(“比例”,波动性,CurveTerm,1E6);HJMT = hjmtree(HJMVS,RS,HJMTS)
HJMT =同场的结构:FinObj: 'HJMFwdTree' VolSpec: [1x1 struct] TimeSpec: [1x1 struct] RateSpec: [1x1 struct] tObs: [0 1 23] dObs: [734504 734869 735235 735600] TFwd: {[4x1双][3x1双][2x1双][3]}
价格组合。
Price = hjmprice(HJMT, InstSet)
价格=3×191.1555 90.6656 105.5147
hjmprice
用instswap
创建一个浮浮交换价配合互换hjmprice
。
RateSpec = intenvset (“价格”,.05,'开始日期',今天,'结束日期'datemnth(今天60));= instswap([。02 . 03],今天,datemnth(今天,60),[],[],[],[1]);VolSpec = hjmvolspec (“不变”,0.2);TIMESPEC = hjmtimespec(今日,cfdates(今日,datemnth(今日,60),1));HJMTree = hjmtree(VolSpec,RateSpec,TIMESPEC);hjmprice(HJMTree,IS)
ANS = -4.3220
hjmprice
用instswap
创建多个掉期合约并为其定价hjmprice
。
RateSpec = intenvset (“价格”,.05,'开始日期',今天,'结束日期'datemnth(今天60));= instswap([。03年02),今天,datemnth(今天,60),[],[],[],[1]);是= instswap((200 300),今天,datemnth(今天,60),[],[],[],[0 0]);是= instswap((。08年300],今天datemnth(今天,60),[],[],[],[1 0]);VolSpec = hjmvolspec (“不变”,0.2);TIMESPEC = hjmtimespec(今日,cfdates(今日,datemnth(今日,60),1));HJMTree = hjmtree(VolSpec,RateSpec,TIMESPEC);hjmprice(HJMTree,IS)
ANS =3×14.3220 -4.3220 -0.2701
价格
-每种乐器的价格价格为每台仪器,返回为NINST
——- - - - - -1
向量。利率树的价格是通过逆向动态规划来计算的。如果一种工具不能定价,则a为NaN
在该条目中返回。
相关的单类定价功能有:
bondbyhjm
-从HJM树为债券定价。
capbyhjm
-从HJM树价格帽。
cfbyhjm
-为HJM树中的任意一组现金流定价。
fixedbyhjm
-从HJM树中为固定利率票据定价。
floatbyhjm
-从HJM树中为浮动利率票据定价。
floorbyhjm
-价格地板从HJM树。
optbndbyhjm
- 价格从HJM树债券期权。
optembndbyhjm
- 价格与由HJM树隐含期权债券。
optfloatbybdt
-定价浮动利率票据与期权从一个HJM树。
optemfloatbybdt
-从HJM树中嵌入期权为浮动利率票据定价。
rangefloatbyhjm
- 使用HJM树价格范围浮动音符。
swapbyhjm
- 价格从HJM树交换。
swaptionbyhjm
- 价格从HJM树互换期权。
PriceTree
-仪器价格树状结构仪器价格的树状结构,返回作为MATLAB®包含工具价格和应计利息向量的树结构,以及每个节点的观测时间向量。在PriceTree
:
PriceTree.PTree
包含清洁价格。
PriceTree.AITree
包含应计利息。
PriceTree.tObs
包含了观测时间。
您单击对应于该MATLAB命令的链接:
通过在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。万博1manbetx
您也可以从以下列表中选择一个网站:
选择最佳的网站性能的中国网站(在中国或英文)。其他MathWorks的国家网站都没有从您的位置访问进行了优化。