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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 .
voici "le type de graphique" que je souhaiterai obtenir avec excel, est -il possible selon vous? si oui comment? merci beaucoup pour votre aide.
Partager