当前位置: > 股票>正文

我请教一个问题:现金希腊值/持仓希腊值的意义,在 Black 期货字母代码含义是什么呢

2023-09-08 21:18:24 互联网 未知 股票

现金希腊值的意义,在 Black-76 欧式期货期权 和 二叉树 美式期货期权 两种定价模型上 不一致早前我曾请教过有关现金希腊值的:https://www.vnpy.com/forum/topic/2634-qing-jiao-yi-xia-you-guan-vnpyqi-quan-xian-jin-xi-la-zhi-de-yi-xie-yi-wen在那里,vnpy作者曾解答了我的疑惑,他是这么说的:用Python的交易员 wrote:

现金Delta:价格上涨1%,合约的价值变动现金Gamma:价格上涨1%,合约的现金Delta变动现金Theta:每过去1天,合约价值的减少现金Vega:隐波上涨1%,合约的价值变动

所有的数字,都直接反应你的账户盈亏,而不是那些理论数值。

好,这个我现在明白了。 非常感谢vnpy耐心的解答。我现在的问题是,我在实际测试中发现,这个现金希腊值的意义,在 Black-76 欧式期货期权 和 二叉树 美式期货期权 两种定价模型上 不一致。问题出在 二叉树 美式期货期权 定价模型中希腊值计算返回的只是传统意义上的理论希腊值,以Delta为例,它返回的是传统意义上的理论Delta, 而没有额外乘上了标的物价格的1%,具体情况,我来说一说:在OptionData 类 中有一个函数calculate_cash_greeks计算现金希腊值,这个函数中是调用了该期权的定价模型中的方法calculate_greeks去计算希腊值 ,在最开始的时候,我以为定价模型中calculate_greeks函数反回的就是理论希腊值,但是依照作者对现金希腊值的解答,我按照Delta的定义的计算公式推导了一下,发现定价模型中calculate_greeks函数反回的不能是传统意义上的理论Delta, 它返回的应该是 理论delta x (标的价格*0.01) ,即 在传统的理论希腊值Delta上 额外乘上了标的物价格的1%,它返回的是这个额外乘上了标的价格的1%之后的值, 只有这样,再乘上合约尺寸,得到的现金Delta,才符合vnpy作者说的意义:标的物价格上涨1%,期权合约的价值变动。我进一步去看定价模型,果然如此,Black-76 欧式期货期权black_76.py,计算希腊值Delta返回的时候,确实是额外乘上了标的物价格的1%,然而,在二叉树 美式期货期权定价模型binomial_tree.py,计算希腊值Delta返回的时候,直接返回Delta, 却并没有额外乘上了标的物价格的1%,所以,这要一来, 在沪深300 IO股指期权, 上期所沪铜期权,上,现金希腊值,持仓希腊值的意义是正确的,而在 豆粕期权, 白糖期权。。。。等其它商品期权上,现金希腊值,持仓希腊值的意义 ,比如在vnpy T型报价表上的希腊值, 持仓希腊值列表上的希腊值,它们就和那些欧式期货期权的意思不一样了,它们实际上是 “ 标的物价格变化 一个点/一个跳动/一块钱?时,相应期权合约价值变动多少钱? 而不是”标的物价格上涨1%,期权合约的价值变动。“

如此,我就有点困惑了,现金希腊值的意义,在 Black-76 欧式期货期权 和 二叉树 美式期货期权 两种定价模型上 不一致, 是程序设计本意就是如此?还是其它别的原因呢?可能 商品期货不如股指波动剧烈? 也可能波动更剧烈? 用”标的物价格上涨1%“ 这个尺度来计量太大了,所以特别的以”标的物价格变动1块钱“这种尺度来计量更适合些?请大师指点解惑,多谢~~

另外还有一个问题 vnpy-2.1.2,(VN Studio) E:vnpy-2.1.2examplesvn_trader>python run.pyTraceback (most recent call last): File "run.py", line 57, in from vnpy.app.option_master import OptionMasterApp File "C:vnstudiolibsite-packagesvnpy-2.1.2-py3.7.eggvnpyappoption_master__init.py", line 3, in from .engine import OptionEngine, APP_NAME File "C:vnstudiolibsite-packagesvnpy-2.1.2-py3.7.eggvnpyappoption_masterengine.py", line 33, in from .pricing import binomial_tree_cython as binomial_tree File "init__.pxd", line 918, in init binomial_tree_cythonValueError: numpy.ufunc size changed, may indicate binary incompatibility. Expected 216 from C header, got 192 from PyObject这个不知道 是什么原因?

版权声明: 本站仅提供信息存储空间服务,旨在传递更多信息,不拥有所有权,不承担相关法律责任,不代表本网赞同其观点和对其真实性负责。如因作品内容、版权和其它问题需要同本网联系的,请发送邮件至 举报,一经查实,本站将立刻删除。