Genereer een random walk
Aandelenrendementen worden vaak gemodelleerd als white noise, terwijl aandelenkoersen sterk op een random walk lijken. Met andere woorden: de prijs van vandaag is de prijs van gisteren plus een beetje willekeurige ruis.
Je gaat de koers van een aandeel over de tijd simuleren met een startprijs van 100, die elke dag met een willekeurig bedrag stijgt of daalt. Plot daarna de gesimuleerde aandelenkoers. Als je meerdere keren op de knop "Code uitvoeren" klikt, zie je verschillende realisaties.
Deze oefening maakt deel uit van de cursus
Tijdreeksanalyse in Python
Oefeninstructies
- Genereer 500 normaal verdeelde "stappen" met mean=0 en standaarddeviatie=1 met
np.random.normal(), waarbij het argument voor het gemiddeldelocis en voor de standaarddeviatiescale. - Simuleer aandelenkoersen
P:- Cumuleer de willekeurige
stepsmet de numpy-methode.cumsum() - Tel 100 op bij
Pom een startkoers van 100 te krijgen.
- Cumuleer de willekeurige
- Plot de gesimuleerde random walk
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Generate 500 random steps with mean=0 and standard deviation=1
steps = np.random.normal(loc=___, scale=___, size=___)
# Set first element to 0 so that the first price will be the starting stock price
steps[0]=0
# Simulate stock prices, P with a starting price of 100
P = ___ + np.cumsum(___)
# Plot the simulated stock prices
plt.plot(___)
plt.title("Simulated Random Walk")
plt.show()