Probleme programme Maxdrawdown
Bonjour à tous
Je suis en train de travailler sur un calcul de maximum drawdown : un instrument financier permettant de calculer la perte maximum si on avait investi au plus mauvais moment
L'idée c'est d'avoir une plage de valeur et de calculer le maxDD via une fonction VBA
Mon code doit pas etre loin d'être bon mais j'ai une erreur #Valeur!, pouvez vous me dire si vous reperer quelque chose qui cloche car là je ne vois pas très bien :
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
| Option Explicit
Function Maxdrawdown(TheRange As Range) As Double
Dim i, n As Integer
Dim diff, maximum As Double
Maxdrawdown = 0
i = 0
maximum = TheRange(1, 1)
n = TheRange.Rows.Count
For i = 0 To n - 1
If TheRange(i + 1, 1) > maximum Then
maximum = TheRange(i + 1, 1)
End If
diff = (maximum - Range(i + 1, 1)) / maximum
If (diff > Maxdrawdown) Then
Maxdrawdown = diff
End If
Next i
End Function |
Merci beaucoup d'avance