La volatilité des cryptomonnaies offre diverses opportunités à ceux qui souhaitent trader, c’est-à-dire acheter et vendre des monnaies dans l’espoir de tirer profit de la différence entre les cotations actuelles et futures. Et lorsque l’on parle du marché des dérivés, où l’on peut opérer avec effet de levier, les possibilités de gains existent chaque jour et il est presque unanime parmi les investisseurs à considérer que c’est la seule manière pour une personne disposant de peu de capital de réaliser des gains importants avec le trading dès le départ.
Pour opérer des contrats à terme sur Bitcoin et d’autres cryptomonnaies, il faut disposer d’un compte sur une plateforme d’échange. Parmi les acteurs mondiaux, l’un des plus agressifs en termes de frais et de portefeuille de monnaies est Binance, réputée comme la plus grande exchange de cryptomonnaies au monde en volume de transactions. Mais pas d’inquiétude : ici nous allons utiliser uniquement le solde de démonstration que la plateforme fournit elle-même pour vous apprendre comment créer des scripts, des robots, des bots crypto afin d’effectuer une surveillance automatique du marché, ainsi que l’envoi d’ordres d’ouverture et de clôture de positions sur les contrats à terme perpétuels USD-M lorsque vos conditions seront atteintes, le tout via de la programmation dans un environnement de développement sans risques.
Il est important d’avoir déjà des connaissances pour opérer sur le marché futur avant de vouloir créer un bot pour ce marché, ce que vous pouvez obtenir par vous-même ou via des vidéos sur YouTube. Idéalement, il est préférable d’avoir déjà développé un bot pour le marché spot, car les étapes se ressemblent fortement, ce que j’explique dans ce tutoriel. Il est aussi crucial de comprendre que Binance n’a pas l’autorisation d’opérer des dérivés au Brésil, lesquels sont régulés par la CVM. Par conséquent, officiellement, les Brésiliens résidents dans le pays NE PEUVENT PAS opérer des Futures. Et même si vous pouvez facilement changer votre pays dans le menu supérieur de Binance et accéder aux Futures, il n’est pas recommandé de le faire. Si vous le faites et qu’il arrive quelque chose à votre compte, c’est entièrement votre responsabilité, d’accord ?
Si vous préférez, vous pouvez regarder la vidéo ci-dessous au lieu de lire le tutoriel.
Avertissement : les gains passés ne garantissent pas les gains futurs. Les cryptomonnaies constituent des investissements à risque et vous pouvez perdre beaucoup d’argent même si vous pensez savoir opérer sur ce marché. JE NE SUIS PAS responsable et je ne le serai jamais pour vos pertes; j’enseigne seulement comment créer des programmes informatiques, je ne donne pas de conseils d’investissement, d’accord ?
#1 – Compte, clés API et environnement
Pour réaliser ce tutoriel, vous devez disposer d’un compte Binance (cliquez sur le lien), la plus grande exchange du monde et dont je suis client depuis plusieurs années. Ils disposent d’APIs REST et de flux très complets que nous utiliserons pour surveiller et opérer sur le marché à terme des cryptomonnaies. Si vous préférez, vous pouvez suivre pas à pas la vidéo ci-dessous pour apprendre à créer les clés.
Créez votre compte et suivez tout le processus de validation, avec selfie et tout le reste. Après que votre compte soit approuvé à 100 %, activez tous les mécanismes de sécurité (dans la section paramètres de votre compte) comme un mot de passe fort, l’authentification à deux facteurs (2FA), etc. Tous ces éléments ne sont pas nécessaires pour ce tutoriel, mais je vous conseille d’en activer tous, car ces plateformes sont la cible des pirates en permanence et vous ne voudriez pas faciliter les choses, n’est-ce pas ?
Après avoir activé ces mécanismes de sécurité, vous devrez accéder à la zone Futures sur le site et, lors de votre première connexion, répondre à un questionnaire très simple qui vous aidera à connaître les bonnes réponses en cas d’erreur. Une fois l’accès Futures débloqué, vous pourrez créer votre clé API (ApiKey). Il suffit d’aller dans la section API Management de votre profil, donner un nom à la clé API et définir les permissions que cette clé aura, ce qui est recommandé est de laisser les paramètres par défaut tout en activant l’option Futures.
Assurez-vous de noter et de garder en sécurité l’Api Key et le Secret Key qui vous seront fournis, nous en aurons besoin si vous souhaitez opérer via des robots en production.
Maintenant, pour opérer dans un environnement de développement, c’est encore plus simple. Accédez au Compte Démo des Futures et connectez-vous avec votre compte Binance. Vous aurez accès à une copie de la plateforme Binance Futures avec 5000 dollars fictifs pour vous amuser sans risques dans un marché simulé. Dans la zone des paramètres, vous trouverez une section API Management, dans laquelle vous aurez accès à vos clés de test/développement. Ce sont elles que nous utiliserons pendant le tutoriel, et l’autre duo vous servira uniquement lorsque vous serez prêt à opérer en production.
Avec le compte ouvert, l’accès aux Futures et les clés en main, il est temps d’installer sur votre machine Node.js, la technologie que nous allons utiliser pour construire le bot. Pour cela, rendez-vous sur le site officiel, téléchargez la version LTS et installez-la jusqu’au bout. Si vous rencontrez une difficulté, la vidéo ci-dessous montre étape par étape.

Dans la vidéo ci-dessus je montre aussi l’installation de Visual Studio Code, ce n’est pas obligatoire mais recommandé, ainsi que GitHub, qui sert à “sauvegarder” votre projet, si vous souhaitez le faire.
Une fois l’environnement prêt, il est temps de créer le projet de notre robot.
#2 – Créer le projet Node.js
Créez un dossier sur votre ordinateur nommé binance-futures et, à l’intérieur, placez un fichier index.js vide et, via le terminal, exécutez un ‘npm init -y’ dans ce dossier pour effectuer les configurations initiales d’un projet Node.js.
Nous allons installer quelques paquets via NPM afin de préparer notre projet. Voici les commandes d’installation :
npm i dotenv axios ws
Le module dotenv sert à charger les variables d’environnement dans votre application Node.js. Nous utiliserons ces variables d’environnement pour définir les configurations de notre bot. Créez un fichier “.env” à la racine de votre projet avec le contenu suivant, représentant les configurations dont nous allons avoir besoin :
Une brève explication sur la manière dont vous devez remplir chaque variable après le signe égal :
- API_KEY : votre clé API futures, créée sur Binance ;
- SECRET_KEY : votre secret API futures, créé sur Binance ;
- API_URL : l’adresse de base de l’API Binance que vous allez utiliser, vous pouvez mettre https://fapi.binance.com/fapi si vous êtes en production ou https://demo-fapi.binance.com/fapi si vous travaillez en environnement de tests ;
- STREAM_URL : l’adresse de base des streams de Binance que vous allez utiliser, vous pouvez renseigner avec
wss://fstream.binance.com/market/ws (prod) ou wss://fstream.binancefuture.com/market/ws (demo)
Gardez à l’esprit que les informations API_KEY et SECRET_KEY sont secrètes et que vous ne devez les partager avec personne, sinon quiconque les découvrira pourra acheter et vendre des cryptomonnaies en votre nom, en utilisant votre argent.
Si vous prévoyez de versionner votre projet ou même de partager votre code avec d’autres personnes via Git, mettez en place un fichier .gitignore à la racine de votre projet incluant le dossier node_modules (par défaut) et le fichier .env, qui reste localisé uniquement dans votre projet.
Pour charger ces configurations dans votre application, modifiez votre fichier package.json afin que le script de démarrage charge le fichier .env et je vais également ajuster le type du projet pour qu’il soit en module, afin d’utiliser la syntaxe JavaScript la plus moderne :
"type": "module",
"scripts": {
"start": "node -r dotenv/config index"
},
Notez que c’est à vous de comprendre les meilleures configurations pour vos objectifs financiers, votre situation financière, l’état du marché des cryptomonnaies au moment où vous intervenez, etc. Ici, je me concentre sur la construction du robot qui surveille, ouvre et ferme des positions sur le marché à terme, et non sur sa configuration.
#3 – Surveiller le marché
Commençons par la première activité, la plus simple et qui est la base du robot : surveiller le marché. Il existe plusieurs façons de le faire, mais celle que je considère comme la meilleure est d’utiliser les flux de données (streams). Les flux de données ou flux d’informations sont des canaux que Binance fournit pour brancher votre bot et recevoir en temps réel le type d’information que vous souhaitez. La documentation complète et à jour de l’API et des flux des dérivés Binance peut être trouvée ici.
Pour nous connecter aux flux, nous utilisons une technologie appelée WebSocket, native de JavaScript, et nous y accéderons via la bibliothèque ws, que nous avons installée précédemment. Ouvrez votre index.js, chargez la classe WebSocket du paquet ws et utilisez-la pour vous connecter au flux de Ticker selon l’URL présente dans la documentation. Cette connexion permet d’écouter un événement onmessage du WebSocket qui nous apporte, toutes les deux secondes, diverses données du couple de devises que nous voulons surveiller (BTCUSDT dans l’exemple), comme son prix actuel.
import WebSocket from "ws";
const ws = new WebSocket(`${process.env.STREAM_URL}/btcusdt@ticker`);
ws.onmessage = (event) => {
console.clear();
const obj = JSON.parse(event.data);
console.log(`Symbol: ${obj.s}`);
console.log(`Price: ${obj.c}`);
}O événement onmessage déclenche une fonction chaque fois que Binance nous envoie une mise à jour. Dans cette fonction, nous pouvons faire ce que nous voulons et, dans cet exemple, je nettoie le terminal à la première ligne (pour l’organisation) et j’ensuite transforme event.data, qui est initialement une chaîne, en objet JSON et je ne récupère que deux informations : la paire de devises (propriété s) et le prix actuel (propriété c).
Essayez d’exécuter ce projet après avoir enregistré le fichier avec la commande npm start et vous verrez le prix arriver en temps réel.
Pour finaliser le suivi, vous pouvez ajouter dans la fonction de l’événement onmessage votre logique de négociation, avec les entrées et sorties basées sur l’information que nous avons, à savoir le prix. Un exemple purement pédagogique ci-dessous, où nous avons une logique pour ouvrir notre position (mettez un prix qui vous semble pertinent) et une autre logique pour la fermer, en rappelant que sur le marché à terme vous pouvez ouvrir des positions acheteuses ou vendeuses, donc les prix ne doivent pas nécessairement suivre la logique du plus élevé au plus bas, cela peut être inversé selon votre stratégie.
const price = parseFloat(obj.c);
if (price < 100000)
console.log('Abrir posição!');
else if (price > 110000)
console.log('Fechar posição!');Il est également intéressant d’avoir un mécanisme de contrôle pour éviter d’acheter ou de vendre de manière répétitive. Cela peut être facilement géré en créant une variable en dehors de la fonction onmessage et en la modifiant dans les logiques des if, comme ci-dessous.
let isOpened = false;
ws.onmessage = (event) => {
...
const price = parseFloat(obj.p);
if (price < 100000 && !isOpened) {
console.log('Abrir posição!');
isOpened = true;
}
else if (price > 110000 && isOpened) {
console.log('Fechar posição!');
isOpened = false;
}
}
En utilisant ces valeurs et en les comparant à vos objectifs d’achat ou de vente, le robot peut vous avertir, par e-mail soudainement (ou encore par SMS, WhatsApp ou Telegram) qu’il est temps d’acheter ou de vendre. Bien sûr, dans un scénario idéal et plus complet, le robot pourrait effectuer lui-même ces opérations, et c’est tout à fait envisageable de le développer.




