Bonjour à tous,
J'ai mon code qui fonctionne pour le maximum drawdown dans VBA, mais il n'est pas complet. Je dois rajouter la date du maximum drawdown ainsi que sa durée, pouvez-vous m'aider ?
Merci
Lejack
Bonjour à tous,
J'ai mon code qui fonctionne pour le maximum drawdown dans VBA, mais il n'est pas complet. Je dois rajouter la date du maximum drawdown ainsi que sa durée, pouvez-vous m'aider ?
Merci
Lejack
N'oubliez pas de cliquer surquand vous avez obtenu ou trouvé vous-même la réponse à votre question.
Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
Pensez aussi à voter pour les réponses qui vous ont aidés.
------------
Je dois beaucoup de mes connaissances à mes erreurs!
Bonjour,
Désolé, j'y ai pas pensé ...
Voici l'explication du maximum drawdown pour ceux qui ne connaissent pas sa signification : http://www.andlil.com/le-maximum-drawdown-277.html
Ainsi qu'un fichier exemple pour son calcul avec une fonction excel "normal".
Voici le code VBA que j'utilise pour calculer cette maximal drawdown :
Comme mentionné dans mon premier message, je dois rajouter la date du maximum drawdown ( moment ou la baisse est la plus "violente" )ainsi que sa durée, pouvez-vous m'aider ?
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 Option Explicit Function Maxdrawdown(TheRange As Range) As Double Dim i As Integer Dim n As Integer Dim difference As Double Dim 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 difference = ((maximum - TheRange(i + 1, 1)) / maximum) If (difference > Maxdrawdown) Then Maxdrawdown = difference End If Next i End Function
Merci
Partager