FiniteDifference
创建FiniteDifference
的price对象障碍
,DoubleBarrier
,或香草
仪器使用BlackScholes
,赫斯顿
,默顿
,或贝茨
模型
描述
创建并定价香草
,障碍
,或DoubleBarrier
具有BlackScholes
,赫斯顿
,贝茨
,默顿
,或Dupire
模型和FiniteDifference
使用此工作流的定价方法:
使用
fininstrument
要创建障碍
,DoubleBarrier
,或香草
仪对象。使用
finmodel
要指定BlackScholes
的模型障碍
或DoubleBarrier
文书或赫斯顿
,贝茨
,Dupire
,或默顿
的模型香草
仪对象。使用
finpricer
要指定FiniteDifference
对象的价格障碍
,DoubleBarrier
,或香草
仪对象。
有关此工作流的详细信息,请参见开始使用基于对象的金融工具定价框架的工作流程.
有关a的可用定价方法的更多信息香草
,障碍
,或DoubleBarrier
仪器,看选择仪器,模型和价格.
创建
语法
描述
创建一个FiniteDifferencePricerObj
= finpricer (PricerType
,'模型
,模型,DiscountCurve
“ratecurve_obj,”SpotPrice
”,spotprice_value)FiniteDifference
对象PricerType
并设置属性用于所需的名-值对参数模型
,DiscountCurve
,SpotPrice
.
设置可选属性在前面的语法中,除了必需的参数之外,还使用其他的名称-值对。例如,FiniteDifferencePricerObj
= finpricer (___,名称,值
)FiniteDifferencePricerObj = finpricer("FiniteDifference",'Model',BSModel,'DiscountCurve',ratecurve_obj,'SpotPrice',100,' dividend endvalue ',.025,' dividend endtype ',"cash")
创建一个FiniteDifference
定价的人对象。可以指定多个名称-值对参数。
输入参数
PricerType
- - - - - -定价的人类型
带值的字符串“FiniteDifference”
|带值的字符向量“FiniteDifference”
价格类型,指定为值为的字符串“FiniteDifference”
或者值为的字符向量“FiniteDifference”
.
数据类型:字符
|字符串
FiniteDifference
名称-值对参数
指定必需的和可选的逗号分隔的对名称,值
参数。的名字
参数名称和价值
对应的值。的名字
必须出现在引号内。您可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家
.
FiniteDifferencePricerObj = finpricer("FiniteDifference",'Model',BSModel,'DiscountCurve',ratecurve_obj,'SpotPrice',100,' dividend endvalue ',.025,' dividend endtype ',"cash")
FiniteDifference
名称-值对参数
SpotPrice
- - - - - -标的资产的当前价格
非负数字
标的资产的当前价格,由逗号分隔的对组成“SpotPrice”
一个非负的标量数值。
数据类型:双
FiniteDifference
名称-值对参数
DividendValue
- - - - - -股息率或股息时间表
0
(默认)|标量|时间表
股息收益率或股息时间表,由逗号分隔的对组成“DividendValue”
股息收益率的标量或股息计划的时间表。
数据类型:双
|时间表
DividendType
- - - - - -股利类型
“连续”
(默认)|带值的字符串“现金”
或“连续”
|带值的字符向量“现金”
或“连续”
分隔符类型,指定为逗号分隔的对,由“DividendType”
和字符向量或字符串。DividendType
必须“现金”
对于实际的美元股息或“连续”
连续股息收益率。
请注意
当你使用障碍
仪器,你必须设定好DividendType
来“现金”
.
数据类型:字符
|字符串
SpotGridSize
- - - - - -有限差分网格的点阵尺寸
400
(默认)|标量数值
点网格的大小为有限差分网格,指定为逗号分隔对组成“SpotGridSize”
一个标量数值。
数据类型:双
SpotPriceMax
- - - - - -最高价格为价格网格边界
如果未指定的,SpotPrice
价值是根据到期时的资产分布来计算的(默认)|积极的标量
最高价格为价格网格边界,指定为由逗号分隔的对组成“SpotPriceMax”
一个正标量。
数据类型:单
|双
TimeGridSize
- - - - - -有限差分网格的时间网格节点数
One hundred.
(默认)|正数值标量
有限差分网格的时间网格的节点数,指定为由逗号分隔的对组成“TimeGridSize”
和一个正的标量。
数据类型:双
InterpMethod
- - - - - -估算隐含波动率曲面的插值方法ImpliedVolData
“线性”
(默认)|带值的字符串“线性”
,“makima”
,“样条”
,或“tpaps”
|带值的字符向量“线性”
,“makima”
,样条的
,或“tpaps”
估算隐含波动率曲面的插值方法ImpliedVolData
仅供与Dupire
模型,指定为逗号分隔的对,由“InterpMethod”
和具有以下值之一的字符串或字符向量:
“线性”
-线性插值“makima”
-修改Akima立方Hermite插值样条的
-三次样条插值“tpaps”
-薄板平滑样条插值
请注意
的“tpaps”
方法使用曲线拟合工具箱中的薄板平滑样条功能。
的“makima”
而且样条的
方法仅适用于网格化数据。对于分散的数据,使用“线性”
或“tpaps”
方法。
有关网格化或分散数据的更多信息以及插值方法的详细信息,请参见网格化和分散的样本数据而且插值网格数据.
数据类型:字符
|字符串
属性
模型
- - - - - -模型
对象
Model,作为模型对象返回。
数据类型:对象
DiscountCurve
- - - - - -ratecurve
现金流贴现的对象
ratecurve
对象
SpotPrice
- - - - - -标的资产的当前价格
非负数字
标的资产的当前价格,作为非负数字标量返回。
数据类型:双
DividendValue
- - - - - -股息率或股息时间表
0
(默认)|标量|时间表
股息率或股息表,作为股息率的标量或股息表的时间表返回。
数据类型:双
|时间表
DividendType
- - - - - -股利类型
“连续”
(默认)|带值的字符串“现金”
或“连续”
此属性是只读的。
红利类型,作为字符串返回。的DividendType
要么是“现金”
对于实际的美元股息或“连续”
连续股息收益率。
数据类型:字符串
GridProperties
- - - - - -网格属性
400
(默认)|标量数值
网格属性,作为结构返回。
对于一个Dupire
模型中,GridProperties
包含以下字段:
SpotGridSize
-有限差分网格的点网格大小,作为标量数值返回。SpotPriceMax
-价格网格边界的最大价格,作为正标量返回。TimeGridSize
-有限差分网格的时间网格的节点数,作为正数值标量返回。InterpMethod
-用于估计隐含波动曲面的插值方法,以字符串形式返回。
对于一个赫斯顿
或贝茨
模型中,GridProperties
包含以下字段:
VarianceGridSize
-有限差分网格的方差网格的大小,作为标量数值返回。VarianceMax
-方差网格边界的最大方差,作为标量数字返回。
数据类型:结构体
对象的功能
价格 |
计算权益工具的价格FiniteDifference 定价的人 |
例子
将有限差分定价和Black-Scholes模型应用于价格壁垒工具
这个例子展示了为一个对象定价的工作流障碍
仪器当你使用BlackScholes
模型和FiniteDifference
定价方法。
创建障碍
仪对象
使用fininstrument
要创建障碍
仪对象。
BarrierOpt = fininstrument(“障碍”,“罢工”, 105,“ExerciseDate”datetime (2019, 1, 1),“OptionType”,“电话”,“ExerciseStyle”,“美国”,“BarrierType”,“做”,“BarrierValue”,40,“名字”,“barrier_option”)
BarrierOpt =屏障与属性:OptionType: "call"打击:105 BarrierType: "do" BarrierValue: 40回扣:0 exercisstyle: "american" exercisdate: 01- january -2019名称:"barrier_option"
创建BlackScholes
模型对象
使用finmodel
要创建BlackScholes
模型对象。
BlackScholesModel = finmodel(“BlackScholes”,“波动”, 0.30)
BlackScholesModel = BlackScholes与属性:波动性:0.3000相关性:1
创建ratecurve
对象
创建一个平面ratecurve
对象使用ratecurve
.
Settle = datetime(2018,1,1);成熟度= datetime(2023,1,1);Rate = 0.035;比率曲线(“零”解决,成熟,速度,“基础”,1)
myRC =带有属性的利率曲线:类型:“零”复合:-1基础:1日期:01-Jan-2023利率:0.0350结算:01-Jan-2018 InterpMethod:“线性”ShortExtrapMethod:“下一个”LongExtrapMethod:“前一个”
创建FiniteDifference
定价的人对象
使用finpricer
要创建FiniteDifference
price对象和使用ratecurve
对象的“DiscountCurve”
名称-值对参数。
outPricer = finpricer(“FiniteDifference”,“模型”BlackScholesModel,“DiscountCurve”myRC,“SpotPrice”, 100)
outPricer =带有属性的有限差异:DiscountCurve: [1x1 ratecurve] Model: [1x1 finmodel.]BlackScholes] SpotPrice: 100 GridProperties: [1x1 struct] DividendType: "continuous" DividendValue: 0
价格障碍
仪器
使用价格
来计算的价格和敏感性障碍
乐器。
[Price, outPR] = Price (outprice,BarrierOpt,[“所有”])
价格= 11.3230
outPR = priceresult with properties:结果:[1x7表]PricerData: [1x1 struct]
outPR。结果
ans =表1×7价格γδλθρ织女星 ______ _______ ______ ______ _______ ______ ______ 11.323 0.54126 0.0132 4.7802 -7.4408 42.766 39.627
另请参阅
功能
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。