type mismatch + simulatie

Status
Niet open voor verdere reacties.

nobody11

Gebruiker
Lid geworden
20 dec 2007
Berichten
552
bij deze code krijg ik hele tijd type mismatch.. iemand die weet hoe dit komt?

Code:
Sub simulateGBM()
t = 5
steps = 10
S0 = 100
sigma = 0.25
mu = 0.15
Number = 3
dt = 1 / steps

For i = 1 To Number
For j = 1 To steps * t
Cells(1, i) = S0
rand = Rnd()
Cells(j + 1, i).Value = (Cells(j, i)) * Exp((mu - (sigma ^ 2) / 2) * dt + sigma * Sqr(dt) * Application.NormSInv(rand))
Next
Next
End Sub
 
Ik denk dat het probleem zit in Application.NormSInv(rand)
Check eens wat de functie Rand() oplevert (waarschijnlijk een waarde tussen 0 en 1). Als dat klopt én Application.NormSInv een geheel getal als parameter verwacht is dat dus de oorzaak.

Tijs.
 
Ik denk dat het probleem zit in Application.NormSInv(rand)
Check eens wat de functie Rand() oplevert (waarschijnlijk een waarde tussen 0 en 1). Als dat klopt én Application.NormSInv een geheel getal als parameter verwacht is dat dus de oorzaak.

Tijs.

het probleem is dat er in vba geen functie is zoals rand() in excel.. iemand een oplossing hiervoor?

normsinv(rand()) moet perfect werken.. toch? of moet ik hier iets voor aanpassen dan?

edit: blijkbaar werk "rnd" als vervanging voor rand()
 
Laatst bewerkt:
Sorry, typefoutje: Ik bedoelde Rnd() ipv. Rand(), want je kent Rnd() toe aan de variable "rand", die je weer gebruikt bij de aanroep van Application.NormSInv().

Ik ben er vrij zeker van dat Rnd() inderdaad een waarde tussen 0 en 1 teruggeeft.

Ga dus even naar mijn vorige posting terug, pak je code erbij en ga uitzoeken (desnoods i.c.m. Google) of mijn redenering juist is of niet.

Tijs.
 
Sorry, typefoutje: Ik bedoelde Rnd() ipv. Rand(), want je kent Rnd() toe aan de variable "rand", die je weer gebruikt bij de aanroep van Application.NormSInv().

Ik ben er vrij zeker van dat Rnd() inderdaad een waarde tussen 0 en 1 teruggeeft.

Ga dus even naar mijn vorige posting terug, pak je code erbij en ga uitzoeken (desnoods i.c.m. Google) of mijn redenering juist is of niet.

Tijs.

heb het al gevonden idd, gewoon rnd zonder () ofzo werkt perfect blijkbaar..
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan