二叉树期权定价python代码_欧式和美式期权的二叉树和Greek(1)——PYTHON

欧式和美式期权(Option)是最基础的衍生证卷。如何定价是初学金融工程者的必备知识。二叉树的又是最简单但是容易理解的工具。在网上有期权计算器可以很容易得到。但是练习自己编写还是有收益的。

欧式期权的无套利定价code非常简单:首先定义组合数,然后计算在不同节点的收益和概率,最后相加。

def nCr(n,r):

f =

math.factorial

return f(n)

/ (f(r) * f(n-r))

class Option(object):

def

__init__(self,s0,sigma,r,t,n,k,type=''):

self.s0=s0

self.sigma=sigma

self.r=r

self.t=t

self.n=n

self.k=k

self.type=type

def

Eu_price(self):

time=float(self.t)/self.n

u=math.exp(self.sigma*time**0.5)

d=math.exp(-self.sigma*time**0.5)

p=(math.exp(self.r*time)-d)/(u-d)

payment=0

for i in range(self.n+1):

if self.type=='Call':

pay=max(((self.s0*u**(self.n-2*i))-self.k),0)

elif self

  • 0
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
二叉树期权定价是一种常用的数值方法,可以用来估计期权的价格。在Python中,可以使用二叉树模型来实现期权定价。下面是一个示例的Python代码: ```python import numpy as np def tree_option(S, X, r, sigma, t, steps): u = np.exp(sigma * np.sqrt(t / steps)) d = 1 / u P = (np.exp(r * t / steps) - d) / (u - d) prices = np.zeros(steps + 1) c_values = np.zeros(steps + 1) prices\[0\] = S * d ** steps c_values\[0\] = np.maximum(prices\[0\] - X, 0) for i in range(1, steps + 1): prices\[i\] = prices\[i - 1\] * (u ** 2) c_values\[i\] = np.maximum(prices\[i\] - X, 0) for j in range(steps, 0, -1): for i in range(0, j): c_values\[i\] = (P * c_values\[i + 1\] + (1 - P) * c_values\[i\]) / np.exp(r * t / steps) return c_values\[0\] ``` 这段代码使用了欧式期权二叉树定价方法,其中S是标的资产价格,X是行权价格,r是无风险利率,sigma是标的资产的波动率,t是期权的剩余时间,steps是二叉树的步数。函数返回的是期权的价格。 请注意,这只是一个简单的示例代码,实际应用中可能需要根据具体的需求进行修改和扩展。引用\[1\]提供了一个完整的二叉树期权定价Python代码,你可以参考该代码进行更详细的了解和实践。 #### 引用[.reference_title] - *1* [(三十九)期权定价二叉树法](https://blog.csdn.net/hzk427/article/details/104614876)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [python解zuobiaoxi方程_【定价二叉树(CRR)欧式/美式期权定价的原理及Python实现...](https://blog.csdn.net/weixin_39785814/article/details/109918446)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [期权定价的数值方法之二项式期权定价模型【附pyrhon代码】](https://blog.csdn.net/xiaowu1997/article/details/121730380)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值