(三十八)期权定价的蒙特卡洛模拟方法
蒙特卡洛模拟法对欧式期权定价 对于标的资产价格为S 0 ,执行价格是X的欧式看涨期权,到期日T的价格为C T = max(0,S T -X),在风险中性世界里用无风险利率r贴现,则期权在t时刻的价格为C T = e -r(T-t) E[max(0,S T -X)],这也是BS公式的推导思路之一。由于C T 只与S T 有关,因此我们只需模拟S T 的路径,重复n次,再对他们求平均就可以得到看涨期权的价格,即C T = e -r(T-t) Σ[max(0,S T -X)] /n,同理看跌期权价格P T = e -r(T-t) Σ[max(0,X-S T )] /n。注意蒙特卡洛模拟不能给美式期权定价。 关于标的资产价格S T 的蒙特卡洛模拟,在 (二十三) 中已经介绍过,主要使用如下公式: 假设有一份期限为六个月的股票期权,标的资产股票价格为5.29元,期权执行价格为6元,年化无风险利率和年化波动率分别为4%和24%,用蒙特卡洛模拟法求看涨期权和看跌期权的价格(模拟1万次)。 import numpy as np from numpy . random import standard_normal def callMonteCarlo ( S , X , r , sigma , t , n ) : z = standard_normal ( n ) St = S * np