策略关键
波动率交易核心:1)识别IV-HV差异;2)合理的入场时机;3)严格的Delta对冲;4)时间价值管理。
项目三:期权波动率交易
本节介绍波动率交易策略的设计方法,包括期权定价、Greeks计算和策略构建。
import numpy as np
from scipy.stats import norm
def black_scholes(S, K, T, r, sigma, option_type='call'):
"""
Black-Scholes期权定价
S: 标的资产价格
K: 行权价
T: 到期时间(年)
r: 无风险利率
sigma: 波动率
"""
d1 = (np.log(S/K) + (r + 0.5*sigma**2)*T) / (sigma*np.sqrt(T))
d2 = d1 - sigma*np.sqrt(T)
if option_type == 'call':
price = S*norm.cdf(d1) - K*np.exp(-r*T)*norm.cdf(d2)
else:
price = K*np.exp(-r*T)*norm.cdf(-d2) - S*norm.cdf(-d1)
return price
def calculate_greeks(S, K, T, r, sigma):
"""
计算Greeks
"""
d1 = (np.log(S/K) + (r + 0.5*sigma**2)*T) / (sigma*np.sqrt(T))
d2 = d1 - sigma*np.sqrt(T)
N_d1 = norm.cdf(d1)
N_d1_prime = norm.pdf(d1)
# Delta
delta = N_d1
# Gamma
gamma = N_d1_prime / (S * sigma * np.sqrt(T))
# Theta
theta = -(S * N_d1_prime * sigma) / (2 * np.sqrt(T)) - r * K * np.exp(-r*T) * norm.cdf(d2)
# Vega
vega = S * N_d1_prime * np.sqrt(T)
# Rho
rho = K * T * np.exp(-r*T) * norm.cdf(d2)
return {'delta': delta, 'gamma': gamma, 'theta': theta, 'vega': vega, 'rho': rho}
同时买入看涨和看跌期权,押注波动率上升
利用Gamma盈利,动态Delta对冲
波动率交易核心:1)识别IV-HV差异;2)合理的入场时机;3)严格的Delta对冲;4)时间价值管理。