À propos du projet
FlashLoanArbitrage est un projet README en anglais décrivant un bot en ligne de commande Node.js pour l'arbitrage de prêts flash ETH/USDC. Il associe un script exécuté localement, goflash.js, à un contrat intelligent qui, selon le README, effectue la partie on-chain de chaque transaction.
Fonctionnement décrit par l'auteur
- goflash.js interroge les prix ETH/USDC sur Chainlink, Uniswap V2, SushiSwap, Curve Finance et Balancer, affichant les cotations actuelles avec des indicateurs de hausse/baisse et l'écart maximal entre les plateformes.
- Il ne déclenche une transaction que lorsque la différence entre les plateformes est de 0,9 % ou plus, un seuil dont le README précise qu'il existe pour éviter les exécutions déficitaires, tout en notant que de tels écarts sont rares sur les marchés réels.
- Le contrat est décrit comme empruntant un prêt flash en USDC, achetant de l'ETH à bas prix sur une plateforme, le revendant plus cher sur une autre, remboursant le prêt plus les frais et le gas, puis convertissant le profit USDC restant en ETH.
Protocoles de prêt flash et limites énoncées
Le README liste quatre sources de prêt avec des plafonds indicatifs : Aave (frais de 0,05 %, jusqu'à 10 000 000 USDC), dYdX (0,05 %, 500 000 USDC), Uniswap V3 (0,01 %, 5 000 000 USDC) et Balancer (0,02 %, 1 000 000 USDC). Les utilisateurs choisissent un protocole et un montant de prêt via le menu ; le README recommande dYdX ou Uniswap V3 pour des frais moins élevés et avertit que les portefeuilles inférieurs à environ 0,1 ETH ne devraient pas demander de prêts supérieurs à 10 ETH car le gas ne serait pas couvert.
Configuration et interface
L'installation est conventionnelle : copier goflash.js et package.json dans un dossier, exécuter npm install (les dépendances sont ethers ^6.11.1, inquirer ^8.2.6 et chalk ^4.1.2), puis node goflash.js. Au premier lancement, une invite interactive propose de créer un nouveau portefeuille ou d'en importer un via une clé privée ; dans les deux cas, la clé est écrite dans wallet.json dans le même répertoire. Le menu principal propose la sélection du protocole DeFi, le montant du prêt, la recréation/importation du portefeuille, le démarrage de l'arbitrage et la sortie. La structure du dépôt présentée dans le README ne contient que goflash.js, package.json, wallet.json et README.md, le code source du contrat n'y est donc pas inclus.
Ce qui est prouvé et ce qui ne l'est pas
Le README ne fournit aucun hachage de transaction, backtest, benchmark ou chiffre de profit, et stipule explicitement que le script affichera occasionnellement une opportunité d'arbitrage simulée à des fins de démonstration. Les affirmations de rentabilité doivent donc être traitées comme des descriptions de l'auteur plutôt que comme des résultats vérifiés.
Mises en garde pratiques
- L'outil demande une clé privée et la stocke non cryptée dans wallet.json ; le README lui-même conseille l'utilisation de .gitignore, des sauvegardes hors ligne et d'un portefeuille dédié.
- Tout bot de ce type détenant des clés et des fonds comporte un risque de contrepartie et un risque de code ; les hypothèses de frais/glissement énoncées (frais de trading de 0,1 %, glissement de 0,05 %) ne sont pas vérifiées.
- Le README fournit des notes de dépannage pour les erreurs courantes (format de module, format de clé invalide, fonds insuffisants, pannes de RPC, paires ETH/USDC manquantes sur V2).
Dans l'ensemble, il s'agit d'une expérience CLI interactive et autonome pour l'arbitrage de prêts flash Ethereum, destinée aux utilisateurs souhaitant exécuter la boucle localement plutôt que via un service hébergé. Elle est présentée telle quelle à des fins éducatives avec une note explicite « utilisez à vos propres risques ».
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.