Fusionner les DataFrames d'actions et calculer les rendements
Notre première étape pour calculer des portefeuilles selon la théorie moderne du portefeuille (MPT) consiste à obtenir des rendements quotidiens et mensuels. À terme, nous allons déterminer les meilleurs portefeuilles de chaque mois sur la base du ratio de Sharpe. La façon la plus simple de procéder est de regrouper toutes nos valeurs de clôture dans un seul DataFrame, puis de les rééchantillonner aux fréquences quotidienne et mensuelle. Nous avons besoin des variations quotidiennes des prix pour calculer la volatilité, qui sera notre mesure du risque.
Cet exercice fait partie du cours
<cours>Machine Learning pour la finance en Python</cours>Instructions de l’exercice
- Regroupez
lng_df,spy_dfetsmlv_dfavecpd.concat()dans le DataFramefull_df. - Rééchantillonnez
full_dfà la fréquence Business Month Start ('BMS'). - Calculez la variation quotidienne en pourcentage de
full_dfavec.pct_change().
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Join 3 stock dataframes together
full_df = pd.concat(____, axis=1).dropna()
# Resample the full dataframe to monthly timeframe
monthly_df = full_df.resample(____).first()
# Calculate daily returns of stocks
returns_daily = ____
# Calculate monthly returns of the stocks
returns_monthly = monthly_df.pct_change().dropna()
print(returns_monthly.tail())