Vitt brus går inte att förutsäga
En tidsserieprocess med vitt brus är helt enkelt en följd av okorrelerade slumpvariabler med samma fördelning. Aktiekursutveckling modelleras ofta som vitt brus. Tyvärr går det inte att förutsäga framtida observationer utifrån det förflutna – autokorrelationerna är noll för alla lags.
Du ska generera en vit brusserie och plotta autokorrelationsfunktionen för att visa att den är noll för alla lags. Använd np.random.normal() för att generera slumpmässiga avkastningar. För en gaussisk vitbrusprocess beskriver medelvärdet och standardavvikelsen hela processen.
Plotta vitbrusserien för att se hur den ser ut, och plotta sedan autokorrelationsfunktionen.
Den här övningen är en del av kursen
Tidsserieanalys i Python
Övningsinstruktioner
- Generera 1 000 slumpmässiga normalfördelade avkastningar med
np.random.normal(), med medelvärdet 2 % (0,02) och standardavvikelsen 5 % (0,05), där argumentet för medelvärdet ärlococh argumentet för standardavvikelsen ärscale. - Verifiera medelvärdet och standardavvikelsen för avkastningarna med
np.mean()ochnp.std(). - Plotta tidsserien.
- Plotta autokorrelationsfunktionen med
plot_acfochlags=20.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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()