二项树(binomial tree)

目录

一,二项树(binomial tree)

二,二项树的母函数

三,二项树的节点数


一,二项树(binomial tree)

二项树是一组固定的递归定义的树:

B0是一个单节点的树,

Bn是一棵n叉树,根节点有n个孩子,分别是B0,B1......B n-1

 

二,二项树的母函数

对于Bn,它的深度为n,我们定义它的母函数:

T_n\left ( x \right )=\sum _{i=0}^n s_i x^i  , 其中si是第i层的节点数目

根据二项树的定义,我们可以得到母函数的递推式:T_n\left ( x \right )=1+x \left ( T_0\left ( x \right )+T_1\left ( x \right ) +...+T_{n-1}\left ( x \right ) \right )

根据此递推式,可以求出来,T_n\left ( x \right )=\left ( 1+x \right )^n

所以,二项树Tn的母函数是二项式(1+x)^n

 

三,二项树的节点数

二项树的第i层的节点数是二项式系数C(n, i)

二项树的节点总数是2^n

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,二项模型是一种离散化的期权定价方法,常用于欧式期权和美式期权的定价。下面是一个Python实现的二项模型的例子: ```python import math def binomial_tree(S, K, r, sigma, T, N, option_type): # S:股票价格 # K:期权行权价 # r:无风险利率 # sigma:波动率 # T:期权到期时间 # N:二项的步数 # option_type:期权类型,'call'或'put' delta_t = T / N u = math.exp(sigma * math.sqrt(delta_t)) d = 1 / u p = (math.exp(r * delta_t) - d) / (u - d) # 计算二项上每个节点的股票价格和期权价值 stock_price = [] option_value = [] for i in range(N + 1): stock_price.append(S * (u ** (N - i)) * (d ** i)) if option_type == 'call': option_value.append(max(stock_price[i] - K, 0)) elif option_type == 'put': option_value.append(max(K - stock_price[i], 0)) # 计算每个节点的期权价值 for j in range(N - 1, -1, -1): for i in range(j + 1): option_value[i] = math.exp(-r * delta_t) * (p * option_value[i] + (1 - p) * option_value[i + 1]) # 返回期权价格 return option_value[0] ``` 使用该函数来计算欧式看涨期权的价格: ```python S = 100 K = 105 r = 0.05 sigma = 0.2 T = 1 N = 100 option_type = 'call' print('期权价格:', binomial_tree(S, K, r, sigma, T, N, option_type)) ``` 输出结果为: ``` 期权价格: 8.021352235794374 ``` 注意,该模型是一种简化的期权定价模型,存在一定的偏差。在实际应用中,应该根据具体情况选择合适的期权定价模型。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值