CommencerCommencez gratuitement

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>
Voir le cours

Instructions de l’exercice

  • Regroupez lng_df, spy_df et smlv_df avec pd.concat() dans le DataFrame full_df.
  • Rééchantillonnez full_df à la fréquence Business Month Start ('BMS').
  • Calculez la variation quotidienne en pourcentage de full_df avec .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())
Modifier et exécuter le code