期权定价模型系列【1】—BSM通用式模型

这篇具有很好参考价值的文章主要介绍了期权定价模型系列【1】—BSM通用式模型。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

这是期权定价模型专栏的第一篇文章,此专栏旨在分享一些期权定价模型,将会从最基础的BSM模型开始写起,逐步扩散到蒙特卡洛模拟、二叉树等数值法模型,以及跳跃扩散模型、随机波动率模型,神经网络模型等等。


如果你觉得有帮助,不妨点赞收藏支持一下哦。

1.前言



1973年BSM模型首次发表后便很快被应用到了金融市场中。交易商用BSM模型对期权进行定价,并进一步推动了期权在不同市场上的应用。自BSM模型开始,市场首次找到了理论上可靠的期权定价模型,这大大推动了整个期权市场的发展,反过来也促进了标的资产市场的定价和流动性。
在某种意义上,BSM模型确实是个奇迹:它使得你可以用一种非常理性的方法来给证券定价,在此之前,根本没有一个合理的或者站得住脚的定价理论。一个完全理想化的世界中(假设回报服从正态分布,股票价格服从几何布朗运动规律,具有充沛的流动性,可以进行持续套期保值,并且没有交易成本),BSM模型提供了一种动态复制期权的方法。这是一个在想象世界中工程学方法所创造的杰作,只是这个世界并不存在,因为市场并不总是服从所有的假设条件。这确实是个奇迹,但是它也只是一个模型,并不是实际情况。


当然,BSM模型所要求的假设条件非常严苛:假设标的资产的回报服从正态分布、价格服从几何布朗运动、市场始终可以提供充沛的流动性、可以进行无成本的连续对冲交易等。在真实的市场中,这些假设条件有一些可以近似满足,还有一些就相距甚远。比如,交易成本和连续对冲,可以通过调整假设条件来实现。还有一些,比如股票价格变动的模式,就很难服从几何布朗运动的假设。在现实中,股票价格经常会出现跳跃,整体分布呈现肥尾,甚至波动率也会出现完全无法预计的变动,这些条件就很难通过调整假设条件来解决。

2.静态复制


首先,通过期权定义可以很容易得到一个普通欧式看涨期权与看跌期权在到期日的合约价值为:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

 那么,假设投资者买入一个欧式看涨期权,同时卖出一个行权价相同的欧式看跌期权,那么无论到期日股票的最终价格是多少,投资者能获得收益都是确定的:(ST-K)。

更进一步,假设股票在未来没有分红。在到期日之前的某个时间t,如果投资者按照当前价格St买入一份标的股票,同时卖出Ke-r(T-t)份无风险债券,那么在T时刻,这个组合的价值就是(ST-K)。根据一价定律可知,一个是买入欧式看涨期权,同时卖出行权价相等的欧式看跌期权,一个是买入股票,同时卖出无风险债券,这两者当前的价格应该是相等的,即为:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

通过对上式两边进行移项,要复制一个看涨期权只需要一个行权价和到期日都相同的看跌期权、标的股票以及无风险债券。要复制一个看跌期权,只需要一个行权价格和到期日都相同的看涨期权、标的股票以及无风险债券

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

3.模型推导


运用复制的方法进行估值是整个布莱克-斯科尔斯-默顿(BSM)期权定价模型的理论基础。在推导BSM模型的时候,需要进行一系列的理论假设:标的股票价格的变化是连续的,波动率为常数并且没有价格跳跃(单因子布朗运动);交易员可以通过大额多头或空头头寸进行持续对冲;没有买卖差价;没有交易成本;可以自主决定头寸调整。

假设在t时刻,某股票的价格为S,其波动率为常数σS,预期回报为μS。同时,还存在一只无风险债券,其价格为B,收益率假设为常数r。股票和债券的随机价格服从:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

其中,dZ服从标准维纳过程。以该股票为标的资产的看涨期权在t时刻的价格C,是一个跟股票价格和时间相关的变量。根据伊藤引理,C的价格等于:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化 

其中有:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化 

将S和C的头寸结合在一起,构建一个持续的无风险组合,消除该风险变量。令π=αS+C,其中α表示在t时刻对冲期权风险所需的股票数量。那么就有:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化 

要使这个组合保持瞬时无风险,随机变量dZ的协方差就必须要等于0。也就是:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化 

其中:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化 

由于这个组合在t时刻也是无风险的,根据一价定律,在t时刻其收益率也应该是无风险利率r,所以就有:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化 

 

在对冲组合中,这相当于:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

进行移项调整后有:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化 

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化 

看涨期权和标的股票的瞬时夏普比率相等。如果不存在无风险套利的机会,那么对股票和期权来说,每单位波动率对应的超额回报是相等的。这也是布莱克和斯科尔斯最开始在推导BSM等式时提出的观点。继续进行计算,替换μC和σC有:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

可得BSM模型的偏微分方程式:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化 

 4.BSM模型


BSM模型是由Black和Scholes推导出来的可以被用于到期前不分红的欧式股票期权的估值模型,假定c和p分为代表欧式看涨与欧式看跌期权的价格,则期权的定价公式为: 

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化 

参数释义如下:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化 

 

5.股指期权定价模型


 Merton将BS模型扩展到允许支付连续股息的情景,这一模型可以用于支付已知连续股息率q的股票或者股指的欧式看涨、欧式看跌期权的定价问题。

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

6.期货期权定价模型


 Black在1976年给出了用于为标的资产为远期或者期货合约定价的欧式看涨、欧式看跌期权定价模型,假设标的资产价格为F。

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

7.权利金计息的期货期权定价模型


 Asay修改了权利金计息的Black76期货期权定价模型:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

 

8.外汇期权定价模型


Garman和Kohlhagen修改了BS模型,使之可以用于欧式外汇期权的定价:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

9.广义的BSM期权定价模型


 如果引入一个持有成本率b,则BSM模型能够被一般化,这个模型可以用于定价标的为无股息股票、连续支付股息的股票、期货、外汇的欧式期权:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

b=r时为1973年提出的无股息欧式期权定价模型;

b=r-q时为merton在1973年提出的连续股利欧式期权定价模型;

b=0时为black在1976年提出的期货期权定价模型;

b=0且r=0时为Asay在1982年提出的权利金计息下的期货期权定价模型;

b=r-rf时为外汇期权定价模型。

10.代码部分


import numpy as np
from scipy.stats import norm

class BSM_Model:

    def __init__(self,S,K,T,sigma,r,b,opt):
        self.S=S
        self.K=K
        self.T=T
        self.sigma=sigma
        self.r=r
        self.b=b
        self.opt=opt

    def d1(self):
        return (np.log(self.S/self.K)+(self.b+self.sigma**2/2)*self.T)/(self.sigma*np.sqrt(self.T))
    def d2(self):
        return self.d1()-self.sigma*np.sqrt(self.T)

    def option_value(self):
        if self.opt=='call':
            value=self.S*np.exp((self.b-self.r)*self.T)*norm.cdf(self.d1())-self.K*np.exp(-self.r*self.T)*norm.cdf(self.d2())
        else:
            value = -self.S * np.exp((self.b - self.r) * self.T) * norm.cdf(-self.d1()) + self.K * np.exp(
                -self.r * self.T) * norm.cdf(-self.d2())
        return value

 例1:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

结果为:欧式看涨期权价格为2.1333684449162007

if __name__=='__main__':
    #b=r时为1973年提出的无股息欧式期权定价模型
    # eg:
    S=60
    K=65
    T=0.25
    r=0.08
    sigma=0.3
    b=r
    opt='call'
    call=BSM_Model(S,K,T,sigma,r,b,opt).option_value()
    print('欧式看涨期权价格为%s'%(call))

例2:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

 结果为:欧式看跌期权价格为2.4647876467558305

if __name__=='__main__':
    #b=r-q时为merton在1973年提出的连续股利欧式期权定价模型
    S=100
    K=95
    T=0.5
    r=0.1
    q=0.05
    sigma=0.2
    b=r-q
    opt='put'
    put=BSM_Model(S,K,T,sigma,r,b,opt).option_value()
    print('欧式看跌期权价格为%s'%(put))

例3:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

结果为:看跌期货期权价格为1.7010507252362679

if __name__=='__main__':

    #b=0时为black在1976年提出的期货期权定价模型
    F = 19
    K = 19
    T = 0.75
    r = 0.1
    sigma = 0.28
    b = 0
    opt = 'put'
    put = BSM_Model(F, K, T, sigma, r, b, opt).option_value()
    print('看跌期货期权价格为%s' % (put))

 例4:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

结果为:看跌期货期权价格为65.61854211535751

if __name__=='__main__':

   
    #b=0且r=0时为Asay在1982年提出的权利金计息下的期货期权定价模型
    F = 4200
    K = 3800
    T = 0.75
    r =0
    sigma = 0.15
    b = 0
    opt = 'put'
    put = BSM_Model(F, K, T, sigma, r, b, opt).option_value()
    print('看跌期货期权价格为%s' % (put))

 例5:

期权定价模型系列【1】—BSM通用式模型,期权定价模型,python,金融衍生品,期权定价模型,BSM模型,期权量化

结果为:看涨外汇权价格为0.02909925314943973

if __name__=='__main__':
    #b=r-rf时为外汇期权定价模型
    S = 1.56
    K = 1.6
    T = 0.5
    r = 0.06
    rf=0.08
    sigma = 0.12
    b = r-rf
    opt = 'call'
    call = BSM_Model(S, K, T, sigma, r, b, opt).option_value()
    print('看涨外汇权价格为%s' % (call))

 文章来源地址https://www.toymoban.com/news/detail-636519.html

到了这里,关于期权定价模型系列【1】—BSM通用式模型的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 金融衍生品市场

    套期保值(Hedging) 组合多头头寸(long position)与空头头寸(short position) 例:股票与股指期货 投机 定义:在将来特定的时间和地点以特定的价格买或者卖一 种资产的协议。 交割价格(Delivery Price):合约中规定的未来买卖标的 物的价格。 远期价格(Forward Price):使得远期合约价

    2024年04月09日
    浏览(39)
  • 金融专题 | 对复杂的金融工具进行设计、定价和对冲分析

    金融行业使用 Financial Instruments Toolbox™ 执行现金流建模和收益率曲线拟合分析、计算价格和敏感度、查看价格演变,并使用普通股权和固定收益建模方法执行对冲分析。 借助该工具箱,您可以创建新的金融工具类型,使用参数拟合模型和息票剥离法根据市场数据拟合收益率

    2024年02月04日
    浏览(47)
  • 【2023高教社杯】C题 蔬菜类商品的自动定价与补货决策 问题分析、数学模型及python代码实现

    C题蔬菜类商品的自动定价与补货决策 在生鲜商超中,一般蔬菜类商品的保鲜期都比较短,且品相随销售时间的增加而变差, 大部分品种如当日未售出,隔日就无法再售。因此,商超通常会根据各商品的历史销售和需求情况每天进行补货。 由于商超销售的蔬菜品种众多、产地

    2024年02月09日
    浏览(24)
  • CAPM (资本资产定价模型) APT(套利定价理论)

    横轴为风险(标准差sigma),纵轴为预期收益。 风险越高,收益就越高 这条C-M直线描绘的对于整个市场的收益,其对于单支股票并不适应,所以后面换了个横轴, 为单个证券对整个市场的联动性 σ i , M σ M frac{sigma_{i,M}}{sigma_M} σ M ​ σ i , M ​ ​ 。 也就是CAPM公式了 E [ R i

    2024年02月03日
    浏览(39)
  • CAPM 资本资产定价模型

    目录 基本术语。 有效前沿。 资本配置线。 资本市场线。 CAPM 模型。 基本术语。 最小方差前沿:整条曲线。 全球最小方差组合:曲线最左点。 有效前沿:曲线上半部分。 有效前沿。 特点:在相同的收益下风险最小,在相同的风险下收益最大。 结论:投资者应该投资有效

    2023年04月09日
    浏览(54)
  • 【期权系列】期权市场 PCR 指标的策略应用

    本篇文章是基于研究报告的复现作品,旨在记录个人的学习过程和复现过程中的一些思路。 感谢中信期货研究员前辈的宝贵思路。 相比于现货与期货,期权的交易模式与制度相对较为复杂,除了有不同到期月 份以外,还分成认购与认沽期权以及不同的执行价进行交易。众多

    2023年04月08日
    浏览(37)
  • 数字普惠金融对城乡收入差距的影响——基于python的固定效应经济计量实证模型

    “共同富裕”是我们的共同目标,实现城乡发展的均衡,不断缩小城乡收入差距应是共同富裕的必由之路。当前,我国城乡差距有不断扩大的趋势,严重影响了我国经济的可持续发展。而随着数字化技术的不断普及,为实现城乡均衡发展提供了新的手段。依托数字化技术建立

    2024年02月19日
    浏览(38)
  • 【Python数据分析】实践编写篇3:在Python中使用三阶指数平滑模型对金融数据集进行拟合与预测

    目录 一、前期准备 二、数据来源与样式  三、数据的预处理 (一)表格处理 (二)数据导入 (三)数据处理  四、模型构建(指数平滑) (一)数据作图 (二)观察季节性与趋势 (三)一阶指数平滑 (四)二阶指数平滑 (五)三阶指数平滑 (六)均方误(MSE)比较  

    2024年02月17日
    浏览(52)
  • GBASE南大通用携手麒麟软件、索信达 共推金融信创联合解决方案

    在国家信创战略推动下,我国正逐步实现基础硬件-基础软件-行业应用软件的国产化替代。信创浪潮中,各产业链以及不同垂直细分领域的创新主体,正以开放、创新、团结的姿态,形成高凝聚力的生态合作,共推信创产业发展!正是在这样的背景下,GBASE南大通用携手麒麟软

    2024年02月11日
    浏览(47)
  • 【GPT-4】GPT-4 是否已经显示出通用人工智能的迹象?——微软已经为 OpenAI 的 GPT-4 创建了一系列测试,它声称表明人工智能模型已经显示出通用智能的“火花”

    目录 GPT-4 是否已经显示出通用人工智能的迹象? Is GPT-4 already showing signs of artificial general intelligence?

    2024年02月05日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包