Simular pagos periódicos (II)
Has decidido ampliar tu programa del ejercicio anterior para almacenar los pagos al principal y los intereses abonados en cada período, y para representarlos en un gráfico en lugar de simplemente imprimirlos.
En este ejemplo, el código de visualización ya está hecho, así que solo tienes que completar la lógica dentro del bucle for y la inicialización de las variables que se actualizarán en cada iteración.
Este ejercicio forma parte del curso
Introducción a los conceptos financieros en Python
Instrucciones del ejercicio
- Simplemente guarda
interest_paidyprincipal_paidpara cada período. - Calcula el
principal_remainingde cada período en función del pago al principal y el principal restante. - Ejecuta el código proporcionado para representar el pago mensual de intereses frente al de principal.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Loop through each mortgage payment period
for i in range(0, mortgage_payment_periods):
# Handle the case for the first iteration
if i == 0:
previous_principal_remaining = mortgage_loan
else:
previous_principal_remaining = principal_remaining[i-1]
# Calculate the interest based on the previous principal
interest_payment = round(previous_principal_remaining*mortgage_rate_periodic, 2)
principal_payment = round(periodic_mortgage_payment - interest_payment, 2)
# Catch the case where all principal is paid off in the final period
if previous_principal_remaining - principal_payment < 0:
principal_payment = previous_principal_remaining
# Collect the historical values
interest_paid[i] = ____
principal_paid[i] = ____
principal_remaining[i] = ____
# Plot the interest vs principal
plt.plot(interest_paid, color="red")
plt.plot(principal_paid, color="blue")
plt.legend(handles=[interest_plot, principal_plot], loc=2)
plt.show()