<jupyter_start><jupyter_text><jupyter_code>pip install numpy-financial #instalo libreria financiera.<jupyter_output>Requirement already satisfied: numpy-financial in /usr/local/lib/python3.7/dist-packages (1.0.0)
Requirement already satisfied: numpy>=1.15 in /usr/local/lib/python3.7/dist-packages (from numpy-financial) (1.21.5)<jupyter_text>VAN y TIR:* VAN = NPV* TIR = IRRCalcular el VAN y la TIR partiendo de los flujos de caja. (El guión bajo lo puedo utilizar como separador de miles).Flujos = [-desemboldo inicial, flujos que recibo] =  [-600_000, 100_000, 150_000, 200_000, 250_000, 300_000]Rentabilidad = tasa de descuento = r = 0.1 (hay que ponerlo con punto que es el separador anglosajón)<jupyter_code>import numpy_financial as npf #importo libreria y pongo abreviatura (para esta librería será npf)
cash_flows = [-600_000, 100_000, 150_000, 200_000, 250_000, 300_000]
tasa_descuento = 0.1

#VAN con libreria:
van = npf.npv(tasa_descuento, cash_flows)
print(f"Valor actual neto ({tasa_descuento:.2%}) = {van:,.2f} €")

#TIR con libreria:
tir = npf.irr(cash_flows)
print(f"TIR: {tir:.2%}")

Desembolso_inicial = cash_flows[0]       # guardamos en una variable el desembolso inicial, que esta en la posición 0 de la lista.
cash_flows[0] = 0                       # en la lista de cash flows hacemos cero el desembolso inicial
van = Desembolso_inicial + npf.npv(tasa_descuento, cash_flows) 
print(f"VAN({tasa_descuento:.2%}) = {van:,.2f} €")                              # obtenemos el van esperado, ahora sin formato<jupyter_output>VAN(10.00%) = 122,168.75 €<jupyter_text>Programar el VAN:En una lista: l=[10,20,30]        posición:  0  1  2Vamor a hacer la función que se hará primero, luego pondremos los parámetros y finalmente nos devolverá la solución.<jupyter_code>#función:
def van(tasa, flujos):
    total = 0
    for i, flujo in enumerate(flujos):
        total += flujo / (1 + tasa)**(i)
    return total 
#Pongo los parámetros:
tasa = 0.1
flujos = [-600_000, 100_000, 150_000, 200_000, 250_000, 300_000]
#Imprimo el resultado:
print(f"VAN = {van(tasa, flujos):,.2f} €")<jupyter_output>VAN = 122,168.75 €<jupyter_text>Función Pago (pmt) Préstamo de tipo francés.npf.pmt(rate, nper, pv, fv, when = ‘end’)rate: tipo de interesnper: número periodospv: desembolso inicialfv: el valor residual o final que tienes que pagar para liquidar el prestamowhen =: (pospagable) 'end'* Calcular el pago mensual periódico necesario para amortizar un préstamo de 350.000 €, a 20 años, al 6% TIN (Tipo de Interés Nominal) con Excel: =PAGO(6%/12;20*12;-350000)<jupyter_code>#importo librería
import numpy_financial as npf

pago = npf.pmt(0.06/12, 20 * 12, 350_000)
print(f"Pago mensual: {-pago:,.2f} €" )<jupyter_output>Pago mensual: 2,507.51 €
{'fraction_non_alphanumeric': 0.1162112932604736, 'fraction_numerical': 0.07759562841530054, 'mean_word_length': 4.627049180327869, 'pattern_counts': {'":': 0, '<': 13, '<?xml version=': 0, '>': 14, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '4', 'dir': 'jupyter-structured-clean-dedup', 'id': '503362', 'license': 'MIT', 'n_tokens_mistral': 1257, 'n_tokens_neox': 1092, 'n_words': 303, 'path': 'VAN_TIR.ipynb', 'repo_name': 'proyectosRVyderivados/cristina', 'size': '2745'}