价格互换工具,从一组零曲线和价格跨货币互换
[
为一个或多个指定的附加选项的掉期工具定价价格
,SwapRate
,人工智能
,RecCF
,RecCFDates
,PayCF
,PayCFDates
= swapbyzero(RateSpec
,LegRate
,解决
,成熟
,名称,值
)名称,值
对参数。你可以使用swapbyzero
计算普通掉期、摊销掉期、远期掉期和跨货币掉期的价格。有关普通掉期、摊销掉期和远期掉期的名称-值对的详细信息,请参见香草掉期,摊销掉期,远期掉期.
具体来说,您可以使用名称-值对FXRate
,ExchangeInitialPrincipal
,ExchangeMaturityPrincipal
计算交叉货币互换的价格。有关跨货币互换的名称-值对的详细信息,请参见货币掉期.
为利率掉期定价时采用固定的接收区间和浮动的支付区间。每年支付一次,名义本金为100美元。其余参数的值为:
固定腿票面利率:0.06 (6%)
浮动腿价差:20个基点
掉期结算日期:2000年1月1日
掉期到期日期:2003年1月1日
根据上面的信息,设置所需的参数并构建LegRate
,LegType
,LegReset
矩阵:
解决=' 01 - 1月- 2000;成熟=' 01 - 1月- 2003;基= 0;本金= 100;leggrate = [0.06 20];%[优惠券利率价差]LegType = [1 0];%[固定浮动]LegReset = [1 1];每年支付一次
加载文件deriv.mat
,提供ZeroRateSpec
这是债券定价所需的利率期限结构。
负载deriv.mat;
使用swapbyzero
计算掉期的价格。
价格= swapbyzero(ZeroRateSpec, LegRate, Settle, Maturity,...leggreset, Basis, Principal, LegType)
价格= 3.6923
使用前面的数据,计算掉期利率,这是固定leg的票面利率,这样在时间= 0时的掉期价格为零。
LegRate = [NaN 20];[Price, SwapRate] = swapbyzero(ZeroRateSpec, leggrate, Settle,...期限,leggreset, Basis, Principal, LegType)
价格= 0
SwapRate = 0.0466
在swapbyzero
,如果解决
不是在重置日期(和StartDate可以的
未指定),则生效日期假定为之前的重置日期解决
为了计算应计利息和脏价。在本例中,生效日期为(“15 - 9 - 2009”
),该日期是(“08 - 2010年6月- - - - - -”
)解决
日期。
使用swapbyzero
的名称-值对参数LegRate
,LegType
,LatestFloatingRate
,AdjustCashFlowsBasis
,BusinessDayConvention
计算的输出价格
,SwapRate
,人工智能
,RecCF
,RecCFDates
,PayCF
,PayCFDates
:
set = datenum(“08 - 2010年6月- - - - - -”);RateSpec = intenvset(“利率”,(。005 .0075 .01 .014 .02 .025 .03]',...startdate可以的解决,“EndDates”,{08年- 12月- 2010 ',“08 - 2011年6月- - - - - -”,...“08 - 2012年6月- - - - - -”,“08 - 2013年6月- - - - - -”,“08 - 2015年6月- - - - - -”,“08 - 2017年6月- - - - - -”,“08 - 2020年6月- - - - - -”} ');成熟度= datenum(“15 - 9 - 2020”);leggrate =[。025年50];LegType = [1 0];%固定/浮动LatestFloatingRate = .005;[价格,SwapRate, AI, RecCF, RecCFDates, PayCF,PayCFDates] =...swapbyzero(RateSpec, LegRate, Settle, Maturity,“LegType”LegType,...“LatestFloatingRate”LatestFloatingRate,“AdjustCashFlowsBasis”,真的,...“BusinessDayConvention”,“modifiedfollow”)
价格= -6.7259
SwapRate = NaN
Ai = 1.4575
RecCF =1×12-1.8219 2.5000 2.5000 2.5137 2.4932 2.4932 2.5000 2.5000 2.5000 2.5137 2.4932 102.4932
RecCFDates =1×12734297 734396 734761 735129 735493 735857 736222 736588 736953 737320 737684 738049
PayCF =1×12-0.3644 0.5000 1.4048 1.9961 2.8379 3.2760 3.8218 4.1733 4.5164 4.4920 4.7950 104.6608
PayCFDates =1×12734297 734396 734761 735129 735493 735857 736222 736588 736953 737320 737684 738049
用两条利率曲线为三个掉期定价。首先,定义利率期限结构的数据:
startdate可以=“01 -可能- 2012”;结束日期= {“01 -可能- 2013”;“01 -可能- 2014”;“01 -可能- 2015”;“01 -可能- 2016”};Rates = [[0.0356;0.041185;0.04489;0.047741],[0.0366;0.04218;0.04589;0.04974]];
创建RateSpec
使用intenvset
.
RateSpec = intenvset(“利率”率,startdate可以的startdate可以,...“EndDates”EndDates,“复合”, 1)
RateSpec =带字段的结构:FinObj: 'RateSpec'复合:1光盘:[4x2 double]利率:[4x2 double]结束时间:[4x1 double]开始时间:[4x1 double]结束日期:[4x1 double]开始日期:734990估值日期:734990基础:0 EndMonthRule: 1
看看利率
对于两条利率曲线。
RateSpec。利率
ans =4×20.0356 0.0366 0.0412 0.0422 0.0449 0.0459 0.0477 0.0497
定义交换工具。
解决=“01 -可能- 2012”;成熟=“01 -可能- 2015”;leggrate = [0.06 10];本金= [100;50;100];%三个名义金额
用两条曲线为三个掉期定价。
价格= swapbyzero(利率,leggrate,结算,到期,“校长”校长)
价格=3×23.9688 3.6869 1.9844 1.8434 3.9688 3.6869
RateSpec
利用两条利率曲线为掉期定价。首先,定义两种利率期限结构的数据:
startdate可以=“01 -可能- 2012”;结束日期= {“01 -可能- 2013”;“01 -可能- 2014”;“01 -可能- 2015”;“01 -可能- 2016”};Rates1 = [0.0356;0.041185;0.04489;0.047741];Rates2 = [0.0366;0.04218;0.04589;0.04974];
创建RateSpec
使用intenvset
.
RateSpecReceiving = intenvset(“利率”Rates1,startdate可以的startdate可以,...“EndDates”EndDates,“复合”1);RateSpecPaying = intenvset (“利率”Rates2,startdate可以的startdate可以,...“EndDates”EndDates,“复合”1);RateSpec = [RateSpecReceiving RateSpecPaying]
RateSpec =1×2包含字段的struct数组:FinObj复合磁盘利率结束时间开始时间结束日期开始日期估值日期基础结束月规则
定义交换工具。
解决=“01 -可能- 2012”;成熟=“01 -可能- 2015”;leggrate = [0.06 10];本金= [100;50;100];
利用两条曲线为三个掉期定价。
价格= swapbyzero(利率,leggrate,结算,到期,“校长”校长)
价格=3×13.9693 1.9846 3.9693
若要计算远期票面利率互换率,请设置StartDate可以
参数设置为未来日期,并在LegRate
输入南
.
定义零曲线数据并使用IRDataCurve
.
ZeroRates = [2.09 2.47 2.71 3.12 3.43 3.85 4.57]'/100;set = datenum(“1 - 1月- 2012”);EndDates = datemnth(确定,12*[1 2 3 5 7 10 20]');复利= 1;零曲线= irdata曲线(“零”、结算、EndDates ZeroRates,“复合”复合)
零曲线=类型:零结算:734869(01- 1- 2012)复利:1基础:0(实际/实际)InterpMethod:线性日期:[7x1 double]数据:[7x1 double]
创建一个RateSpec
结构,使用toRateSpec
方法。
RateSpec = ZeroCurve.toRateSpec(结束日期)
RateSpec =带字段的结构:FinObj: 'RateSpec'复合:1光盘:[7x1 double]利率:[7x1 double]结束时间:[7x1 double]开始时间:[7x1 double]结束日期:[7x1 double]开始日期:734869估值日期:734869基础:0 EndMonthRule: 1
计算远期掉期利率(固定时段的票面利率),使远期掉期价格=0
是零。远期互换从一个月(2012年2月1日)开始,10年(2022年2月1日)到期。
StartDate = datenum(的1 - 2月- 2012);成熟度= datenum(的1 - 2月- 2022);LegRate = [NaN 0];[Price, SwapRate] = swapbyzero(RateSpec, LegRate, Settle, Maturity,...StartDate可以的StartDate可以)
价格= 0
SwapRate = 0.0378
BusinessDayConvention
的swapbyzero
函数生成现金流日期解决
而且成熟
日期,同时使用成熟
日期作为“锚定”日期,以定期间隔向后计数。默认情况下,swapbyzero
不区分非营业日和营业日。为了使swapbyzero
将非营业日移到下面的营业日,您可以设置可选的名称-值输入参数BusinessDayConvention
值为遵循
.
定义零曲线数据并使用IRDataCurve
.
ZeroRates = [2.09 2.47 2.71 3.12 3.43 3.85 4.57]'/100;set = datenum(的5 - 1月- 2012);EndDates = datemnth(确定,12*[1 2 3 5 7 10 20]');复利= 1;零曲线= irdata曲线(“零”、结算、EndDates ZeroRates,“复合”、复合);RateSpec = ZeroCurve.toRateSpec(结束日期);StartDate = datenum(“5 - 2月- 2012 ');成熟度= datenum(“5 - 2月- 2022 ');LegRate = [NaN 0];
演示可选输入BusinessDayConvention
,swapbyzero
首先不使用,然后与可选的名称-值输入参数一起使用BusinessDayConvention
.注意,当使用BusinessDayConvention
在美国,每天都是工作日。
[Price1,SwapRate1,~,~,RecCFDates1,~,PayCFDates1] = swapbyzero(RateSpec,LegRate,Settle,Maturity,...StartDate可以的StartDate可以);datestr (RecCFDates1)
ans =11x11字符数组“05- 01 -2012”“05- 02 -2013”“05- 02 -2014”“05- 02 -2015”“05- 02 -2016”“05- 02 -2017”“05- 02 -2018”“05- 02 -2019”“05- 02 -2020”“05- 02 -2021”“05- 02 -2022”
isbusday (RecCFDates1)
ans =11x1逻辑阵列1 1 1 1 1 0 1 1 1 1 1
[Price2,SwapRate2,~,~,RecCFDates2,~,PayCFDates2] = swapbyzero(RateSpec,LegRate,Settle,Maturity,...StartDate可以的StartDate可以,“BusinessDayConvention”,“跟随”);datestr (RecCFDates2)
ans =12x11字符数组“05- 01 -2012”“06- 02 -2012”“05- 02 -2013”“05- 02 -2014”“05- 02 -2015”“05- 02 -2016”“06- 02 -2017”“05- 02 -2018”“05- 02 -2019”“05- 02 -2020”“05- 02 -2021”“07- 02 -2022”
isbusday (RecCFDates2)
ans =12x1逻辑阵列1 1 1 1 1 1 1 1 1 1 1
为摊销掉期定价主要
输入参数来定义摊销计划。
创建RateSpec
.
比率= 0.035;ValuationDate =“1 - 1月- 2011”;StartDates = ValuationDate;EndDates =“1 - 1月- 2017”;复利= 1;RateSpec = intenvset(“ValuationDate”ValuationDate,startdate可以的startdate可以,...“EndDates”EndDates,“利率”率,“复合”、复合);
使用以下数据创建交换工具:
解决=“1 - 1月- 2011”;成熟=“1 - 1月- 2017”;leggrate = [0.04 10];
定义交换摊销计划。
校长= {{“1 - 1月- 2013”100;“1 - 1月- 2014”80;“1 - 1月- 2015”60;“1 - 1月- 2016”40;“1 - 1月- 2017”20}};
计算摊销掉期的价格。
价格= swapbyzero(利率,leggrate,结算,到期,“校长”校长)
价格= 1.4574
为远期掉期定价StartDate可以
输入参数定义交换的未来开始日期。
创建RateSpec
.
费率= 0.0325;ValuationDate =“1 - 1月- 2012”;StartDates = ValuationDate;EndDates =“1 - 1月- 2018”;复利= 1;RateSpec = intenvset(“ValuationDate”ValuationDate,startdate可以的startdate可以,...“EndDates”EndDates,“利率”率,“复合”复合)
RateSpec =带字段的结构:FinObj: 'RateSpec'复合:1光盘:0.8254利率:0.0325 EndTimes: 6 StartTimes: 0 EndDates: 737061 StartDates: 734869 ValuationDate: 734869基础:0 EndMonthRule: 1
计算从一年后(2013年1月1日)开始、3年后到期的远期掉期价格,远期掉期利率为4.27%。
解决=“1 - 1月- 2012”;StartDate可以=“1 - 1月- 2013”;成熟=“1 - 1月- 2016”;LegRate = [0.0427 10];价格= swapbyzero(利率,leggrate,结算,到期,StartDate可以的StartDate可以)
价格= 2.5083
使用前面的数据,计算远期掉期利率,即固定区间的票面利率,使远期掉期价格在时刻= 0时为零。
LegRate = [NaN 10];[Price, SwapRate] = swapbyzero(RateSpec, LegRate, Settle, Maturity,...StartDate可以的StartDate可以)
价格= 0
SwapRate = 0.0335
RateSpec
如果解决
不是浮动利率票据的重置日期,swapbyzero
尝试获取之前的最新浮动汇率解决
从RateSpec
或者是LatestFloatingRate
参数。此速率的重置日期超出的范围时RateSpec
(和LatestFloatingRate
未指定),swapbyzero
无法获取该日期的速率并产生错误。方法的使用LatestFloatingRate
输入参数,避免错误。
创建交换仪器时的错误条件StartDate可以
不能从RateSpec
.
解决=' 01 - 1月- 2000;成熟=' 01 - 12月- 2003;基= 0;本金= 100;leggrate = [0.06 20];%[优惠券利率价差]LegType = [1 0];%[固定浮动]LegReset = [1 1];每年支付一次负载deriv.mat;价格= swapbyzero(ZeroRateSpec,LegRate,Settle,Maturity,...“LegReset”LegReset,“基础”的基础上,“校长”校长,...“LegType”LegType)
使用floatbyzero错误(第256行):无法从RateSpec中获得仪器开始日期的速率。它的重置日期(01-Dec-1999)超出了RateSpec中包含的日期范围。该利率用于计算工具开始日期的现金流。考虑使用'LatestFloatingRate'输入参数指定这个速率。swapbyzero错误(第289行)[FloatFullPrice, FloatPrice,FloatCF,FloatCFDates] = floatbyzero(FloatRateSpec, Spreads, Settle,…
这里是速率的重置日期解决
是01 - 12月- 1999
的估值日期早于ZeroRateSpec
(01 - 1月- 2000
).方法指定互换工具开始日期的利率,可以避免此错误LatestFloatingRate
输入参数。
定义LatestFloatingRate
计算浮动利率价格。
价格= swapbyzero(ZeroRateSpec,LegRate,Settle,Maturity,...“LegReset”LegReset,“基础”的基础上,“校长”校长,...“LegType”LegType,“LatestFloatingRate”, 0.03)
价格= 4.7594
定义OIS和Libor利率。
set = datenum(“15 - 3月- 2013”);CurveDates = daysadd(360*[1/12 2/12 3/12 6/12 12 3 4 5 7 10],1);OISRates =[。0018 .0019 .0021 .0023 .0031 .006 .011 .017 .021 .026 .03]'; LiborRates = [.0045 .0047 .005 .0055 .0075 .011 .016 .022 .026 .030 .0348]';
画出对偶曲线。
人物,情节(CurveDates OISRates,“r”);在LiborRates;情节(CurveDates,“b”日期标记图例({“OIS曲线”,“伦敦银行间拆放款利率曲线”})
创建关联的RateSpec
OIS和Libor曲线。
OISCurve = intenvset(“利率”OISRates,StartDate可以的解决,“EndDates”, CurveDates);LiborCurve = intenvset(“利率”LiborRates,StartDate可以的解决,“EndDates”, CurveDates);
定义交换。
成熟度= datenum(“15 - 3月- 2018”);%五年期掉期FloatSpread = 0;FixedRate = .025;leggrate = [FixedRate FloatSpread];
计算掉期工具的价格。的LiborCurve
期限结构将用于产生浮动部分的现金流。的OISCurve
期限结构将用于贴现现金流。
价格= swapbyzero(OISCurve, legate, Settle,...成熟,“ProjectionCurve”LiborCurve)
价格= -0.3697
比较期限结构时的结果OISCurve
既用于贴现,也用于产生浮动部分的现金流。
PriceSwap = swapby0 (OISCurve, leggrate, Settle, Maturity)
PriceSwap = 2.0517
对现有的交叉货币掉期进行定价,该货币掉期接受固定利率的日元,并以每年的频率支付固定利率的美元。
set = datenum(“15 - 8月- 2015”);成熟度= datenum(“15 - 8月- 2018”);重置= 1;LegType = [1 1];%惯性r_USD = .09;r_JPY = .04;FixedRate_USD = .08;FixedRate_JPY = .05;Principal_USD = 10000000;Principal_JPY = 1200000000;S = 1/110;RateSpec_USD = intenvset(StartDate可以的解决,“EndDate”成熟,“利率”r_USD,“复合”1);RateSpec_JPY = intenvset(StartDate可以的解决,“EndDate”成熟,“利率”r_JPY,“复合”1);价格= swapbyzero([RateSpec_JPY rate], [FixedRate_JPY FixedRate_USD],...解决,成熟,“校长”, (Principal_JPY Principal_USD),“FXRate”, [1],“LegType”LegType)
价格= 1.5430e+06
为新掉期定价,您支付欧元浮动,并获得美元浮动。
set = datenum(”22日- 12月- 2015);成熟度= datenum(“15 - 8月- 2018”);LegRate = [0 -50/10000];LegType = [0 0];%浮动LegReset = [4 4];FXRate = 1.1;名义= [10000000 8000000];USD_Dates = datemnth(确定,[1 3 6 12*[1 2 3 5 7 10 20 30]]]');USD_Zero = [0.03 0.06 0.08 0.13 0.36 0.76 1.63 2.29 2.88 3.64 3.89]'/100;Curve_USD = intenvset(StartDate可以的解决,“EndDates”USD_Dates,“利率”, USD_Zero);EUR_Dates = datemnth(确定,[3 6 12*[1 2 3 5 7 10 20 30]]]');EUR_Zero = [0.017 0.033 0.088 .27 .512 1.056 1.573 2.183 2.898 2.797]'/100;Curve_EUR = intenvset(StartDate可以的解决,“EndDates”EUR_Dates,“利率”, EUR_Zero);价格= swapbyzero([Curve_USD Curve_EUR],...优雅,稳重,成熟,“LegType”LegType,“LegReset”LegReset,“校长”名义上,...“FXRate”[1 FXRate],“ExchangeInitialPrincipal”假)
价格= 1.2002e+06
RateSpec
- - - - - -利率结构利率结构,指定使用intenvset
要创建RateSpec
.
RateSpec
也可以是1
——- - - - - -2
输入变量RateSpec
S和第二个RateSpec
结构,其中包含一条或多条付款段的贴现曲线。如果只有一个RateSpec
结构,然后是thisRateSpec
用于折现两条腿。
数据类型:结构体
LegRate
- - - - - -腿率腿速率,指定为aNINST
——- - - - - -2
矩阵,其中每行定义为以下之一:
(CouponRate传播)
(fixed-float)
(CouponRate传播)
(float-fixed)
[CouponRate CouponRate]
(惯性)
(传播扩散)
(float-float)
CouponRate
是十进制的年利率。传播
是基准利率上的基点数。第一列表示接收部分,而第二列表示支付部分。
数据类型:双
解决
- - - - - -结算日期结算日期,指定为标量或NINST
——- - - - - -1
表示每次交换的结算日期的相同值的序列号或日期字符向量的向量。解决
必须早于成熟
.
数据类型:字符
|细胞
|双
成熟
- - - - - -到期日到期日,指定为NINST
——- - - - - -1
表示每次交换的到期日的序列号或日期字符向量的向量。
数据类型:字符
|细胞
|双
的可选逗号分隔对名称,值
参数。的名字
参数名称和价值
对应的值。的名字
必须出现在引号内。您可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家
.
[Price,SwapRate,AI,RecCF,RecCFDates,PayCF,PayCFDates] = swapbyzero(RateSpec, leggrate,Settle,
成熟,LegType LegType, LatestFloatingRate, LatestFloatingRate, AdjustCashFlowsBasis,真的,
“BusinessDayConvention”、“modifiedfollow”)
LegReset
- - - - - -重置频率每年为每个交换[1]
(默认)|向量每年每次交换的重置频率,由逗号分隔的对组成“LegReset”
和一个NINST
——- - - - - -2
向量。
数据类型:双
基础
- - - - - -仪器的日计数基础0
(实际/实际)(默认)|整数的0
来13
表示每个分支的基础的日计数基础,指定为由逗号分隔的对组成“基础”
和一个NINST
——- - - - - -1
数组(或NINST
——- - - - - -2
如果基础
每条腿都是不同的)。
0 = actual/实际的
1 = 30/360 (sia)
2 =实际/360
3 =实际/365
4 = 30/360 (psa)
5 = 30/360 (isda)
6 = 30/360(欧洲)
7 =实际/365(日语)
8 =实际/实际(ICMA)
9 =实际/360 (ICMA)
10 =实际/365 (ICMA)
11 = 30/360e (icma)
12 =实际/365 (ISDA)
13 =总线/252
有关更多信息,请参见基础.
数据类型:双
主要
- - - - - -名义本金金额或本金价值表One hundred.
(默认)|向量或单元格数组名义本金金额或本金金额表,以逗号分隔的对表示,由“校长”
和一个向量或单元格数组。
主要
接受一个NINST
——- - - - - -1
向量或NINST
——- - - - - -1
单元格数组(或NINST
——- - - - - -2
如果主要
名义本金金额或本金价值表的不同部分)。对于调度,单元格数组的每个元素都是aNumDates
——- - - - - -2
数组,其中第一列是日期,第二列是其关联的名义主值。日期表示主体值有效的最后一天。
数据类型:细胞
|双
LegType
- - - - - -腿型[1 0]
每种仪器(默认)|带值矩阵[1]
(惯性),[1 0]
(fixed-float),[0 1]
(float-fixed),或[0 0]
(float-float)分支类型,指定为逗号分隔的对,由“LegType”
和一个NINST
——- - - - - -2
带值矩阵[1]
(惯性),[1 0]
(fixed-float),[0 1]
(float-fixed),或[0 0]
(float-float)。每一行代表一种乐器。每一列表示对应的支脚是否固定(1
)或浮动(0
).这个矩阵定义了输入值的解释LegRate
.LegType
允许[1]
(惯性),[1 0]
(fixed-float),[0 1]
(float-fixed),或[0 0]
(float-float)互换
数据类型:双
EndMonthRule
- - - - - -月末规则标志,用于生成日期成熟
一个月的月底日期是否只有30天或更少1
(效果)(默认)|非负整数[0, 1]
月末规则标志,用于生成日期成熟
一个月的月底日期是否只有30天或更少,指定为逗号分隔的对,由“EndMonthRule”
和一个非负整数[0
,1
用…NINST
——- - - - - -1
(或NINST
——- - - - - -2
如果EndMonthRule
每条腿都是不同的)。
0
= Ignore规则,这意味着付款日期总是同一个数字日。
1
=设置规则,这意味着付款日期总是每月的最后一天。
数据类型:逻辑
AdjustCashFlowsBasis
- - - - - -标记根据实际期间天数调整现金流假
(默认)|的价值0
(虚假的)或1
(真正的)标志,以根据实际期间天数计数调整现金流,指定为逗号分隔的对,由“AdjustCashFlowsBasis”
和一个NINST
——- - - - - -1
(或NINST
——- - - - - -2
如果AdjustCashFlowsBasis
是不同的每条腿)的逻辑值0
(虚假的)或1
(真正的)。
数据类型:逻辑
BusinessDayConvention
- - - - - -工作日惯例实际
(默认)|特征向量|字符向量的单元格数组工作日约定,指定为逗号分隔的对,由“BusinessDayConvention”
还有一个字符向量aN
——- - - - - -1
(或NINST
——- - - - - -2
如果BusinessDayConvention
每个分支都不同)工作日惯例的字符向量单元格数组。营业日惯例的选择决定了如何对待非营业日。非营业日定义为周末加上任何其他不营业的日期(如法定假日)。值:
实际
-非工作日被有效忽略。非营业日的现金流假定在实际日期进行分配。
遵循
—非营业日的现金流假设在下一个营业日进行分配。
modifiedfollow
—非营业日的现金流假设在下一个营业日进行分配。但是,如果下一个营业日在不同的月份,则采用前一个营业日。
以前的
-非营业日的现金流假设在前一个营业日进行分配。
modifiedprevious
-非营业日的现金流假设在前一个营业日进行分配。但是,如果前一个营业日在不同的月份,则采用下一个营业日。
数据类型:字符
|细胞
假期
- - - - - -用于计算营业日的假日holidays.m
(默认)|MATLAB®日期数字用于计算营业日的假日,指定为逗号分隔的对,由“假期”
和MATLAB日期数字使用NHolidays
——- - - - - -1
向量。
数据类型:双
StartDate可以
- - - - - -互换实际开始的日期解决
(默认)|流水号|特征向量|字符向量的单元格数组交换实际开始的日期,指定为逗号分隔的对,由StartDate可以的
和一个NINST
——- - - - - -1
序列日期的向量、字符向量或字符向量的单元格数组。
数据类型:字符
|细胞
|双
LatestFloatingRate
- - - - - -下次浮动付款的利率RateSpec
必须包含以下信息(默认)|标量数值下一次浮动付款的利率,设置在上一次重置日期,指定为逗号分隔的对,由“LatestFloatingRate”
和一个标量数值。
LatestFloatingRate
接受在上次重置日期设置的下一次浮动付款的利率。LatestFloatingRate
是一个NINST
——- - - - - -1
(或NINST
——- - - - - -2
如果LatestFloatingRate
每条腿都是不同的)。
数据类型:双
ProjectionCurve
- - - - - -为掉期浮动部分产生现金流所使用的利率曲线ProjectionCurve
没有指定,那么RateSpec
用于浮动部分的贴现和产生现金流(默认)|RateSpec
或向量用于产生掉期浮动部分现金流的利率曲线,由逗号分隔的对组成“ProjectionCurve”
和一个RateSpec
.
如果指定固定浮动或浮动固定交换,则ProjectionCurve
利率曲线用于产生掉期浮动部分的现金流。此结构必须使用intenvset
.
如果指定固定-固定或浮动-浮动交换,则ProjectionCurve
是NINST
——- - - - - -2
向量,因为每个浮动腿可能有不同的投影曲线。
数据类型:结构体
FXRate
- - - - - -用于现金流的外汇汇率swapbyzero
都是同一种货币(默认)|数组应用于现金流的外汇(FX)汇率,由逗号分隔的对组成“FXRate”
和一个NINST
——- - - - - -2
双精度数组。由于外汇汇率既可以应用于支付方,也可以应用于接收方,因此输入数组中有两列,您必须指定哪个部分使用外汇。
数据类型:双
ExchangeInitialPrincipal
- - - - - -标志表示if为初始值主要
交换0
(假)(默认)|数组标志表示if为初始值主要
,指定为逗号分隔的对,由“ExchangeInitialPrincipal”
和一个NINST
——- - - - - -1
逻辑数组。
数据类型:逻辑
价格
-掉期价格互换价格,作为工具数量返回(NINST
),按曲线数目计算(NUMCURVES
)矩阵。每一列都源于一条零曲线。价格
产出是肮脏的价格。若要计算净价,请减去应计利息(人工智能
)从肮脏的价格。
SwapRate
-固定支腿适用的费率适用于固定支腿的费率,作为NINST
——- - - - - -NUMCURVES
适用于固定支腿的利率矩阵,使得掉期在时间0时的值为零。这一利率用于计算掉期价格时指定的固定部分的利率LegRate
是南
.的SwapRate
输出用南
对于那些乐器CouponRate
未设置为南
.
人工智能
-应计利息应计利息,作为利息返还NINST
——- - - - - -NUMCURVES
矩阵。
RecCF
-收款段的现金流接收部分的现金流,作为报表返回NINST
——- - - - - -NUMCURVES
矩阵。
请注意
属性中指定的曲线多于一条RateSpec
输入,然后是第一个NCURVES
行对应第一个交换,第二个交换NCURVES
行对应第二次交换,依此类推。
RecCFDates
-收货段的付款日期付款日期的接收腿,返回作为NINST
——- - - - - -NUMCURVES
矩阵。
PayCF
-付款段的现金流支付部分的现金流,作为回报NINST
——- - - - - -NUMCURVES
矩阵。
PayCFDates
-付款段的付款日期付款段的付款日期,作为NINST
——- - - - - -NUMCURVES
矩阵。
在摊销掉期中,名义本金定期减少,因为它与本金余额下降(摊销)的基础金融工具相关联,例如抵押贷款。
在未来某一固定日期订立利率掉期安排的协议。
掉期的支付部分以不同的货币计价。
跨货币掉期与标准掉期的一个不同之处在于,本金的交换可能发生在掉期的开始和/或结束。初始本金的交换只会在开始时对跨货币掉期定价时起作用(换句话说,对现有的跨货币掉期定价将在现金流发生后发生)。此外,这些本金交换通常不会影响掉期的价值(因为两个部分的本金价值是根据货币汇率选择的),但会影响每个部分的现金流。
[1]赫尔,J。期权、期货和其他衍生品第四版。普伦蒂斯·霍尔,2000年。
次のmatlabコマンドに対応するリンクがクリックされました。
コマンドをmatlabコマンドウィンドウに入力して実行してください。Webブラウザ,はMATLABコマンドをサポ,トしていません。
您也可以从以下列表中选择一个网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。