No se puede predecir el ruido blanco
Una serie temporal de ruido blanco es simplemente una secuencia de variables aleatorias no correlacionadas que se distribuyen idénticamente. Los rendimientos de las acciones suelen modelarse como ruido blanco. Por desgracia, en el caso del ruido blanco, no podemos predecir las observaciones futuras basándonos en el pasado: las autocorrelaciones en todos los retardos son cero.
Generarás una serie de ruido blanco y trazarás la función de autocorrelación para demostrar que es cero para todos los retardos. Puedes utilizar np.random.normal()
para generar rendimientos aleatorios. Para un proceso de ruido blanco gaussiano, la media y la desviación típica describen todo el proceso.
Traza esta serie de ruido blanco para ver qué aspecto tiene, y luego traza la función de autocorrelación.
Este ejercicio forma parte del curso
Análisis de Series Temporales en Python
Instrucciones de ejercicio
- Genera 1000 rendimientos aleatorios normales utilizando
np.random.normal()
con una media del 2% (0,02) y una desviación típica del 5% (0,05), donde el argumento para la media esloc
y el argumento para la desviación típica esscale
. - Comprueba la media y la desviación típica de los rendimientos utilizando
np.mean()
ynp.std()
. - Traza la serie temporal.
- Traza la función de autocorrelación utilizando
plot_acf
conlags=20
.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# 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()