Bonjour,

Je souhaite créer une fonction qui fabriquera un array suivant des parametres mai je n'y arrive pas, voici mon code:

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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
Public Function CallCRR(n, p, x, k, u, d, r, T)
Dim TMP As Double
 
TMP = 0
 
Dim Cours(0 To n, 0 To n) As Double
 
    For i = LBound(Cours) To UBound(Cours)
        Cours(i, 0) = x
      For j = LBound(Cours) To UBound(Cours)
                If (Rnd * 1) + 1 > p Then
                    Cours(i, j) = Cours(i, j - 1) * u
                Else
                    Cours(i, j) = Cours(i, j - 1) * d
                End If
      Next j
    Next i
 
 
 
Dim Cmax(0 To n) As Double
 
 
 
 
For l = LBound(Cmax) To UBound(Cmax)
        Cmax(l) = x
Next l
 
For l = LBound(Cmax) To UBound(Cmax)
     For i = LBound(Cours) To UBound(Cours)
        For j = LBound(Cours) To UBound(Cours)
            If Cours(i, j) >= Cmax(l) Then
                Cmax(l) = Cours(i, j)
            End If
        Next j
    Next i
Next l
 
 
 
 
For j = 0 To n
    TMP2 = Cmax(j) - k
    If (TMP2 > 0) Then
        TMP = TMP + (Fact(n) / Fact(n - j) / Fact(j) * (p ^ j) * ((1 - p) ^ (n - j)) * TMP2)
    End If
 
Next j
 
CallCRR = TMP * Exp(-r * T)
 
End Function
 
 
Public Function Fact(n)
F = 1
If n > 1 Then
For i = 2 To n
    F = F * i
Next i
End If
Fact = F
End Function
Il s'agit de créer un Pricer de Call pour une option(option price lookback).

Si vous avez des solutions merci d'avance.