作者boral (完备性)
站内Visual_Basic
标题[.NET] 一个关於阵列大小的问题
时间Thu Dec 24 22:40:54 2009
请输入专案类型(网站专案或者应用程式专案):
Dim K As Double
Dim sigma As Double
Dim r As Double
Dim T As Double
Dim int As Integer
Dim freq As Integer
Dim delta_T As Double
Dim S(int, freq - 1) As Double
Dim Ave As Double
For i = 0 To freq - 1
S(0, i) = Val(asset.Text)
Next
K = Val(strike.Text)
sigma = Val(volatility.Text)
r = Val(riskfree.Text)
r = r / 100 '利率换成百分比
T = Val(day.Text)
T = T / 365 '到期日年化
int = Val(interval.Text)
freq = Val(frequency.Text)
delta_T = T / int '模拟采用的时间间隔
Dim epsilon(int - 1, freq - 1) As Double '定义Brownian Motion
For i = 0 To int - 1
For j = 0 To freq - 1
epsilon(i, j) = NormBoxMuller()
Next
Next
For j = 0 To freq - 1 '模拟股价路径
For i = 0 To int - 1
S(i + 1, j) = S(i, j) * Math.Exp((r - sigma * sigma * 0.5) *
delta_T + sigma * epsilon(i, j) * Math.Sqrt(delta_T))
Next
Next
For j = 0 To freq - 1
Ave = Ave + Math.Max(S(int, j) - K, 0)
Next
Ave = Ave * Math.Exp(-r * T) / freq
mean.Text = Ave
End Sub
执行好多次 都是说我阵列大小有算错 可是我想了一个多小时
却不觉得有问题 不知道大家能不能帮我看一下 是不是有哪边没注意到的
谢谢 !!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.36.211.210
※ 编辑: boral 来自: 114.36.211.210 (12/24 22:41)
1F:→ MOONRAKER:int还没读到值以前是 0 ,敢用来宣告阵列,满霹雳的 12/24 23:45