亚式期权定价公式 python
时间: 2023-07-06 11:15:40 浏览: 97
基于蒙特卡洛算法实现期权定价python源码.zip
5星 · 资源好评率100%
以下是使用Python实现亚式期权定价的示例代码:
```python
import numpy as np
from scipy.stats import norm
def asian_option(S0, K, r, sigma, T, N, type):
"""
S0: 初始资产价格
K: 行权价格
r: 无风险利率
sigma: 波动率
T: 到期时间
N: 路径数
type: 期权类型('call' 或 'put')
price: 期权价格
delta: 期权Delta
gamma: 期权Gamma
"""
dt = T / N
t = np.linspace(dt, T, N)
mu = r - 0.5 * sigma**2
S = np.zeros(N)
S[0] = S0
for i in range(1, N):
S[i] = S[i-1] * np.exp((mu * dt + sigma * np.sqrt(dt) * np.random.randn()))
if type == 'call':
payoff = max(np.mean(S) - K, 0)
else:
payoff = max(K - np.mean(S), 0)
price = np.exp(-r * T) * payoff
delta = np.exp(-r * T) * (np.mean(S > K) - np.mean(S < K))
gamma = np.exp(-r * T) * np.sum(norm.pdf((np.mean(S) - K) / (sigma * np.sqrt(T))) / (S0 * sigma * np.sqrt(T) * N))
return price, delta, gamma
```
其中,输入参数包括初始资产价格S0、行权价格K、无风险利率r、波动率sigma、到期时间T、路径数N和期权类型type。输出结果包括期权价格price、Delta和Gamma。
阅读全文