帽
仪对象
创建并定价帽
一个或多个Cap仪器对象使用此工作流:
使用fininstrument
要创建帽
一个或多个Cap仪器的仪器对象。
使用finmodel
要指定HullWhite
,BlackKarasinski
,黑色的
,正常的
,BraceGatarekMusiela
,SABRBraceGatarekMusiela
,或LinearGaussian2F
的模型帽
仪对象。
选择一种定价方法。
有关此工作流的详细信息,请参见开始使用基于对象的金融工具定价框架的工作流程.
有关a的可用型号和定价方法的更多信息帽
仪器,看选择仪器,模型和价格.
创建一个CapOpt
= fininstrument (InstrumentType
,'罢工
“strike_value,”成熟
”,maturity_date)帽
对象用于一个或多个Cap仪器InstrumentType
并设置属性用于所需的名-值对参数罢工
和成熟
.
的帽
仪器支持香草和摊销上限金宝app。
设置可选属性在前面的语法中,除了必需的参数之外,还使用其他的名称-值对。例如,CapOpt
= fininstrument (___,名称,值
)CapOpt = fininstrument("Cap",'Strike',0.65,'Maturity',datetime(2019,1,30),'Reset',4,'Principal',100,'ResetOffset',1,'Basis',1,' daycountadjusttedcashflow ',true,'BusinessDayConvention',"follow",'ProjectionCurve',ratecurve_object,'Name',"cap_option")
创建一个帽
期权,罢工率为0.65。可以指定多个名称-值对参数。
InstrumentType
- - - - - -仪器类型“帽子”
|值为的字符串数组“帽子”
|带值的字符向量“帽子”
|值为的字符向量的单元格数组“帽子”
仪器类型,指定为值为的字符串“帽子”
,值为的字符向量“帽子”
,一个NINST
——- - - - - -1
值为的字符串数组“帽子”
,或NINST
——- - - - - -1
值为的字符向量的单元格数组“帽子”
.
数据类型:字符
|细胞
|字符串
帽
名称-值对参数
指定必需的和可选的逗号分隔的对名称,值
参数。名字
参数名称和价值
对应的值。名字
必须出现在引号内。您可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家
.
CapOpt = fininstrument("Cap",'Strike',0.65,'Maturity',datetime(2019,1,30),'Reset',4,'Principal',100,'ResetOffset',1,'Basis',1,' daycountadjusttedcashflow ',true,'BusinessDayConvention',"follow",'ProjectionCurve',ratecurve_object,'Name',"cap_option")
帽
名称-值对参数
罢工
- - - - - -最高执行价格执行价格的上限,由逗号分隔的对组成“罢工”
标量非负十进制值或NINST
——- - - - - -1
非负数值向量。
数据类型:双
成熟
- - - - - -上限到期日期上限到期日期,指定为逗号分隔的对,由“ExerciseDate”
和标量日期时间,串行日期编号,日期字符向量,日期字符串或NINST
——- - - - - -1
日期时间向量、序列号、日期字符向量的单元格数组或日期字符串数组。
如果使用日期字符向量或日期字符串,格式必须由datetime
因为成熟
属性存储为日期时间。
数据类型:双
|字符
|细胞
|字符串
|datetime
帽
名称-值对参数
重置
- - - - - -重置每年的付款频率1
(默认)|数值为0
,1
,2
,3.
,4
,6
,或12
|值为的数值向量0
,1
,2
,3.
,4
,6
,或12
重置每年支付的频率,指定为由逗号分隔的对组成“重置”
一个标量数字或者NINST
——- - - - - -1
数值向量。
数据类型:双
基础
- - - - - -日数基础0
(实际/实际)(默认)|整数的0
来13
|整数向量0
来13
天数计数的基础,指定为逗号分隔对组成“基础”
一个标量整数或者NINST
——- - - - - -1
具有以下值的整数向量:
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
单元格数组的时间表作为输入。
数据类型:双
|时间表
ResetOffset
- - - - - -汇率设定滞后0
(默认)|标量数值|数值向量速率设置中的延迟,指定为逗号分隔的对,由“ResetOffset”
一个标量数字或者NINST
——- - - - - -1
数值向量。
数据类型:双
DaycountAdjustedCashFlow
- - - - - -标记根据实际期间天数调整现金流假
(默认)|的价值真正的
或假
|的值的向量真正的
或假
标志,以根据实际期间天数计数调整现金流,指定为逗号分隔的对,由“DaycountAdjustedCashFlow”
一个标量或者anNINST
——- - - - - -1
值为真正的
或假
.
数据类型:逻辑
BusinessDayConvention
- - - - - -工作日惯例“实际”
(默认)|字符串|字符串数组|特征向量|字符向量的单元格数组工作日约定,指定为逗号分隔的对,由“BusinessDayConvention”
标量字符串或字符向量或NINST
——- - - - - -1
字符向量的单元格数组或用于工作日约定的字符串数组。营业日惯例的选择决定了如何对待非营业日。非营业日被定义为周末加上任何其他不营业的日期(例如,法定假日)。值:
“实际”
-非业务日被有效地忽略了。非营业日的现金流假定在实际日期进行分配。
“关注”
-非营业日的现金流假设在下一个营业日进行分配。
“modifiedfollow”
-非营业日的现金流假设在下一个营业日进行分配。但是,如果下一个营业日在不同的月份,则采用前一个营业日。
“以前”
-非营业日的现金流假设在前一个营业日进行分配。
“modifiedprevious”
-非营业日的现金流假设在前一个营业日进行分配。但是,如果前一个营业日在不同的月份,则采用下一个营业日。
数据类型:字符
|细胞
|字符串
假期
- - - - - -用于计算营业日的假日NaT
(默认)|日期时间|字符向量的单元格数组|日期字符串数组|序列号用于计算营业日的假日,指定为逗号分隔的对,由“假期”
和日期使用NINST
——- - - - - -1
日期时间向量、序列号、日期字符向量的单元格数组或日期字符串数组。例如:
H =节假日(datetime('today'),datetime(2025,12,15));CapOpt = fininstrument("Cap",'Strike',100,'Maturity',datetime(205,12,15),'Holidays',H)
数据类型:双
|细胞
|datetime
|字符串
ProjectionCurve
- - - - - -用于产生未来现金流的利率曲线ratecurve.empty
(默认)|ratecurve
对象|向量的ratecurve
对象用于预测未来现金流的利率曲线,由逗号分隔的对组成“ProjectionCurve”
一个标量ratecurve
对象或NINST
——- - - - - -1
向量的ratecurve
对象。这些对象必须使用ratecurve
.如果远期曲线与贴现曲线不同,则使用此可选输入。
数据类型:对象
名字
- - - - - -仪器自定义名称”“
(默认)|字符串|字符串数组|特征向量|字符向量的单元格数组一个或多个仪器的用户定义名称,指定为逗号分隔的对,由“名字”
标量字符串或字符向量或NINST
——- - - - - -1
字符向量或字符串数组的单元格数组。
数据类型:字符
|细胞
|字符串
罢工
- - - - - -期权执行价格期权执行价格值,返回为标量非负值或NINST
——- - - - - -1
非负值的向量。
数据类型:双
成熟
- - - - - -上限到期日期上限到期日期,返回为标量日期时间或NINST
——- - - - - -1
日期时间向量。
数据类型:datetime
重置
- - - - - -重置每年的付款频率1
(默认)|标量数值|数值向量重置每年支付的频率,返回为标量数字或NINST
——- - - - - -1
数值向量。
数据类型:双
基础
- - - - - -日数基础0
(实际/实际)(默认)|整数的0
来13
|整数向量0
来13
日计数基础,返回为标量整数或NINST
——- - - - - -1
整数向量。
数据类型:双
主要
- - - - - -本金金额或本金价值表One hundred.
(默认)|标量数值|数值向量|时间表主金额或主值表,返回为标量数字或NINST
——- - - - - -1
本金金额的数字矢量或本金价值时间表。
数据类型:双
|时间表
ResetOffset
- - - - - -汇率设定滞后0
(默认)|标量数值|数值向量速率设置中的延迟,返回为标量数字或NINST
——- - - - - -1
数值向量。
数据类型:双
DaycountAdjustedCashFlow
- - - - - -标记根据实际期间天数调整现金流假
(默认)|的价值真正的
或假
|的值的向量真正的
或假
标志,以根据实际期间天数计数调整现金流,以逻辑标量或NINST
——- - - - - -1
值为真正的
或假
.
数据类型:逻辑
BusinessDayConvention
- - - - - -工作日惯例“实际”
(默认)|字符串|字符串数组业务日期约定,返回为标量字符串或NINST
——- - - - - -1
字符串数组。
数据类型:字符串
假期
- - - - - -用于计算营业日的假日NaT
(默认)|日期时间向量用于计算营业日的假日,返回为NINST
——- - - - - -1
日期时间向量。
数据类型:datetime
ProjectionCurve
- - - - - -用于产生未来现金流的利率曲线ratecurve.empty
(默认)|ratecurve
对象|向量的ratecurve
对象用于预测未来现金流的利率曲线,以标量形式返回ratecurve
对象或NINST
——- - - - - -1
向量的ratecurve
对象。
数据类型:对象
名字
- - - - - -仪器自定义名称”“
(默认)|字符串|字符串数组仪器的用户定义名称,返回为标量字符串或NINST
——- - - - - -1
字符串数组。
数据类型:字符串
这个例子展示了香草定价的工作流帽
仪器在使用HullWhite
模型和HullWhite
定价方法。
创建帽
仪对象
使用fininstrument
要创建帽
仪对象。
CapOpt = fininstrument(“帽子”,“罢工”, 0.02,“成熟”datetime (2019 1 30),“重置”4“校长”, 100,“基础”8“名字”,“cap_option”)
CapOpt = Cap with properties: Strike: 0.0200成熟度:30- january -2019 ResetOffset: 0 Reset: 4 Basis: 8 Principal: 100 ProjectionCurve: [0x0 ratecurve] DaycountAdjustedCashFlow: 0 BusinessDayConvention: "actual" Holidays: NaT Name: "cap_option"
创建HullWhite
模型对象
使用finmodel
要创建HullWhite
模型对象。
HullWhiteModel = finmodel(“HullWhite”,“α”, 0.62,“σ”, 0.99)
HullWhiteModel = HullWhite属性:阿尔法:0.6200西格玛:0.9900
创建ratecurve
对象
创建一个ratecurve
对象使用ratecurve
.
Settle = datetime(2018,9,15);类型=“零”;ZeroTimes = [calmonths(6) calyears([1 2 3 4 5 7 10 20 30])]';ZeroRates = [0.0052 0.0055 0.0061 0.0073 0.0094 0.0119 0.0168 0.0222 0.0293 0.0307]';ZeroDates = Settle + ZeroTimes;比率曲线(“零”、结算、ZeroDates ZeroRates)
myRC =带有属性的利率曲线:类型:“零”复合:-1基础:0日期:[10x1 datetime]利率:[10x1 double]结算:15-Sep-2018 InterpMethod:“线性”ShortExtrapMethod:“下一个”LongExtrapMethod:“前一个”
创建HullWhite
定价的人对象
使用finpricer
要创建HullWhite
price对象和使用ratecurve
对象的“DiscountCurve”
名称-值对参数。
outPricer = finpricer(“分析”,“模型”HullWhiteModel,“DiscountCurve”myRC)
outPricer = HullWhite与属性:折扣曲线:[1x1率曲线]模型:[1x1 finmodel。HullWhite]
价格帽
仪器
使用价格
来计算的价格帽
乐器。
价格=价格(outprice,CapOpt)
价格= 2.9366
这个例子展示了为多个香草定价的工作流帽
使用HullWhite
模型和HullWhite
定价方法。
创建帽
仪对象
使用fininstrument
要创建帽
仪器对象为三个Cap仪器。
CapOpt = fininstrument(“帽子”,“罢工”, 0.02,“成熟”datetime([2019年,1、30;2019年,2、30;2019年,3、30),“重置”4“校长”, 100;200;300年),“基础”8“名字”,“cap_option”)
CapOpt =3×1对象3x1带有属性的上限数组:执行期限重置偏移量重置基础本金投影曲线日计数调整现金流营业日惯例假日名称
创建HullWhite
模型对象
使用finmodel
要创建HullWhite
模型对象。
HullWhiteModel = finmodel(“HullWhite”,“α”, 0.62,“σ”, 0.99)
HullWhiteModel = HullWhite属性:阿尔法:0.6200西格玛:0.9900
创建ratecurve
对象
创建一个ratecurve
对象使用ratecurve
.
Settle = datetime(2018,9,15);类型=“零”;ZeroTimes = [calmonths(6) calyears([1 2 3 4 5 7 10 20 30])]';ZeroRates = [0.0052 0.0055 0.0061 0.0073 0.0094 0.0119 0.0168 0.0222 0.0293 0.0307]';ZeroDates = Settle + ZeroTimes;比率曲线(“零”、结算、ZeroDates ZeroRates)
myRC =带有属性的利率曲线:类型:“零”复合:-1基础:0日期:[10x1 datetime]利率:[10x1 double]结算:15-Sep-2018 InterpMethod:“线性”ShortExtrapMethod:“下一个”LongExtrapMethod:“前一个”
创建HullWhite
定价的人对象
使用finpricer
要创建HullWhite
price对象和使用ratecurve
对象的“DiscountCurve”
名称-值对参数。
outPricer = finpricer(“分析”,“模型”HullWhiteModel,“DiscountCurve”myRC)
outPricer = HullWhite与属性:折扣曲线:[1x1率曲线]模型:[1x1 finmodel。HullWhite]
价格帽
仪器
使用价格
来计算的价格帽
仪器。
价格=价格(outprice,CapOpt)
价格=3×12.9366 7.4694 17.7915
这个例子展示了香草定价的工作流帽
仪器当你使用正常的
模型和正常的
定价方法。
创建ratecurve
对象
创建一个ratecurve
对象使用ratecurve
对于基本利率曲线帽
乐器。
Settle = datetime(2018,9,15);类型=“零”;ZeroTimes = [calmonths(6) calyears([1 2 3 4 5 7 10 20 30])]';ZeroRates = [0.0052 0.0055 0.0061 0.0073 0.0094 0.0119 0.0168 0.0222 0.0293 0.0307]';ZeroDates = Settle + ZeroTimes;比率曲线(“零”、结算、ZeroDates ZeroRates)
myRC =带有属性的利率曲线:类型:“零”复合:-1基础:0日期:[10x1 datetime]利率:[10x1 double]结算:15-Sep-2018 InterpMethod:“线性”ShortExtrapMethod:“下一个”LongExtrapMethod:“前一个”
创建帽
仪对象
使用fininstrument
要创建帽
仪对象。
CapOpt = fininstrument(“帽子”,“成熟”datetime(2022、9、15),“罢工”, 0.04,“ProjectionCurve”myRC)
CapOpt =带有属性的上限:Strike: 0.0400到期日期:15-Sep-2022 ResetOffset: 0重置:1基准:0本金:100投影曲线:[1x1利率曲线]daycountadjusted现金流:0营业日惯例:“实际”假期:NaT名称:""
创建正常的
模型对象
使用finmodel
要创建正常的
模型对象。
NormalModel = finmodel(“正常”,“波动”, 0.01)
NormalModel =正常属性:波动率:0.0100
创建正常的
定价的人对象
使用finpricer
要创建正常的
price对象和使用ratecurve
对象的“DiscountCurve”
名称-值对参数。
outPricer = finpricer(“分析”,“DiscountCurve”myRC,“模型”NormalModel)
outPricer = Normal with properties: DiscountCurve: [1x1 ratecurve] Shift: 0 Model: [1x1 finmodel.]正常)
价格帽
仪器
使用价格
来计算的价格帽
乐器。
[Price, outPR] = Price (outprice, CapOpt)
价格= 0.0701
outPR = priceresult with properties:结果:[1x1表]PricerData: []
这个例子展示了为摊销定价的工作流帽
仪器当你使用黑色的
模型和黑色的
定价方法。
创建帽
仪对象
使用fininstrument
创建一个平摊帽
仪对象。
CADates = [datetime(2020,9,1);datetime (2023 9,1)];capprincipal = [100;85);本金=时间表(CADates,本金);CapOpt = fininstrument(“帽子”,“成熟”datetime (2023 9 1),“罢工”, 0.015,“校长”校长,“名字”,“cap_amortizing_option”)
CapOpt = Cap with properties: Strike: 0.0150期限:01-Sep-2023 ResetOffset: 0重置:1 Basis: 0 Principal: [2x1 schedule] ProjectionCurve: [0x0 ratecurve] daycountadjuststedcash flow: 0 BusinessDayConvention: "actual" Holidays: NaT Name: "cap_amortizing_option"
创建黑色的
模型对象
使用finmodel
要创建黑色的
模型对象。
BlackModel = finmodel(“黑色”,“波动”, 0.2)
BlackModel =黑色属性:波动性:0.2000 Shift: 0
创建ratecurve
对象
创建一个ratecurve
对象使用ratecurve
.
Settle = datetime(2018,9,1);类型=“零”;ZeroTimes = [calyears([1 2 3 4 5 7 10])]';ZeroRates = [0.0052 0.0055 0.0061 0.0073 0.0094 0.0119 0.0168]';ZeroDates = Settle + ZeroTimes;比率曲线(“零”、结算、ZeroDates ZeroRates);
创建黑色的
定价的人对象
使用finpricer
要创建黑色的
price对象和使用ratecurve
对象的“DiscountCurve”
名称-值对参数。
outPricer = finpricer(“分析”,“模型”BlackModel,“DiscountCurve”myRC)
outprice =黑色属性:模型:[1x1 finmodel。黑色]折现曲线:[1x1率曲线]
价格帽
仪器
使用价格
来计算的价格帽
乐器。
价格=价格(outprice,CapOpt)
价格= 0.3897
这个例子展示了香草定价的工作流帽
仪器在使用HullWhite
模型和IRTree
定价方法。
创建帽
仪对象
使用fininstrument
要创建帽
仪对象。
CapOpt = fininstrument(“帽子”,“罢工”, 0.02,“成熟”datetime (2020 1 30),“重置”4“校长”, 100,“基础”8“名字”,“cap_option”)
CapOpt =带有属性的上限:Strike: 0.0200期限:30- january -2020 ResetOffset: 0重置:4 Basis: 8 Principal: 100 ProjectionCurve: [0x0 ratecurve] DaycountAdjustedCashFlow: 0 businessday惯例:“实际”假期:NaT名称:"cap_option"
创建HullWhite
模型对象
使用finmodel
要创建HullWhite
模型对象。
HullWhiteModel = finmodel(“HullWhite”,“α”, 0.01,“σ”, 0.10)
HullWhiteModel = HullWhite属性:阿尔法:0.0100西格玛:0.1000
创建ratecurve
对象
创建一个ratecurve
对象使用ratecurve
.
Settle = datetime(2018,9,15);类型=“零”;ZeroTimes = [calmonths(6) calyears([1 2 3 4 5 7 10 20 30])]';ZeroRates = [0.0052 0.0055 0.0061 0.0073 0.0094 0.0119 0.0168 0.0222 0.0293 0.0307]';ZeroDates = Settle + ZeroTimes;比率曲线(“零”、结算、ZeroDates ZeroRates)
myRC =带有属性的利率曲线:类型:“零”复合:-1基础:0日期:[10x1 datetime]利率:[10x1 double]结算:15-Sep-2018 InterpMethod:“线性”ShortExtrapMethod:“下一个”LongExtrapMethod:“前一个”
创建IRTree
定价的人对象
使用finpricer
要创建IRTree
price对象和使用ratecurve
对象的“DiscountCurve”
名称-值对参数。
CFdates = CFdates(确定,CapOpt。成熟,CapOpt。重置,CapOpt.基础);outPricer = finpricer(“IRTree”,“模型”HullWhiteModel,“DiscountCurve”myRC,“TreeDates”, CFdates ')
outPricer = HWBKTree with properties: Tree: [1x1 struct] TreeDates: [6x1 datetime] Model: [1x1 finmodel。折扣曲线:[1x1率曲线]
价格帽
仪器
使用价格
来计算的价格和敏感性帽
乐器。
[Price, outPR] = Price (outprice,CapOpt,[“所有”])
价格= 2.7733
outPR = priceresult with properties:结果:[1x4表]PricerData: [1x1 struct]
outPR。Results
ans =1×4表价格织女星γδ ______ ______ _______ ______ 2.7733 31.655 -49.227 28.932
这个例子展示了为一个对象定价的工作流帽
仪器在使用LinearGaussian2F
模型和IRMonteCarlo
定价方法。
创建帽
仪对象
使用fininstrument
要创建帽
仪对象。
CapOpt = fininstrument(“帽子”,“成熟”datetime(2022、9、15),“罢工”, 0.01,“重置”2,“名字”,“cap_option”)
CapOpt = Cap with properties: Strike: 0.0100成熟度:15-Sep-2022 ResetOffset: 0重置:2 Basis: 0 Principal: 100 ProjectionCurve: [0x0 ratecurve] DaycountAdjustedCashFlow: 0 BusinessDayConvention: "actual" Holidays: NaT Name: "cap_option"
创建LinearGaussian2F
模型对象
使用finmodel
要创建LinearGaussian2F
模型对象。
线性高斯2fmodel = finmodel(“LinearGaussian2F”,“α”, 0.07,“Sigma1”, 0.01,“Alpha2”, 0.5,“Sigma2”, 0.006,“相关”, -0.7)
线性高斯2fmodel =线性高斯2f与属性:Alpha1: 0.0700 Sigma1: 0.0100 Alpha2: 0.5000 Sigma2: 0.0060相关性:-0.7000
创建ratecurve
对象
创建一个ratecurve
对象使用ratecurve
.
Settle = datetime(2019,1,1);类型=“零”;ZeroTimes = [calmonths(6) calyears([1 2 3 4 5 7 10 20 30])]';ZeroRates = [0.0052 0.0055 0.0061 0.0073 0.0094 0.0119 0.0168 0.0222 0.0293 0.0307]';ZeroDates = Settle + ZeroTimes;比率曲线(“零”、结算、ZeroDates ZeroRates)
myRC =带有属性的利率曲线:类型:“零”复合:-1基础:0日期:[10x1 datetime]利率:[10x1 double]结算:01- 01- 2019 InterpMethod:“线性”ShortExtrapMethod:“下一个”LongExtrapMethod:“上一个”
创建IRMonteCarlo
定价的人对象
使用finpricer
要创建IRMonteCarlo
price对象和使用ratecurve
对象的“DiscountCurve”
名称-值对参数。
outPricer = finpricer(“IRMonteCarlo”,“模型”LinearGaussian2FModel,“DiscountCurve”myRC,“SimulationDates”ZeroDates)
outPricer = G2PPMonteCarlo with properties: NumTrials: 1000 RandomNumbers: [] DiscountCurve: [1x1 ratecurve] SimulationDates: [01- july -2019 01-Jan-2020 01-Jan-2021…型号:[1x1 finmodel。]LinearGaussian2F]
价格帽
仪器
使用价格
来计算的价格和敏感性帽
乐器。
[Price,outPR] = Price (outprice,CapOpt,[“所有”])
价格= 1.2389
outPR = priceresult with properties:结果:[1x4表]PricerData: [1x1 struct]
outPR。Results
ans =1×4表价格三角洲伽马织女星 ______ ______ _____ _________________ 131.63 - -163.71 1.2389 - 132.71 11038
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。