import math def fra_calcul(montant, duree_debut, duree_accord, taux_garanti, taux_reference): # Calcul du différentiel differentiel = montant * (taux_garanti - taux_reference) * (duree_accord / 12) # Calcul de la valeur actualisée valeur_actualisee = differentiel / (1 + taux_reference * (duree_accord / 12)) return differentiel, valeur_actualisee # Entrée des données utilisateur operation = input("'1' emprunt / '2' placement: ") montant = float(input("Montant(€) : ")) duree_debut = float(input("Durée début à accord (mois) : ")) duree_accord = float(input("Durée de l'accord (mois) : ")) taux_garanti = float(input("Tx garanti par le FRA (%) : ")) / 100 taux_reference = float(input("Tx référence (échéance) (%) : ")) / 100 # Calcul et affichage des résultats differentiel, valeur_actualisee = fra_calcul(montant, duree_debut, duree_accord, taux_garanti, taux_reference) # Déterminer l'action (versé ou encaissé) en fonction de l'opération if operation == '1': # Emprunt action = "versé" if taux_reference < taux_garanti else "encaissé" else: # Placement action = "encaissé" if taux_reference < taux_garanti else "versé" # Afficher les calculs détaillés print("\nCalculs détaillés:") print("Montant concerné: {:.2f} €".format(montant)) print("Durée de l'accord: {:.0f} mois".format(duree_accord)) print("Taux garanti par le FRA: {:.2f}%".format(taux_garanti * 100)) print("Taux de référence à l'échéance: {:.2f}%".format(taux_reference * 100)) print("Différentiel {} par l'investisseur : {:.2f} €".format(action, differentiel)) print("Formule du différentiel: Montant * (Taux garanti - Taux de référence) * (Durée de l'accord / 12)") print("Valeur actualisée correspondante : {:.2f} €".format(valeur_actualisee)) print("Formule de la valeur actualisée: Différentiel / (1 + Taux de référence * (Durée de l'accord / 12))") # Explications supplémentaires if action == "encaissé": print("\nL'investisseur encaisse le différentiel car le taux de référence à l'échéance est inférieur au taux garanti.") else: print("\nL'investisseur verse le différentiel car le taux de référence à l'échéance est supérieur au taux garanti.")