Calculer la moyenne mobile exponentielle (MME), Excel VBA

Calculer la moyenne mobile exponentielle (MME), Excel VBA

La moyenne mobile exponentielle (MME) est un indicateur qui donne plus de poids aux valeurs récentes dans une série de données, tout en lissant les valeurs plus anciennes. Voici comment vous pouvez calculer la MME avec Excel VBA : 

Code VBA pour calculer la MME : 

Sub CalculerMME()
    ' Définir les variables 
    Dim Plage As Range 
    Dim i As Long 
    Dim Alpha As Double 
    Dim MME As Double 
    Dim ValeurActuelle As Double 
    Dim PlageMME As Range 
    ' Demander à l'utilisateur de spécifier la plage de données 
    Set Plage = Application.InputBox("Sélectionner la plage de données", Type:=8) 
    ' Demander à l'utilisateur de spécifier le paramètre alpha (facteur de lissage) 
    Alpha = Application.InputBox("Entrer le facteur alpha (par exemple 0.1)", Type:=1) 
    ' Initialiser la première MME avec la première valeur de la série 
    MME = Plage.Cells(1, 1).Value 
    ' Créer une plage pour afficher les résultats 
    Set PlageMME = Plage.Offset(0, 1) ' Afficher la MME dans la colonne adjacente 
    ' Calculer la MME pour chaque valeur 
    For i = 2 To Plage.Cells.Count 
        ValeurActuelle = Plage.Cells(i, 1).Value 
        MME = (Alpha * ValeurActuelle) + ((1 - Alpha) * MME) ' Formule MME 
        PlageMME.Cells(i - 1, 1).Value = MME ' Enregistrer la MME calculée 
    Next i 
    ' Message de confirmation 
    MsgBox "Calcul de la MME terminé!", vbInformation 
End Sub

 

Explication du code : 

1. Plage de données : L’utilisateur sélectionne la plage de données pour laquelle il souhaite calculer la MME. 

2. Alpha : Le facteur de lissage alpha est demandé à l’utilisateur. Plus alpha est proche de 1, plus la moyenne sera sensible aux données récentes. 

3. Calcul de la MME :  

  • La première MME est initialisée à la première valeur de la série. 
  • Pour chaque valeur suivante, la MME est mise à jour avec la formule : MMEt=(α×Valeur actuelle)+(1−α)×MME t−1  

4. Affichage des résultats : La MME calculée est placée dans la colonne à côté de la plage sélectionnée. 

Exemple : 

Si vous avez une colonne de valeurs dans A1:A10, et que vous spécifiez un alpha de 0.1, la MME sera calculée et affichée dans la colonne adjacente, B1:B10. 

Facebook
Twitter
LinkedIn
WhatsApp
Email
Print
0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x