Spaces:
No application file
No application file
import streamlit as st | |
import numpy as np | |
import pandas as pd | |
st.title('App de prueba 馃懟') | |
# Obtener la tasa de inter茅s inicial y la cantidad inicial | |
tasa_inicial = st.number_input("Escribe la tasa de inter茅s nominal inicial (%):") | |
A = st.number_input("Escribe la cantidad que ahorrar谩s ($):") | |
T = st.number_input("Escribe cuantos meses quieres ver:") | |
tasas_variables = [] | |
# Permitir al usuario ingresar tasas variables | |
for i in range(int(T)): | |
tasa = st.number_input(f"Tasa de inter茅s nominal para el mes {i+1} (%):", key=f"tasa_{i}") | |
tasas_variables.append(tasa) | |
z = np.arange(T) | |
# Calcular los retornos para tasas variables | |
r_d = [] | |
r_c = [] | |
for i in range(int(T)): | |
retorno_discreto = A * (1 + tasas_variables[i]/(12*100))**i | |
retorno_continuo = A * np.exp(tasas_variables[i]/(12*100) * i) | |
print(f"Mes {i+1}: retorno_continuo = {retorno_continuo}") | |
r_d.append(retorno_discreto) | |
r_c.append(retorno_continuo) | |
print("Longitud de r_c:", len(r_c)) | |
print("r_d:", r_d) | |
print("r_c:", r_c) | |
new_dict = {"Mes": z, "Retorno discreto": r_d, "Retorno continuo": r_c} | |
df = pd.DataFrame(new_dict) | |
st.dataframe(df) | |
st.write(f"En {T} meses tendr谩s $ {r_c[-1]}") | |
import matplotlib.pyplot as plt | |
# Crear la figura y los ejes | |
fig, ax = plt.subplots() | |
# Trazar la evoluci贸n del crecimiento de la inversi贸n | |
ax.plot(df["Mes"], df["Retorno discreto"], label="Retorno discreto", marker='o') | |
ax.plot(df["Mes"], df["Retorno continuo"], label="Retorno continuo", marker='x') | |
# Agregar etiquetas y leyenda | |
ax.set_xlabel('Mes') | |
ax.set_ylabel('Retorno') | |
ax.set_title('Evoluci贸n del crecimiento de la inversi贸n') | |
ax.legend() | |
# Mostrar la gr谩fica | |
st.pyplot(fig) | |