Impossibile prevedere il White Noise
Una serie temporale di white noise è semplicemente una sequenza di variabili casuali non correlate e identicamente distribuite. I rendimenti azionari sono spesso modellati come white noise. Purtroppo, con il white noise non possiamo prevedere le osservazioni future a partire dal passato: le autocorrelazioni a tutti i lag sono nulle.
Genererai una serie di white noise e traccerai la funzione di autocorrelazione per mostrare che è zero per tutti i lag. Puoi usare np.random.normal() per generare rendimenti casuali. Per un processo di white noise gaussian o, la media e la deviazione standard descrivono l’intero processo.
Rappresenta questa serie di white noise per vedere come appare, e poi traccia la funzione di autocorrelazione.
Questo esercizio fa parte del corso
Analisi delle serie temporali in Python
Istruzioni dell'esercizio
- Genera 1000 rendimenti normali casuali usando
np.random.normal()con media 2% (0,02) e deviazione standard 5% (0,05), dove l’argomento per la media èloce l’argomento per la deviazione standard èscale. - Verifica la media e la deviazione standard dei rendimenti usando
np.mean()enp.std(). - Traccia la serie temporale.
- Traccia la funzione di autocorrelazione usando
plot_acfconlags=20.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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()