swapbyzero

价格掉期工具由集合的零曲线和价格的交叉货币掉期组成

描述

例子

(价格,SwapRate,人工智能,RecCF,RecCFDates,PayCF,PayCFDates)= swapbyzero (RateSpec,LegRate,解决,成熟)为掉期工具定价。您可以使用swapbyzero计算普通掉期、摊销掉期和远期掉期的价格。所有的输入不是标量就是NINST——- - - - - -1矢量除非另有规定。任何日期可以是串行日期数字或日期字符向量。一个可选的参数可为一个空矩阵被传递[]

例子

(价格,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 -Jan-2003';基础= 0;校长= 100;le箅子= [0.06 20];% (CouponRate传播)LegType = [1 0];%[固定浮点]LegReset = [1 1];%每年支付一次

加载文件deriv.mat,它提供了ZeroRateSpec在美国,为债券定价所需的利率期限结构。

负载deriv.mat;

使用swapbyzero来计算掉期的价格。

价格= swapbyzero。...(LegReset, Basis, Principal, LegType)
价格= 3.6923

使用前面的数据,计算掉期率,即固定期限的息票率,使掉期价格在= 0时为0。

LegRate = [NaN的20];[价格,SwapRate] = swapbyzero(ZeroRateSpec,LegRate,沉降,...(到期,到期,基础,本金,期限)
价格= 0
SwapRate = 0.0466

swapbyzero,如果解决是不是重置日期(和StartDate可以的未指定)时,有效日期被假定为之前前一复位日期解决以计算应计利息和脏价。在本例中,生效日期为('15 -sep-2009')之前的重置日期(“08 - 2010年6月- - - - - -”)解决日期。

使用swapbyzero的名称-值对参数LegRate,LegType,LatestFloatingRate,AdjustCashFlowsBasis,BusinessDayConvention计算输出价格,SwapRate,人工智能,RecCF,RecCFDates,PayCF,PayCFDates:

解决= 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 -Jun-2015','08 -Jun-2017','08 -Jun-2020'}');成熟= datenum(“15 - 9 - 2020”);LegRate = [。025年50];LegType = [1 0];%固定/浮动LatestFloatingRate = .005;[Price, SwapRate, AI, RecCF, RecCFDates, PayCF,PayCFDates] =...swapbyzero(速率、等级、沉淀、成熟、“LegType”LegType,...'LatestFloatingRate'LatestFloatingRate,“AdjustCashFlowsBasis”,真的,...“BusinessDayConvention”,'modifiedfollow')
价格= -6.7259
SwapRate =南
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.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”;EndDates = {“01 -可能- 2013”;“01 -可能- 2014”;“01 -可能- 2015”;“01 -可能- 2016”};率= [[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张光盘:[4×2双]价格:[4×2双] EndTimes:[4X1双] StartTimes:[4X1双] EndDates:[4X1双] StartDates:734990 ValuationDate:734990基础:0 EndMonthRule:1

看着那(这利率对于这两条利率曲线。

RateSpec.Rates
ans =4×20.0356 0.0366 0.0412 0.0422 0.0449 0.0459 0.0477 0.0497

定义掉期工具。

解决=“01 -可能- 2012”;成熟=“01 -可能- 2015”;LegRate = [0.06 10];主= [100; 50; 100];三个名义金额

使用两条曲线对三次掉期进行定价。

价格= swapbyzero(利率,利息,结算,到期,“校长”,负责人)
价格=3×23.9688 3.6869 1.9844 1.8434 3.9688 3.6869

用两条利率曲线为掉期定价。首先,定义两个利率期限结构的数据:

startdate可以=“01 -可能- 2012”;EndDates = {“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带字段的结构数组:FinObj复利盘价格EndTimes StartTimes EndDates StartDates ValuationDate基础EndMonthRule

定义掉期工具。

解决=“01 -可能- 2012”;成熟=“01 -可能- 2015”;LegRate = [0.06 10];主= [100; 50; 100];

使用两条曲线对三次掉期进行定价。

价格= swapbyzero(利率,利息,结算,到期,“校长”,负责人)
价格=3×13.9693 1.9846 3.9693

若要计算远期票面交换率,请设置开始日期参数设置为一个未来日期,并设置固定的票面利率LegRate输入

定义零曲线数据并使用以下命令构建零曲线IRDataCurve

ZeroRates = [2.09 2.47 2.71 3.12 3.43 3.85 4.57]'/100;解决= datenum (“1 - 1月- 2012”);尾日期=日期(结算,12*[1 2 3 5 7 10 20]]);复合= 1;ZeroCurve = IRDataCurve (“零”、结算、EndDates ZeroRates,“复合”复合)
ZeroCurve =类型:零定居:734869(01-JAN-2012)配混:1的基础:0(实际/实际)InterpMethod:线性日期:[7X1双]数据:[7X1双]

创建一个RateSpec结构使用toRateSpec方法。

RateSpec = ZeroCurve.toRateSpec (EndDates)
RateSpec =结构体字段:FinObj: 'RateSpec'复合:1光盘:[7x1双]率:[7x1双]结束时间:[7x1双]开始时间:[7x1双]结束日期:[7x1双]开始日期:734869估价日期:734869依据:0结束月规则:1

计算向前交换速率(优惠券率为固定支线),使得前掉换价在时间=0是零。远期掉期在一个月后开始(2012年2月1日),10年后到期(2022年2月1日)。

StartDate可以= datenum (的1 - 2月- 2012);成熟= datenum(的1 - 2月- 2022);le箅子= [NaN 0];[价格,交换率]= swapbyzero(利率,积分,结算,到期,...StartDate可以的StartDate可以)
价格= 0
SwapRate = 0.0378

swapbyzero函数的基础上生成现金流日期解决成熟日期,同时使用成熟日期从“锚”的日期来算的定期倒退。默认,swapbyzero不区分非营业日和营业日。为了使swapbyzero移动非营业日以下的工作日,你可以,你可以设置可选的名称值输入参数BusinessDayConvention与值跟随

定义零曲线数据并使用以下命令构建零曲线IRDataCurve

ZeroRates = [2.09 2.47 2.71 3.12 3.43 3.85 4.57]'/100;解决= datenum (的5 - 1月- 2012);尾日期=日期(结算,12*[1 2 3 5 7 10 20]]);复合= 1;ZeroCurve = IRDataCurve (“零”、结算、EndDates ZeroRates,“复合”、复合);RateSpec = ZeroCurve.toRateSpec (EndDates);StartDate可以= datenum (“5 - 2月- 2012 ');成熟= datenum(“5 - 2月- 2022 ');le箅子= [NaN 0];

来演示可选的输入BusinessDayConvention,swapbyzero第一次使用时没有名称-值输入参数,然后使用可选名称-值输入参数BusinessDayConvention。注意,当使用BusinessDayConvention,所有的日子都是工作日。

[RecCFDates1 Price1 SwapRate1, ~, ~, ~, PayCFDates1] = swapbyzero (RateSpec LegRate,定居,成熟,...StartDate可以的StartDate可以);datestr (RecCFDates1)
ans =11 x11 char数组“05- 1 -2012”“05- 2 -2013”“05- 2 -2014”“05- 2 -2015”“05- 2 -2016”“05- 2 -2017”“05- 2 -2018”“05- 2 -2019”“05- 2 -2020”“05- 2 -2021”“05- 2 -2022”
isbusday (RecCFDates1)
ans =11 x1逻辑阵列1 1 1 1 1 0 1 1 1 1⋮
[RecCFDates2 Price2 SwapRate2, ~, ~, ~, PayCFDates2] = swapbyzero (RateSpec LegRate,定居,成熟,...StartDate可以的,开始日期,“BusinessDayConvention”,'跟随');datestr (RecCFDates2)
ans =12 x11 char数组'05 -Jan-2012' '06 -Feb-2012' '05 -Feb-2013' '05 -Feb-2014' '05 -Feb-2015' '05 -Feb-2016' '06 -Feb-2017' '05  -  2月 -  2018' '05 -Feb-2019' '05 -Feb-2020' '05 -Feb-2021' '07 -Feb-2022'
isbusday (RecCFDates2)
ans =12 x1逻辑阵列1 1 1 1 1 1 1 1 1 1⋮

使用。对摊销掉期进行定价主要输入参数来定义摊销计划。

创建RateSpec

率= 0.035;ValuationDate =“1 - 1月- 2011”;startdate可以= ValuationDate;EndDates =“1 - 1月- 2017”;复合= 1;RateSpec = intenvset(“ValuationDate”,ValuationDate,startdate可以的startdate可以,...“EndDates”EndDates,“利率”率,“复合”、复合);

使用以下数据创建交换工具:

解决=“1 - 1月- 2011”;成熟=“1 - 1月- 2017”;le箅子= [0.04 10];

定义交换摊销时间表。

校长= {{“1 - 1月- 2013”100;“1 - 1月- 2014”80;“1 - 1月- 2015”60;“1 - 1月- 2016”40;“1 - 1月- 2017”20}};

计算摊销掉期的价格。

价格= swapbyzero(利率,利息,结算,到期,“校长”,负责人)
价格= 1.4574

对远期掉期进行定价开始日期输入参数来定义交换的未来开始日期。

创建RateSpec

率= 0.0325;ValuationDate =“1 - 1月- 2012”;startdate可以= ValuationDate;EndDates =“1 - 1月- 2018”;复合= 1;RateSpec = intenvset(“ValuationDate”,ValuationDate,startdate可以的startdate可以,...“EndDates”EndDates,“利率”率,“复合”复合)
RateSpec =结构体字段:FinObj: 'RateSpec'复合:1光盘:0.8254率:0.0325结束时间:6开始时间:0结束日期:737061开始日期:734869估价日期:734869基础:0结束月规则:1

计算一年(2013年1月1日)开始、三年(远期掉期利率为4.27%)到期的远期掉期的价格。

解决=“1 - 1月- 2012”;StartDate可以=“1 - 1月- 2013”;成熟=“1 - 1月- 2016”;LegRate = [0.0427 10];价格= swapbyzero(利率,利息,结算,到期,StartDate可以的StartDate可以)
价格= 2.5083

使用前面的数据,计算远期掉期利率,固定期限的息票率,使远期掉期价格在= 0时为0。

le箅子= [NaN 10];[价格,交换率]= swapbyzero(利率,积分,结算,到期,...StartDate可以的StartDate可以)
价格= 0
SwapRate = 0.0335

如果解决不是在浮动汇率通知的重置日期,swapbyzero之前尝试获取最新的浮动汇率解决RateSpec或者是LatestFloatingRate参数。当这个速度重置日期范围内的出RateSpec(和LatestFloatingRate未指定),swapbyzero未能获取该日期的速率并生成错误。此示例演示如何使用LatestFloatingRate输入参数,以避免错误。

创建交换工具时的错误条件开始日期不能从。确定RateSpec

解决=' 01 - 1月- 2000;成熟=' 01 - 12月- 2003;基础= 0;校长= 100;le箅子= [0.06 20];% (CouponRate传播)LegType = [1 0];%[固定浮点]LegReset = [1 1];%每年支付一次负载deriv.mat;价格= swapbyzero (ZeroRateSpec LegRate定居,成熟,...'LegReset'LegReset,“基础”的基础上,“校长”校长,...“LegType”LegType)
错误使用floatbyzero(线256)在仪器开始日的速率不能从RateSpec获得。其复位日期(01日 -  12月1999年)是包含在RateSpec日期范围的出来。这个比率是需要计算在仪器开始日期的现金流。考虑指定这个速度与“LatestFloatingRate”输入参数。误差在swapbyzero(线289)[FloatFullPrice,FloatPrice,FloatCF,FloatCFDates] = floatbyzero(FloatRateSpec,涂抹酱,沉降,...

这里,重置日期以速率解决01 - 12月- 1999,该日期早于估值日ZeroRateSpec(01 - 1月- 2000)。可以通过使用LatestFloatingRate输入参数。

定义LatestFloatingRate并计算浮动汇率价格。

价格= swapbyzero (ZeroRateSpec LegRate定居,成熟,...'LegReset'LegReset,“基础”的基础上,“校长”校长,...“LegType”LegType,'LatestFloatingRate',0.03)
价格= 4.7594

定义OIS和Libor利率。

解决= datenum (“15 - 3月- 2013”);edates = daysadd(Settle,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”)datetick传奇({“OIS曲线”,“伦敦银行间拆放款利率曲线”})

创建一个关联RateSpecOIS和Libor曲线。

OISCurve = intenvset(“利率”OISRates,StartDate可以的,解决,“EndDates”,CurveDates);LiborCurve = intenvset (“利率”LiborRates,StartDate可以的,解决,“EndDates”,CurveDates);

定义交换。

成熟= datenum(“15 - 3月- 2018”);%五年掉期FloatSpread = 0;FixedRate = .025;le箅子= [FixedRate FloatSpread];

计算掉期工具的价格。的LiborCurve期限结构将用于产生浮动腿的现金流。的OISCurve期限结构将用于折现现金流。

价格= swapbyzero(OISCurve, legrt, Settle,...到期,“ProjectionCurve”LiborCurve)
价格= -0.3697

比较期限结构时的结果OISCurve既可用于折现,也可用于生成浮动腿的现金流。

PriceSwap = swapby0 (OISCurve, legrad, Settle, Maturity)
PriceSwap = 2.0517

价格一种现有的交叉货币互换,接受固定的日元汇率,每年支付固定的美元汇率。

解决= datenum ('15 -Aug-2015');成熟= datenum('15 -Aug-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);Price = swapbyzero([ratespe_jpy ratespe_usd], [FixedRate_JPY FixedRate_USD],...解决,成熟,“校长”[Principal_JPY Principal_USD]'FXRate',[S 1],“LegType”LegType)
价格= 1.5430 e + 06

定价一个新的掉期,你支付一个欧元浮动和收到一个美元浮动。

解决= datenum ('22  - 癸2015' 年);成熟= datenum('15 -Aug-2018');LegRate = [0 -50/10000];LegType = [0 0];%的浮浮LegReset = [4 4];FXRate = 1.1;名义的= [10000000 8000000];USD_Dates =日期(结算,[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 =日期(结算,[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],...LegRate,定居,成熟,“LegType”LegType,'LegReset'LegReset,“校长”名义上,...'FXRate'[1 FXRate],“ExchangeInitialPrincipal”,假)
价格= 1.2002 e + 06

输入参数

全部折叠

利率结构,指定使用intenvset创建RateSpec

RateSpec也可以是1——- - - - - -2输入变量的RateSpecs是第二个RateSpec结构,包含一条或多条付费分支的折扣曲线。如果只有一个RateSpec结构被指定,然后是这个RateSpec是用来折现双腿的。

数据类型:结构体

步长速率,指定为aNINST——- - - - - -2矩阵,每一行定义如下:

  • (CouponRate传播)(fixed-float)

  • (CouponRate传播)(浮子固定)

  • [CouponRate CouponRate](惯性)

  • (传播扩散)(float-float)

CouponRate为十进制年利率。传播是基点超过参考速率的数量。第一列表示接收支路,而第二列表示支付腿。

数据类型:

结算日期,指定了作为一个标量或NINST——- - - - - -1序列号向量或相同值的日期字符向量,表示每个交换的结算日期。解决必须早于成熟

数据类型:字符|细胞|

到期日,指定为NINST——- - - - - -1序列日期数字或日期字符向量的向量,表示每个互换的到期日。

数据类型:字符|细胞|

名称-值对的观点

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值是对应的值。的名字必须出现在引号内。可以按任意顺序指定多个名称和值对参数名1,值1,...,NameN,值N

例子:(价格、SwapRate AI, RecCF RecCFDates, PayCF, PayCFDates] = swapbyzero (RateSpec LegRate,解决争议,
成熟, 'LegType',LegType, 'LatestFloatingRate',LatestFloatingRate, 'AdjustCashFlowsBasis',真的,
“BusinessDayConvention”、“modifiedfollow”)

普通掉期,摊销掉期,远期掉期

全部折叠

重置频率每年为每个交换,指定为逗号分隔的对组成'LegReset'NINST——- - - - - -2向量。

数据类型:

日计数基表示每条腿的基,指定为逗号分隔的对,由“基础”NINST——- - - - - -1数组(或NINST——- - - - - -2如果基础每条腿都不一样)。

  • 0 =实际/实际

  • 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

有关更多信息,请参见基础

数据类型:

名义本金金额或主值时间表,指定为逗号分隔的一对组成的“校长”和一个向量或单元数组。

主要接受一个NINST——- - - - - -1向量或NINST——- - - - - -1单元阵列(或NINST——- - - - - -2如果主要是名义本金金额或主要价值时间表每条腿不同)。对于时间表,单元阵列的每个元素是一个NumDates——- - - - - -2阵列,其中第一列是日期,第二栏是其相关联的名义本金值。日期表示最后一天的主要价值是有效的。

数据类型:细胞|

分支类型,指定为逗号分隔的对,由“LegType”NINST——- - - - - -2矩阵值[1 1](惯性),[1 0](fixed-float),[0 1](float-fixed),或[0 0](浮动浮动)。每一行代表一个工具。每列指示是否相应的腿被固定(1)或浮动(0)。这个矩阵定义了输入值的解释LegRateLegType允许[1 1](惯性),[1 0](fixed-float),[0 1](float-fixed),或[0 0](浮子浮)互换

数据类型:

用于生成日期的月末规则标记成熟对于一个月有30天或更少天的月末日期,是否指定为逗号分隔的对'EndMonthRule'和一个非负整数[0,1)使用NINST——- - - - - -1(或NINST——- - - - - -2如果EndMonthRule每条腿都不一样)。

  • 0=忽略规则,这意味着付款日期总是相同的数字天的一个月。

  • 1= Set rule on,意思是付款日期总是一个月的最后一天。

数据类型:逻辑

标志来调整现金流基于实际周期日数,指定为逗号分隔的一对组成的“AdjustCashFlowsBasis”NINST——- - - - - -1(或NINST——- - - - - -2如果AdjustCashFlowsBasis是不同的每一腿)的逻辑与价值观0(虚假的)或1(真正的)。

数据类型:逻辑

业务日约定,指定为逗号分隔的对,由“BusinessDayConvention”和一个字符向量N——- - - - - -1(或NINST——- - - - - -2如果BusinessDayConvention为工作日公约的字符向量的每个腿)单元阵列不同。对于工作日约定的选择将决定非工作日应如何处理。非营业日被定义为周末加任何其他日期,企业都开不了(如法定节假日)。价值观是:

  • 实际-非工作时间实际上被忽略。在非营业日下降的现金流量被认为是在实际日期分配的。

  • 跟随-假设非营业日的现金流量在下一个营业日分配。

  • modifiedfollow-假设非营业日的现金流量在下一个营业日分配。但是,如果下一个营业日在不同的月份,则采用前一个营业日。

  • 以前的-假设在非营业日的现金流量是在上一个营业日分配的。

  • modifiedprevious-假设在非营业日的现金流量是在上一个营业日分配的。但是,如果前一个营业日在另一个月,则采用下一个营业日。

数据类型:字符|细胞

在计算业务日中使用的假日,指定为逗号分隔的对,由“假期”用MATLAB实现的数据编号NHolidays——- - - - - -1向量。

数据类型:

交换实际开始的日期,指定为逗号分隔的对StartDate可以的NINST——- - - - - -1序列号向量、字符向量或字符向量的单元数组。

数据类型:字符|细胞|

下一个浮动支付的费率,在最后的重置日期设置,由逗号分隔的对指定'LatestFloatingRate'和一个标量数值。

LatestFloatingRate接受下一个浮动付款的利率,设置在最后的重置日期。LatestFloatingRate是一个NINST——- - - - - -1(或NINST——- - - - - -2如果LatestFloatingRate每条腿都不一样)。

数据类型:

利率曲线用于为掉期的浮动部分生成现金流,指定为逗号分隔的对“ProjectionCurve”RateSpec

如果指定固定浮动或浮动固定的交换,则ProjectionCurve利率曲线用于为掉期的浮动部分产生现金流。这个结构必须使用intenvset

如果指定一个固定的固定或浮子浮交换,然后ProjectionCurveNINST——- - - - - -2矢量因为每个浮动腿可具有不同的投影曲线。

数据类型:结构体

货币掉期

全部折叠

外汇(FX)汇率适用于现金流量,指定为逗号分隔对组成'FXRate'NINST——- - - - - -2阵列双打的。由于外汇汇率可以适用于任何付款人或接收器的腿,有2列输入数组中,你必须指定哪条腿有外币。

数据类型:

标记来指示是否初始化主要交换,指定为逗号分隔的一对组成的“ExchangeInitialPrincipal”NINST——- - - - - -1逻辑值的数组。

数据类型:逻辑

标记,指示是否主要在交换成熟,指定为逗号分隔的对,由“ExchangeMaturityPrincipal”NINST——- - - - - -1逻辑值的数组。尽管在实践中,大多数单一货币掉期在到期时不交换本金,但默认情况下确实保持了向后兼容性。

数据类型:逻辑

输出参数

全部折叠

掉期价格,以工具数量(NINST),以曲线数(NUMCURVES)矩阵。每一列都来自于其中一条零曲线。价格输出是全价。为了计算净价,减去应计利息(人工智能)从肮脏的价格。

适用于固定腿的费率,以a退回NINST——- - - - - -NUMCURVES适用于固定利率的利率矩阵,使掉期在第0时刻的值为零。这个利率是用来计算掉期的价格时,为固定的腿指定的利率LegRate。的SwapRate输出用以下内容填充对于那些CouponRate未设置为

应计利息,以a方式返还NINST——- - - - - -NUMCURVES矩阵。

接收段的现金流,作为a返回NINST——- - - - - -NUMCURVES矩阵。

请注意

方法中指定的多个曲线RateSpec输入,然后第一个NCURVES行对应于第一个交换,第二个交换NCURVES行对应于第二个交换,依此类推。

接收段的付款日期,作为回款NINST——- - - - - -NUMCURVES矩阵。

对于支付腿的现金流,返回一个NINST——- - - - - -NUMCURVES矩阵。

付款腿的付款日期,返回为NINST——- - - - - -NUMCURVES矩阵。

更多关于

全部折叠

摊还期

在一个摊销交换,因为它是依赖于一个潜在的金融工具与下降(摊销)主要平衡,如抵押的名义本金周期性减小。

远期掉期

在将来某个固定日期达成利率互换协议的协议。

货币互换

在掉期交易中,掉期的支付环节以不同的货币计价。

交叉货币互换和标准互换之间的一个区别是,在交换的开始和/或结束,可能会发生主要的交换。初始本金的交换将才开始发挥作用的定价在一开始交叉货币互换(换言之,定价现有的交叉货币掉期这一现金流发生之后会出现)。此外,主这些交流通常不影响互换的值(因为两条腿的主值是基于所述货币汇率进行选择),但影响到现金每条腿流动。

参考

[1]船体,J。期权、期货和其他衍生品第四版。普伦蒂斯霍尔,2000年。

之前介绍过的R2006a