|
楼主 |
发表于 2009-11-7 19:44
|
显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
BS期权定价自定义函数
'By:宏fans
'QQ:1158268815
'Date:2009-11-7 19:41:09
'3Q 老朽 for Color VBA Code
Public Function BSOptV(ByVal iopt, ByVal S, ByVal X, ByVal r, ByVal q, ByVal sigma, ByVal T)
'By:宏fans QQ:1158268815
' Returns Black-Scholes Value (iopt=1 for call, -1 for put; q=div yld)
'uses Md fn
Dim ND1, ND2
ND1 = Application.NormSDist(iopt * Md(S, X, r, q, sigma, T, 1))
ND2 = Application.NormSDist(iopt * Md(S, X, r, q, sigma, T, 2))
ert = Exp(-r * T)
eqt = Exp(-q * T)
BSOptV = iopt * (S * eqt * ND1 - X * ert * ND2)
End Function
'By:宏fans
'QQ:1158268815
'Date:2009-11-7 19:41:09
'3Q 老朽 for Color VBA Code
Function Md(S, X, r, q, sigma, T, num)
'By:宏fans QQ:1158268815
'caculating d1,d2
Md = (Log(S / X) + (r - q + 0.5 * sigma ^ 2) * T) / (sigma * Sqr(T))
If num = 2 Then
Md = Md - sigma * Sqr(T)
End If
End Function
[ 本帖最后由 zhaozyuan 于 2009-11-7 19:45 编辑 ] |
|