隐含波动率与波动率微笑数值实验
期权的波动率微笑策略

期权的波动率微笑策略期权有一个重要的指标叫隐含波动率(IV),是根据将期权的市场价格代入标准BS期权定价模型计算出来的。
由于BS模型假定标的资产价格服从对数正态分布,收益率服从正态分布,所以期权的波动率是一个常数。
然而,用实际市场数据计算隐含波动率时,具有相同到期日和标的资产的期权,各个行权价的隐含波动率会呈现高低差异。
在大部分情况下,行权价格距离标的资产现货价格越远的期权,其隐含波动率越大,使得期权的波动率曲线产生偏移,呈现两端翘起、中间凹陷的“微笑”形态,这种现象被称为波动率微笑。
波动率微笑产生的原因,在研究上有多种解释,其中一种解释是从模型假设角度给出的。
由于BS模型假定标的资产价格和收益率都服从对数正态分布,但大量实证检验发现,在现实市场中,金融资产的收益率分布更加显示出“尖峰肥尾”的特征。
在这种分布下,收益率出现极端值的概率高于正态分布。
因此,期权价值在到期时变为深度实值与深度虚值的概率要比模型假设的概率更大,相应的深度实值和深度虚值期权的价格和波动率也会更高。
回归假设虽然大部分情况下,隐含波动率曲线都呈现两端翘起、中间凹陷的“微笑”(Smile)形态,但有时候也会出现其他形态,例如,两端塌陷、中间凸起的“皱眉”形态(Frown),一边高一边低的“假笑”形态(Smirk),以及其他的不规则形态。
由于隐含波动率曲线呈现“微笑”形态是最普遍的,所以本文假设当出现波动率“皱眉”或其他形态时,曲线都会往“微笑”形态回归。
图为波动率曲线的“微笑”形态图为波动率曲线的“皱眉”形态由于Delta绝对值为0.25的期权虚值程度比Delta绝对值为0.3的期权更深,根据假设,波动率曲线呈现“微笑”形态时,越虚值的期权隐含波动率越大,此时IV0.25>IV0.3>IV平值,其中IV0.25表示Delta绝对值为0.25期权的隐含波动率,IV0.3表示Delta绝对值为0.3期权隐含波动率,IV平值表示平值期权的隐含波动率。
金融数学_常州工学院中国大学mooc课后章节答案期末考试题库2023年

金融数学_常州工学院中国大学mooc课后章节答案期末考试题库2023年1.在BS模型中,在其他参数不变的情况下,看跌期权的价格关于波动率,是严格单调递增的。
()参考答案:正确2.计算期权价格的时候是从期初支付往终端算。
()参考答案:错误3.障碍期权和欧式期权都具有路径依赖性。
()参考答案:错误4.一份普通欧式期权的Gamma大于零。
()参考答案:正确5.欧式看跌期权的价格上限是执行价格。
()参考答案:错误6.无套利原理是指:在一个有效运行的金融市场中,套利机会不可能(长时间)存在。
()参考答案:正确7.远期价格总是围绕着远期价值上下波动。
()参考答案:错误8.二叉树定价的看涨期权价格与物理测度下资产价格上涨概率p的大小有关系。
()参考答案:错误9.标的资产的价格波动是影响衍生品价格的重要因素。
()参考答案:正确10.以下说法错误的有()。
参考答案:若以ln(K/Ft)为横坐标,波动率微笑曲线平价点右边的点通常对应着虚值看跌期权_由于期限越长,不确定性越高,因此隐含波动率期限结构总是向上倾斜的_波动率曲面分为隐含波动率曲面和实际波动率曲面_若以ln(K/Ft)为横坐标,波动率微笑曲线平价点左边的点通常对应着虚值看涨期权11.BS模型包括下列哪些前提假设()。
参考答案:标的资产价格服从几何布朗运动_证券允许卖空_证券可以任意分割且交易没有成本_市场上不存在无风险套利机会12.使用风险中性定价法的前提包括()。
参考答案:可以自由卖空_没有套利机会_没有交易成本13.假设W是标准布朗运动,在随机微积分的计算中,下列哪些计算规则是正确的()参考答案:dt * dt = 0_dw * dw= dt_dt * dw =014.B-S期权定价方程求解的思路是()。
参考答案:热扩散方程15.从交易层面来看,属于零和游戏的有()。
参考答案:互换_期货_期权16.金融产品今天的价值,应该等于未来收益的贴现。
()参考答案:正确17.Vasicek模型是一个满足均值回复特征的随机利率模型。
带你认识Skew指数

带你认识Skew指数场内期权隐含波动率一般会呈现“平值期权IV低,两侧期权IV高”的形态,即所谓的隐含波动率微笑。
但很多时候波动率并不“微笑”,而是会出现左偏或右偏这类“假笑”的结构。
造成这一现象的原因与市场对标的资产收益分布不对称的认知有关。
如股市容易遭遇黑天鹅,短期暴跌的概率要高于暴涨的概率,因此对股价下跌保护的需求导致更多人买入虚值看跌期权推升IV,而且由于有很多专业机构会从事卖虚值看涨期权的备兑增益策略,因此虚值看涨期权的IV也会稍低一些,从而呈现出IV左边高右边低的左偏结构。
而商品市场则相反,由于更容易出现极端大幅上涨行情,因此更多时候会保持虚值看涨期权IV更高的右偏结构。
为了衡量市场风险的不对称性,推出了偏度指数Skew,又被称为黑天鹅指数,该指数通过计算虚值期权价格的偏离程度来衡量市场对意外事件的担忧程度,对危机均有非常好的预警效果。
从T期权上市至今数据统计结果来看,Skew指数有61.5%的时间里小于100,隐含波动率微笑曲线更多时候会呈现出左边低右边高的右偏结构。
通过上述观察结果发现,T期权市场Skew指数在高位时会有比较好的预警效果,这与指标度量市场尾部风险的初衷一致。
当市场对行情下跌担忧增加时,往往Skew指数会上升至高位,基于这种特征,T厂在进行风险管理时,就可以选择在Skew指数高位时,卖出期货或者买入看跌期权来锁定下行风险。
两种策略都有各自的优缺点,卖出期货胜在操作简便,对T厂而言,可以直接对冲所有下跌风险,锁定榨利;买入看跌期权最大的优势就是资金占用少,不需要缴纳保证金,也不存在追保风险,而且如果后市T价不跌反涨,最大亏损也只是权利金支出,不会像卖出期货一样出现巨额套保亏损。
可以明显看出,当Skew指数处于高位时选择做空标的会是比较不错的选择,不管持有周期多久,买入看跌期权的收益均要优于卖出期货,主要原因就在于买入期权资金占用少,能更大程度地凸显出杠杆功能。
而且由于持仓周期较短,各条件下历史最大回测均较为可控,不过,由于策略只是单纯的方向性做空,因此每日收益的年化波动率较大,均超过了30%。
探讨波动率计量方法及相关问题

探讨波动率计量方法及相关问题摘要:在经济和金融研究中,波动性一直是一个非常重要的方面——投资组合选择、原生资产和衍生资产定价、风险管理等等都离不开对波动性的准确度量。
所以,波动率的估计模型在过去的几十年里也成为实证金融学和时序计量经济学中最为活跃的研究领域之一。
本文探讨两种估计波动率的方法,运用历史数据或者计算隐含波动率,并解释这两种方法及存在相关问题。
以及对如何调整波动率给出一些提示。
关键词:布莱克—斯科尔斯波动率波动率微笑在经济和金融研究中,波动性一直是一个非常重要的方面——投资组合选择、原生资产和衍生资产定价、风险管理等等都离不开对波动性的准确度量。
波动率的估计模型在过去的几十年里也成为实证金融学和时序计量经济学中最为活跃的研究领域之一。
运用布莱克—斯科尔斯公式对期权进行定价,在必须知道参数中,唯一无法直接观测到的标的资产的波动性。
不幸的是它又是一个较为重要的参数,它的估计至关重要。
模型的假设已知从今天到到期日期的股票收益率的未来波动率。
因为我们不能知道未来价格,只能对波动率进行估计。
我们主要运用历史数据进行波动率或隐含波动率的估计。
从历史数据中估计波动率估计波动率的一种方法是运用股票价格指数的历史数据。
这个方法的问题是选择合适的时间长度来估计模型使用的参数,好像股票未来的波动率是已知的且恒定的。
但即使是零星的经验也表明波动率是不稳定,股价也是经常跳跃式波动。
估计过程如下,我们观测到固定时间间隔的股票价格,例如每天()或每周()。
这些观测可以用于计算时间段内的收益率:其中是观测值的数目。
然后运用这些收益率来估计时间段内的波动率,公式为:其中等于的均值。
记住布莱克—斯科尔斯公式要求年化的股票收益率的波动率,因此,S必须用的平方根来年华波动率。
因此我们知道波动率在时间段内不是稳定的,难点是找到合适的n值。
如果n值太大,我们就会选用过于久远的数据而得到与实际情况不同的波动率。
如果n值太小,则估计的精度就会不好。
【最新精选】波动率微笑成因

期权波动率“微笑曲线”成因解析“波动率微笑”即具有相同到期日和标的资产而执行价格不同的期权,其执行价格偏离标的资产现货价格越远,隐含波动率越大。
波动率通常是用来描述股票、期货等资产价格变化有多快的一个指标,而涉及到期权这一衍生工具的波动率,有两类比较重要:一是历史波动率,它是基于对标的资产在过去历史行情中价格变化的统计分析得出的,也就是对其标准差的计算;二是隐含波动率,它是期权市场对标的资产在期权存续期内波动率的预测,由于在期权交易中受市场买卖力量的影响,隐含波动率与历史波动率必然会有所差异。
比如,某一月份期权只有一个历史波动率,但其隐含波动率却很多,而不同执行价格的看涨期权、看跌期权的隐含波动率也不尽相同。
期权定价模型中唯一的真正变量就是波动率,其他所有参量,包括标的资产的价格、期权的执行价格、期权到期剩余天数、现有的利率水平,在计算某一只期权合约的理论价值时都是固定的。
从这个角度讲,抛开定价模型本身的优劣程度,计算出的理论价格准确性取决于所有输入参量的精确程度。
甚至可以说,做期权就是做预期的波动率。
虽然历史波动率和隐含波动率都可以用来帮助交易者预测未来的波动率,但在实际交易中,隐含波动率更受交易者重视。
在实证研究中,通过传统BS期权定价模型计算出来的隐含波动率呈现出一种被称为“波动率微笑”的现象,即具有相同到期日和标的资产而执行价格不同的期权,这些期权的执行价格偏离标的资产现货价格越远,其隐含波动率越大。
Rubinstein(1985年)在综合了BS期权定价模型的各种异常情况下,提出了波动率“微笑”具有期限结构,即波动率“微笑效应”以某种系统的方式依赖于期权的到期期限,且这种“微笑效应”在短期期权中比长期期权更加明显。
对于这种隐含波动率的“微笑“曲线特质,研究上给出了很多种解释,大体可以分为两类:一类是从传统BS期权定价公式基本前提假设条件中的设定与现实相比的不合理之处进行的解释;另一类则是从市场交易机制层面进行的解释。
波动率

波动率研究一、波动率概念波动率是金融资产价格的波动程度,是对资产收益率不确定性的衡量,用于反映金融资产的风险水平。
波动率越高,金融资产价格的波动越剧烈,资产收益率的不确定性就越强;波动率越低,金融资产价格的波动越平缓,资产收益率的确定性就越强。
二、波动率的分类1、隐含波动率隐含波动率是将市场上的权证交易价格代入权证理论价格模型,反推出来的波动率数值。
从理论上讲,要获得隐含波动率的大小并不困难。
由于期权定价模型(如BS模型)给出了期权价格与五个基本参数(标的股价、执行价格、利率、到期时间、波动率)之间的定量关系,只要将其中前4个基本参数及期权的实际市场价格作为已知量代入定价公式,就可以从中解出惟一的未知量,其大小就是隐含波动率。
因此,隐含波动率又可以理解为市场实际波动率的预期。
2、历史波动率历史波动率是指投资回报率在过去一段时间内所表现出的波动率,它由标的资产市场价格过去一段时间的历史数据(即St的时间序列资料)反映。
这就是说,可以根据{St}的时间序列数据,计算出相应的波动率数据,然后运用统计推断方法估算回报率的标准差,从而得到历史波动率的估计值。
显然,如果实际波动率是一个常数,它不随时间的推移而变化,则历史波动率就有可能是实际波动率的一个很好的近似。
3、预测波动率预测波动率又称为预期波动率,它是指运用统计推断方法对实际波动率进行预测得到的结果,并将其用于期权定价模型,确定出期权的理论价值。
因此,预测波动率是人们对期权进行理论定价时实际使用的波动率。
这就是说,在讨论期权定价问题时所用的波动率一般均是指预测波动率。
需要说明的是,预期波动率并不等于历史波动率,因为前者是人们对实际波动率的理解和认识,当然,历史波动率往往是这种理论和认识的基础。
除此之外,人们对实际波动率的预测还可能来自经验判断等其他方面。
4、已实现波动率已实现波动率是针对频率较高的数据计算的一种波动率,又称为日内波动率或高频波动率。
高频数据是指以小时、分钟或秒为采集频率的数据。
个股期权从业考试:2022个股期权从业人员考试(三级)真题模拟及答案(4)

个股期权从业考试:2022个股期权从业人员考试(三级)真题模拟及答案(4)1、卖出认购期权开仓后,可通过以下哪种手段进行风险对冲()。
(单选题)A. 买入相同期限、标的的认沽期权B. 卖出相同期限、标的的认沽期权C. 买入相同期限、标的的认购期权D. 卖出相同期限、标的的认购期权试题答案:C个股期权从业考试:2022个股期权从业人员考试(三级)真题模拟汇编2、假设期权标的股票前收盘价为10元,合约单位为5000,行权价为11元的认沽期权的结算价为2.3元,则每张期权合约的维持保证金应为()元。
(单选题)A. 50000B. 21000C. 23000D. 10000试题答案:B个股期权从业考试:2022个股期权从业人员考试(三级)真题模拟汇编3、若卖出开仓认沽期权,则收益为()。
(单选题)A. 无限B. 有限C. 行权价格D. 无法确定试题答案:B个股期权从业考试:2022个股期权从业人员考试(三级)真题模拟汇编4、希腊字母描述了期权价格关于各影响因素的敏感度,其中Vega 描述了期权价格关于股价波动率的敏感度,那么()的Vega是最高的。
(单选题)A. 极度实值期权B. 平值期权C. 极度虚值期权D. 以上均不正确试题答案:B个股期权从业考试:2022个股期权从业人员考试(三级)真题模拟汇编5、买入股票认沽期权,最大收益是()(单选题)A. 行权价格-权利金B. 权利金+行权价格C. 权利金D. 行权价格试题答案:A6、“波动率微笑”是指下列哪两个量之间的关系()。
(单选题)A. 期权价格与股票价格B. 期权价格与行权价格C. 期权隐含波动率与行权价格D. 期权隐含波动率与股票价格试题答案:C7、以下关于希腊字母的说法正确的是()。
(单选题)A. 实值期权gamma最大B. 平值期权vega最大C. 虚值期权的vega最大D. 以上均不正确试题答案:B个股期权从业考试:2022个股期权从业人员考试(三级)真题模拟汇编8、投资者小明预期甲股票短期内将会在57元到63元之间横盘震荡,因此想要运用蝶式差价组合策略获利,以下哪个组合最符合小明的预期()。
波动率微笑成因-推荐下载

之间的看跌期权因将从虚值转为实值,期权卖方面临的风险将更大,Delta套期保值的成本更高,价格上升最多。
同理,执行价格在S1到S0之间的看涨期权因将从实值转为虚值,价格下跌最多。
可见,在当前资产价格尚未发生变动的条件下,虚值看跌期权的隐含波动率上升幅度大于实值看跌期权,实值看涨期权的隐含波动率下降幅度大于虚值看涨期权,体现在波动率“微笑”曲线上,均表现为曲线的左半部分高于右半部分。
从市场交易机制进行的解释也有四种理论:1.期权市场溢价说从理论上来看,期权从平值状态变为实值状态和虚值状态的概率应该基本相同,并且在平值状态时其时间价值最大。
深度实值期权的Delta接近1,在投资中的杠杆作用最大,相应市场需求量很大。
但是除非投资者预期标定资产的价格会有一个根本性的变动,一般不会出售深度实值期权,因此,供给量较小。
溢价期权、折价期权分别处于实值和虚值状态,其带给投资者未来较大收益的可能性比平值期权要小,其时间价值也会比平值期权小。
深度实值期权的溢价较高,其隐含波动率也较高。
对相同执行价格的看涨期权和看跌期权,当一个处于深度实值状态时,另一个必然处于深度虚值状态。
根据看涨看跌平价关系,这两个期权的波动率应当大致相同。
可见,实值看涨期权的溢价也会造成虚值看跌期权的溢价,造成隐含波动率的“微笑”。
2.标的资产和期权交易成本说标定资产的交易成本是期权空方Delta套期保值额外成本的重要来源之一。
在保值成本增加相同的条件下,深度实值和深度虚值期权的隐含波动率增加更多,呈现出隐含波动率“微笑”曲线。
期权本身也存在交易成本。
深度实值和深度虚值期权的流动性较差,交易成本也较大,这个效应通过期权的Gamma风险保值,可引发波动率“微笑”。
平价期权的Gamma风险最大,如只用标的资产保值,其头寸调整最为频繁,引致的额外成本最大。
但是另外两个效应减轻了这个影响:第一,平价期权的Gamma随时间单调衰减的速度非常快,即Gamma风险下降的速度很快;第二,平价期权可利用短期平价期权保值,后者的交易成本相对较低。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
附件4 实验项目编写范例隐含波动率与波动率微笑数值实验实验项目开发背景:随着全球经济一体化和金融市场的不断深化,金融学科的实验教学发展面临巨大的挑战,一方面要求真实金融市场数据全面进课堂,另一方面要求在传统专业课基础上紧跟市场发展趋势开设前沿性的实验课,致力于培养能与业界无缝对接的金融投资人才。
其中,《期货与期权》实验课成为金融工程专业、投资专业、数理金融等专业的核心课程。
在《期货与期权》实验课中,期权定价是重点实验内容,要求学生通过实验全面掌握期权定价离散模型及连续时间模型及其相关数值方法核心内容和算法实现。
全部实验均要求学生使用万得数据终端和彭博数据终端获取公司和金融市场的真实数据,同时,考虑到学生的背景和未来的职业选择差异,设计了三种编程的算法实现手段,即轻量级的解决方案——Excel 及其VBA,中量级的解决方案——Matlab及其图形用户界面,重量级的解决方案——C++及其Excel加载宏。
既训练了不同知识背景和技能的学生的定价模型编程实现技巧,又考虑到面向用户展示和使用时的友好性和直观性。
“隐含波动率与波动率微笑数值实验”是《期货与期权》实验课中一个代表性实验项目。
一、实验目的要求学生使用EXCEL和MATLAB计算隐含波动率并利用苹果公司股票期权真实交易数据绘制波动率微笑。
通过该实验实现以下目的:1.使学生掌握隐含波动率计算方法的原理,并在具有隐含波动率和期权执行价格数据的条件下,通过绘制波动率微笑,使学生更为感性地认知波动率微笑现象的真实存在。
2.促使学生发现B-S-M定价模型的历史局限性,从而为定价模型的扩展提供思路和线索,启发学生探索更为先进的定价模型。
3.由于这两种方法均采用相同的真实数据,学生可以比较数值计算结果,从而验证实验结果的正确性。
二、实验准备(简单列示开展该实验项目需要的知识点以及需掌握的软件或数据终端)1.回顾波动率微笑的概念、内涵以及产生的原因。
2.掌握隐含波动率的理论计算方法。
3.掌握EXCEL的常用绘图功能。
4.掌握MATLAB常用绘图命令。
5.熟悉Bloomberg金融终端有关上市公司股票期权交易数据的查询和下载功能。
三、实验数据或案例隐含波动率的计算需要基于真实的市场数据。
苹果公司的股票期权交易也非常活跃,交易量巨大,而且不同执行价格的股票期权合约数量很多,对于计算隐含波动率和展示波动率微笑现象十分有利。
我们可以登录Bloomberg金融终端查询下载苹果公司2013年6月22日的股票收盘价,并选择一个最为活跃的短期合约,下载该合约当日所有期权执行价格及对应期权收盘价,以及无风险利率(附录3的代码中给出了完整数据,其中K为执行价格,P 为相应的执行价格下股票看涨期权的交易价格)。
四、实验过程1. 基于EXCEL的隐含波动率与波动率微笑数值实验过程1.1设计并建立数据表格建立基础数据输入表格,内容要包括股票价格等数据。
其中包括一系列的期权执行价格,以及预留出的隐含波动率数据的填入空间。
1.2创建期权价格计算函数在接下来的1.3中我们要创建隐含波动率计算函数,其中需要使用一系列的期权交易价格,因此在计算隐含波动率之前我们首先要创建期权价格计算函数,从而有利于1.3中隐含波动率函数的创建。
参考代码(见附录1)。
通过附录1中的代码我们创建了两个函数BS_Call和BS_Put,每个函数都包括6个参数,即股票价格S、执行价格X、距离到期日剩余时间T、无风险利率r、波动率 和分红率q。
当用户在EXCEL单元格内使用此函数并输入相应的参数后,这些参数将传入这段代码,并计算出B-S-M模型下的期权价格,返回到该单元格中。
1.3创建隐含波动率计算函数隐含波动率有很多理论解法,为了便于EXCEL编程,我们这里采用二分法。
二分法的思路是给定某一波动率的区间,取区间的中点计算期权价格,若所得价格与实际价格间差值小于某一给定数值,则取此波动率为该期权的隐含波动率,否则,将所取波动率作为新的区间边界,再次进行计算。
参考代码(见附录2)。
通过附录2中的代码我们创建了IV函数,该函数有6个参数,即股票价格S、执行价格X、距离到期日剩余时间T、无风险利率r、期权市场价格Price、分红率d。
函数设定的最初波动率的范围是(0.001,5),差值给定为0.0000001。
此函数调用了1.3中建立的期权价格计算函数,用于计算给定波动率的期权理论价格。
1.4计算隐含波动率并绘制波动率微笑图形使用创建的隐含波动率计算函数计算不同执行价格期权的隐含波动率,并将结果输送到1.1中建立的表格。
利用隐含波动率数据及相应的执行价格数据,绘制二者间的关系图,具体结果见图1。
2. 基于MATLAB的隐含波动率与波动率微笑数值实验过程2.1隐含波动率计算方法在B-S-M公式中,波动率是一个重要参数,在B-S-M公式问世不久,就有学者质疑波动率常数这一假设。
于是学者们提出,如果B-S公式是对的,把市场上观测到的期权价格作为输入量代入B-S-M公式,应该可以反推算出波动率这一原本的输入参数。
而且如果波动率常数假设是对的,不同的期权价格输入公式反算出来的应该是相同的结果,即隐含在股票价格中的常数波动率。
但事实并非如此,实证研究表明,通过这样计算得到的隐含波动率并非常数,由不同执行价格和不同到期日的期权价格得到的股票的隐含波动率是一个关于执行价格K 和到期日T 的函数,即(,)K T σσ=。
根据,,,S K r T 和期权价格C 并不能将波动率σ明显地求出,而需要像对待非线性方程的通常求根步骤那样,通过迭代算法才能求出隐含波动率。
计算隐含波动率常用的迭代算法是牛顿——拉夫森方法。
具体计算公式如下:1()()n mn n n C C C σσσσ+-=-'其中n σ表示隐含波动率imp σ的第n 次迭代。
适当的选择初始值1σ,那么{}n σ的极限将收敛到隐含波动率的唯一解。
MA TLAB 金融函数工具箱中的隐含波动率的计算正是采用该方法。
计算隐含波动率只需要直接调用隐含波动率函数即可,非常便利。
2.2绘制波动率微笑有了隐含波动率计算结果和其他相应数据,就可以运用MATLAB 绘制苹果公司股票期权的波动率微笑现象。
具体代码见附录3。
建议使用importdata 函数以实现数据的调用,这样便可将股票等数据保存在其他M 文件或者直接引用MA TLAB 支持的其他文件中的数据,从而可以很好的保全数据的完整性、可靠性,也增加了程序的灵活性。
应当注意,在使用苹果公司全部数据的时候,程序运行将很慢,不方便将计算过程与画图过程二者放在同一个程序中进行。
这时我们可以选择通过双击work space 窗口下的,获得期权全部的隐含波动率,另外储存在一个矩阵中,单独画图,以实现计算与画图二者功能的分离,提高运行效率。
为了更好地展现经典的实验结果,剔除个别不能计算期权隐含波动率的点(在理论研究中,我们不能随意剔除数据,这里只做展示用,故剔除)之后,绘制的波动率微笑见图2。
图2 苹果公司股票期权的波动率微笑五、实验结果分析从图1和图2可知,无论是通过EXCEL绘制的苹果公司2013年6月22日到期的股票期权执行价格与隐含波动率关系的图形,还是通过MATLAB绘制的苹果公司同一时期的股票期权执行价格与隐含波动率关系的图形,随着执行价格的增加,隐含波动率呈现先下降后上升的情况,呈现出著名的“波动率微笑”现象。
而且由于原始数据相同,两者的图形高度一致。
当然由于真实的股票期权的执行价格是有一定报价间隔的,因此绘制的图形并不太光滑,将MATLAB绘制的波动率微笑与在通过EXCEL绘制的波动率微笑相比,MA TLAB绘制的图形的质量更好一些。
因此,在对图形质量有较高要求的情况下,我们通常多采用MATLAB绘制图形。
当然在计算量不大,图形要求质量不高的情况下,与MATLAB相比,EXCEL的使用范围更为广泛。
附录1:Function BS_Call( _ByVal S As Double, _ByVal X As Double, _ByVal T As Double, _ByVal r As Double, _ByVal v As Double, _ByVal d As Double) As DoubleDim d1 As DoubleDim d2 As Doubled1 = (Log(S / X) + (r - d + v ^ 2 / 2) * T) / v / Sqr(T)d2 = d1 - v * Sqr(T)BS_Call = Exp(-d * T) * S * Application.NormSDist(d1) - X * Exp(-r * T) * Application.NormSDist(d2)End FunctionFunction BS_Put( _ByVal S As Double, _ByVal X As Double, _ByVal T As Double, _ByVal r As Double, _ByVal v As Double, _ByVal d As Double) As DoubleDim d1 As DoubleDim d2 As Doubled1 = (Log(S / X) + (r - d + v ^ 2 / 2) * T) / v / Sqr(T)d2 = d1 - v * Sqr(T)BS_Put = -Exp(-d * T) * S * Application.NormSDist(-d1) + X * Exp(-r * T) * Application.NormSDist(-d2)End Function附录2Function IV( _ByVal S As Double, _ByVal X As Double, _ByVal T As Double, _ByVal r As Double, _ByVal Price As Double, _ByVal d As Double) As DoubleDim epsilonABS As DoubleDim epsilonSTEP As DoubleDim volMid As DoubleDim volLower As DoubleDim volUpper As Doubleminimum = 0.0000001volLower = 0.001volUpper = 5Do While volUpper - volLower >= minimumvolMid = (volLower + volUpper) / 2If Abs(BS_Call(S, X, T, r, volMid, d) - Price) <= minimum ThenExit DoElseIf ((BS_Call(S, X, T, r, volLower, d) - Price) * (BS_Call(S, X, T, r, volMid, d) - Price) < 0) ThenvolUpper = volMidElsevolLower = volMidEnd IfLoopIV = volMidEnd Function附录3:K=[ 290 290 300 305 320 325 330 335 340 340 345 350 350 350 355 360 360....365 370 370 375 375 380 380 380 390 390 390 395 395 395 400 400 400 ...400 405 405 405 405 410 410 410 410 415 415 415 415 415 420 420 420 ...420 420 425 425 425 425 425 425 430 430 430 430 430 430 435 435 435 ...435 435 435 440 440 440 440 440 440 445 445 445 445 445 445 450 450 ...450 450 450 450 455 455 455 455 455 460 460 460 460 460 460 465 465 ...465 465 465 470 470 470 470 470 470 475 475 475 475 480 480 480 480 ...480 480 485 485 485 485 490 490 490 490 490 490 495 495 495 495 500 ...500 500 500 500 500 505 505 505 505 510 510 510 510 510 515 515 515 ...515 520 520 520 520 520 525 525 525 525 530 530 530 530 535 535 535 ...535 540 540 540 540 545 545 545 550 550 550 555 555 555 560 560 560 ...565 565 565 570 570 575 580 580 585 590 595 600 600 605 610 615 620 ...625 630 635 640 645 650 655 660 665 670 675 680 685 690 695 700 705 ...710 715 725 730 735 740 745 750 755 760 765 770 775 780 785 790 795 ...800 805 810 815 820 825 830 835 840 845 850 855 860 865 870 875 880 ...885 890 895 900 905 910 915 920 925 930 935 940 945 950 955 960 965];P=[160.7 158 140.99 147.5 123.7 138.72 124 128.5 100.35 100.65 96.55...90.75 97 95 85.8 91.78 85.61 75.5 81.45 78.5 ...68.72 76.5 71.55 68 59.98 51.3 50 60 46.15 50.75 ...51.95 41.9 42.3 42.5 42.05 36.75 37.85 46 39.3 ...32 33.05 33.05 30.05 27.2 28.7 28.5 30.5 30.1 ...22.85 23.25 24.5 24.25 26.85 18.75 18.65 21.1 20.3...22.65 22.1 15.2 14.7 17.35 16.8 18.95 14.5 11.7...11.5 14.15 13.6 15.75 15.9 8.6 8.42 11.05 11.2 ...12.9 12.7 6.19 6.25 8.8 8.31 10.6 10.45 4.3 ...4.2 6.65 6.5 8.5 8.2 2.85 2.76 5 4.6 6.4 1.86 1.65 ...3.58 3.464.98 5 1.22 1.13 2.64 2.49 3.95 ...0.82 0.84 1.88 1.4 2.91 2.85 0.56 1.35 1.44 ...2.17 0.37 0.35 0.93 0.92 1.56 1.65 0.28 0.69...0.63 1.25 0.22 0.51 0.52 0.53 0.9 1 0.18 0.37...1.25 0.6 0.14 0.24 0.3 0.24 0.59 1.88 0.09 0.23...0.85 0.46 0.08 0.18 0.24 0.37 0.79 0.06 0.15 ...0.3 0.28 0.04 0.12 0.44 0.26 0.48 0.03 0.12 ...0.23 0.29 0.03 0.09 0.19 0.3 0.02 0.09 0.27 ...0.13 0.02 0.07 0.8 0.08 0.06 0.39 0.11 0.07 ...0.17 0.09 0.02 1.41 0.13 0.06 0.51 0.12 0.07 ...0.5 0.07 0.03 0.59 0.01 0.01 0.2 0.04 0.04 0.04...0.02 1 0.01 0.02 0.02 0.09 0.01 0.01 0.01 ...0.01 0.03 0.04 0.04 0.09 0.01 0.05 0.01 0.02 ...0.05 0.04 0.01 0.01 0.01 0.01 0.02 0.02 0.02...0.01 0.01 0.02 0.01 0.05 0.1 0.13 0.05 0.03 ...0.03 0.15 0.08 0.09 0.01 0.09 0.03 0.03 0.01...0.16 0.01 0.01 0.24 0.2 0.02 0.25 0.02 0.02 ...0.04 0.02 0.02 0.07 0.02 0.06 0.02 0.02 0.09 ...0.05 0.05 0.06 0.23 0.03 0.26 0.25 0.03 ...0.05 0.06 0.03];N=250; % less than 260 pleaseImpvVol=zeros(1,N+100);for i=1:1:N; %you may change this N to a little number and delete the last '%' to speed up the programme AssetPrice =438.36;Settlement = 'June-08-2008';Maturity = 'June-022-2008';Strike =K(i);Rates = 0.0127;OptionPrice = P(i);OptSpec = {'call'};%Define RateSpec and StockSpec :RateSpec = intenvset('ValuationDate', Settlement, 'StartDates', Settlement,...'EndDates', Maturity, 'Rates', Rates, 'Compounding', -1, 'Basis', 1);StockSpec = stockspec(NaN, AssetPrice);%Calculate the implied volatility of the options:ImpvVol(i) = impvbybls(RateSpec, StockSpec, Settlement, Maturity, OptSpec,... Strike, OptionPrice);endplot(K(1:N),ImpvVol(1:N),'.r');xlabel('Strike Price');ylabel('Implied Volatility');title('Volatility Smile of APPLE','interpreter','latex','FontSize',13);。