作者poc7667 (poc)
看板Option
标题隐含波动率
时间Sat May 14 14:56:25 2011
板友们好
最近在研究选择权相关的东西,遇到一些问题想讨论
从书本上得知,用Black-Sholes公式可反算
隐含波动率(implied volatility)
有此一说"
隐含波动率可以反应市场上投资人对於未来标的物波动率的预期"
而计算隐含波动率,我是用matlab的函式
我假设隐含波动率理想目标就是想要反映出 :
(购买次日到结算日的波动率)
我把标的物的报酬率ROI,从
购买次日算到
结算日的标准差
(称作
实际波动率)
不晓得我如此的假设是否合理或者不make sense...
因为自己觉得很合理,投资人希望了解未来波动率,
当然是当期契约从
购买次日到结算日为止。
<资料来源经济新报TEJ资料库>
市场交易有些本来就跟理论不符合,所以有些隐含波动是算不出来
我比较好奇的是经济新报每天都算的出隐含波动,不晓得他求得公式是如何
下面表格中<隐含波动>为经济新报所给的数据。
我觉得不合理,所以我自己用MATLAB求了一次隐含波动率
NaN代表得不到'解'
履约价 选择权价 标的证券价格 隐含波动 剩余交易日 利率 MATLAB_隐含波动率
7600 330 7930.77 0.0123 12 0.9 NaN
7600 173 7696.9 0.1917 11 0.9 0.18247544
7600 113 7579.48 0.2077 10 0.9 0.201811449
7600 87 7567.1 0.18 9 0.9 0.177567445
我带入的MATLAB公式
blsimpv(Price, Strike, Rate, Time, Value)
上面的表格 利率应该是0.9% 我是以 0.9/100带入
剩余日期我把它年化 6/252(交易日)
以上表第2笔资料来说我就是丢进去
blsimpv (7696.9,7600,0.9/100,11/252,172) 得到 0.18247544 大约18%
是否有假设错误之处呢?
[补充]
我目的是拿历史资料做一个预测的实验动作
比如说在去年的历史 1/7 我买进选择权
选择权的结算日是去年的1/18。
假设在去年的1/7时间点,
此时我根本不知道到结算日的时候,市场会如何波动(知道的话就神了)
所以我会去参考在1/7时间点算出来的 implied volatility
既然是去年的历史,
其实我也知道 1/8(购买次日) -> 1/18 (结算日)这段期间,市场上
真正波动率。
我就拿这11天的波动率,当做标准答案。
与1/7算出来的implied volatility
做一个比较,看看到底差了多少?
这11天波动率的算法我是采用 市场ROI 的标准差
=================================================
现在我算出来的 隐含波动率大部分大概都在10-30%之间都有(应该还算是合理?)
当然有些交易日的成交情形可能不符合理论,所以公式算不出来?(NaN)
而我定义的实际波动率如下(应该还算是合理?)
感觉实际波动率算起来大概都在1%以下,
这段时间标的物市场波动率(起伏也不大?) 看似合理?
但是隐含波动率推算出来大概都大了,10倍左右。不晓得是不是哪里假设错误
还是说一般情形,隐含波动率就是会大於实际波动率。
下面是我部分算出来资料(年利率0.9%)
履约价 剩余日 标的物价格 ROI 权利金 实际波动率 隐含波动率
7500 17 8146.44 -0.1434 650 0.011594526 NaN
7500 16 8081.55 -0.7965 565 0.011941063 NaN
7500 15 8054.05 -0.3403 565 0.012357259 0.178151206
7500 14 8004.25 -0.6183 520 0.012813947 0.193833449
7500 13 7952.17 -0.6507 463 0.013320815 0.166026453
7500 12 7930.77 -0.2691 415 0.013905801 NaN
7500 11 7696.9 -2.9489 238 0.011944495 0.174529421
7500 10 7579.48 -1.5255 170 0.011659712 0.208060189
7500 9 7567.1 -0.1633 139 0.012355799 0.176877007
7500 8 7664.73 1.2902 199 0.012127081 0.171880838
7500 7 7608.44 -0.7344 155 0.012877372 0.177623137
7500 6 7602.7 -0.0754 150 0.014105942 0.189790776
7500 5 7770.57 2.208 278 0.00903082 0.173980637
7500 4 7772.13 0.0201 266 0.009314782 NaN
7500 3 7598.72 -2.2312 129 0.00084 0.206825191
7500 2 7585.3 -0.1766 132 0 0.306052313
7500 1 7559.16 -0.3446 0 0.195149439
接下来目标我就是要写一些策略,能够推算出新的
预测波动率
希望可以比隐含波动率更能够反映出所谓的
实际波动率
我猜想隐含波动率想告诉投资人未来波动率的预期,也是这个意思吧?
如有逻辑错误之处,欢迎指教,谢谢 !!
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.230.194.172
※ 编辑: poc7667 来自: 61.230.194.172 (05/14 15:01)
1F:→ dos792:你有把hist vol annualized 吗? 05/14 15:35
2F:推 isaacwu974:记得实际波动率不是这样算的,手边没书 05/14 16:04
3F:→ dos792:取varance(ds/s) , 开根,记得年化一下 05/14 16:58
4F:→ dos792:hist vol计算无需op资 05/14 16:59
※ 编辑: poc7667 来自: 180.218.6.16 (05/14 18:18)
5F:→ poc7667:楼上你好,我是计算隐含波动。应该不用hist vol ?? 05/14 18:19
6F:→ kinggod:会有这麽大的误差 你一定是算错了 以现在市场imp vol 05/14 21:18
7F:→ kinggod:大约在20%附近 his. vol超过50%就是你参数代有问题 05/14 21:18
8F:→ kinggod:还有你举的例子 价平在7600 你去算7000的Call 05/14 21:20
9F:→ kinggod:7602.7 7000 585 这条你不觉得call价格很不合理吗?? 05/14 21:21
10F:→ kinggod:一个有下档保护的call 买下去居然风险比期货低 深价内流 05/14 21:22
11F:→ kinggod:动性差 那个成交价不知道是哪时候的价格 去算价平的好 05/14 21:22
12F:推 pianotrio:1.标的物价格用台指期货较佳, 2.以流动性佳的契约来算 05/14 21:43
13F:→ pianotrio:较佳, 3. 历史波动度的计算怪怪的, 4. 若一切都没啥错 05/14 21:45
14F:→ pianotrio:隐含波动度也通常大於历史波动度, 毕竟隐含波动度是 05/14 21:46
15F:→ pianotrio:风险中立下的结果, 但实际交易价格隐含风险贴水 05/14 21:49
16F:→ kinggod:还有 matlab的函数应该不会有问题 你应该参数弄错了 05/15 00:14
※ 编辑: poc7667 来自: 180.218.6.16 (05/16 12:04)