主要内容

DoubleBarrier

DoubleBarrier仪对象

描述

创建和价格DoubleBarrier仪对象的双重障碍工具使用此工作流:

  1. 使用fininstrument创建一个DoubleBarrier仪对象更双障碍工具之一。

  2. 使用finmodel指定一个BlackScholes,赫斯顿,贝茨,或默顿模型DoubleBarrier仪对象。

  3. 选择定价方法。

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

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

创建

描述

例子

DoubleBarrierOpt= fininstrument (InstrumentType”,罢工“strike_value,”ExerciseDate“exercise_date,”BarrierValue”,barrier_value)创建一个DoubleBarrier仪对象工具通过指定的双重障碍InstrumentType并设置属性使用所需的参数名称-值对罢工,ExerciseDate,BarrierValue

例子

DoubleBarrierOpt= fininstrument (___,名称,值)设置可选属性使用额外的名称-值对参数除了所需的参数在前面的语法。例如,DoubleBarrierOpt = fininstrument (“DoubleBarrier”、“罢工”,100年,“ExerciseDate”, datetime (2019, 30),“BarrierValue”, 110年,“OptionType”、“放”、“ExerciseStyle”,“欧洲”,“BarrierType”、“DKI”、“名称”、“doublebarrier_option”)创建一个DoubleBarrier看跌期权的欧洲运动。您可以指定多个参数名称-值对。

输入参数

全部展开

仪器类型,指定为一个字符串的值“DoubleBarrier”一个特征向量的值“DoubleBarrier”,一个NINST——- - - - - -1字符串数组的值“DoubleBarrier”,或者一个NINST——- - - - - -1单元阵列特征向量的值“DoubleBarrier”

数据类型:字符|细胞|字符串

名称-值参数

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

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

例子:DoubleBarrierOpt = fininstrument (“DoubleBarrier”、“罢工”,100年,“ExerciseDate”, datetime (2019, 30),“BarrierValue”, 110年,“OptionType”、“放”、“ExerciseStyle”,“欧洲”,“BarrierType”、“DKI”、“名称”、“doublebarrier_option”)

要求DoubleBarrier名称-值对的观点

全部展开

期权执行价格值,指定为逗号分隔组成的“罢工”和一个标量或非负价值NINST——- - - - - -1向量的非负价值。

数据类型:

选择运动日期,指定为逗号分隔组成的“ExerciseDate”和一个标量datetime,串行日期号码,日期特征向量,日期或一个字符串NINST——- - - - - -1向量的日期时间,连续日期数字,日期的单元阵列特征向量,或日期字符串数组。

请注意

欧式期权,只有一个ExerciseDate在期权到期日价值。

如果你使用日期字符向量或日期字符串,必须识别的格式datetime因为ExerciseDate属性存储为一个datetime。

数据类型:|字符|细胞|字符串|datetime

双势垒值,指定为逗号分隔组成的“BarrierValue”和一个NINST——- - - - - -1矩阵的数值,其中每个元素是一个1——- - - - - -2向量,第一列是障碍(1)(乌兰巴托)和第二列是障碍(2)(磅)。障碍(1)(2)必须大于障碍。

数据类型:

可选DoubleBarrier名称-值对的观点

全部展开

选择类型,指定为逗号分隔组成的“OptionType”和一个标量字符串或字符或一个向量NINST——- - - - - -1单元阵列特征向量数组或字符串。

数据类型:字符|细胞|字符串

选择运动风格,指定为逗号分隔组成的“ExerciseStyle”和一个标量字符串或字符或一个向量NINST——- - - - - -1单元阵列特征向量数组或字符串。

请注意

对于一个DoubleBarrier选项时,IkedaKunitomo定价的人只支持万博1manbetx一个“欧洲”锻炼和FiniteDifference定价的人支持一万博1manbetx个“美国”“欧洲”锻炼。

数据类型:字符串|细胞|字符

双障碍类型,指定为逗号分隔组成的“BarrierType”和一个标量或字符串或一个字符向量NINST——- - - - - -1单元阵列特征向量数组或字符串与下列值之一:

  • “DKI”——双敲入

    “DKI”选项生效当标的资产的价格达到的一个障碍。它给期权持有人的权利而不是义务,购买或出售的底层安全执行价格,如果标的资产高于或低于障碍水平在的生活选择。

  • “DKO”——双淘汰赛

    “DKO”选项给期权持有人的权利而非义务买卖底层安全执行价格,只要障碍水平之间的基础资产仍在的生活选择。这个选项终止当标的资产的价格传递的障碍之一。

选项 障碍类型 回报如果跨越任何障碍 回报如果壁垒不交叉
电话/把 双敲入 标准电话/把 一文不值
电话/把 双淘汰赛 一文不值 标准电话/把

数据类型:字符|细胞|字符串

屏障回扣,指定为逗号分隔组成的“回扣”和一个数字矩阵。

  • 敲入期权,退税在到期支付。

  • 淘汰赛选项的退税支付如果上层屏障(1)(乌兰巴托),第二个值是支付如果低障碍(2)(磅)。

数据类型:

仪器的用户定义的名称,指定为逗号分隔组成的“名字”和一个标量字符串或字符或一个向量NINST——- - - - - -1单元阵列特征向量数组或字符串。

数据类型:字符|细胞|字符串

属性

全部展开

期权执行价格的价值,作为一个标量返回或非负价值NINST——- - - - - -1向量的非负价值。

数据类型:

选择锻炼的日期,作为一个datetime或返回NINST——- - - - - -1向量的日期时间。

数据类型:datetime

双势垒值,返回一个数字矩阵。

数据类型:

选择类型,作为一个标量字符串或一个返回NINST——- - - - - -1字符串数组的值“电话”“把”

数据类型:字符串

选择运动风格,作为一个标量字符串或一个返回NINST——- - - - - -1字符串数组的值“欧洲”“美国”

数据类型:字符串

双障碍类型,作为一个标量字符串或一个返回NINST——- - - - - -1字符串数组的值“DKI”“DKO”

数据类型:字符串

障碍回扣,返回一个数字矩阵。

数据类型:

仪器的用户定义的名称,或作为一个标量返回字符串NINST——- - - - - -1字符串数组。

数据类型:字符串

例子

全部折叠

这个例子显示了价格一个工作流DoubleBarrier当你使用工具BlackScholes模型和FiniteDifference定价方法。

创建DoubleBarrier仪对象

使用fininstrument创建一个DoubleBarrier仪对象。

DoubleBarrierOpt = fininstrument (“DoubleBarrier”,“罢工”,75,“ExerciseDate”datetime (2019, 1, 1),“OptionType”,“电话”,“ExerciseStyle”,“美国”,“BarrierType”,“DKO”,“BarrierValue”(110 80),“名字”,“doublebarrier_option”)
DoubleBarrierOpt = DoubleBarrier属性:OptionType:“所谓的“罢工:75 BarrierValue: 80年[110]ExerciseStyle:“美国”ExerciseDate: 01 - 1月- 2019 BarrierType:“dko”退税:[0 0]的名字:“doublebarrier_option”

创建BlackScholes模型对象

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

BlackScholesModel = finmodel (“BlackScholes”,“波动”,0.30)
BlackScholesModel = BlackScholes属性:波动率:0.3000相关:1

创建ratecurve对象

创建一个平面ratecurve对象使用ratecurve

解决= datetime (2018、1、1);成熟= datetime (2023、1、1);率= 0.035;myRC = ratecurve (“零”解决,成熟,速度,“基础”,1)
myRC = ratecurve属性:类型:“零”组合:1基础:1日期:01 - 2023年1月,率:0.0350解决:01 - 1月- 2018 InterpMethod:“线性”ShortExtrapMethod:“下一个”LongExtrapMethod:“以前”

创建FiniteDifference定价的人对象

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

outPricer = finpricer (“FiniteDifference”,“模型”BlackScholesModel,“DiscountCurve”myRC,“SpotPrice”,100)
outPricer = FiniteDifference属性:DiscountCurve: [1 x1 ratecurve]模型:[1 x1 finmodel。BlackScholes] SpotPrice: 100 GridProperties: [1x1 struct] DividendType: "continuous" DividendValue: 0

价格DoubleBarrier仪器

使用价格来计算的价格和敏感性DoubleBarrier乐器。

(价格、outPR) =价格(outPricer, DoubleBarrierOpt“所有”])
价格= 25
outPR = priceresult属性:结果:[1 x7表]PricerData: [1 x1 struct]
outPR.Results
ans =表1×7价格γδλθρ织女星_____ _____专攻__________ ___ ____ 25 1 0 4 2.2737 e-13 0 0

这个例子显示了价格多个工作流DoubleBarrier当你使用工具BlackScholes模型和FiniteDifference定价方法。

创建DoubleBarrier仪对象

使用fininstrument创建一个DoubleBarrier仪器仪器对象三双障碍。

DoubleBarrierOpt = fininstrument (“DoubleBarrier”,“罢工”,75;85;95年),“ExerciseDate”datetime([2019年,1,1;2019年,1、2;2019年,1,3]),“OptionType”,“电话”,“ExerciseStyle”,“美国”,“BarrierType”,“DKO”,“BarrierValue”(110 80),“名字”,“doublebarrier_option”)
DoubleBarrierOpt =3×1对象3 x1 DoubleBarrier数组属性:OptionType罢工BarrierValue ExerciseStyle ExerciseDate BarrierType回扣的名字

创建BlackScholes模型对象

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

BlackScholesModel = finmodel (“BlackScholes”,“波动”,0.30)
BlackScholesModel = BlackScholes属性:波动率:0.3000相关:1

创建ratecurve对象

创建一个平面ratecurve对象使用ratecurve

解决= datetime (2018、1、1);成熟= datetime (2023、1、1);率= 0.035;myRC = ratecurve (“零”解决,成熟,速度,“基础”,1)
myRC = ratecurve属性:类型:“零”组合:1基础:1日期:01 - 2023年1月,率:0.0350解决:01 - 1月- 2018 InterpMethod:“线性”ShortExtrapMethod:“下一个”LongExtrapMethod:“以前”

创建FiniteDifference定价的人对象

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

outPricer = finpricer (“FiniteDifference”,“模型”BlackScholesModel,“DiscountCurve”myRC,“SpotPrice”,100)
outPricer = FiniteDifference属性:DiscountCurve: [1 x1 ratecurve]模型:[1 x1 finmodel。BlackScholes] SpotPrice: 100 GridProperties: [1x1 struct] DividendType: "continuous" DividendValue: 0

价格DoubleBarrier仪器

使用价格来计算的价格和敏感性DoubleBarrier仪器。

(价格、outPR) =价格(outPricer, DoubleBarrierOpt“所有”])
价格=3×125.0000 15.6821 7.8957
outPR =3×1对象3 x1 priceresult数组属性:PricerData结果
outPR.Results
ans =表1×7价格γδλθρ织女星_____ _____专攻__________ ___ ____ 25 1 0 4 2.2737 e-13 0 0
ans =表1×7价格γδλθρ织女星持续累积______和_____ 15.682 0.7196 0.28626 4.5887 0.88484 6.467 -6.3778
ans =表1×7价格γδλθρ织女星______累积看上去__________ _____得一样7.8957 0.36913 -0.0020435 4.675 -0.057311 4.3022 -6.9367

这个例子显示了工作流价格DoubleBarrier当你使用工具赫斯顿模型和一个AssetMonteCarlo定价方法。

创建DoubleBarrier仪对象

使用fininstrument创建一个DoubleBarrier仪对象。

DoubleBarrierOpt = fininstrument (“DoubleBarrier”,“罢工”,75,“ExerciseDate”datetime (2020、9、15),“OptionType”,“电话”,“ExerciseStyle”,“美国”,“BarrierType”,“DKO”,“BarrierValue”(110 80),“名字”,“doublebarrier_option”)
DoubleBarrierOpt = DoubleBarrier属性:OptionType:“所谓的“罢工:75 BarrierValue: 80年[110]ExerciseStyle:“美国”ExerciseDate: 15 - 9 - 2020 BarrierType:“dko”退税:[0 0]的名字:“doublebarrier_option”

创建赫斯顿模型对象

使用finmodel创建一个赫斯顿模型对象。

HestonModel = finmodel (“赫斯顿”,“半”,0.032,“ThetaV”,0.1,“卡巴”,0.003,“SigmaV”,0.2,“RhoSV”,0.9)
HestonModel =赫斯顿的属性:V0: 0.0320 ThetaV: 0.1000 k: 0.0030 SigmaV: 0.2000 RhoSV: 0.9000

创建ratecurve对象

创建一个平面ratecurve对象使用ratecurve

解决= datetime (2018、9、15);成熟= datetime (2023、9、15);率= 0.035;myRC = ratecurve (“零”解决,成熟,速度,“基础”,12)
myRC = ratecurve属性:类型:“零”组合:1基础:12日期:15 - 9 - 2023利率:0.0350解决:15 - 9 - 2018 InterpMethod:“线性”ShortExtrapMethod:“下一个”LongExtrapMethod:“以前”

创建AssetMonteCarlo定价的人对象

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

outPricer = finpricer (“AssetMonteCarlo”,“DiscountCurve”myRC,“模型”HestonModel,“SpotPrice”,102,“simulationDates”datetime (2020、9、15))
outPricer = HestonMonteCarlo属性:DiscountCurve: [1 x1 ratecurve] SpotPrice: 102 SimulationDates: 15 - 9 - 2020 NumTrials: 1000 RandomNumbers:[]模型:[1 x1 finmodel。赫斯顿]DividendType:“连续”DividendValue: 0

价格DoubleBarrier仪器

使用价格来计算的价格和敏感性DoubleBarrier乐器。

(价格、outPR) =价格(outPricer, DoubleBarrierOpt“所有”])
价格= 32.6351
outPR = priceresult属性:结果:[1×8表]PricerData: [1 x1 struct]
outPR.Results
ans =表1×8价格γδλρθ织女星VegaLT ______ ___________ __________ __________累积_____ _____ 32.635 -0.00089196 -0.0025511 -0.0027878 -76.828 1.1334 -0.2616 -0.002986

这个例子显示了工作流价格DoubleBarrier当你使用工具BlackScholes模型和一个AssetMonteCarlo定价方法。

创建DoubleBarrier仪对象

使用fininstrument创建一个DoubleBarrier仪对象。

DoubleBarrierOpt = fininstrument (“DoubleBarrier”,“罢工”,100,“ExerciseDate”datetime (2020、8、15)“OptionType”,“电话”,“ExerciseStyle”,“美国”,“BarrierType”,“DKO”,“BarrierValue”(110 80),“名字”,“doublebarrier_option”)
DoubleBarrierOpt = DoubleBarrier属性:OptionType:“所谓的“罢工:100 BarrierValue: 80年[110]ExerciseStyle:“美国”ExerciseDate: 15 - 8月- 2020 BarrierType:“dko”退税:[0 0]的名字:“doublebarrier_option”

创建BlackScholes模型对象

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

BlackScholesModel = finmodel (“BlackScholes”,“波动”,。3)
BlackScholesModel = BlackScholes属性:波动率:0.3000相关:1

创建ratecurve对象

创建一个平面ratecurve对象使用ratecurve

解决= datetime (2017、9、15);成熟= datetime (2023、9、15);率= 0.035;myRC = ratecurve (“零”解决,成熟,速度,“基础”,12)
myRC = ratecurve属性:类型:“零”组合:1基础:12日期:15 - 9 - 2023利率:0.0350解决:15 - 9 - 2017 InterpMethod:“线性”ShortExtrapMethod:“下一个”LongExtrapMethod:“以前”

创建AssetMonteCarlo定价的人对象

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

ExerciseDate = datetime(2020, 08年,15);解决= datetime(2017年,09年,15);outPricer = finpricer (“AssetMonteCarlo”,“DiscountCurve”myRC,“模型”BlackScholesModel,“SpotPrice”,100,“simulationDates”,解决+天(1):天(1):ExerciseDate);

价格DoubleBarrier仪器

使用价格来计算的价格和敏感性DoubleBarrier乐器。

(价格、outPR) =价格(outPricer, DoubleBarrierOpt“所有”])
价格= 6.9667
outPR = priceresult属性:结果:[1 x7表]PricerData: [1 x1 struct]
outPR.Results
ans =表1×7价格γδλρθ看上去织女星累积_____ _____得一样6.9667 0.26875 -0.096337 3.8576 - 0.39855 9.5406 - -1.2907

这个例子显示了工作流价格DoubleBarrier当你使用工具BlackScholes模型和一个IkedaKunitomo定价方法。

创建DoubleBarrier仪对象

使用fininstrument创建一个DoubleBarrier仪对象。

DoubleBarrierOpt = fininstrument (“DoubleBarrier”,“罢工”,100,“ExerciseDate”datetime (2020、8、15)“OptionType”,“电话”,“ExerciseStyle”,“欧洲”,“BarrierType”,“DKO”,“BarrierValue”(110 80),“名字”,“doublebarrier_option”)
DoubleBarrierOpt = DoubleBarrier属性:OptionType:“所谓的“罢工:100 BarrierValue: 80年[110]ExerciseStyle:“欧洲”ExerciseDate: 15 - 8月- 2020 BarrierType:“dko”退税:[0 0]的名字:“doublebarrier_option”

创建BlackScholes模型对象

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

BlackScholesModel = finmodel (“BlackScholes”,“波动”,。3)
BlackScholesModel = BlackScholes属性:波动率:0.3000相关:1

创建ratecurve对象

创建一个平面ratecurve对象使用ratecurve

解决= datetime (2017、9、15);成熟= datetime (2023、9、15);率= 0.035;myRC = ratecurve (“零”解决,成熟,速度,“基础”,12)
myRC = ratecurve属性:类型:“零”组合:1基础:12日期:15 - 9 - 2023利率:0.0350解决:15 - 9 - 2017 InterpMethod:“线性”ShortExtrapMethod:“下一个”LongExtrapMethod:“以前”

创建IkedaKunitomo定价的人对象

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

outPricer = finpricer (“分析”,“DiscountCurve”myRC,“模型”BlackScholesModel,“SpotPrice”,100,“弯曲”(0.03 - -0.03),“DividendValue”,0.029,“PricingMethod”,“IkedaKunitomo”)
outPricer = IkedaKunitomo属性:DiscountCurve: [1 x1 ratecurve]模型:[1 x1 finmodel。BlackScholes] SpotPrice: 100 DividendValue: 0.0290 DividendType: "continuous" Curvature: [0.0300 -0.0300]

价格DoubleBarrier仪器

使用价格来计算的价格和敏感性DoubleBarrier乐器。

(价格、outPR) =价格(outPricer, DoubleBarrierOpt“所有”])
价格= 5.6848 e-04
outPR = priceresult属性:结果:[1 x7表]PricerData: []
outPR.Results
ans =表1×7价格γδλ织女星θρ__________ ___________⒈替___________ _________ e-06 -6.6339 -0.031332 0.0008912 -4.2071 0.00056848 - -3.7713 e-05 -0.00035113

这个例子显示了工作流价格DoubleBarrier当你使用工具BlackScholes模型和VannaVolga定价方法。

创建DoubleBarrier仪对象

使用fininstrument创建一个DoubleBarrier仪对象。

DoubleBarrierOpt = fininstrument (“DoubleBarrier”,“罢工”,100,“ExerciseDate”datetime (2020、8、15)“OptionType”,“电话”,“ExerciseStyle”,“欧洲”,“BarrierType”,“DKO”,“BarrierValue”(110 80),“名字”,“doublebarrier_option”)
DoubleBarrierOpt = DoubleBarrier属性:OptionType:“所谓的“罢工:100 BarrierValue: 80年[110]ExerciseStyle:“欧洲”ExerciseDate: 15 - 8月- 2020 BarrierType:“dko”退税:[0 0]的名字:“doublebarrier_option”

创建BlackScholes模型对象

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

BlackScholesModel = finmodel (“BlackScholes”,“波动”,0.02)
BlackScholesModel = BlackScholes属性:波动率:0.0200相关:1

创建ratecurve对象

创建一个平面ratecurve对象使用ratecurve

解决= datetime (2019、9、15);成熟= datetime (2023、9、15);率= 0.035;myRC = ratecurve (“零”解决,成熟,速度,“基础”,12)
myRC = ratecurve属性:类型:“零”组合:1基础:12日期:15 - 9 - 2023利率:0.0350解决:15 - 9 - 2019 InterpMethod:“线性”ShortExtrapMethod:“下一个”LongExtrapMethod:“以前”

创建VannaVolga定价的人对象

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

VolRR = -0.0045;VolBF = 0.0037;RateF = 0.0210;outPricer = finpricer (“VannaVolga”,“DiscountCurve”myRC,“模型”BlackScholesModel,“SpotPrice”,100,“DividendValue”RateF,“VolatilityRR”VolRR,“VolatilityBF”VolBF)
outPricer = VannaVolga属性:DiscountCurve: [1 x1 ratecurve]模型:[1 x1 finmodel。BlackScholes] SpotPrice: 100 DividendType: "continuous" DividendValue: 0.0210 VolatilityRR: -0.0045 VolatilityBF: 0.0037

价格DoubleBarrier仪器

使用价格来计算的价格和敏感性DoubleBarrier乐器。

(价格、outPR) =价格(outPricer, DoubleBarrierOpt“所有”])
价格= 1.6450
outPR = priceresult属性:结果:[1 x7表]PricerData: [1 x1 struct]
outPR.Results
ans =表1×7价格γδλ织女星θρ_____累积交______ ______ 1.645 0.82818 75.662 50.346 14.697 -1.3145 74.666

更多关于

全部展开

提示

在创建一个DoubleBarrier仪对象与一个ExerciseStyle设置为“美国”,您可以修改ExerciseStyle属性来改变它“欧洲”使用点符号。

DoubleBarrier。ExerciseStyle= "European"
因为一个欧式期权的标量罢工ExerciseDate价值和美式期权有2-element向量罢工ExerciseDate值,当你改变ExerciseStyle“美国”“欧洲”,罢工ExerciseDate价值观成为2-element向量的最后一个元素罢工ExerciseDate值。

版本历史

介绍了R2020b