Aan de slagGa gratis aan de slag

Geen voorspelling voor white noise

Een white-noise-tijdreeks is simpelweg een reeks ongecorreleerde, identiek verdeelde willekeurige variabelen. Aandelenrendementen worden vaak als white noise gemodelleerd. Helaas kun je bij white noise toekomstige observaties niet op basis van het verleden voorspellen: de autocorrelaties zijn op alle vertragingen nul.

Je gaat een white-noise-reeks genereren en de autocorrelatiefunctie plotten om te laten zien dat die voor alle vertragingen nul is. Je kunt np.random.normal() gebruiken om willekeurige rendementen te genereren. Voor een Gaussisch white-noise-proces beschrijven het gemiddelde en de standaarddeviatie het hele proces.

Plot deze white-noise-reeks om te zien hoe die eruitziet en plot daarna de autocorrelatiefunctie.

Deze oefening maakt deel uit van de cursus

Tijdreeksanalyse in Python

Cursus bekijken

Oefeninstructies

  • Genereer 1000 normaal verdeelde willekeurige rendementen met np.random.normal() met een gemiddelde van 2% (0,02) en een standaarddeviatie van 5% (0,05), waarbij het argument voor het gemiddelde loc is en voor de standaarddeviatie scale.
  • Controleer het gemiddelde en de standaarddeviatie van de rendementen met np.mean() en np.std().
  • Plot de tijdreeks.
  • Plot de autocorrelatiefunctie met plot_acf en lags=20.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Import the plot_acf module from statsmodels
from statsmodels.graphics.tsaplots import plot_acf

# Simulate white noise returns
returns = np.random.normal(loc=___, scale=___, size=___)

# Print out the mean and standard deviation of returns
mean = np.mean(___)
std = np.std(___)
print("The mean is %5.3f and the standard deviation is %5.3f" %(mean,std))

# Plot returns series
plt.plot(___)
plt.show()

# Plot autocorrelation function of white noise returns
plot_acf(___, lags=___)
plt.show()
Code bewerken en uitvoeren