Simulación de cartera - Parte I
En los próximos ejercicios, calcularás la rentabilidad esperada de una cartera de acciones y describirás su incertidumbre.
Supón que has invertido 10.000 $ en una cartera compuesta por varias acciones. Quieres evaluar el rendimiento de la cartera a lo largo de 10 años. Puedes ajustar tu tasa de rentabilidad esperada global y la volatilidad (desviación estándar de la tasa de rentabilidad). Supón que la tasa de rentabilidad sigue una distribución normal.
Primero, vamos a escribir una función que reciba como entrada el capital inicial (inversión inicial), el número de años, la tasa de rentabilidad esperada y la volatilidad, y que devuelva el valor total de la cartera tras 10 años.
Al terminar este ejercicio, tendrás una función que podrás llamar para determinar el rendimiento de la cartera.
Este ejercicio forma parte del curso
Simulación estadística en Python
Instrucciones del ejercicio
- En la definición de la función, acepta cuatro argumentos: número de años
yrs, tasa de rentabilidad esperadaavg_return, volatilidadsd_of_returny capital inicial (inversión inicial)principalcomo entradas. - Simula
ratesde rentabilidad para cada año como una variable aleatoria normal. - Inicializa
end_returncon la entradaprincipal. En el buclefor, escalaend_returnpor la tasa cada año. - Usa
portfolio_return()para calcular e imprimirresult.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# rates is a Normal random variable and has size equal to number of years
def portfolio_return(____):
np.random.seed(123)
rates = ____(loc=avg_return, scale=sd_of_return, size=yrs)
# Calculate the return at the end of the period
end_return = ____
for x in rates:
end_return = end_return*(1+____)
return end_return
result = portfolio_return(yrs = 5, avg_return = 0.07, sd_of_return = 0.15, principal = 1000)
print("Portfolio return after 5 years = {}".format(____))