Marche aléatoire II
Dans la dernière vidéo, vous avez également vu comment créer une marche aléatoire de rendements en échantillonnant des rendements réels, et comment utiliser cet échantillon aléatoire pour construire une trajectoire de prix d’action aléatoire.
Dans cet exercice, vous allez construire une marche aléatoire en utilisant les rendements historiques de l’action Facebook depuis son introduction en bourse jusqu’au 31 mai 2017. Vous simulerez ensuite une trajectoire de prix alternative dans l’exercice suivant.
Cet exercice fait partie du cours
Manipuler des séries temporelles en Python
Instructions
Nous avons déjà importé pandas sous le nom pd, choice et seed depuis numpy.random, seaborn sous le nom sns, et matplotlib.pyplot sous le nom plt. Nous avons également importé la série des prix de l’action FB depuis son introduction en bourse en mai 2012 sous la variable fb. Inspectez-la avec .head().
- Fixez la graine aléatoire à 42.
- Appliquez
.pct_change()pour générer les rendements quotidiens de Facebook, supprimez les valeurs manquantes et affectez le résultat àdaily_returns. - Créez une variable
n_obsqui contient le.count()dedaily_returnsde Facebook. - Utilisez
choice()pour sélectionner aléatoirementn_obséchantillons à partir dedaily_returns, et affectez-les àrandom_walk. - Convertissez
random_walkenpd.Serieset réassignez-le à lui-même. - Utilisez
sns.distplot()pour tracer la distribution derandom_walk.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Set seed here
# Calculate daily_returns here
daily_returns = ____
# Get n_obs
n_obs = ____
# Create random_walk
random_walk = ____
# Convert random_walk to pd.series
random_walk = ____
# Plot random_walk distribution