cbondbycrr
用CRR二叉树为可转换债券定价
语法
描述
[
利用信用利差或考虑债券违约风险,从CRR二叉树为可转换债券定价。价格
,PriceTree
,EquityTree
,DebtTree
) = cbondbycrr (___,名称,值
)
为了将风险以信用价差的形式合并(Tsiveriotis-Fernandes方法),使用可选的名称-值对输入参数传播
.要将默认风险合并到算法中,请指定可选的名称-值对输入参数DefaultProbability
而且RecoveryRate
.
例子
利用CRR树为可转换债券定价
使用以下数据为可转换债券的利率期限结构定价:
startdate可以= datetime(2014、1、1);EndDates = datetime(2015、1、1);率= 0.1;基础= 1;
创建RateSpec
而且StockSpec
.
σ= 0.3;价格= 50;RateSpec = intenvset (“ValuationDate”startdate可以,startdate可以的startdate可以,“EndDates”EndDates,...“利率”率,“复合”, 1“基础”基础)
RateSpec =结构体字段:FinObj: 'RateSpec'复合:-1 Disc: 0.9048 Rates: 0.1000 EndTimes: 1 StartTimes: 0 EndDates: 735965 StartDates: 735600 ValuationDate: 735600 Basis: 1 EndMonthRule: 1
StockSpec = StockSpec(σ,价格)
StockSpec =结构体字段:FinObj: 'StockSpec' Sigma: 0.3000资产价格:50股息类型:[]股息金额:0 ex股息日期:[]
为权益创建CRR树。
解决= datetime(2014、1、1);成熟= datetime(2014、10、1);NumSteps = 3;TimeSpec = crrtimespec(结算、成熟度、NumSteps);一般= crrtree (StockSpec RateSpec TimeSpec)
一般=结构体字段:FinObj: 'BinStockTree' Method: 'CRR' StockSpec: [1x1 struct] TimeSpec: [1x1 struct] RateSpec: [1x1 struct] tObs: [0 0.2491 0.4982 0.7473] dObs: [735600 735691 735782 735873] STree:{[50][58.0757 43.0472][67.4558 50.000 37.0613][78.3509…} upprobes: [0.5465 0.5465 0.5465]
对可转换债券进行定义和定价。
CouponRate = 0;时间= 1;ConvRatio = 2;CallExDates = datetime(2014、10、1);CallStrike = 115;AmericanCall = 1;传播= 0.05;(价格、PriceTree EqtTree DbtTree] = cbondbycrr(一般,CouponRate解决、成熟度、ConvRatio...“时间”期,“传播”传播,“CallExDates”CallExDates,“CallStrike”CallStrike,“AmericanCall”AmericanCall)
价格= 104.9490
PriceTree =结构体字段:FinObj: 'BinPriceTree' PTree: {1x4 cell} tObs: [0 0.2491 0.4982 0.7473] dObs: [735600 735691 735782 735873]
EqtTree =结构体字段:FinObj: 'BinPriceTree' PTree:{[76.5211][116.1515 33.0103][134.9117 61.9209 0][156.7019…]} tObs: [0 0.2491 0.4982 0.7473] dObs: [735600 735691 735782 735873]
DbtTree =结构体字段:FinObj: 'BinPriceTree' PTree: {[28.4278] [0 65.0790] [0 43.6821 96.3327] [0 0 100.0000 100.0000]} tObs: [0 0.2491 0.4982 0.7473] dObs: [735600 735691 735782 735873]
利用CRR树对可转换债券进行定价并考虑违约风险DefaultProbability
而且RecoveryRate
创建利率期限结构RateSpec
.
startdate可以=“2014年1月- 1”;EndDates =“2016年1月- 1”;率= 0.025;基础= 1;RateSpec = intenvset (“ValuationDate”startdate可以,startdate可以的,...startdate可以,“EndDates”EndDates,“利率”率,“复合”, 1“基础”基础)
RateSpec =结构体字段:FinObj: 'RateSpec'复合:-1 Disc: 0.9512 Rates: 0.0250 EndTimes: 2 StartTimes: 0 EndDates: 736330 StartDates: 735600 ValuationDate: 735600 Basis: 1 EndMonthRule: 1
创建StockSpec
.
AssetPrice = 110;σ= 0.22;Div = 0.02;AssetPrice StockSpec = StockSpec(σ,“连续”Div)
StockSpec =结构体字段:FinObj: 'StockSpec' Sigma: 0.2200 AssetPrice: 110 DividendType: {'continuous'} dividendamount: 0.0200 ExDividendDates: []
为权益创建CRR树。
解决=“1 - 1月- 2014”;成熟=“2014年1 - 10月-”;NumSteps = 3;TimeSpec = crrtimespec(结算、成熟度、NumSteps);一般= crrtree (StockSpec RateSpec TimeSpec)
一般=结构体字段:FinObj: 'BinStockTree' Method: 'CRR' StockSpec: [1x1 struct] TimeSpec: [1x1 struct] RateSpec: [1x1 struct] tObs: [0 0.2491 0.4982 0.7473] dObs: [735600 735691 735782 735873] STree: {1x4 cell} upprobe: [0.4782 0.4782 0.4782]
使用可选债券定义和定价可转换债券DefaultProbability
而且RecoveryRate
参数。
CouponRate = 0;时间= 1;ConvRatio = 2;CallExDates =“2014年1 - 10月-”;CallStrike = 115;AmericanCall = 1;DefaultProbability = .30;RecoveryRate = .82;(价格、PriceTree EqtTree DbtTree] = cbondbycrr(一般,CouponRate解决、成熟度、ConvRatio...“时间”期,“CallExDates”CallExDates,“CallStrike”CallStrike,“AmericanCall”AmericanCall,...“DefaultProbability”DefaultProbability,“RecoveryRate”RecoveryRate)
价格= 220
PriceTree =结构体字段:FinObj: 'BinPriceTree' PTree: {[220] [245.5317 197.1233] [274.0263 220.0000 176.6254] [1x4 double]} tObs: [0 0.2491 0.4982 0.7473] dObs: [735600 735691 735782 735873]
EqtTree =结构体字段:FinObj: 'BinPriceTree' PTree: {[220] [245.5317 197.1233] [274.0263 220.0000 176.6254] [1x4 double]} tObs: [0 0.2491 0.4982 0.7473] dObs: [735600 735691 735782 735873]
DbtTree =结构体字段:FinObj: 'BinPriceTree' PTree: {[0] [0 0] [0 00] [0 00]} tObs: [0 0.2491 0.4982 0.7473] dObs: [735600 735691 735782 735873]
输入参数
CRRTree
- - - - - -股票树结构
结构
库存树结构,由使用规定crrtree
.
数据类型:结构体
CouponRate
- - - - - -债券票面利率
积极的十进制值
债券票面利率,指定为NINST
——- - - - - -1
十进制年率或NINST
——- - - - - -1
单元格数组,其中每个元素都是NumDates
——- - - - - -2
单元阵列。的第一列NumDates
——- - - - - -2
单元格数组是日期,第二列是相关的利率。日期表示票面利率有效的最后一天。
数据类型:双
|细胞
解决
- - - - - -结算日期
datetime数组|字符串数组|日期特征向量
结算日期,指定为NINST
——- - - - - -1
Vector,使用日期时间数组、字符串数组或日期字符向量。
请注意
的解决
每只可转债的日期都设为ValuationDate
CRR存量树。债券的论点,解决
,将被忽略。
要支持现有代码,cbondbycrr
也接受序列号作为输入,但不建议使用。
成熟
- - - - - -到期日
datetime数组|字符串数组|日期特征向量
到期日期,指定为NINST
——- - - - - -1
Vector,使用日期时间数组、字符串数组或日期字符向量。
要支持现有代码,cbondbycrr
也接受序列号作为输入,但不建议使用。
ConvRatio
- - - - - -可转换为一种债券的股份数目
负的数量
可转换为一种债券的股份数目,指定为NINST
——- - - - - -1
用一个非负数。
数据类型:双
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名-值参数必须出现在其他参数之后,但对的顺序并不重要。
在R2021a之前,名称和值之间用逗号隔开,并括起来的名字
在报价。
例子:[Price,PriceTree,EquityTree,DebtTree] = cbondbycrr(CRRT,CouponRate,结算,到期,ConvRatio,'Spread',Spread,'CallExDates',CallExDates,'CallStrike',CallStrike,'AmericanCall',1)
传播
- - - - - -高于参考汇率的基点数
0
(默认)|向量
参考汇率上的基点数,用逗号分隔的对表示,由“传播”
和一个NINST
——- - - - - -1
向量。
请注意
为了将风险以信用价差的形式合并(Tsiveriotis-Fernandes方法),使用可选输入参数传播
.要将默认风险合并到算法中,请指定可选的输入参数DefaultProbability
而且RecoveryRate
.不要使用传播
与DefaultProbability
而且RecoveryRate
.
数据类型:双
期
- - - - - -每年的优惠券
2
每年(默认)|向量
每年的优惠券,以逗号分隔的对所组成“时间”
和一个NINST
——- - - - - -1
向量。
数据类型:双
IssueDate
- - - - - -债券发行日期
datetime数组|字符串数组|日期特征向量
债券发行日期,以逗号分隔的对所组成“IssueDate”
和一个NINST
——- - - - - -1
Vector,使用日期时间数组、字符串数组或日期字符向量。
要支持现有代码,cbondbycrr
也接受序列号作为输入,但不建议使用。
FirstCouponDate
- - - - - -首次券息日期不规则
datetime数组|字符串数组|日期特征向量
不规则的第一次优惠券日期,指定为逗号分隔的对“FirstCouponDate”
和一个NINST
——- - - - - -1
Vector,使用日期时间数组、字符串数组或日期字符向量。
要支持现有代码,cbondbycrr
也接受序列号作为输入,但不建议使用。
LastCouponDate
- - - - - -最后优惠券日期不固定
datetime数组|字符串数组|日期特征向量
不规则的最后优惠券日期,指定为逗号分隔的一对,由“LastCouponDate”
和一个NINST
——- - - - - -1
Vector,使用日期时间数组、字符串数组或日期字符向量。
要支持现有代码,cbondbycrr
也接受序列号作为输入,但不建议使用。
脸
- - - - - -票面价值
One hundred.
(默认)|非负价值|非负值的单元格数组
面值,指定为逗号分隔的对,由“脸”
和一个NINST
——- - - - - -1
非负面值的向量NINST
——- - - - - -1
单元格数组,其中每个元素都是NumDates
——- - - - - -2
单元阵列。的第一列NumDates
——- - - - - -2
单元格数组是日期,第二列是相关的面值。日期表示面值有效的最后一天。
数据类型:细胞
|双
CallStrike
- - - - - -呼叫欧洲、百慕大或美国期权的执行价格
非负整数|非负整数的向量
欧洲、百慕大或美国期权的看涨期权执行价,以逗号分隔的一对指定,由“CallStrike”
和以下值之一:
对于欧洲看涨期权-
NINST
——- - - - - -1
非负整数的向量对于百慕大看涨期权-
NINST
——- - - - - -NSTRIKES
看涨期权执行价格的矩阵,每一行都是一个看涨期权的时间表。如果看涨期权少于NSTRIKES
锻炼的机会,最后排的是垫底南
年代。对于美式看涨期权-
NINST
——- - - - - -1
每个期权执行价格值的向量。
数据类型:单
|双
CallExDates
- - - - - -呼叫欧洲、百慕大或美国期权的执行日期
datetime数组|字符串数组|日期特征向量
为欧洲、百慕大或美国期权调用执行日期,指定为逗号分隔的对,由“CallExDates”
和datetime数组、字符串数组或日期字符向量用于以下值:
对于欧洲的选择-
NINST
——- - - - - -1
日期字符向量的向量。对于百慕大的选择-
NINST
——- - - - - -NSTRIKES
运动日期矩阵,每一行是一个选项的时间表。对于欧洲来说,只有一个选择CallExDate
在期权到期日。对于美国人的选择-
NINST
——- - - - - -1
或NINST
——- - - - - -2
运动日期边界矩阵。对于每一种工具,看涨期权可以在该行两个日期之间或包括这两个日期的任意日期执行。如果CallExDates
是NINST
——- - - - - -1
,该选项可在ValuationDate
CRR库存树和单个上市公司CallExDate
.
要支持现有代码,cbondbycrr
也接受序列号作为输入,但不建议使用。
AmericanCall
- - - - - -呼叫选项类型指示符
0
如果AmericanCall
是南
不进入(默认)|标量|正整数向量[0, 1]
调用选项类型,指定为逗号分隔的对,由“AmericanCall”
和一个NINST
——- - - - - -1
带有值的正整数标志的向量0
或1
.
对于欧洲或百慕大的选择-
AmericanCall
是0
为每个欧洲或百慕大的选择。对于美国人的选择-
AmericanCall
是1
每一个美国选项。的AmericanCall
要援引美国运动规则,就必须进行辩论。
数据类型:单
|双
PutStrike
- - - - - -填写欧洲、百慕大或美国选项的罢工值
正整数|正整数向量
输入欧洲、百慕大或美国期权的执行值,指定为逗号分隔的对,由“PutStrike”
和以下值之一:
对于欧洲看跌期权-
NINST
——- - - - - -1
非负整数的向量对于百慕大看跌期权-
NINST
——- - - - - -NSTRIKES
执行价格的矩阵,每一行都是一个期权的时间表。如果看跌期权少于NSTRIKES
锻炼的机会,最后排的是垫底南
年代。美国看跌期权-
NINST
——- - - - - -1
每个期权执行价格值的向量。
数据类型:单
|双
PutExDates
- - - - - -把锻炼日期改为欧洲、百慕大或美国选项
datetime数组|字符串数组|日期特征向量
填写欧洲、百慕大或美国期权的锻炼日期,指定为逗号分隔的对“PutExDates”
和datetime数组、字符串数组或日期字符向量用于以下值:
对于欧洲的选择-
NINST
——- - - - - -1
日期字符向量的向量。对于百慕大的选择-
NINST
——- - - - - -NSTRIKES
运动日期矩阵,每一行是一个选项的时间表。对于欧洲来说,只有一个选择PutExDate
在期权到期日。对于美国人的选择-
NINST
——- - - - - -1
或NINST
——- - - - - -2
运动日期边界矩阵。对于每一种工具,看跌期权可以在该行两个日期之间或包括这两个日期的任意日期执行。如果PutExDates
是NINST
——- - - - - -1
,看跌期权可以在ValuationDate
CRR库存树和单个上市公司PutExDate
.
要支持现有代码,cbondbycrr
也接受序列号作为输入,但不建议使用。
AmericanPut
- - - - - -看跌期权类型指示器
0
如果AmericanPut
是南
不进入(默认)|正整数[0, 1]
|正整数向量[0, 1]
看跌期权类型,指定为逗号分隔的一对,由“AmericanPut”
和一个NINST
——- - - - - -1
带有值的正整数标志的向量0
或1
.
对于欧洲或百慕大的选择-
AmericanPut
是0
为每个欧洲或百慕大的选择。对于美国人的选择-
AmericanPut
是1
每一个美国选项。的AmericanPut
要援引美国运动规则,就必须进行辩论。
数据类型:双
ConvDates
- - - - - -可兑换日期
MaturityDate
(默认)|datetime数组|字符串数组|日期特征向量
可转换日期,指定为逗号分隔的对,由“ConvDates”
和一个NINST
——- - - - - -1
或NINST
——- - - - - -2
Vector,使用日期时间数组、字符串数组或日期字符向量。如果ConvDates
未指定时,该债券在到期前始终可转换。
要支持现有代码,cbondbycrr
也接受序列号作为输入,但不建议使用。
对于每一种乐器,债券可以在该行的任意树形日期之间或包含树形日期的日期上转换。
如果ConvDates
是NINST
——- - - - - -1
,键之间可以转换ValuationDate
CRR库存树和单个上市公司ConvDates
.
DefaultProbability
- - - - - -违约率的年概率
0
(默认)|非负小数
违约率的年概率,用逗号分隔的对表示“DefaultProbability”
和一个NINST
——- - - - - -1
非负十进制值。
请注意
要将默认风险合并到算法中,请指定可选的输入参数DefaultProbability
而且RecoveryRate
.为了将风险以信用价差的形式合并(Tsiveriotis-Fernandes方法),使用可选输入参数传播
.不要使用DefaultProbability
而且RecoveryRate
与传播
.
数据类型:双
RecoveryRate
- - - - - -治愈率
1
(默认)|非负小数
恢复速率,用逗号分隔的对指定,由“RecoveryRate”
和一个NINST
——- - - - - -1
非负小数。
请注意
要将默认风险合并到算法中,请指定可选的输入参数DefaultProbability
而且RecoveryRate
.为了将风险以信用价差的形式合并(Tsiveriotis-Fernandes方法),使用可选输入参数传播
.不要使用DefaultProbability
而且RecoveryRate
与传播
.
数据类型:双
输出参数
价格
-当时的预期价格0
数组
预计当时价格0
,作为NINST
——- - - - - -1
数组中。
PriceTree
-在每个节点上用可转换债券价格向量表示的结构
树状结构
结构,在每个节点上使用可转换债券价格的向量,返回为树形结构。
EquityTree
-结构中每个节点都有可转换债券股权分量向量
树状结构
结构,每个节点上都有一个可转换债券股权成分的向量,返回为树形结构。
DebtTree
-结构中每个节点都有可转换债券债务分量向量
树状结构
结构,每个节点上都有一个可转换债券债务组件的向量,返回为树形结构。
更多关于
可赎回可转换
可由发行人赎回的可转换债券。债券的发行人强制转换,消除了转换由债券持有人自行决定的优势。
在赎回时,债券持有人既可以转换债券,也可以按赎回价格赎回。这一选项使发行人能够控制可转换债券的价格,并在必要时,用一种更便宜的新债券为债务再融资。
可卖回的可兑换
带有看跌期权功能的可转换债券允许债券持有人在特定日期以溢价卖回债券。
该期权通过缩短到期年数来保护持有人免受利率上升的影响。
算法
cbondbycrr
,cbondbyeqp
,cbondbyitt
,cbondbystt
以价格向量和价格树的形式返回价格信息。这些功能以信用利差或合并债券违约风险的形式实现风险。为了将风险以信用价差的形式合并(Tsiveriotis-Fernandes方法),使用可选的名称-值对参数传播
.要将默认风险合并到算法中,请指定可选的名称-值对参数DefaultProbability
而且RecoveryRate
.
参考文献
[1] Tsiveriotis, K.和C. Fernandes。《用信用风险评估可转换债券》固定收益杂志。1998年第8卷,第95-102页。
[2]船体,J。期权、期货及其他衍生品。第四版。普伦蒂斯·霍尔,2000年,第646-649页。
版本历史
介绍了R2015aMATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。