twarrants.py

Created by matthieumorvant

Created on February 11, 2024

2.43 KB


# Demande à l'utilisateur s'il est exportateur ou importateur
role = input("Êtes-vous exportateur(1) ou importateur(2) ? ")

# Si l'utilisateur est un importateur
if role == '2':
    print("Sélection : Put/Warrants €/$")
    
    # Collecte des informations de l'utilisateur
    montant_global = float(input("Montant global ($): "))
    cours_spot = float(input("Cours spot (€/$): "))
    prix_exercice = float(input("Prix d'exercice (€/$): "))
    prime = float(input("Prime (en cts d'euros): "))
    delta = abs(float(input("Delta (positif): ")))  # Assurez-vous que Delta est positif
    parite = float(input("Parité (décimal): "))
    quotite = float(input("Quotité: "))
    
    # Calculs pour l'importateur
    somme_euros_a_couvrir = montant_global / cours_spot
    nb_warrants = (somme_euros_a_couvrir * parite) / delta
    montant_prime = prime * nb_warrants
    
    # Affichage des résultats et des formules
    print("Somme en euros à couvrir = Montant global / Cours spot = {:.2f}".format(somme_euros_a_couvrir))
    print("Nombre de warrants nécessaires = (Somme à couvrir * Parité) / Delta = {:.2f}".format(nb_warrants))
    print("Montant total de la prime = Prime * Nombre de warrants = {:.2f} €".format(montant_prime))

# Si l'utilisateur est un exportateur
elif role == '1':
    print("Sélection : Call/Warrants €/$")
    
    # Collecte des informations de l'utilisateur
    cours_actuel = float(input("Cours actuel du sous-jacent (€/$): "))
    prix_warrant = float(input("Prix du warrant (€): "))
    prix_exercice = float(input("Prix d'exercice (€/$): "))
    delta = abs(float(input("Delta (positif): ")))  # Assurez-vous que Delta est positif
    parite = float(input("Parité (warrants pour 1 sous-jacent): "))
    
    # Calculs pour l'exportateur
    levier = cours_actuel / (prix_warrant * parite)
    elasticite = levier * delta
    appreciation_sous_jacent = 10  # Supposons une appréciation de 10%
    progression_warrant = elasticite * appreciation_sous_jacent
    
    # Affichage des résultats et des formules
    print("Levier = Cours actuel du sous-jacent / (Prix du warrant * Parité) = {:.2f}".format(levier))
    print("Élasticité = Levier * Delta = {:.2f}".format(elasticite))
    print("Progression du warrant pour une appréciation de 10% du sous-jacent = Élasticité * 10 = {:.2f}%".format(progression_warrant))

else:
    print("Choix non valide. Veuillez entrer '1' pour exportateur ou '2' pour importateur.")

During your visit to our site, NumWorks needs to install "cookies" or use other technologies to collect data about you in order to:

With the exception of Cookies essential to the operation of the site, NumWorks leaves you the choice: you can accept Cookies for audience measurement by clicking on the "Accept and continue" button, or refuse these Cookies by clicking on the "Continue without accepting" button or by continuing your browsing. You can update your choice at any time by clicking on the link "Manage my cookies" at the bottom of the page. For more information, please consult our cookies policy.