主要内容

定价欧美价差期权

这个例子展示了如何使用各种技术为欧洲和美国价差期权定价和计算敏感性。首先,欧洲价差期权的价格和敏感性是使用封闭形式的解决方案计算的。金宝搏官方网站然后,利用有限差分和蒙特卡罗模拟计算了美式价差期权的价格和敏感性。最后,对不同输入范围下的价差期权进行了进一步分析。

传播选项是两种基础资产价格之差的期权。例如,两种资产价差的看涨期权到期时的收益如下:

一个 x X 1 - X 2 - K 0

在哪里 X 1 是第一项基础资产的价格, X 2 第二个基础资产的价格,和 K 是执行价格。到期时,如果息差 X 1 - X 2 大于执行价格 K ,期权持有人行使期权并获得价差与执行价格之间的差额。如果价差小于0,期权持有人不执行期权,收益为0。价差期权在能源市场上交易频繁。两个例子是:

  • 裂解价差:成品油与原油价差的期权。下载188bet金宝搏价差代表炼油厂将原油“裂解”成成品油所获得的精炼利润。

  • 火花利差:电力和某种燃料之间的差价选择。差价代表了发电厂的边际,它需要燃料来运行发电机来发电。

定价方法概述

价差期权有几种定价方法,如[1].本例使用封闭形式、有限差分和蒙特卡罗模拟来定价价差期权。下面讨论每种方法的优缺点:

  • 偏微分方程(PDE)的封金宝搏官方网站闭形式解和近似是有利的,因为它们非常快,并且很好地扩展到计算灵敏度(希腊人)。然而,封闭形式的解决方案并不总是可用的,例金宝搏官方网站如美国的价差选项。

  • 有限差分法是一种通过将价格和时间变量离散成网格来求解偏微分方程的数值方法。有关此方法的详细分析载于[2].它可以处理不可用封闭形式解的情况。金宝搏官方网站此外,有限差分可以很好地扩展到计算灵敏度,因为它输出了一系列基础价格和时间的期权价格网格。但是,它比封闭形式的解要慢。金宝搏官方网站

  • 蒙特卡罗模拟采用随机抽样来模拟标的资产价格的变动。它处理不存在封闭解的情况。金宝搏官方网站但是,它通常需要很长时间才能运行,特别是在计算灵敏度时。

欧式价差期权定价

下面的例子演示了裂纹扩展选项的定价。

一家炼油厂担心即将到来的维护计划,需要防止原油价格下跌和取暖油价格上涨。在维护期间,炼油厂需要继续为客户提供取暖油以满足他们的需求。该炼油厂的策略是利用价差期权来管理对冲。

2013年1月,该炼油厂通过购买取暖油期货和出售原油期货来购买1:1的裂解价差期权。CLF14 WTI原油期货价格为每桶100美元,HOF14取暖油期货合约价格为每加仑2.6190美元。

清晰;取暖油的价格、波动率和红利1加仑= 2.6190;%美元/加仑Price1 = Price1加仑*42;%美元/桶Vol1 = 0.10;Div1 = 0.03;WTI原油的价格、波动率和红利Price2 = 100;%美元/桶Vol2 = 0.15;Div2 = 0.02;基础价格的相关性Corr = 0.3;%选项类型OptSpec =“电话”%的罢工罢工= 5;%结算日期解决=' 01 - 1月- 2013%的成熟度成熟=' 01 - 1月- 2014%无风险率RiskFreeRate = 0.05;

定价函数以利率期限结构和股票结构作为输入。此外,您还需要指定感兴趣的输出。

定义RateSpec复利= -1;基= 1;RateSpec = intenvset(“ValuationDate”解决,startdate可以的解决,...“EndDates”成熟,“利率”RiskFreeRate,“复合”...复合,“基础”、基础);为这两个资产定义StockSpec股票规格1 =股票规格(Vol1, Price1,“连续”, Div1);股票规格2 =股票规格(Vol2, Price2,“连续”, Div2);指定价格和灵敏度输出OutSpec = {“价格”“δ”“伽马”};

金融工具工具箱™包含两种类型的封闭形式近似,用于计算欧洲价差期权的价格和敏感性:柯克近似(spreadbykirkspreadsensbykirk)和Bjerksund和Stensland模型(spreadbybjsspreadsensbybjs) [3.].

这个函数spreadsensbykirk使用柯克近似计算欧洲价差期权的价格和敏感性。

%柯克近似[PriceKirk, DeltaKirk, GammaKirk] =...(RateSpec, StockSpec1, StockSpec2,结算,...成熟度,OptSpec, Strike, Corr,“OutSpec”OutSpec)
PriceKirk = 8.3636
DeltaKirk =1×20.6108 - -0.5590
GammaKirk =1×20.0225 - 0.0249

这个函数spreadsensbybjs使用Bjerksund和Stensland模型计算欧洲价差期权的价格和敏感性。在[3.], Bjerksund和Stensland解释说,当罢工接近零时,柯克近似倾向于低估价差期权的价格,而当罢工远离零时,价差期权的价格过高。相比之下,Bjerksund和Stensland的模型具有更高的精度。

Bjerksund和Stensland模型[PriceBJS, DeltaBJS, GammaBJS] =...(RateSpec, StockSpec1, StockSpec2,结算,...成熟度,OptSpec, Strike, Corr,“OutSpec”OutSpec)
PriceBJS = 8.3662
DeltaBJS =1×20.6115 - -0.5597
GammaBJS =1×20.0225 - 0.0248

计算价格的比较表明,两个封闭形式的模型产生类似的价格和敏感性的结果。除了和,这些函数还可以计算,vega,和。

displayComparison (“柯克”“毕加索”, PriceKirk, PriceBJS, DeltaKirk, DeltaBJS, GammaKirk, GammaBJS)
价格对比:Kirk: 8.363641 BJS: 8.366158 delta对比:Kirk: 0.610790 -0.558959 BJS: 0.611469 -0.559670 gamma对比:Kirk: 0.022533 0.024850 BJS: 0.022495 0.024819

美国价差期权定价

虽然封闭形式的近似是快速的,非常适合于定价欧洲的价差期权,但他们不能定价美国的价差期权。利用有限差分法和蒙特卡罗法,可以对美式价差期权进行定价。在这个例子中,美式价差期权的定价属性与上述裂缝价差期权相同。

有限差分法通过将基础价格和时间变量离散到网格中来数值求解偏微分方程。金融工具工具箱™包含这些功能spreadbyfd而且spreadsensbyfd该公司利用有限差分法计算欧美利差期权的价格和敏感性。对于有限差分法,网格的组成对输出的质量和执行时间有很大的影响。通常,精细离散的网格将导致更接近理论值的输出,但代价是更长的执行时间。网格的组成由可选参数控制PriceGridSizeTimeGridSizeAssetPriceMin而且AssetPriceMax

为美式期权定价,添加一个可选输入AmericanOpt值为1函数的参数。

美式价差期权的有限差分法[PriceFD, DeltaFD, GammaFD, PriceGrid, AssetPrice1,...AssetPrice2] =...(RateSpec, StockSpec1, StockSpec2,结算,...成熟度,OptSpec, Strike, Corr,“OutSpec”OutSpec,...“PriceGridSize”, [500 500],“TimeGridSize”, 100,...“AssetPriceMin”, [0 0],“AssetPriceMax”, [2000 2000],...“AmericanOpt”1);%显示价格和敏感度PriceFD
物价指数= 8.5463
DeltaFD
DeltaFD =1×20.6306 - -0.5777
GammaFD
GammaFD =1×20.0233 - 0.0259

这个函数spreadsensbyfd还返回一个网格,其中包含一系列基础价格和时间的期权价格。时间0时的期权价格网格,即结算日的期权价格,可以为一系列基础价格绘制。

% Plot期权价格图;网格(AssetPrice1, AssetPrice2, PriceGrid(:,:, 1)');标题(美国基础价格范围的价差期权价格);包含(“标的资产1的价格”);ylabel (“标的资产2的价格”);zlabel (“价差期权价格”);

图中包含一个轴对象。标题为“美国基础价格范围的价差期权价格”的axes对象包含一个类型为surface的对象。

美式期权可以使用Longstaff和Schwartz的最小二乘法,用蒙特卡罗方法进行定价。4].金融工具工具箱™包含这些功能spreadbyls而且spreadsensbyls该软件通过模拟计算欧洲和美国期权的价格和敏感性。蒙特卡罗模拟法spreadsensbyls根据两个基础资产价格的几何布朗运动(GBM)生成多个模拟路径。与网格的粒度决定输出质量和执行时间的有限差分方法类似,蒙特卡罗模拟的输出质量和执行时间取决于路径的数量(NumTrials)和每条路径的时间周期数(NumPeriods).此外,蒙特卡罗模拟得到的结果是不确定的。根据模拟结果,每次运行都会有不同的结果。

表示我们使用长斯塔夫表对美国期权进行定价。%和Schwartz方法,添加一个可选输入|AmericanOpt|值|1|的%到函数的实参。美式价差期权的蒙特卡罗方法[PriceMC, DeltaMC, GammaMC] =...(RateSpec, StockSpec1, StockSpec2,结算,...成熟度,OptSpec, Strike, Corr,“OutSpec”OutSpec,...“NumTrials”, 1000,“反向”,真的,“AmericanOpt”, 1)
PriceMC = 8.4999
DeltaMC =1×20.6325 - -0.5931
GammaMC =1×2-0.0873 - 0.0391

对两种模型的结果进行了比较。Longstaff和Schwartz方法计算的价格和敏感性在每次运行时都会有所不同,这取决于模拟的结果。值得注意的是,有限差分法和蒙特卡罗模拟的结果质量取决于可选的输入参数。例如,增加路径的数量(NumTrials)spreadsensbyls函数将以更长的执行时间为代价获得更精确的结果。

displayComparison (有限差分的“蒙特卡罗”, PriceFD, PriceMC, DeltaFD, DeltaMC, GammaFD, GammaMC)
价格比较:有限差:8.546285蒙特卡洛:8.499894 delta比较:有限差:0.630606 -0.577686蒙特卡洛:0.632549 -0.593106 gamma比较:有限差:0.023273 0.025852蒙特卡洛:-0.087340 0.039120

比较执行价格范围的结果

正如前面所讨论的,当罢工离零越来越远时,柯克近似往往会高估价差期权的价格。为了证实这一点,价差期权的定价属性与以前相同,但执行价格范围不同。

指定输出OutSpec = {“价格”“δ”};%执行价格范围罢工= [-25;-15;5;0;5;15;25);

将Kirk近似和Bjerksund和Stensland模型的结果与有限差分法的数值近似进行了比较。自spreadsensbyfd一次只能给一个期权定价,它在一个循环中为每个执行值调用。蒙特卡罗模拟(spreadsensbyls)具有大量的试验路径也可以作为基准,但在本例中使用有限差分。

%柯克近似[PriceKirk, DeltaKirk] =...(RateSpec, StockSpec1, StockSpec2,结算,...成熟度,OptSpec, Strike, Corr,“OutSpec”, OutSpec);Bjerksund和Stensland模型[PriceBJS, DeltaBJS] =...(RateSpec, StockSpec1, StockSpec2,结算,...成熟度,OptSpec, Strike, Corr,“OutSpec”, OutSpec);有限差PriceFD = 0(数字(罢工),1);DeltaFD = 0(数字(罢工),2);i = 1:numel(Strike) [PriceFD(i), DeltaFD(i,:)] =...(RateSpec, StockSpec1, StockSpec2,结算,...成熟度,OptSpec, Strike(i), Corr,“OutSpec”OutSpec,...“PriceGridSize”, [500 500],“TimeGridSize”, 100,...“AssetPriceMin”, [0 0],“AssetPriceMax”, [2000 2000]);结束displayComparisonPrices(PriceKirk, PriceBJS, PriceFD, Strike)
打击范围价格:柯克BJS FD 32.707787 32.672353 32.676040 23.605307 23.577099 23.580307 15.236908 15.228510 15.230919 11.560332 11.560332 11.562023 8.363641 8.366158 8.367212 3.689909 3.678862 3.680493 1.243753 1.219079 1.221866

封闭形式和有限差分方法之间的价格差异如下图所示。可以看出,随着走向离0越远,Kirk近似与有限差分的差值(红线)越大,而Bjerksund和Stensland模型与有限差分的差值(蓝线)保持在同一水平。如载于[3.]时,当strike值远离0时,Kirk近似过高定价了价差期权。

%价格与基准的差异图图;情节(PriceKirk-PriceFD“颜色”“红色”);持有;情节(PriceBJS-PriceFD“颜色”“蓝”);持有;标题(“价格差与有限差”);传奇(“柯克”“毕加索”“位置”“EastOutside”);包含(“罢工”);Ax = gca;斧子。XTickLabel = Strike; ylabel(“价差”);

图中包含一个轴对象。标题为Difference in Price Against Finite Difference的坐标轴对象包含2个类型行对象。这些物品代表Kirk, BJS。

接下来,绘制了封闭形式模型与有限差分模型之间的差值。上面的图显示了第一项资产的增量之差,下面的图显示了第二项资产的增量之差。从10e-3阶y轴上的小增量可以看出,三个模型(Kirk, BJS, finite difference)产生的delta值相似。

第一个资产的增量与基准的差值图图;Subplot (2,1,1);情节(DeltaKirk (: 1) -DeltaFD (: 1),“颜色”“红色”);持有;情节(DeltaBJS (: 1) -DeltaFD (: 1),“颜色”“蓝”);持有;标题(“Delta(资产1)与FD的差异”);传奇(“柯克”“毕加索”“位置”“EastOutside”);包含(“罢工”);Ax = gca;斧子。XTickLabel = Strike; ylabel(“Delta的差异”);%第二资产的delta与基准的差值图Subplot (2,1,2);情节(DeltaKirk (:, 2) -DeltaFD (:, 2),“颜色”“红色”);持有;情节(DeltaBJS (:, 2) -DeltaFD (:, 2),“颜色”“蓝”);持有;标题(“Delta(资产2)与FD的差异”);传奇(“柯克”“毕加索”“位置”“EastOutside”);包含(“罢工”);Ax = gca;斧子。XTickLabel = Strike; ylabel(“Delta的差异”);

图中包含2个轴对象。axis对象1,标题为Difference in Delta (Asset 1) Against FD,包含2个类型为line的对象。这些物品代表Kirk, BJS。标题为Difference in Delta (Asset 2) Against FD的坐标轴对象2包含2个类型为line的对象。这些物品代表Kirk, BJS。

分析不同波动水平下的价格和织女

为了进一步展示可以使用这些模型进行的分析类型,上面的价差期权是根据第一种资产的不同波动水平定价的。价格和vega在第一种资产的三个波动水平上进行比较:0.10.3,0.5.本文采用Bjerksund和Stensland模型进行分析。

%的罢工罢工= 5;指定输出OutSpec = {“价格”“织女星”};%资产1的不同波动水平Vol1 = [0.1, 0.3, 0.5];股票规格1 =股票规格(Vol1, Price1,“连续”, Div1);Bjerksund和Stensland模型[PriceBJS, VegaBJS] =...(RateSpec, StockSpec1, StockSpec2,结算,...成熟度,OptSpec, Strike, Corr,“OutSpec”, OutSpec);displaySummary(Vol1, PriceBJS, VegaBJS)
资产1中不同vol水平的价格:8.366158 14.209112 21.795746资产1中不同vol水平的vega: 15.534849 36.212192 38.794348资产2中不同vol水平的vega: 29.437036 7.133657 -0.557852

价格和维加相对于第一种资产波动率的变化如下图所示。你可以观察到,随着第一种资产的波动性增加,价差期权的价格也会增加。此外,vega的变化表明,价差期权的价格对第一种资产的波动率更加敏感,而对第二种资产的波动率不那么敏感。

图;% BJS型号图价格Subplot (2,1,1);情节(PriceBJS“颜色”“红色”);标题(“价格(毕加索)”);传奇(“价格”“位置”“EastOutside”);包含(“资产1的Vol”);Ax = gca;斧子。XTick = 1:3; ax.XTickLabel = Vol1; ylabel(“价格”);BJS模型织女星的%图Subplot (2,1,2);情节(VegaBJS (: 1),“颜色”“红色”);持有;情节(VegaBJS (:, 2),“颜色”“蓝”);持有;标题(“维加(毕加索)”);传奇(“资产1”《资产2》“位置”“EastOutside”);包含(“资产1的Vol”);Ax = gca;斧子。XTick = 1:3; ax.XTickLabel = Vol1; ax.YLim = [-1 40]; ylabel(“织女星”);

图中包含2个轴对象。带有标题Price (BJS)的Axes对象1包含一个类型为line的对象。这个对象表示Price。标题为Vega (BJS)的坐标轴对象2包含2个类型为line的对象。这些对象代表资产1、资产2。

总结

在本例中,使用各种技术对欧洲和美国的价差期权进行定价和分析。金融工具工具箱™提供了两种类型的封闭形式解决方案的函数(Kirk, BJS),有限差分方法和蒙特卡罗模拟方法。金宝搏官方网站封闭形式的解决方案非常适合于欧洲金宝搏官方网站价差期权的定价和敏感性计算,因为它们是快速的。然而,他们不能为美国的价差期权定价。有限差分法和蒙特卡罗法可以同时为欧美期权定价。然而,与封闭形式的解决方案相比,他们在定价欧洲价差期权方面没有那么快。金宝搏官方网站

参考文献

卡莫纳,雷内,杜勒曼,瓦尔多。定价和对冲价差期权暹罗。卷45,第4期,2003年,第627-685页。

威尔莫特,保罗,杜温,杰夫,豪森,山姆。期权定价。牛津金融出版社,1993年。

Bjerksund, Petter, Stensland, Gunnar。“封闭式价差期权估值。”新加坡国立大学金融系,2006年。

[4]朗斯塔夫,弗朗西斯·A,施瓦茨,爱德华多·S。《通过模拟评估美国期权:一个简单的最小二乘方法》加州大学洛杉矶分校安德森管理研究生院,2001年。

效用函数

函数displayComparison(model1, model2, price1, price2, delta1, delta2, gamma1, gamma2)用额外的空格填充模型名称additionalSpaces =数字(模型1)-数字(模型2);如果additionalSpaces > 0 model2 = [model2 repmat(' ', 1,附加空间)];其他的Model1 = [Model1 repmat(' ', 1, abs(additionalSpaces))];结束%计算价格的比较流(价格比较:\n);流(' \ n ');流('%s: % f\n', model1, price1);流('%s: % f\n', model2, price2);流(' \ n ');Delta的比较流(比较:\n);流(' \ n ');流('%s: % f % f\n', model1, delta1(1), delta1(2));流('%s: % f % f\n', model2, delta2(1), delta2(2));流(' \ n ');Gamma比较流(gamma:\n的比较);流(' \ n ');流('%s: % f % f\n', model1, gamma1(1), gamma1(2));流('%s: % f % f\n', model2, gamma2(1), gamma2(2));流(' \ n ');结束函数displayComparisonPrices(PriceKirk, PriceBJS, PriceFD, Strike)%计算价格的比较流(“打击范围价格:\n”);流(' \ n ')流(“Kirk \tBJS \tFD \n”);i = 1:数字(Strike) fprintf(' % f \ t % f \ t % f \ n”, PriceKirk(i), PriceBJS(i), PriceFD(i));结束结束函数displaySummary(Vol1, PriceBJS, VegaBJS)%展示价格流('资产1中不同vol水平的价格:\n');流(' \ n ');i = 1:数字(Vol1) fprintf(“% f \ n”PriceBJS(我));结束流(' \ n ');显示vega为第一个资产流('资产1中的不同vol水平的资产1 vega:\n');流(' \ n ');i = 1:数字(Vol1) fprintf(“% f \ n”VegaBJS(我1));结束流(' \ n ');显示第二个资产的织女星流('资产2 vega,用于资产1中的不同vol水平:\n');流(' \ n ');i = 1:数字(Vol1) fprintf(“% f \ n”VegaBJS(我,2));结束结束

相关的话题