L’analyse des données historiques des actions est essentielle pour les investisseurs et les traders qui souhaitent prendre des décisions éclairées sur les marchés financiers. Excel offre une solution simple et automatisable grâce à l’utilisation des macros VBA. Dans ce guide, nous verrons comment créer une macro pour extraire automatiquement les données historiques de plusieurs actions, optimisant ainsi le processus d’analyse.
Pourquoi utiliser une macro VBA pour les données historiques des actions ?
L’utilisation des macros VBA dans Excel permet de :
- Automatiser le téléchargement des données historiques de plusieurs actions à partir de sources en ligne.
- Gagner du temps par rapport à la saisie manuelle des données.
- Mettre à jour facilement la base de données en un seul clic.
- Personnaliser le processus pour l’adapter à vos besoins d’analyse financière.
Préparation de l’environnement de travail
Avant d’écrire la macro, assurez-vous qu’Excel est configuré avec l’éditeur VBA activé :
- Ouvrez Excel et appuyez sur ALT + F11 pour accéder à l’éditeur VBA.
- Allez dans Insertion > Module pour créer un nouveau module VBA.
Le code VBA pour extraire les données historiques
Ci-dessous, nous vous présentons un code VBA qui permet de télécharger les données historiques de plusieurs actions en utilisant Yahoo Finance comme source :
Sub ScaricaDatiStorici()
Dim ws As Worksheet
Dim i As Integer
Dim symbol As String
Dim url As String
Dim lastRow As Integer
' Définir la feuille de calcul active
Set ws = ThisWorkbook.Sheets("Azioni")
' Déterminer la dernière ligne avec des données
lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
' Boucle pour chaque symbole d'action dans la colonne A
For i = 2 To lastRow
symbol = ws.Cells(i, 1).Value
url = "https://query1.finance.yahoo.com/v7/finance/download/" & symbol & "?period1=1609459200&period2=1672444800&interval=1d&events=history"
' Télécharger les données
With ws.QueryTables.Add(Connection:="URL;" & url, Destination:=ws.Cells(i, 2))
.BackgroundQuery = False
.Refresh
.Delete
End With
Next i
MsgBox "Dati storici scaricati con successo!", vbInformation
End Sub
Comment fonctionne le code ?
- La macro lit les symboles des actions listés dans la colonne A de la feuille de calcul nommée “Azioni”.
- Elle construit une URL pour télécharger les données depuis Yahoo Finance.
- Elle utilise
QueryTables.Addpour importer les données directement dans la feuille Excel. - Elle itère à travers chaque symbole présent dans la colonne, répétant le processus.
- À la fin, elle affiche un message de confirmation.
Personnalisation de la macro
- Modification de l’intervalle de temps :
- Les paramètres
period1etperiod2représentent les dates de début et de fin au format timestamp Unix. Vous pouvez les modifier pour obtenir un intervalle de données différent.
- Les paramètres
- Sources alternatives :
- Si Yahoo Finance ne fournit pas les données souhaitées, vous pouvez remplacer l’URL par d’autres API de marché.
- Gestion des erreurs :
- Ajoutez une gestion des erreurs pour gérer les éventuels problèmes lors du téléchargement des données ou les symboles non valides.
Avantages de l’utilisation d’une macro pour les données historiques
- Gain de temps : évitez le téléchargement manuel des données.
- Mises à jour dynamiques : permet d’obtenir les données en un seul clic.
- Meilleure précision : réduit le risque d’erreurs de saisie manuelle.
Conclusion
L’utilisation d’une macro VBA dans Excel pour extraire des données historiques de plusieurs actions est une méthode efficace pour optimiser le travail d’analyse financière. Avec le code présenté, vous pouvez télécharger automatiquement les cotations de différents titres et les mettre à jour périodiquement, améliorant ainsi votre stratégie d’investissement. Personnalisez la macro en fonction de vos besoins et exploitez au mieux le potentiel d’Excel pour la gestion des données financières.
Pubblicato in Excel
Soyez le premier à commenter