BSM期权定价公式是什么
时间: 2023-09-17 14:12:08 浏览: 334
BSM期权定价公式是一种用于计算欧式期权(European Option)价格的公式,是由Black、Scholes、Merton等人在20世纪70年代提出的。该公式基于以下假设:
1. 股票价格服从几何布朗运动。
2. 无风险利率为常数。
3. 股票价格的波动率为常数。
4. 市场上不存在无风险套利机会。
BSM期权定价公式的公式如下:
$$C(S,t)=S_tN(d_1)-Ke^{-r(T-t)}N(d_2)$$
$$d_1=\frac{ln\frac{S_t}{K}+(r+\frac{\sigma^2}{2})(T-t)}{\sigma\sqrt{T-t}}$$
$$d_2=d_1-\sigma\sqrt{T-t}$$
其中,
- $C(S,t)$表示欧式看涨期权的价格;
- $S_t$表示当前时刻股票价格;
- $K$表示期权行权价格;
- $r$表示无风险利率;
- $\sigma$表示股票价格的年化波动率;
- $T-t$表示期权剩余到期时间,以年为单位;
- $N(x)$表示标准正态分布的累积分布函数。
BSM期权定价公式被广泛应用于金融领域,特别是在期权交易中。
相关问题
BSM期权定价公式中d1等于什么
BSM(Black-Scholes-Merton)期权定价模型的d1是一个中间变量,用于计算期权的价格。d1的表达式为:
d1 = [ln(S/K) + (r + 0.5*σ^2)T] / [σ√T]
其中,S是标的资产的当前价格,K是期权的行权价格,r是无风险利率,σ是标的资产的波动率,T是期权的剩余时间(以年为单位)。
生成C++的代码,关于BSM期权定价
好的,以下是关于BSM期权定价的C++代码,代码中会用到一些数学函数,请确保已经引入了相关的头文件。
```cpp
#include <cmath>
double blackScholes(double spotPrice, double strikePrice, double timeToMaturity, double riskFreeRate, double volatility)
{
double d1 = (log(spotPrice / strikePrice) + (riskFreeRate + 0.5 * pow(volatility, 2)) * timeToMaturity) / (volatility * sqrt(timeToMaturity));
double d2 = d1 - volatility * sqrt(timeToMaturity);
double callPrice = spotPrice * N(d1) - strikePrice * exp(-riskFreeRate * timeToMaturity) * N(d2);
double putPrice = strikePrice * exp(-riskFreeRate * timeToMaturity) * N(-d2) - spotPrice * N(-d1);
return (callPrice + putPrice) / 2.0;
}
double N(double x)
{
const double root = sqrt(0.5);
const double a1 = 0.31938153;
const double a2 = -0.356563782;
const double a3 = 1.781477937;
const double a4 = -1.821255978;
const double a5 = 1.330274429;
const double pi = 3.14159265358979323846;
double k = 1.0 / (1.0 + 0.2316419 * fabs(x));
double c = (1.0 / root) * exp(-0.5 * pow(x, 2));
double d = a1 * k + a2 * pow(k, 2) + a3 * pow(k, 3) + a4 * pow(k, 4) + a5 * pow(k, 5);
double result = (1.0 / (sqrt(2.0 * pi))) * c * d;
if (x > 0.0) {
result = 1.0 - result;
}
return result;
}
```
这段代码实现了Black-Scholes-Merton(BSM)期权定价模型的计算,其中包括了欧式看涨期权和看跌期权的计算。其中,`blackScholes`函数接受五个参数:标的资产价格、执行价格、到期时间、无风险利率和波动率,返回的结果是期权的价格。`N`函数是标准正态分布的累积分布函数,用于计算期权定价公式中的$N(d_1)$和$N(d_2)$。
阅读全文