Simulación de un problema de beneficios
Trabajas en una empresa que fabrica equipos industriales. El precio de venta de cada equipo es de 100.000 dólares. También sabes que existe una fuerte correlación negativa entre la inflation_rate y las ventas volume. Esta relación se capta mediante la matriz de covarianza cov_matrix, que está disponible en la consola para ti.
La función profit_next_year_mc() realiza una simulación Monte Carlo que devuelve el beneficio esperado (en miles de dólares), dados como argumentos la tasa de inflación media y el volumen de ventas medio. También tendrás que pasar n, el número de veces que debe ejecutarse la simulación. La función se ha cargado para ti, y la definición está más abajo.
def profit_next_year_mc(mean_inflation, mean_volume, n):
  profits = []
  for i in range(n):
    # Generate inputs by sampling from the multivariate normal distribution
    rate_sales_volume = st.multivariate_normal.rvs(mean=[mean_inflation,mean_volume], cov=cov_matrix,size=1000)
    # Deterministic calculation of company profit
    price = 100 * (100 + rate_sales_volume[:,0])/100
    volume = rate_sales_volume[:,1]
    loan_and_cost = 50 * volume + 45 * (100 + 3 * rate_sales_volume[:,0]) * (volume/100)
    profit = (np.mean(price * volume - loan_and_cost))
    profits.append(profit)
  return profits
Además, se han importado los siguientes paquetes: pandas como pd, numpy como np, scipy.stats como st, matplotlib.pyplot como plt y seaborn como sns.
Este ejercicio forma parte del curso
Simulaciones Montecarlo en Python
Instrucciones del ejercicio
- Realiza una simulación Monte Carlo ejecutando 
profit_next_year_mc()500 veces utilizando unmean_inflationde2y unmean_volumede500. - Visualiza los resultados de la simulación en 
displot. 
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Run a Monte Carlo simulation 500 times using a mean_inflation of 2 and a mean_volume of 500
profits = profit_next_year_mc(____)
# Create a displot of the results
____
plt.show()