Temps de lecture : … min

Exécuter Backtrader sur TradingHost

Exécutez vos stratégies open-source Backtrader depuis GitHub sur les runtimes toujours actifs de TradingHost.

Backtrader est une bibliothèque de backtesting Python intégrant 122 indicateurs, le support multi-flux et des connexions en direct avec Interactive Brokers, Oanda et Visual Chart. TradingHost fournit le runtime de production pour exécuter votre stratégie.

Par l’équipe d’ingénierie de TradingHost
  • Déploiement natif depuis GitHub
  • 122 indicateurs intégrés
  • Multi-flux, multi-unités de temps
  • Exécution de backtest pas à pas ou complète
  • Courtiers en direct : IBKR, Oanda, Visual Chart
  • Runtime toujours actif
  • Identifiants chiffrés
  • Choix de la région
  • Prêt pour MCP

Introduction

Nouveau sur Backtrader ?

Backtrader est l'une des bibliothèques de backtesting Python les plus connues. Il s'agit d'un moteur entièrement événementiel : vous définissez une classe Strategy avec la méthode next() appelée à chaque barre, vous y intégrez l'un des 122 indicateurs natifs, vous y associez un ou plusieurs flux de données, puis vous lancez un backtest pas à pas ou complet.

Au-delà du backtesting, Backtrader prend en charge le trading en direct avec Interactive Brokers (via IbPy), Oanda v20 REST et Visual Chart. C'est pourquoi il reste un choix populaire pour les stratégies sur actions, futures et FX nécessitant une base de code unique de la recherche à la production.

Réalité de la maintenance : le dépôt d'origine mementum/backtrader est inactif depuis 2023. Le fork communautaire backtrader2/backtrader poursuit sa maintenance pour corriger les bugs. Backtrader est sous licence GPL-3.0 ; la version d'origine et le fork sont tous deux utilisables librement. TradingHost exécute la version que vous spécifiez dans votre dépôt.

TradingHost est l'environnement où une stratégie Backtrader s'exécute en production. Au lieu de laisser tourner votre stratégie sur un ordinateur portable ou un VPS générique, vous déployez votre dépôt Backtrader sur un runtime cloud TradingHost qui reste connecté en continu, gère vos identifiants de courtier sous forme de secrets chiffrés et vous transmet les journaux d'exécution en temps réel.

Section 01 · En un coup d'œil

En un coup d'œil

Nature du projet
Bibliothèque de backtesting Python open-source avec passerelles de trading en direct, sous licence GPL-3.0
Maintenu par
mementum/backtrader sur GitHub (fork communautaire : backtrader2/backtrader)
État de la maintenance
Dépôt d'origine inactif depuis 2023 ; le fork communautaire backtrader2 poursuit la correction de bugs
Langage
Python, y compris PyPy
Indicateurs
122 indicateurs techniques intégrés
Flux de données
CSV, pandas DataFrame, Yahoo, IBKR, Oanda, Visual Chart, personnalisés
Courtiers en direct
Interactive Brokers (IbPy), Oanda v20 REST, Visual Chart
Marchés
Actions, futures, options, FX, crypto (via flux personnalisés)
Fonctionnalités notables
Multi-flux, multi-unités de temps, rééchantillonnage et rejeu (replay), exécution pas à pas ou complète, optimisation
Source de déploiement
GitHub
Rôle de TradingHost
Runtime, déploiement, journaux, secrets, choix de la région
Affiliation
TradingHost est indépendant et n'est pas affilié au projet Backtrader

Section 02 · Intégration de Backtrader

Comment Backtrader s'intègre dans votre infrastructure de trading

Backtrader est d’abord un moteur de recherche et ensuite un outil de trading en direct. Sa boucle événementielle est identique dans les deux modes, c’est pourquoi une classe Strategy développée pour le backtesting peut généralement être déployée en direct avec de simples modifications de configuration, sans nécessiter de réécriture.

Vous pouvez utiliser Backtrader de deux manières sur TradingHost :

  • Parcours 01

    Recherche uniquement

    Exécutez des backtests, optimisez des paramètres et visualisez les résultats. Utilisez n’importe quel flux de données, y compris des fichiers CSV intégrés à votre dépôt, des DataFrames pandas ou des données provenant d’un flux de courtier. Aucun identifiant de compte réel n’est requis.

  • Parcours 02

    Du backtest au réel

    Réutilisez la même classe Strategy avec un courtier en direct. Backtrader intègre des connexions pour Interactive Brokers (via IbPy), Oanda v20 REST et Visual Chart. L’environnement d’exécution reste en ligne pour que la boucle en direct continue de négocier.

Les deux parcours fonctionnent de la même manière sur TradingHost. Vous fournissez un dépôt GitHub Backtrader. Nous l’exécutons.

Vous
Votre classe Strategy gère les règles de trading.
Backtrader
Exécute le backtester, l’optimiseur, le moteur d’indicateurs et les intégrations de courtiers.
Courtier
Votre compte de courtage reçoit les ordres.
TradingHost
Exécute le processus de la stratégie, gère les secrets et diffuse les journaux d’activité.

Section 03 · Pourquoi sur TradingHost

Pourquoi déployer Backtrader sur TradingHost

Backtrader présente deux exigences de production qui s’adaptent mal à un ordinateur portable. Les stratégies en direct nécessitent un environnement d’exécution qui reste en ligne et se reconnecte au courtier après des micro-coupures réseau. Les travaux de recherche nécessitent quant à eux une puissance de calcul suffisante pour traiter de longues périodes historiques ou de larges grilles d’optimisation sans monopoliser votre poste de travail.

TradingHost offre à ces deux configurations un environnement d’exécution orienté production, conçu pour les processus de trading et de recherche de longue durée.

Ce que vous obtenez

  • Déploiement natif depuis GitHub
  • Environnement d’exécution de conteneurs toujours actif pour les stratégies en direct
  • Hébergement adapté au calcul pour les backtests longs et les sessions d’optimisation
  • Stockage chiffré des identifiants de courtage
  • Sélection de la région à proximité de votre courtier
  • Diffusion des journaux d’activité en temps réel et suivi de l’état de santé de base
  • Démarrage, arrêt, redémarrage et inspection au niveau de la stratégie
  • Verrouillage de version sur mementum/backtrader ou backtrader2/backtrader selon votre préférence
  • Flux de travail AI IDE compatibles avec MCP

Ce que vous conservez

  • Le contrôle total de votre code de Strategy Backtrader et de vos indicateurs
  • La propriété directe de vos comptes de courtage et de vos identifiants
  • Le choix de votre mode : recherche, optimisation ou réel

Section 04 · Courtiers en direct et flux de données

Courtiers en direct et flux de données

Contrairement aux frameworks orientés crypto, Backtrader est axé sur les courtiers traditionnels. La même classe Strategy peut s’exécuter avec trois intégrations de courtiers en direct et un ensemble plus large de flux de données historiques.

  • Backtrader
  • votre courtier ou flux
  • environnement d’exécution TradingHost

Backtrader prend également en charge une grande variété de flux de données pour le backtesting et la recherche :

  • Fichiers CSV intégrés à votre dépôt
  • DataFrames pandas générés en cours de processus
  • Flux Yahoo Finance
  • Flux de données Python personnalisés que vous développez
  • Flux de données en direct des courtiers (IBKR, Oanda, Visual Chart)
Parcourir l'annuaire des courtiers

Section 05 · Flux de déploiement

Comment fonctionne un déploiement Backtrader

Une stratégie Backtrader sur TradingHost suit le même modèle de déploiement que n'importe quel projet basé sur GitHub, avec une étape supplémentaire pour choisir la version de Backtrader à exécuter.

  1. ÉTAPE 01

    Connecter ou créer un dépôt

    Connectez-vous avec GitHub et associez un dépôt Backtrader existant (votre classe Strategy, vos indicateurs et vos flux de données), ou créez-en un à partir d'un modèle Backtrader de TradingHost.

  2. ÉTAPE 02

    Épingler la source Backtrader

    Choisissez entre le package d'origine mementum/backtrader et le fork maintenu par la communauté backtrader2/backtrader. Les deux sont sous licence GPL-3.0 et entièrement utilisables sur TradingHost.

  3. ÉTAPE 03

    Ajouter des identifiants de courtier chiffrés

    Pour le trading en direct, ajoutez vos identifiants IBKR, Oanda ou Visual Chart en tant que secrets TradingHost. Ils sont chiffrés, injectés dans l'environnement d'exécution au démarrage et ne sont jamais écrits dans votre dépôt.

    /platform/secrets/
  4. ÉTAPE 04

    Choisir une région

    Sélectionnez une région proche du point de terminaison de votre broker. US-East pour le trading avec IBKR aux États-Unis, EU pour Oanda Europe, etc.

    /platform/regions/
  5. ÉTAPE 05

    Déployer

    TradingHost démarre votre processus Backtrader dans un conteneur managé. Les backtests de longue durée, les exécutions d'optimisation ou la boucle en direct s'exécutent tous de la même manière. Les journaux d'activité sont transmis en direct au tableau de bord.

    /platform/observability/

Section 06 · Réalité de la maintenance

Le Backtrader d'origine et le fork de la communauté

Backtrader est une excellente bibliothèque, et il convient d'en parler en toute franchise. Le dépôt d'origine sur mementum/backtrader n'a plus d'activité depuis 2023. La communauté a réagi en créant backtrader2, un fork destiné à maintenir le projet en état de fonctionnement.

Pour les déploiements, cela n'a d'importance qu'à un seul endroit : la version installée par votre dépôt. TradingHost reste neutre quant à la version que vous utilisez. Nous avons simplement besoin de savoir laquelle.

mementum/backtrader
Le dépôt d'origine. Dernier commit significatif sur master en 2023. Stable en l'état, mais les nouvelles fonctionnalités et intégrations de courtiers n'y sont pas intégrées.
backtrader2/backtrader
Fork de la communauté créé pour maintenir le projet en vie. L'objectif initial se limite aux corrections de bugs avec une maintenance continue. Les nouveaux pilotes de courtiers ne sont pas encore au programme, mais le fork permet de maintenir le fonctionnement des intégrations existantes avec IBKR, Oanda et Visual Chart sur des versions plus récentes de Python.
Position de TradingHost
Nous exécutons la version épinglée par votre dépôt, sur la version de Python de votre choix. Si votre stratégie est stable, vous pouvez continuer à utiliser mementum/backtrader ; si vous préférez une chaîne d'outils maintenue, orientez votre dépôt vers backtrader2.

Section 07 · Ce que nous ne faisons pas

Ce que TradingHost ne fait pas

  • TradingHost n'agit pas en tant que courtier.
  • TradingHost ne fournit pas de stratégies de trading, d'indicateurs ou de conseils financiers.
  • TradingHost ne modifie pas votre classe Strategy Backtrader ni vos flux de données.
  • TradingHost ne conserve pas vos identifiants de courtier, au-delà de leur injection chiffrée dans l'environnement d'exécution.
  • TradingHost n'assure pas la maintenance de Backtrader lui-même ; nous exécutons simplement la version que votre dépôt épingle.

Section 08 · FAQ

FAQ

Non. TradingHost est indépendant. Backtrader est un logiciel open-source sous licence GPL-3.0, initialement maintenu par le projet mementum sur GitHub.

Le dépôt d'origine mementum/backtrader n'a plus d'activité depuis 2023. Un fork de la communauté sur backtrader2/backtrader assure la maintenance corrective. TradingHost exécute la version épinglée par votre dépôt.

Si votre stratégie fonctionne déjà correctement sur mementum/backtrader, il n'y a aucune raison urgente de migrer. Si vous partez de zéro, souhaitez une compatibilité avec des versions plus récentes de Python ou voulez bénéficier des corrections en cours, orientez votre dépôt vers backtrader2/backtrader.

Interactive Brokers (via IbPy), Oanda v20 REST et Visual Chart. La même classe Strategy peut s'exécuter sur n'importe lequel de ces courtiers sans modification de code, simplement en changeant le store du courtier au démarrage.

Oui, avec des flux de données et des courtiers personnalisés. Backtrader ne propose pas de connecteurs natifs pour les plateformes d'échange de cryptomonnaies. Vous devrez donc soit orienter un flux personnalisé vers CCXT, soit associer vos recherches Backtrader à un framework d'exécution en direct distinct. Consultez /frameworks/ccxt/ et /frameworks/freqtrade/ pour des alternatives conçues spécifiquement pour les cryptomonnaies.

Vous les ajoutez à TradingHost sous forme de secrets chiffrés. Ils sont injectés dans l'environnement d'exécution de Backtrader au démarrage et ne sont jamais écrits dans votre dépôt.

Oui. La grille d'optimisation de Backtrader est limitée par la puissance de calcul (compute-bound) et s'exécute parfaitement au sein d'un environnement TradingHost dimensionné pour l'espace de recherche. Ce même environnement peut ensuite être reconfiguré pour le trading en direct.

Non. Backtrader passe les ordres en utilisant vos identifiants de courtier. TradingHost exécute le processus Backtrader et diffuse les logs en continu.

Backtrader est orienté événements et prend en charge le trading en direct. Il est particulièrement adapté aux stratégies nécessitant une prise de décision barre par barre et une exécution en direct. vectorbt est vectorisé et plus rapide pour l’optimisation de paramètres, mais sa version open-source n’inclut pas le trading en direct. De nombreuses équipes utilisent les deux : vectorbt pour le screening et Backtrader pour le direct.

NautilusTrader est un moteur orienté événements plus récent, basé sur Rust, conçu pour les déploiements multi-actifs à faible latence et garantissant un comportement identique entre backtest et trading en direct. Son développement est actif. Backtrader est plus ancien, écrit exclusivement en Python, plus limité dans sa compatibilité avec les plateformes d’exécution, mais reste très accessible. Consultez /frameworks/nautilustrader/ pour comparer les deux.

Exécutez votre première stratégie Backtrader

Connectez GitHub, choisissez un modèle Backtrader ou votre propre dépôt de stratégie, spécifiez mementum/backtrader ou backtrader2, ajoutez vos identifiants de courtier, choisissez une région et lancez l’exécution dans un runtime TradingHost.