Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA moyenne mobile

kennedyisback

XLDnaute Nouveau
Bonjour,
j'ai actuellement un probléme vba à révolutionner,
Je dois réaliser un histogramme de fréquence puis tester la normalité des titres a l'aide de la méthode qq-plot (droite d'henry)
puisJe dois calculer des moyennes mobiles 20 et 50 des titres pour ensuite afficher les signaux d'achats et de ventes en fonctions du croisement à la hausse et à la baisse de ceux-ci.
Absolument novice en VBA je ne sais comment faire. Pourriez vous m'aidez svp ?
 

Staple1600

XLDnaute Barbatruc
Bonjour le fil, le forum

@kennedyisback [Bienvenue sur le forum]
[aparté]
Personnelllement je préfère les DK avec Jello Biafra
[/aparté]

Sinon pour ta question, un petit fichier Excel* exemple joint par tes soins aiderait à t'aider.
(* fichier sans données confidentielles)

PS: A toutes fins utiles, puisque tu débutes en VBA, voir cet exemple sans VBA
http://www.jybaudot.fr/Stats/droitehenry.html
ou ce tutorial plus fourni
http://www.minerazzi.com/tutorials/quantile-quantile-tutorial.pdf
 
Dernière édition:

kennedyisback

XLDnaute Nouveau
Bonjour, je les ai vu oui tout a fait, cependant, je comprend bien la méthode mathématique, mais je ne comprend absolument pas la logique VBA et ai vraiment du mal à coder .. d'ou le fait d'avoir autant de mal ..
Le fichier exemple et mon fichier de donnée de titres à analyser, je ne savais pas ce que vous sous-entendiez pas "exemple" .
Un immense merci pour votre aide !
 

Staple1600

XLDnaute Barbatruc
Re

Aprés avoir parcouru ton code VBA (et relu ton fil)
J'en déduis donc que tu n'es pas l'auteur de ce type de code VBA ?
(présent dans ton classeur)
VB:
Function Statistiques(Feuille, Tableau_resultats, Ligne_tableau)
Tableau_resultats(Ligne_tableau, 1) = Feuille.Name
Tableau_resultats(Ligne_tableau, 2) = Plage_Rentas.Cells.Count 'nombre des taux de rentabilités
Tableau_resultats(Ligne_tableau, 3) = WorksheetFunction.Average(Plage_Rentas) 'la moyenne
Tableau_resultats(Ligne_tableau, 4) = WorksheetFunction.Median(Plage_Rentas) ' la mediane
Tableau_resultats(Ligne_tableau, 5) = WorksheetFunction.StDev(Plage_Rentas) ' Ecart-type
Tableau_resultats(Ligne_tableau, 6) = WorksheetFunction.Skew(Plage_Rentas) ' la Skewness
Tableau_resultats(Ligne_tableau, 7) = WorksheetFunction.Kurt(Plage_Rentas) ' la kurtosis
Statistiques = Tableau_resultats
 End Function
 

kennedyisback

XLDnaute Nouveau
Si si, c'est bien moi qui l'est fait, la première étape consistant à calculer ces statistiques pour ensuite en tester la normalité, aprés maintes recherche et qqls jours devant excel j'ai réussi à coder ceci
 

Staple1600

XLDnaute Barbatruc
Re,

>Tu te mésestimes alors (parce que c'est loin d'être du code de VBA de "novice" )

Pourquoi ne pas simplement dans un premier temps, suivre l'exemple de mon premier lien qui n'utilise que les fonctionns natives d'Excel
 

kennedyisback

XLDnaute Nouveau
les cours de vba sur les statistiques m'ont bien servi, malheureusement nous n'avons pas plus avancé que cela, ne me permettant pas d'effectuer les macros pour les parties suivantes, j'ai essayé, cependant je vous avoue avoir enormément de mal. je bloque depuis 2 jours sur l'histogramme alors je vous laisse imaginer pour le reste ..
 

kennedyisback

XLDnaute Nouveau
J'ai bel et bien essayé mais je n'arrive absolument pas à le traduire en macro malheureusement ..
En tout cas, un immense merci pour ses liens ainsi que de tenter de m'aider, je crois malheureusement être une cause perdue ..
 

Staple1600

XLDnaute Barbatruc
Re

En attendant que les matheux du forum viennent à la rescousse, je me suis permis quelques modifications sur ton code d'origine
VB:
'Calcul des taux de rentabilités
Sub Calcule_Rentas()
Dim DL&
DL = Cells(Rows.Count, 1).End(xlUp).Row
With Range("G1")
.Value = "Taux de rentabilité": .Interior.Color = vbGreen: .Font.Bold = -1
End With
Range("G2").Resize(DL - 1) = "=ln((R[1]C2+RC3)/RC2)"
End Sub
 

kennedyisback

XLDnaute Nouveau
Un grand merci ! d'ailleurs, lorsque je "met en marche" la macro, sur ma page de statistiques s'affichent des DIV/0 (sur le la plage ou dans les cours des titres s'affichent les taux de rentabilités) sauriez vous comment modifier cela ?
Quand à l'histogramme, je ne réussi toujours pas à le mettre en place, la démarche serait de : demander le nombre de "pas" a l'utilisateur et que suite à cela se calcul les fréquences qui nous permettront ensuite d'afficher l'histogramme, cependant je bloque deja sur cette étape ..
 

Staple1600

XLDnaute Barbatruc
Bonjour le fil, le forum

=>JFK
J'ai testé sur ton fichier exemple (et cela fonctionnait)
Il faut évidemment que la colonne A ne soit pas vide (ce qui était le cas dans ton fichier exemple)

Pour l'histogramme, attendre les matheux du forum
Ou adapter l'exemple précédemment cité (qui fonctionne à base de formule)
(ou voir sur le net si d'autres tutoriels disponibles sur le q-q plot)

PS: Tu permets que je te nomme JFK, c'est moins long à écrire que kennedyisback ?
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…