主要内容

SABR

创建SABR模型对象掉期期权仪器

自从R2020a

描述

创建和价格掉期期权工具对象SABR使用此工作流模型:

  1. 使用fininstrument创建一个掉期期权仪对象。

  2. 使用finmodel指定一个SABR模型对象的掉期期权仪对象。

  3. 使用finpricer指定一个SABR定价方法掉期期权仪对象。

此工作流的更多信息,请参阅开始使用工作流使用基于对象的金融工具定价的框架

有关可用的定价方法的更多信息掉期期权仪器,看选择工具、模型和定价的人

创建

描述

例子

SabrModelObj= finmodel (ModelType”,α“alpha_value,”β“beta_value,”ρ“rho_value,”ν”,nu_value)创建一个SABR模型对象通过指定ModelType并设置属性所需的参数名称-值对α,β,ρ,ν

例子

SabrModelObj= finmodel (___,名称,值)设置可选属性除了需要使用额外的名称-值对参数在前面的语法。例如,SabrModelObj = finmodel (“SABR”、“阿尔法”,0.22,“Beta”, 0.007,ρ,0.009,“怒”,0.03,“转变”,0.002,“VolatilityType”,“黑”)创建一个SABR模型对象。您可以指定多个参数名称-值对。

输入参数

全部展开

模型类型,指定为一个字符串的值“SABR”或者一个特征向量的值“SABR”

数据类型:字符|字符串

名称-值参数

指定必需和可选双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

例子:SabrModelObj = finmodel (“SABR”、“阿尔法”,0.22,“Beta”, 0.007,ρ,0.009,“怒”,0.03,“转变”,0.002,“VolatilityType”,“黑”)

要求SABR名称-值对的观点

全部展开

当前SABR波动,指定为逗号分隔组成的“α”和一个标量数值。

数据类型:

SABR不变方差弹性(CEV)指数,指定为逗号分隔组成的“β”和一个标量数值。

请注意

设置β参数0允许负ForwardValue罢工

数据类型:

远期价值之间的相关性和波动性,指定为逗号分隔组成的的ρ和一个标量数值。

数据类型:

波动率的波动,指定为逗号分隔组成的“怒”和一个标量数值。

数据类型:

可选SABR名称-值对的观点

全部展开

转变小数SABR转移模型(用于转移黑色模型),指定为逗号分隔组成的“转变”和一个标量积极的十进制值。例如,一个转变的价值0.01等于1%的积极转变。

请注意

如果你设置VolatilityType“正常”,转变值必须是0

数据类型:

模型使用的隐含波动率σ,指定为逗号分隔组成的“VolatilityType”矢量和标量字符串或字符。

请注意

的价值VolatilityType影响隐含波动率的解释(“σ”)。

  • 如果你设置VolatilityType“黑”(默认),“σ”可以是隐含的黑色(没有变化)或暗示将黑色的波动。

  • 如果你设置VolatilityType“正常”,“σ”是隐含正常(Bachelier)波动,您还必须设置转变为零。

数据类型:字符|字符串

属性

全部展开

当前SABR波动,作为一个标量返回数值。

数据类型:

SABR不变方差弹性(CEV)指数,作为一个标量返回数值。

数据类型:

相关性提出价值和波动,作为一个标量返回数值。

数据类型:

波动率的波动,作为一个标量返回数值。

数据类型:

转变小数SABR转移模型(用于转移黑色模型),作为一个标量返回积极的十进制值。

数据类型:

隐含波动率σ,所使用的模型作为一个字符串的值返回“黑色”“正常”

数据类型:字符串

例子

全部折叠

这个例子显示了工作流价格掉期期权当你使用工具SABR模型和SABR定价方法。

创建ratecurve对象

创建一个ratecurve对象使用ratecurve

解决= 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 = + ZeroTimes定居;myRC = ratecurve (“零”、结算、ZeroDates ZeroRates)
myRC = ratecurve属性:类型:“零”组合:1基础:0日期:x1 datetime[10]利率:x1双[10]解决:15 - 9 - 2018 InterpMethod:“线性”ShortExtrapMethod:“下一个”LongExtrapMethod:“以前”

创建交换仪对象

使用fininstrument创建底层交换仪对象。

交换= fininstrument (“交换”,“成熟”datetime (2023 1 30),“LegRate”(0.018 - 0.24),“LegType”,(“固定”,“浮动”),“基础”5,“名义上”,1000,StartDate可以的30 datetime (2020 3),“DaycountAdjustedCashFlow”,真的,“BusinessDayConvention”,“关注”,“ProjectionCurve”myRC,“名字”,“swap_instrument”)
交换=交换与属性:LegRate: [0.0180 - 0.2400] LegType:[“固定”“浮动”]重置:[2 2]基础:5[5]名义:1000 LatestFloatingRate:[南南]ResetOffset: [0 0] DaycountAdjustedCashFlow: [1] ProjectionCurve: [1 x2 ratecurve] BusinessDayConvention:(“关注”“关注”)假期:NaT EndMonthRule: [1] StartDate可以:30 - mar - 2020成熟度:30 - 2023年1月,名字:“swap_instrument”

创建掉期期权仪对象

使用fininstrument创建一个掉期期权仪对象。

掉期期权= fininstrument (“掉期期权”,“罢工”,0.25,“ExerciseDate”datetime (2021 7 30),“交换”交换,“OptionType”,“把”,“ExerciseStyle”,“欧洲”,“名字”,“swaption_instrument”)
掉期期权=互换期权的属性:OptionType:“把”ExerciseStyle:“欧洲”ExerciseDate: 30 - 2021年7月罢工:0.2500交换:[1 x1 fininstrument。交换)的名字:“swaption_instrument”

创建SABR模型对象

使用finmodel创建一个SABR模型对象。

SabrModel = finmodel (“SABR”,“α”,0.032,“β”,0.04,的ρ、。08“怒”,0.49,“转变”,0.002)
SabrModel = SABR属性:α:0.0320 Beta: 0.0400ρ:0.0800ν:0.4900转变:0.0020 VolatilityType:“黑色”

创建SABR定价的人对象

使用finpricer创建一个SABR定价的人对象和使用ratecurve对象的“DiscountCurve”名称-值对的论点。

outPricer = finpricer (“分析”,“模型”SabrModel,“DiscountCurve”myRC)
outPricer = SABR属性:DiscountCurve: [1 x1 ratecurve]模型:[1 x1 finmodel.SABR]

价格掉期期权仪器

使用价格来计算的价格掉期期权乐器。

价格=价格(outPricer互换期权)
价格= 55.8596

版本历史

介绍了R2020a