1 pièce(s) jointe(s)
Elaboration de pricer d'options (avec vba)
Bonjour,
Je sollicite votre aide car dans le but d'une présentation que je dois faire sur les modèles de diffusion avec sauts,
Pour le moment j'utlise le modèle de black& scholes que d'adapterai aux options européennes et américaines . (Je vous explique un peu le contexte)
. Par conséquent : j'ai commencé par écrire la macro suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| otpion explicit
Function Call_BS(s As Double, v As Double, r As Double, k As Double, tn As Double, t As Double) As Double
Dim cs As Double
Dim dx1 As Double
Dim dx2 As Double
Dim nd1 As Double
Dim nd2 As Double
dx1 = 1 / (v * Sqr(tn - t)) * (Log(s / k) + (r + 0.5 * v * v) * (tn - t))
dx2 = dx1 - v * Sqr(tn - t)
nd1 = WorksheetFunction.NormSDist(dx1)
nd2 = WorksheetFunction.NormSDist(dx2)
cs = s * nd1 - Exp(-r * (tn - t)) * nd2 * k
Call_BS = cs
End Function
Function Put_BS(s As Double, v As Double, r As Double, k As Double, tn As Double, t As Double) As Double
Dim ps As Double
Dim dx1 As Double
Dim dx2 As Double
Dim nd1 As Double
Dim nd2 As Double
dx1 = 1 / (v * Sqr(tn - t)) * (Log(s / k) + (r + 0.5 * v * v) * (tn - t))
dx2 = dx1 - v * Sqr(tn - t)
nd1 = WorksheetFunction.NormSDist(-dx1)
nd2 = WorksheetFunction.NormSDist(-dx2)
ps = -s * nd1 + Exp(-r * (tn - t)) * nd2 * k
Put_BS = ps
End Function |
mais cela ne fonctionne pas. la macro ne veut pas s’exécuter.
je me demande où se localise mon erreur. si vous pouviez m'aider. Et aussi vous pouvez me dire comment je peux faire pour qu'il y a ait un graphique de cette sorte sur excel ça m'aiderait énormément .
Pièce jointe 181137 voici "le type de graphique" que je souhaiterai obtenir avec excel, est -il possible selon vous? si oui comment? merci beaucoup pour votre aide.