L’oscillation des cryptomonnaies apporte diverses opportunités à ceux qui veulent faire du trading, c’est-à-dire acheter et vendre des monnaies dans le but de tirer profit de la différence entre les cotations actuelles et futures. Et lorsque le sujet est le marché des dérivés, où l’on peut opérer avec effet de levier, il y a des possibilités de gains tous les jours et il est quasi unanime parmi les investisseurs que c’est la seule façon pour quelqu’un disposant de peu de capital de réaliser des gains importants avec le trading dès le départ.
Pour trader les contrats à terme de Bitcoin et d’autres cryptomonnaies, vous devez disposer d’un compte sur une plateforme d’échange. Parmi les acteurs mondiaux, l’une des plus agressives en matière de frais et de portefeuille de monnaies est Binance, considérée comme la plus grande exchange de cryptomonnaies au monde en termes de volume de transactions. Mais pas d’inquiétude : ici nous n’utiliserons que le solde de test fourni par la plateforme elle-même pour vous apprendre comment créer des scripts/robots/bots crypto afin de réaliser la surveillance automatique du marché, ainsi que l’envoi d’ordres d’ouverture et de fermeture de positions sur les contrats perpétuels USD-M lorsque leurs conditions sont atteintes, tout cela via la programmation dans un environnement de développement sans risques.
Il est important que vous ayez déjà des connaissances pour opérer sur le marché à terme avant de vouloir créer un bot pour ce marché, ce que vous pouvez obtenir par vous-même ou dans des vidéos sur YouTube. Idéalement, il est préférable que vous ayez déjà créé un bot pour le marché spot, car les étapes sont assez similaires, ce que j’enseigne dans ce tutoriel. Il est également important de comprendre que Binance n’a pas l’autorisation d’opérer des dérivés au Brésil, qui sont réglementés par la CVM. Par conséquent, officiellement, les Brésiliens résidents dans le pays NE PEUVENT PAS opérer des Futures. Et bien que vous puissiez 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 de votre entière responsabilité, d’accord ?
Si vous préférez, vous pouvez regarder la vidéo ci-dessous au lieu de lire le tutoriel.
Attention : les gains passés ne constituent pas une garantie de gains futurs. Les cryptomonnaies sont des investissements à risque et vous pouvez donc perdre beaucoup d’argent même en croyant savoir opérer sur ce marché. Je NE SUIS PAS responsable et ne le serai jamais pour vos pertes; j’enseigne uniquement à 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 avoir un compte créé sur 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 les étapes de la vidéo ci-dessous pour apprendre comment créer les clés.
Créez votre compte et effectuez tout le processus de validation, avec selfie et tout le reste. Une fois que votre compte est approuvé à 100 %, activez tous les mécanismes de sécurité (dans la section des paramètres de votre compte) tels qu’un mot de passe fort, l’authentification à deux facteurs (2FA), etc. Tous ces éléments ne sont pas tous nécessaires pour réaliser ce tutoriel, mais je recommande de les activer tous car ces plateformes d’échange sont visées par les hackers en permanence et vous ne voudriez pas faciliter les choses, n’est-ce pas ?
Après avoir activé les mécanismes de sécurité, vous devrez accéder à la zone Futures sur le site et lors de votre première connexion vous devrez répondre à un questionnaire très simple à comprendre et qui vous aide à connaître les bonnes réponses en cas d’erreur. Avec votre accès Futures activé, vous pourrez créer votre clé API (ApiKey); il suffit d’accéder à la section API Management dans votre profil, donner un nom à la clé API et définir les autorisations que cette clé aura, ce que je recommande de laisser par défaut mais avec l’option Futures.
Assurez-vous d’inscrire 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 facile. Accédez au Compte Démo de Futures et connectez-vous avec votre compte Binance. Vous aurez accès à une copie de la plateforme Binance Futures avec 5000 dollars fictifs pour jouer. Vous pouvez opérer librement ici sans risques réels, sur un marché simulé. Dans la section des paramètres de votre compte, vous trouverez une rubrique API Management; là, vous aurez accès à vos clés de test/développement. Ce sont elles que nous utiliserons pendant le tutoriel, l’autre paire ne sera utilisée que lorsque vous serez prêt à opérer en production.
Avec le compte ouvert, l’accès Futures autorisé 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 ce faire, il suffit d’aller sur le site officiel, de télécharger la version LTS et de l’installer jusqu’au bout. En cas de difficulté, la vidéo ci-dessous montre les étapes à suivre.
Dans la vidéo ci-dessus, je montre aussi l’installation de Visual Studio Code, qui n’est pas obligatoire mais recommandée, ainsi que GitHub, qui sert à « enregistrer » votre projet si vous souhaitez le faire.
Avec l’environnement préparé, 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 la console, 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 pour 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 aurons besoin :
API_URL=
STREAM_URL=
API_KEY=
SECRET_KEY=
Une rapide explication de comment vous devez remplir chaque variable après le signe égal :
- API_KEY : votre clé API de futures, créée sur Binance;
- SECRET_KEY : votre secret API de futures, créé sur Binance;
- API_URL : l’adresse de base de l’API de Binance que vous allez utiliser, vous pouvez remplir par exemple https://fapi.binance.com/fapi si vous opérez en production ou https://demo-fapi.binance.com/fapi si vous opérez dans un environnement de test;
- STREAM_URL : l’adresse de base des streams de Binance que vous allez utiliser, vous pouvez remplir par exemple
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, car sinon quiconque les découvrirait pourrait acheter et vendre des cryptomonnaies en votre nom, en utilisant votre argent.
Si vous envisagez de versionner votre projet ou même de partager votre code avec d’autres personnes via Git, ajoutez un fichier .gitignore à la racine de votre projet en incluant le dossier node_modules (par défaut) et le fichier .env, qui est conservé localement seulement dans votre projet.
Pour charger ces configurations dans votre application, modifiez votre package.json afin que le script de démarrage charge le fichier .env et j’ajusterai aussi le type du projet pour être 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, la situation du marché des cryptomonnaies au moment où vous l’opérez, etc. Je me concentrerai ici 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é, qui est la plus simple et la base du robot : surveiller le marché. Il existe diverses façons de faire cela, mais celle que je considère comme la meilleure est celle des flux de données. Les flux de données ou flux d’information sont des canaux d’information que Binance met à votre disposition pour brancher votre bot et recevoir en temps réel tout type d’information que vous souhaitez. La documentation complète et mise à jour de l’API et des flux de futurs de Binance peut être trouvée ici.
Pour nous connecter aux flux, nous utilisons une technologie appelée WebSocket, qui est native à JavaScript et que nous 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 Ticker selon l’URL présente dans la documentation. Cette connexion nous permet d’« écouter » un événement onmessage du websocket qui nous apporte à chaque 2 secondes diverses données sur la paire de devises que nous souhaitons 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}`);
}
L’é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 sur la première ligne (pour l’organisation) et ensuite je convertis l’event.data, qui arrive par défaut sous forme de chaîne, en un objet JSON et je ne prends que deux informations : la paire de devises (propriété s) et le prix actuel (propriété c).
Expérimentez lancer ce projet après avoir enregistré le fichier avec la commande npm start et vous verrez en temps réel le prix arriver.

Pour finaliser la surveillance, 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, qui est le prix. Un exemple purement didactique ci-dessous, où nous avons une logique pour ouvrir notre position (insérez un prix qui vous semble pertinent) et une autre logique pour fermer, en rappelant que sur le marché à terme vous pouvez ouvrir des positions acheteur ou vendeur, donc les prix n’ont pas nécessairement à suivre la logique du plus grand au plus petit, cela peut être le contraire selon votre stratégie.
const price = parseFloat(obj.c);
if (price < 100000)
console.log('Ouvrir position!');
else if (price > 110000)
console.log('Fermer position!');
Il est aussi intéressant d’avoir un mécanisme de contrôle pour éviter d’acheter continuellement ou de vendre continuellement. Cela peut être facilement contrôlé 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('Ouvrir position!');
isOpened = true;
}
else if (price > 110000 && isOpened) {
console.log('Fermer position!');
isOpened = false;
}
}
En utilisant ces valeurs et en les comparant à vos objectifs d’achat ou de vente, il est possible que le robot vous avertisse, par exemple par e-mail (ou aussi 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 abouti, le robot lui-même pourrait effectuer ces opérations et c’est tout à fait envisageable à développer.
Mais cela, nous le verrons dans la PARTIE 2, que vous pouvez consulter via ce lien !




