Cet article examine comment Python peut être appliqué à l'analyse de données financières, en s'appuyant sur des bibliothèques comme Pandas, NumPy et Matplotlib pour gérer les informations boursières, identifier les tendances et formuler des stratégies d'investissement. Que vous soyez analyste financier expérimenté ou novice dans le domaine des investissements, ces techniques amélioreront vos compétences analytiques et votre compréhension des dynamiques du marché.
Configuration des bibliothèques
import pandas as panda_lib
import numpy as npy
import datetime as dt
import matplotlib.pyplot as plot_graph
Les importations ci-dessus préparent l'environnement pour le traitement de données avec des structures comme les DataFrames de panda_lib, les calculs numériques via npy, la gestion des dates avec dt, et la visualisation à l'aide de plot_graph.
Récupération des données
import yfinance as yf
symbole_donnees = yf.download('AAPL', start='2006-10-01', end='2012-01-01')
print(symbole_donnees.head())
Ce code utilise yfinance pour télécharger les données historiques des actions d'Apple Inc. entre octobre 2006 et janvier 2012, affichant les premières lignes du jeu de données.
import quandl as ql
donnees_boursieres = ql.get("WIKI/AAPL", start_date="2006-10-01", end_date="2012-01-01")
print(donnees_boursieres.head())
Ici, nous exploitons la bibliothèque quandl pour extraire les mêmes données à partir de la base WIKI, couvrant la même période.
Manipulation des séries temporelles
index_temps = symbole_donnees.index
colonnes_disponibles = symbole_donnees.columns
serie_fermeture = symbole_donnees['Close'][-10:]
print(type(serie_fermeture))
Cette section accède à l'index temporel et aux colonnes du DataFrame, qui incluent typiquement 'Open', 'Close', 'High', 'Low', 'Volume'. Nous extrayons les dix dernières valeurs de clôture dans une série et vérifions son type.
symbole_donnees['ecart'] = symbole_donnees.Open - symbole_donnees.Close
del symbole_donnees['ecart']
Nous créons temporairement une colonne calculant la différence entre les prix d'ouverture et de clôture, puis la supprimons pour restaurer la structure originale.
Visualisation des tendances
plot_graph.figure()
symbole_donnees['Close'].plot(grid=True, title='Prix de clôture AAPL')
plot_graph.ylabel('Prix')
plot_graph.show()
Un graphique est généré pour visualiser l'évolution du prix de clôture d'Apple, avec une grille pour faciliter l'analyse des modèles au fil du temps.
Calcul des rendements
prix_ajuste = symbole_donnees[['Adj Close']]
variation_quotidienne = prix_ajuste.pct_change()
variation_quotidienne.fillna(0, inplace=True)
print(variation_quotidienne.head())
rendements_log = npy.log(1 + variation_quotidienne)
print(rendements_log.head())
Cette partie analyse les rendements en utilisant d'abord le pourcentage de changement quotidien sur le prix ajusté, avec remplacement des valeurs manquantes par zéro. Ensuite, nous calculons les rendements logarithmiques pour une perspective alternative sur la performance des actions.