Quentin

Comment créer ses clés d’API sur Coinbase Pro ?

Dans ce tutoriel, nous verrons comment créer des clés d’API sur Coinbase Pro, afin de connecter votre compte Coinbase à des services tiers. Il peut s’agir de robots de trading de bitcoins comme Botcrypto, mais également d’outils liés à la fiscalité ou la visualisation de vos actifs.

Qu’est-ce qu’une API ?

Une API est une interface de programmation qui permet de se « brancher » sur une application pour échanger des données.

Dans notre cas, l’API permet d’accéder à une plateforme de trading et d’effectuer différentes actions. Il est possible de restreindre les accès à un tiers via une clé API. Exemple : permettre de consulter les fonds de votre compte Coinbase Pro mais empêcher les retraits.

Comment créer ses clés d’API sur Coinbase Pro ?

Vous devez tout d’abord créer un compte Coinbase puis vous rendre sur Coinbase Pro.

Une fois connecté sur Coinbase Pro, cliquez sur le menu en haut à droite, puis sur API. Vous arrivez devant votre liste des clés d’API.

Liste des clés d'API Coinbase Pro
Liste des clés d’API Coinbase Pro

Cliquez sur + New Api Key pour ouvrir le formulaire de création de clé. On vous demande alors de remplir plusieurs champs.

Formulaire de création de clé
Formulaire de création de clé

Vous devez choisir lequel de vos portfolios sera la cible de cette clé d’API. Si vous n’en avez qu’un seul, laissez Default Portfolio comme réponse.

Ajouter un nom à votre clé est optionnel mais je vous recommande de le faire. Dans mon cas je la nomme « tuto ». C’est utile pour s’y retrouver si l’on a plusieurs clés d’API.

Cochez ensuite quelles permissions vous affectez à cette clé d’API. Dans le cadre des bots de trading, je vais lui donner la permission de « View » donc de consulter le montant des actifs présents sur le portfolio et « Trade » pour autoriser les actions de trading (ouverture de position/achat/vente). Je ne donne pas la permission de « Transfer » car je ne veux pas que le service que j’utilise pour automatiser mon trading ait la possibilité de retirer mon argent.

Une PassPhrase a automatiquement été générée. Vous pouvez la changer où la garder telle quelle. Si vous ne savez pas à quoi elle sert, laissez celle d’origine.

Le dernier champ est IP Whitelist si vous voulez restreindre l’utilisation de cette clé à une liste d’IP pour plus de sécurité. Ce n’est pas forcément possible dans tous les cas.

Cliquez sur Create API key pour finaliser la création de la clé d’API.

Vous aurez sûrement une demande d’authentification via SMS ou sur votre application d’authentification à double facteur.

Vous devriez ensuite avoir un message de validation de la création de la clé.

La clé a évidemment été supprimée :D
La clé a évidemment été supprimée 😀

Garder précieusement la clé privée API Secret affichée, il ne sera pas possible de la récupérer. C’est bon, vous avez créé une clé d’API !

Pour utiliser cette clé sur un service, l’on vous demandera une clé publique et une clée privée. La clé publique est affichée sur la carte d’une clé API soit comme sur la capture d’écran précédente 7ce2d5fe2ad78d9a4688d0f5af509ac6 et la clé privée est l’API Secret que vous avez sauvegardé précieusement auparavant.

Comment créer ses clés d’API sur Coinbase Pro ? Read More »

[Tutoriel] Votre premier robot de trading avec Zenbot

Introduction

Zenbot est un robot de trading de bitcoin et de crypto gratuit et open source. Il s’utilise en ligne de commande et s’appuie sur Node.js et MongoDB. C’est un concurrent sérieux de Freqtrade que nous avons déjà évoqué. Il s’utilise en ligne de commande et est donc plutôt réservé à des utilisateurs confirmés. Pour créer des bots de trading sans connaissance technique, n’hésitez pas à faire un tour sur Botcrypto !

Prérequis

Ce tutoriel a été réalisé sur un serveur Ubuntu 20.04.

Nous allons avoir besoin de Node.js, MongoDB et de git.

  • Pour installer les différents prérequis, exécutez la commande suivante :

sudo apt update && sudo apt install git && sudo apt install nodejs && sudo apt install npm && sudo apt-get install build-essential mongodb

Installation de Zenbot

  • Tout d’abord, nous allons cloner le dépôt git en exécutant la commande ci-dessous :

git clone https://github.com/deviavir/zenbot.git

  • Une fois le téléchargement terminé, nous allons nous rendre dans le dossier zenbot :

cd zenbot

  • Puis nous allons installer les dépendances avec les deux commandes suivantes :

npm install

sudo npm link

Configuration de Zenbot

Zenbot peut être configurer de différentes façons. Nous allons créer un fichier de configuration basé sur l’exemple fourni.

  • Exécutez cette commande pour créer votre fichier de configuration conf.js.

cp conf-sample.js conf.js

Vous pouvez si vous le voulez arpenter les différentes configurations possibles de Zenbot en ouvrant ce fichier mais pour ce tutoriel nous garderons les paramètres de base.

Utilisation de Zenbot

Nous allons voir comment faire un backtest, un test dans le passé.

Vous pouvez tout d’abord utiliser la commande ./zenbot.sh list-selector pour voir toutes les paires disponibles.

  • Pour effectuer un backtest nous allons avoir besoin des données d’un marché. Nous allons récupérer le marché BTC/EUR de Coinbase Pro sur 1 jour avec cette commande : ./zenbot.sh backfill gdax.BTC-EUR –days 1.

Une fois les données téléchargées (cela peut prendre du temps), nous pouvons effectuer notre backtest. Mais il va falloir choisir quelle stratégie utiliser.

Vous pouvez accéder à la liste de toutes les stratégies préconfigurées de Zenbot en exécutant la commande suivante : ./zenbot.sh list-strategies.

Pour ce tutoriel, nous allons tester la strategie trend_ema qui s’appuie sur les moyennes mobiles exponentielles (nous avons d’ailleurs écrit un article sur cet indicateur).

  • ./zenbot.sh sim gdax.BTC-EUR –strategy trend_ema

Après l’exécution du backtest, un fichier HTML commençant par « sim_result_gdax.BTC-EUR » a été écrit dans le dossier simulations de Zenbot. Vous pouvez l’ouvrir dans votre navigateur pour observer les résultats et le comportement de votre stratégie avec un graphique et quelques informations sur les trades du backtest. Cette visualisation est très intéressante. Le mien a 4 trades gagnants contre 6 trades perdants.

Résultats de mon backtest avec Zenbot
Résultats de mon backtest avec Zenbot

Avec Zenbot, vous pouvez aussi tester vos stratégies en temps réel sur le marché de manière fictive.

En exécutant cette commande ./zenbot.sh trade --paper --strategy trend_ema gdax.BTC-EUR je simule l’exécution de la stratégie trend_ema sur le marché BTC-EUR de Coinbase Pro. On appelle cette méthode le paper trading puisque c’est équivalent à simuler l’exécution de la stratégie sur du papier.

Exécution de la simulation de la stratégie sur Zenbot
Exécution de la simulation de la stratégie sur Zenbot

Votre initiation a Zenbot est maintenant terminée ! Vous avez découvert comment créer un backtest et une simulation en temps réel. Dans un prochain article, nous verrons comment créer sa propre stratégie pour personnaliser les actions. Et en attendant, n’hésitez pas à lire notre guide sur les bots de trading pour devenir un expert !

[Tutoriel] Votre premier robot de trading avec Zenbot Read More »

[Tutoriel] Créez votre propre stratégie de robot de trading avec Freqtrade

Introduction

Dans le précédent article, nous avions vu comment créer notre premier robot de trading avec Freqtrade, mais ses résultats n’était pas satisfaisant. Nous allons maintenant découvrir comment construire notre propre stratégie personnalisée.

Prérequis

  • Une installation complète de Freqtrade, voir notre article.
  • Notions de base en analyse technique.
  • Notions de base dans le language informatique python.

Création d’une nouvelle stratégie sur Freqtrade

Les stratégies utilisables par Freqtrade sont stockées dans le dossier freqtrade/user_data/strategies et sont des fichiers python (.py).

Pour commencer, déplacez vous dans un terminal dans le dossier /freqtrade et activez son environnement virtuel avec cette commande :

source .env/bin/activate;

Puis, créez une nouvelle stratégie nommée MyStrategy.

freqtrade new-strategy --strategy MyStrategy

Après l’exécution de cette commande, un fichier MyStrategy.py a été créé dans /freqtrade/user_data/strategies. C’est ce fichier que nous allons personnaliser tout au long de cet article. Le fichier final est disponible à la fin de l’article.

Configuration de la stratégie sur Freqtrade

Configuration des paramètres de la stratégie

Ouvrez le fichier MyStrategy.py avec un éditeur de texte. Dans la classe, nous allons spécifier des paramètres que notre stratégie va devoir respecter.

Nous commençons par définir le minimal_roi, ROI signifiant retour sur investissement), qui permet de définir de vendre nos actif à n’importe quel moment de la stratégie si un pourcentage de bénéfice est atteint indépendamment du reste de la stratégie. Pour ce tutoriel, j’ai choisi un minimal_roi qui a n’importe quel moment de la stratégie engagera une vente si les bénéfices dépassent les 50%. De plus, si le trade est ouvert depuis plus de 40 minutes, alors une vente sera émise si les bénéfices dépassent 20%.

minimal_roi = {
  "40": 0.2,
  "0": 0.5
}

Nous allons également mettre en place un stop loss, pour éviter d’avoir des pertes trop importantes.

stoploss = -0.15

Avec ce stop loss, si un de mes trades enregistre des pertes supérieures à 15%, un ordre de vente sera émis.

Nous allons ensuite choisir une unité de temps pour notre robot de cette façon (ici, 5 minutes).

timeframe = '5m'
Ajout des indicateurs techniques à la stratégie

Pour ajouter des indicateurs techniques à la stratégie, nous allons modifier la fonction populate_indicators. Dans le cadre de ce tutoriel, je vais utiliser le Relative Strength Index, un indicateur technique dont nous avons déjà parlé à de nombreuses reprises.

dataframe['rsi'] = ta.RSI(dataframe)

Après avoir ajouté l’indicateur (vous pouvez évidemment en ajouter d’autres), je termine cette fonction par un return de dataframe.

return dataframe
Ajout des conditions d’achat/vente

Pour ajouter une condition d’achat, il faut modifier la fonction nommée populate_buy_trend puis ajouter notre condition à l’intérieur ainsi qu’un return de la dataframe comme ceci.

dataframe.loc[
(
(dataframe['rsi'] < 30)
),
'buy'] = 1

return dataframe

Dans cette exemple, je décide qu’un ordre achat est envoyé si le RSI est inférieur à 30.

Cela marche de la même façon pour les conditions de vente. Je décide qu’un un ordre de vente est émis quand le RSI est supérieur à 70.

dataframe.loc[
(
(dataframe['rsi'] > 70)
),
'sell'] = 1

return dataframe

Et voilà ! Il ne reste plus qu’à tester notre stratégie. Si vous ne savez pas comment faire, je vous redirige vers notre tutoriel sur l’utilisation de Freqtrade, où nous avons présenté son fonctionnement général. Cette stratégie n’a pas vocation a être mise en place avec vos fonds. Elle est très simple, et a pour principal intérêt de vous présenter comment construire votre propre stratégie avec Freqtrade. Vous avez maintenant toutes les cartes en main pour créer et personnaliser vos robots de trading avec Freqtrade ! La prochaine étape, c’est de booster les résultats de votre stratégie (15% sur la stratégie en exemple!) grâce à une fonctionnalité incroyable de Freqtrade, Hyperopt. Bon trading !

[Tutoriel] Créez votre propre stratégie de robot de trading avec Freqtrade Read More »

Comparatif des meilleurs bots de crypto trading gratuit et open source

Dans cet article, je vais comparer différents bots de crypto trading open source. Les bots de trading open source ont plusieurs avantages. Ils sont particulièrement fiables car tout le monde peut vérifier et corriger leur code. On y retrouve également de nombreuses fonctionnalités variées. Il s’agit de produits très complets qui n’ont rien à envier aux solutions commerciales, alors qu’ils sont disponibles gratuitement. Plutôt intéressant, non ? Le principal inconvénient est lié à l’interface et à l’utilisation. Il faut en général des connaissances techniques assez avancées pour les comprendre et les déployer.

Vous avez entendu parlé des bots de trading, mais vous ne savez pas encore très bien ce que c’est et comment ça fonctionne ? Alors foncez lire notre guide ultime des bots de trading.

Pour chaque projet, le titre correspond au lieu du dépôt GitHub du bot.

Zenbot

Zenbot est un bot de trading de cryptomonnaies en ligne de commande. Il utilise node.js et MongoDB pour opérer. Zenbot supporte Windows/Linux /MacOS 10 (ou via Docker).

Zenbot supporte un grand nombre d’exchange et offre le moyen via un plugin d’en ajouter encore plus à la liste. Il possède la plupart des fonctionnalités normales et avancées que l’on peut demander à un bot de trading.

Développement actifoui
Installation facileoui
Facile d’utilisationoui
Possibilité de backtestoui
Ordre manueloui
Interface graphiquenon
Possibilité de webhookoui

Hummingbot

Hummingbot est un logiciel qui vous permet de créer et d’exécuter des stratégies de trading personnalisables sous Windows/Linux/MacOS.

Hummingbot possède une documentation et une academy permettant un apprentissage rapide et complet de l’outil. Son installation ne peut pas être plus simple.

Développement actifoui
Installation facileoui
Facile d’utilisationoui
Possibilité de backtestnon
Ordre manuelnon
Interface graphiquenon
Possibilité de webhooknon

Gekko

Gekko est une plateforme permettant d’automatiser des stratégies de trading sur les marchés de cryptomonnaies et peut être utilisé sur les systèmes d’exploitation les plus connus (Windows, Linux et MacOS).

Gekko possède une interface web ce qui rend son utilisation plus simple, mais n’est malheureusement plus maintenu.

Développement actifnon
Installation facilenon
Facile d’utilisationoui
Possibilité de backtestoui
Ordre manuelnon
Interface graphiqueoui
Possibilité de webhooknon

Freqtrade

Freqtrade est un logiciel de trading algorithmique de cryptomonnaies développé en python (3.6+) et supporté sur Windows, Linux et MacOS.

Il est conçu pour prendre en charge tous les principaux exchanges et être contrôlé par Telegram. Il contient des outils de backtesting et de gestion de portefeuille ainsi que l’optimisation des stratégies par machine learning. Vous pouvez retrouver notre article sur comment créer votre premier robot de trading avec Freqtrade à cette adresse.

Développement actifoui
Installation facileoui
Facile d’utilisationnon
Possibilité de backtestoui
Ordre manuelnon
Interface graphiquenon
Possibilité de webhookoui

Voilà pour ce comparatif ! Vous savez maintenant les avantages et les inconvénients des principaux bots de trading open source pour trader du bitcoin et des ethers. Vous en connaissez d’autres ? Vous avez développer le votre ? Dites-le nous en commentaire !

Comparatif des meilleurs bots de crypto trading gratuit et open source Read More »

[Tutoriel] Votre premier robot de trading avec Freqtrade

Introduction

Freqtrade est un logiciel de trading de crypto gratuit et open source. Avec Freqtrade, vous pouvez créer des robots de trading entièrement personnalisables, faire des backtests, etc. Le logiciel est développé en python et est compatible Windows, macOS et Linux.

Objectif du tutoriel : installer Freqtrade et effectuer un backtest avec une stratégie basique

Ce tutoriel s’adresse autant aux personnes souhaitant créer leur premier robot trading de cryptomonnaie qu’aux curieux souhaitant découvrir le fonctionnement de Freqtrade. À savoir que Freqtrade ne propose pas d’interface graphique, et qu’il est plutôt réservé à des utilisateurs avec des connaissances techniques. Si vous souhaitez créer facilement et rapidement des robots de trading de cryptomonnaie, jetez un oeil à notre plateforme Botcrypto. L’inscription est gratuite !

Prérequis

Ce tutoriel a été réalisé sur un serveur Ubuntu 20.04.

Nous allons avoir besoin de python3 et de git.

  • Pour installer les différents prérequis, exécutez la commande suivante :

sudo apt install git && sudo apt install python3 && sudo apt install python3-pip && sudo apt install python3-venv

Installation de Freqtrade

  • Tout d’abord, nous allons cloner le dépôt git en exécutant la commande ci-dessous :

git clone https://github.com/freqtrade/freqtrade.git

  • Une fois le téléchargement terminé, nous allons nous rendre dans le dossier freqtrade :

cd freqtrade

  • Puis nous allons exécuter en tant qu’administrateur le script d’installation setup.sh :

sudo ./setup.sh --install

L'installation du logiciel
L’installation du logiciel

Que ce soit pour le fait de télécharger les dépendances de développement ainsi que pour le fait d’effectuer un reset de la branche git, appuyez sur la touche <Entrée> pour choisir la valeur par défaut (soit ‘non’ dans les deux cas).

Configuration de Freqtrade

  • Afin d’utiliser Freqtrade, il faut activer son environnement virtuel :

source .env/bin/activate;

Vous pouvez maintenant utiliser les commandes de Freqtrade. Nous allons d’abord choisir différents paramètres pour votre premier robot.

  • Exécutez la commande freqtrade new-config -c config.json
La configuration de Freqtrade
La configuration

À chaque question, appuyez sur la touche <Entrée> pour choisir la valeur par défaut.

Utilisation de Freqtrade

  • Pour créer une stratégie appelée test, il suffit d’exécuter la commande suivante :

freqtrade new-strategy -–strategy test

Une stratégie avec les valeurs par défaut est alors créée. Nous verrons dans un prochain tutoriel comment personnaliser cette stratégie.

Maintenant, nous allons utiliser cette stratégie dans un backtest, soit un test dans le passé. Nous allons avoir besoin des anciennes données de marché.

  • Exécuter freqtrade download-data pour télécharger des anciennes données de marché.

Le téléchargement des données de marché peut prendre quelques minutes.

  • Une fois le téléchargement terminé, exécutez :

freqtrade backtesting --strategy test

Une fois le backtest terminé, vous verrez un récapitulatif de ses résultats.

Les résultats de mon backtest avec Freqtrade
Les résultats de mon backtest

On constate sur les résultats de mon robot qu’il n’a pas été très performant :

-36.32% sur un mois où le marché n’a perdu que 10.2%. Mon robot m’a fait perdre 3.6x plus d’argent que si j’avais juste investi…

On remarque que le robot à 20 trades gagnants contre 7 perdants ce qui nous interpelle sur la raison du résultat final. On remarque via la valeur de Worst day qu’un jour le robot a perdu 28.54%, ce qui est considérable. Si nous avions personnalisé notre stratégie en gérant mieux notre risque, ce ne serait pas arrivé. Et ça tombe bien, c’est le sujet de notre article suivant 😉 [Tutoriel] Créez votre propre stratégie de robot de trading avec Freqtrade. Vous pouvez également consulter notre guide sur les bots de trading pour en savoir plus sur les bots de trading.

[Tutoriel] Votre premier robot de trading avec Freqtrade Read More »