Mers aleatoriu II
În videoclipul anterior, ai văzut și cum să creezi un mers aleatoriu al randamentelor prin eșantionare din randamente reale, și cum să folosești acest eșantion aleatoriu pentru a construi un traseu aleatoriu al prețului unei acțiuni.
În acest exercițiu, vei construi un mers aleatoriu folosind randamentele istorice ale acțiunii Facebook de la IPO până la 31 mai 2017. Apoi, în exercițiul următor, vei simula un traseu alternativ aleatoriu al prețului.
Acest exercițiu face parte din cursul
Manipularea datelor de tip serie de timp în Python
Instrucțiuni pentru exercițiu
Am importat deja pandas ca pd, choice și seed din numpy.random, seaborn ca sns și matplotlib.pyplot ca plt. Am importat, de asemenea, seria prețurilor acțiunii FB de la IPO în mai 2012 ca variabila fb. Inspecteaz-o folosind .head().
- Setează seed-ul la 42.
- Aplică
.pct_change()pentru a genera randamentele zilnice ale Facebook, elimină valorile lipsă și atribuie rezultatul variabileidaily_returns. - Creează o variabilă
n_obscare să conțină rezultatul.count()aplicat pedaily_returns. - Folosește
choice()pentru a selecta aleatoriun_obseșantioane dindaily_returnsși atribuie rezultatul variabileirandom_walk. - Convertește
random_walkîntr-unpd.Seriesși reatribuie-l aceleiași variabile. - Folosește
sns.distplot()pentru a reprezenta grafic distribuția luirandom_walk.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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