Captura la deriva
En el último ejercicio, simulaste precios de acciones que siguen un paseo aleatorio. Aquí lo ampliarás de dos maneras.
- Verás un paseo aleatorio con deriva. Muchas series temporales, como los precios de las acciones, son paseos aleatorios pero tienden a subir con el tiempo.
- En el ejercicio anterior, el ruido en el paseo aleatorio era aditivo: se sumaban cambios aleatorios normales al último precio. Sin embargo, al añadir ruido de esa forma, en teoría podrías obtener precios negativos. Ahora harás que el ruido sea multiplicativo: sumarás uno a los cambios aleatorios normales para obtener el rendimiento total y lo multiplicarás por el último precio.
Este ejercicio forma parte del curso
Análisis de series temporales en Python
Instrucciones del ejercicio
- Genera 500 "pasos" multiplicativos aleatorios normales con media del 0,1 % y desviación estándar del 1 % usando
np.random.normal(), que ahora son rendimientos, y suma uno para obtener el rendimiento total. - Simula los precios
P:- Acumula el producto de los pasos usando el método de NumPy
.cumprod(). - Multiplica el producto acumulado de los rendimientos totales por 100 para que el valor inicial sea 100.
- Acumula el producto de los pasos usando el método de NumPy
- Grafica el paseo aleatorio simulado con deriva.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# Generate 500 random steps
steps = np.random.normal(loc=___, scale=___, size=___) + ___
# Set first element to 1
steps[0]=1
# Simulate the stock price, P, by taking the cumulative product
P = ___ * np.cumprod(___)
# Plot the simulated stock prices
plt.plot(___)
plt.title("Simulated Random Walk with Drift")
plt.show()