Navigation

    La Cabane Libre

    • Register
    • Login
    • Search
    • Catégories
    • Recent
    • Mots-clés
    • Ciné Libre

    Coin2086, un module Python pour faciliter vos déclarations fiscales de ventes de crypto-monnaies

    Articles de Logiciels
    1
    1
    52
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • LinuxFR
      LinuxFR last edited by

      L’heure de remplir sa déclaration d’impôts est venue (oh ! oui !), et si vous avez réalisé des plus-values en vendant des crypto-monnaies en 2020, vous allez devoir un formulaire n°2086 (chanceux que vous êtes).

      En effet, selon le code des impôts (CGI art. 150 VH bis bis pour les masW curieux), les plus values réalisées à l’occasion de la revente de crypto-monnaies sont imposables. La notice du formulaire n°2086 (dernière page du PDF), précise la formule de calcul:

      formule calcul

      Concrètement, si vous achetez un Bitcoin pour 1000€, et un Ethereum pour 100€ en janvier 2020, puis qu’en mars le Bitcoin monte à 1300€ et l’Ethereum à 150€, et que vous décidez alors de vendre 0.25 Bitcoin, le profit associé à cette vente est :

      # 1 Bitcoin à 1300 euro, 1 Ethereum à 150 euro valeur_portefeuille = (1 * 1300 + 1 * 150) # Vente de 0.25 Bitcoin à 1300 euro l'unité valeur_vente = (0.25 * 1300) # 1 Bitcoin à 1000 euro, 1 Ethereum à 100 euro prix_achat_portefeuille = 1100 profit = valeur_vente - (valeur_vente/valeur_portefeuille) * prix_achat_portefeuille = 78.44 euros
      

      La valeur (valeur_vente/valeur_portefeuille) * prix_achat_portefeuille (246€) devient votre “fraction de capital initial” qui pourra être déduite du prix d’achat de votre portefeuille à la deuxième vente.

      Toute cette comptabilité est assez ennuyeuse à faire à la main ou même avec un tableur, parce qu’il faut valoriser toutes vos crypto-monnaies à chaque vente, pas seulement la crypto-monnaie vendue.

      Quand vous vendez du Bitcoin la transaction enregistrée par l’exchange sur votre profil retient le prix de vente du Bitcoin mais pas les prix de vos autres crypto-monnaies. Il vous faudra donc manuellement aller chercher les prix des autres crypto-monnaies sur les exchanges ou des sites qui gardent les historiques de prix.

      C’est là que coin2086 entre en jeu. Globalement, il s’occupe de tout pour vous, il valorise votre portefeuille à chaque vente, et s’occupe des calculs de “fractions de capital initial”. Pour l’utiliser, il faut simplement lui fournir un DataFrame pandas contenant un historique de toutes vos transactions en entrée. Vous pourrez télécharger cet historique de depuis votre exchange dans votre profil, vous n’aurez ensuite qu’à retravailler le nom des colonnes pour qu’elles correspondent au format attendu par coin2086. En sortie, vous obtenez un DataFrame qui contient exactement les informations à copier sur le formulaire n°2086 pour chaque vente.

      >>> import pandas as pd >>> import coin2086 >>> trades = pd.read_csv('trades.csv') >>> trades datetime trade_side cryptocurrency quantity price base_currency amount fee 0 2019-10-19 11:10:00 BUY BTC 1.00 7149.38 EUR 7149.3800 35.746900 1 2019-11-14 19:50:00 SELL BTC 0.50 7844.88 EUR 3922.4400 19.612200 2 2020-07-28 10:20:00 BUY BTC 2.00 9262.42 EUR 18524.8400 92.624200 3 2020-09-01 12:20:00 BUY ETH 5.00 393.58 EUR 1967.9000 9.839500 4 2020-09-05 16:50:00 SELL BTC 1.00 8722.70 EUR 8722.7000 43.613500 5 2020-09-08 12:40:00 SELL ETH 5.00 285.07 EUR 1425.3500 7.126750 6 2020-12-20 09:10:00 SELL BTC 0.25 19223.90 EUR 4805.9750 24.029875 7 2021-03-13 23:40:00 SELL BTC 0.25 50025.17 EUR 12506.2925 62.531463 >>> year = 2020 >>> form2086, taxable_profit = coin2086.compute_taxable_pnls(trades, year=year) >>> print(f"Total taxable profit for year {year}: {taxable_profit:.2f} euros") Total taxable profit for year 2020: 2038.50 euros >>> form2086 Description ... Plus-values et moins-values [pnl] 4 SELL 1.00 BTC ... -371.708792 5 SELL 5.00 ETH ... -102.332358 6 SELL 0.25 BTC ... 2512.542417 [3 rows x 10 columns]
      

      Voila, ce journal est déjà beaucoup trop long, vous trouverez ci-dessous tous les liens utiles.

      📖 Documentation: https://coin2086.readthedocs.io/
      📦 Paquet PyPI: https://pypi.org/project/coin2086/
      📝 Notebook Jupyter d’exemple: Lancer sur Binder
      💻 Projet GitHub: https://github.com/fandre90/coin2086

      Coin2086 est distribué sous licence MIT et tout type de contribution (remarques, commentaires, pull requests etc.) est absolument bienvenu.

      Télécharger ce contenu au format EPUB

      Commentaires : voir le flux Atom ouvrir dans le navigateur

      https://linuxfr.org/users/fandre/journaux/coin2086-un-module-python-pour-faciliter-vos-declarations-fiscales-de-ventes-de-crypto-monnaies

      1 Reply Last reply Reply Quote 0
      • First post
        Last post

      Sauf mention contraire, le site est placé sous double licence Creative Commons BY-SA et GNU Free Documentation License propulsé par NodeBB