bs模型的通俗理解_白话

bs模型的通俗理解_白话要想不用一个数学模型只用大白话说明白Black-Scholes这个伟大的期权类衍生品定价模型,似乎与用地球语言解释火星文化一样的困难。所以我的所谓白话也不可能是真的大白话了,总要摆出几个简单的数模以说明问题。只不过这些数学上的东西我相信有一点数学和统计学基础的朋友都能看的明白了。事实上即使摆出一大堆数学模型,我也没有能力真的写出其推导的全过程。幸好我的目的不是写清楚BS模型的推导,而是从其原理性的

大家好,又见面了,我是你们的朋友全栈君。

    要想不用一个数学模型只用大白话说明白Black-Scholes这个伟大的期权类衍生品定价模型,似乎与用地球语言解释火星文化一样的困难。所以我的所谓白话也不可能是真的大白话了,总要摆出几个简单的数模以说明问题。只不过这些数学上的东西我相信有一点数学和统计学基础的朋友都能看的明白了。事实上即使摆出一大堆数学模型,我也没有能力真的写出其推导的全过程。幸好我的目的不是写清楚BS模型的推导,而是从其原理性的东西出发,得到在目前市场条件上使用此模型带有“批判”性质的结论。

    我想从二叉树模型引出一个无风险投资组合,不过在讨论这个模型之前我先写几点预备知识:

连续复利

    复利的概念做投资的人耳熟能详,例如一个活期账户,你一年取一次不如一个月取一次将本息再存,这样一年下来你的总利息定会多一些。同理,一天取一次似乎利息更多,理论上还可以一分钟取一次,一秒取一次,一毫秒取一次,最后的极限就是连续复利的概念,其表达式为EXP(rt),EXP就是自然数e的指数形式(我不知道如何在电脑上写出指数和根号之类,所以本文中都采用了EXCEL中的表达式)。例如连续复利10%的100元钱1年后的实际利息为100*EXP(10%*1)=110.517元。期权公式中由于均涉及未来价格的贴现,贴现方式在模型中采用的都是连续复利。

无套利机会

    市场应该是没有套利机会的,即使出现套利的机会,也会因为投机者的大量买入或卖出而在短时间内填平这个“错误的价格”。在建立对冲组合时,这样的无套利机会意味着你的无风险组合的收益应该等于市场无风险利率,否则总有投机者会建立头寸用无风险利率的借款买入组合(组合收益大于无风险利率)或者卖出组合放出无风险利率的贷款(组合收益小于无风险利率)来套利,直至两者相等。

Delta

    在期权的对冲和套保中,Delta是一个重要参数。它定义为期权价格变动与标的股票价格变动之比。例如我们下面的例子中股票从15到25元变动的10元,这一过程中股票的期权变动为4元,则Delta为4/10=0.4。说明0.4份股票和1份期权的组合可以对冲掉风险。

    现在我们可以开始谈二叉树模型了,这个模型其实简单,就是事情发展的两种可能性。例如一只现价20元的股票,一年后可能是25元,还有一条分叉可能是15元,如果现在有一个行权价格为21元的看多期权,那这个期权在一年后在两个分叉上对应的价值分别是4元和0元。我们现在来看看这只期权现在的价格应该是多少呢?

    在这个例子里Delta是0.4,也就是说无风险组合为买入0.4份股票而卖出1份看多期权,这样组合在1年后的价值肯定是6元,其可能是一条分叉中的25*0.4-4=6元或者是另一条分叉中的15*0.4-0=6元。如果市场无风险利率为10%,这个1年后的6元现值为6*EXP(-10%)=5.429元。那么这个组合在构建时的成本就应该是5.429元,即20*0.4-f*1=5.429,计算f=2.57元。这就应该是期权的现价。

    这个模型我们可以整理出其一般形式,即f=EXP(-r*t)*(p*Fu+(1-p)*Fd);其中p=(EXP(r*t)-d)/(u-d);r为无风险利率;t为期限;u为现货期末价的可能涨幅(Up分叉),上例中为25/20=1.25,d为现货期末可能跌幅(Down分叉),上例中为15/20=0.75;Fu为期权Up分叉的期末价值,上例中为4元;Fd为期权Down分叉的期末价值,上例中为0元。上例通过这个公式可以计算一下f正好等于2.57元。但是,这个价格有意义吗?两个分叉的期末价格完全是主观上的猜测!在不加主观因素的条件下如何设定这个u和d呢?于是波动率的概念出场了。

    波动率σ是一年内股票连续复利收益的标准差。在一个很小的Δt时间内,收益的方差为σ^2*Δt,经过一连串的推导之后,u=EXP(σ*SQRT(Δt)),d=EXP(-σ*SQRT(Δt)),SQRT是根号。例如上例中如果通过历史数据计算σ为30%,则u=EXP(30%*SQRT(1))=1.3498588,d=EXP(-30%*SQRT(1))=0.7408182,代入二叉树的一般形式,即可得到期权的现价。

    利用波动率计算后的期权定价似乎完全避免了主观的成分,因为它仅仅依靠了波动率,无风险利率,时间期限这些给定的原始数据推出。这似乎对于在我们这个以做投机为主的市场来看有点不可思议。这种之后我会再次提及的所谓风险中性(risk neutral)体系,也是BS模型的重要前提,也成为我“批判”的原因之一。不过这个批判是打引号的,因为错的不是体系和模型,我只是提醒使用者不要忘记这些推导的前提,而我们的市场和投资者性质注定我们目前还无法使用它。

    模型的优化远远没有结束,这个单步二叉树是最简单的,问题多多。BS模型要是这么简单就不会有人因此获诺贝尔奖了。我们可以马上想到的是,可以把时间间隔缩小,将两个分叉各自再分出去,然后再分,再分……你马上就发现每个“二叉”的Delta是不同的,有一些软件可以设定时间步数来用计算机模拟这一过程,但我们想要的还是一般公式的模式,所以我们接下来要探讨一下复杂的多的连续时间的股价随机过程。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/125122.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java 分苹果_数据结构Java版

    java 分苹果_数据结构Java版有600个苹果,10个盒子,要求把600个苹果分装到10个盒子里。如果有人来买苹果随便说出一个数,直接拿这些盒子组装一下就可以给他不用拆分盒子。请问这10个盒子应该分别装多少苹果?代码如下importjava.util.Scanner;publicclassTest{ publicstaticvoidmain(String[]args){  intbox[]=

    2022年10月12日
    2
  • Smail语法「建议收藏」

    Smail语法「建议收藏」Smail语言首先了解什么是smail?apk文件通过apktool反编译出来的都有一个smali文件夹,里面都是以.smali结尾的文件。smali语言是Davlik的寄存器语言,语法上和汇编语言相似,DalvikVM[1]与JVM的最大的区别之一就是DalvikVM是基于寄存器的。基于寄存器的意思是,在smali里的所有操作都必须经过寄存器来进行。S…

    2025年8月19日
    4
  • 散列/散列函数「建议收藏」

    散列/散列函数「建议收藏」散列是一种用于以常数平均时间执行插入、删除和查找的技术。每个关键字被映射到从0-TableSize-1这个范围中的某个数,并且被放到适当的单元中。这种映射就叫做散列函数我认为,先用散列函数将我们所要进行操作的集合整合成散列表,是对之后的操作的一种便利。放到实际中去,我们要进行操作的集合不仅仅只是数字,例如图书馆中的书籍分类等等。而且就算是一组不连续差距较大的数字,要执行后序的插入删除和查找都是很不方

    2022年5月15日
    41
  • 数据库第一范式 第二范式 第三范式 BC 范式

    数据库第一范式 第二范式 第三范式 BC 范式国内绝大多数院校用的王珊的《数据库系统概论》这本教材,某些方面并没有给出很详细很明确的解释,与实际应用联系不那么紧密,你有这样的疑问也是挺正常的。我教《数据库原理》这门课有几年了,有很多学生提出了和你一样的问题,试着给你解释一下吧。(基本来自于我上课的内容,某些地方为了不过于啰嗦,放弃了一定的严谨,主要是在“关系”和“表”上)首先要明白”范式(NF)”是什么意思。按照教材中的定义,范式是“

    2022年5月20日
    28
  • MySQL集群架构[通俗易懂]

    MySQL集群架构[通俗易懂]本文知识点较多,篇幅较长,请耐心学习题记:文章内容输出来源:拉勾教育Java高薪训练营。本篇文章是MySQL学习课程中的一部分笔记。MySQL集群架构一、集群架构设计1、架构设计理念在集群架构设计时,主要遵从下面三个维度:可用性扩展性一致性2、可用性设计站点高可用,冗余站点服务高可用,冗余服务数据高可用,冗余数据保证高可用的方法是冗余。但是数据冗余带来的问题是数据一致性问题。实现高可用的方案有以下几种架构模式:主从模式简单灵活,能满足多种需求。比较主流的.

    2022年7月27日
    4
  • 完成端口与线程池的关系_端口触发

    完成端口与线程池的关系_端口触发关于IOCP网上到处都是资料,说的也很详细。我在这里就不再多说了,这只是本人在学习IOCP时的笔记,和配合AcceptEx写的一个极小的服务端程序。由于刚刚接触ICOP加上本人刚毕业不到一年,所以里面的理解或观点可能有误,还请大家多多批评!        VC6.0开发,旨在体现IOCP的架构,忽略细节,服务程序的功能只是接收客户连接,接着接收到客户数据,然后原封不动的返回给客户! 

    2022年9月29日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号