用python实现:通过输入s,u,d,T,N,K,r绘图展现crr模型的收敛性
时间: 2023-06-26 19:07:47 浏览: 107
以下是使用 Python 绘制 CRR 模型收敛性的代码:
```python
import numpy as np
import matplotlib.pyplot as plt
s = float(input("请输入股价初始值:"))
u = float(input("请输入上涨比率:"))
d = float(input("请输入下跌比率:"))
T = int(input("请输入期数:"))
N = int(input("请输入每期模拟次数:"))
K = float(input("请输入期权行权价:"))
r = float(input("请输入无风险利率:"))
# 构建二叉树
stock_price = np.zeros((T+1, T+1))
for i in range(T+1):
for j in range(i+1):
stock_price[j, i] = s * (u ** (i-j)) * (d ** j)
# 计算期权价值
option_price = np.zeros((T+1, T+1))
for i in range(T, -1, -1):
for j in range(i+1):
if i == T:
option_price[j, i] = max(stock_price[j, i] - K, 0)
else:
option_price[j, i] = (1 / (1 + r)) * ((u * option_price[j, i+1]) + (d * option_price[j+1, i+1]))
# 绘制收敛性图像
fig, ax = plt.subplots()
ax.plot(np.arange(T+1), option_price[:, 0])
ax.set_xlabel("期数")
ax.set_ylabel("期权价值")
ax.set_title("CRR模型的收敛性")
plt.show()
```
在执行代码时,将会提示输入所需的参数,如股价初始值、上涨比率、下跌比率、期数、每期模拟次数、期权行权价和无风险利率等。输入完毕后,程序将会计算出期权价值,并绘制收敛性图像。
阅读全文
相关推荐



















