全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 Excel
6880 4
2009-05-07
初学VBA做期权定价公式的程序,可用数据如下:
Current stock price (s) $ 18,75

Divident yield (di) 0

Volatility of stock return (sd) (historical volatility) 0,3

Strike price (x) $ 35

Time to expiration (t) years 5

Risk-free rate (rf) % 0,0602

Number of steps (n) 1000



VBA codes:

Function Euro_call(s, di, sd, x, t, rf, n)
'calculate price of a Europeran call option by Binomial tree model'

Dim u As Double
Dim d As Double
Dim p As Double
Dim bicomp As Double
Dim sumbi As Double
Dim h As Double
Dim j As Integer

'calculate u,d,p'

h = t / n
u = Exp(sd * Sqr(h))
d = Exp(-1 * sd * Sqr(h))
p = (Exp((rf - di) * h) - d) / (u - d)

'calculate expected call payoff at time t'

For j = 1 To n
bicomp = Application.Combin(n, j) * (p ^ j) * ((1 - p) ^ (n - j)) * Application.Max(s * (u ^ j) * (d ^ (n - j)) - x, 0)
sumbi = sumbi + bicomp

Next j

'calculate call price = PV of expected payoff'

Euro_call = sumbi * Exp(-1 * rf * t)

End Function

为什么运行上面的宏程序,电脑显示“参数不可选”?
急用,在线等,谢谢各位大侠!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2009-5-7 16:38:00
提示: 作者被禁止或删除 内容自动屏蔽
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-5-7 17:33:00
谢谢!请问有大侠帮帮忙不?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-5-8 02:36:00
可以用啊,不过算的结果是0,哪里出错了吧
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-5-8 09:23:00

肯定是有问题,

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群