Random walk II
In de laatste video heb je ook gezien hoe je een random walk van rendementen maakt door te sampelen uit echte rendementen, en hoe je deze willekeurige steekproef gebruikt om een willekeurig koerspad te maken.
In deze oefening bouw je een random walk met historische rendementen van de aandelenkoers van Facebook vanaf de IPO tot en met 31 mei 2017. Vervolgens simuleer je in de volgende oefening een alternatief willekeurig koerspad.
Deze oefening maakt deel uit van de cursus
Tijdreeksgegevens manipuleren in Python
Oefeninstructies
We hebben pandas al geïmporteerd als pd, choice en seed uit numpy.random, seaborn als sns, en matplotlib.pyplot als plt. We hebben ook de FB-koersreeks sinds de IPO in mei 2012 geïmporteerd als de variabele fb. Bekijk dit met .head().
- Zet de seed op 42.
- Pas
.pct_change()toe om dagelijkse Facebook-rendementen te genereren, verwijder missende waarden en ken dit toe aandaily_returns. - Maak een variabele
n_obsdie de.count()van Facebookdaily_returnsbevat. - Gebruik
choice()om willekeurign_obssteekproeven uitdaily_returnste selecteren en ken dit toe aanrandom_walk. - Zet
random_walkom naar eenpd.Seriesen wijs het opnieuw aan zichzelf toe. - Gebruik
sns.distplot()om de verdeling vanrandom_walkte plotten.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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