La pairlist détermine les paires de trading sur lesquelles votre bot Freqtrade va intervenir. Grâce à l’interface graphique (UI), il est possible de sélectionner ces paires dynamiquement selon des critères avancés comme le volume, la capitalisation, la volatilité, etc.
Pourquoi utiliser une pairlist dynamique ?
- Réactivité : Le marché évolue, certaines paires deviennent plus liquides ou volatiles. Une pairlist dynamique s’adapte automatiquement.
- Performance : Trader sur les paires les plus actives réduit le risque de slippage et de mauvaise exécution.
- Gain de temps : Plus besoin de maintenir manuellement la liste des paires.
Pairlist Config disponibles
Freqtrade propose plusieurs méthodes de sélection dynamique des paires :
- StaticPairList : liste statique définie manuellement dans
config.json. - VolumePairList : sélectionne les paires ayant le plus fort volume d’échange, avec
number_assets,sort_keyetrefresh_period. - PercentChangePairList : sélectionne selon la variation en pourcentage sur une période (ex. 24h).
- MarketCapPairList : sélectionne selon la capitalisation de marché.
- ProducerPairList : importe la liste d’un autre bot Freqtrade.
- RemotePairList : importe depuis une source externe via API ou fichier.
Note : La première liste regroupe les méthodes qui génèrent une pairlist initiale (handlers dynamiques). La liste suivante regroupe les filtres (Pairlist Handlers) qui affinent ou complètent cette sélection initiale.
Filtres de sélection (Pairlist Handlers)
- AgeFilter : retire les paires listées depuis moins de
min_days_listedou plus demax_days_listedjours. - FullTradesFilter : garde seulement les paires en position quand les slots de trade sont pleins.
- OffsetFilter : décale la liste de paires pour répartir plusieurs bots (
offsetetnumber_assets). - PerformanceFilter : trie et filtre selon la performance passée des trades (
minutes,min_profit). - PrecisionFilter : exclut les paires où la précision empêche de placer un stoploss correct.
- PriceFilter : filtre selon
min_price,max_priceoulow_price_ratio. - ShuffleFilter : mélange la liste avec un
seedpour reproductibilité. - SpreadFilter : exclut les paires avec un écart bid/ask supérieur à
max_spread_ratio. - RangeStabilityFilter : filtre selon la variation entre plus bas et plus haut sur
lookback_days. - VolatilityFilter : filtre selon la volatilité historique sur
lookback_days(min_volatility,max_volatility).
Exemple concret : VolumePairList
Supposons que vous souhaitez que votre bot ne trade que les 30 paires USDT ayant le plus gros volume d’échange sur Binance, et que cette liste soit actualisée toutes les 30 minutes.
- Ouvrez Pairlist Config dans l’UI Freqtrade.
- Sélectionnez VolumePairList dans la colonne de gauche.
- Paramétrez :
- number_assets à
30 - sort_key à
quoteVolume - refresh_period à
1800(secondes, soit 30 min)
- number_assets à
- Cliquez sur Evaluate pour visualiser la sélection.
- Copiez le JSON généré à droite et intégrez-le dans la section
"pairlists"de votreconfig.json.
[ { "method": "VolumePairList", "number_assets": 30, "sort_key": "quoteVolume", "refresh_period": 1800 } ]
Fonctionnalités de l’écran Pairlist Config
- Blacklist : Permet d’exclure certaines paires du trading, même si elles sont sélectionnées par la pairlist ou les filtres. Pratique pour éviter des paires spécifiques (ex : tokens à risque, paires exotiques, etc.).
- VolumePairList (paramètres) :
- Number of assets : Nombre de paires à retenir selon le critère choisi.
- Sort key : Critère de tri (ex :
quoteVolumepour le volume d’échange). - Minimum/Maximum value : Seuils pour filtrer les paires selon le volume ou autre critère numérique.
- Refresh period : Fréquence (en secondes) de mise à jour automatique de la liste.
- Lookback Days / Timeframe / Period : Permettent de définir la période d’analyse pour les critères (ex : volume sur 7 jours, variation sur 24h, etc.).
- Config : Affiche la configuration JSON générée à partir des choix effectués (copiable dans le
config.json). - Results : Affiche la liste effective des paires sélectionnées selon la configuration actuelle (utile pour vérifier le résultat avant de lancer le bot).
- Evaluate : Permet de tester et valider la configuration en temps réel.
- Stake currency : Devise utilisée comme base pour le trading (ex : USDT, BTC...)
- Custom Exchange : Permet de spécifier un exchange personnalisé si besoin.
Ce qui se passe ensuite
- Le bot interroge l’exchange à chaque démarrage (et toutes les 30 minutes).
- Il trie les paires USDT par volume et sélectionne les 30 premières.
- La liste s’adapte automatiquement à l’évolution du marché.
Bonus : Ajouter des filtres
Vous pouvez combiner plusieurs pairlists et ajouter des filtres (par exemple, exclure les paires trop récentes ou trop volatiles) pour affiner la sélection.
Exemple d’utilisation avancée
Il est possible de combiner plusieurs pairlists et filtres pour affiner au maximum la sélection des paires à trader. Voici un exemple avancé :
[
{ "method": "MarketCapPairList", "number_assets": 50, "max_rank": 100, "refresh_period": 86400 },
{ "method": "VolumePairList", "number_assets": 20, "sort_key": "quoteVolume", "refresh_period": 1800 },
{ "method": "AgeFilter", "min_days_listed": 30 },
{ "method": "VolatilityFilter", "lookback_days": 10, "min_volatility": 0.05, "max_volatility": 0.5, "refresh_period": 86400 },
{ "method": "SpreadFilter", "max_spread_ratio": 0.005 }
]- MarketCapPairList : sélectionne les 50 premières paires parmi les 100 plus grosses capitalisations.
- VolumePairList : parmi celles-ci, ne garde que les 20 plus gros volumes d’échange.
- AgeFilter : retire les paires listées depuis moins de 30 jours (évite les coins trop récents/risqués).
- VolatilityFilter : ne garde que les paires avec une volatilité raisonnable sur 10 jours.
- SpreadFilter : exclut les paires avec un écart bid/ask trop important (liquidité insuffisante).
Exemples de Blacklist
La blacklist permet d’exclure certaines paires du trading, même si elles sont sélectionnées par la pairlist. On peut utiliser des expressions régulières pour exclure des familles entières de paires.
["BNB/.*"]: exclut toutes les paires où BNB est la devise de base.[".*DOWN/USDT"]: exclut toutes les paires « leveraged » de type DOWN (tokens à effet de levier baissier).[".*UP/USDT"]: exclut toutes les paires « leveraged » de type UP.["DOGE/BTC", "SHIB/USDT"]: exclut explicitement DOGE/BTC et SHIB/USDT.
Astuce : Place la blacklist dans la section "pair_blacklist" de exchange dans config.json ou utilise l’UI pour l’ajouter dynamiquement.
Gestion des profils de configuration
En haut de l’interface Pairlist Config, le champ « default » correspond au nom du profil de configuration en cours. Tu peux créer, sauvegarder et charger différents profils selon tes besoins (par exemple : « scalping », « long terme », « test », etc.).
- Créer un nouveau profil : Clique sur l’icône « + », donne un nom, configure ta pairlist et sauvegarde.
- Basculer entre profils : Sélectionne le profil voulu dans la liste déroulante pour charger instantanément ses paramètres.
- Astuce : Utilise des profils adaptés à chaque stratégie ou marché (par exemple, un profil pour le bull market, un pour le bear market, etc.).
Conclusion
La configuration dynamique de la pairlist via l’UI Freqtrade est un atout majeur pour optimiser votre trading automatique, rester agile face au marché et limiter les risques liés à la liquidité.




