17 avril 2021 17:14

Backtesting

Qu’est-ce que le backtesting?

Le backtesting est la méthode générale pour voir dans quelle mesure une stratégie ou un modèle se serait bien comporté ex post. Le backtesting évalue la viabilité d’une stratégie de trading en découvrant comment elle se déroulerait à l’aide de données historiques. Si le backtesting fonctionne, les traders et les analystes peuvent avoir la confiance nécessaire pour l’utiliser à l’avenir.

Points clés à retenir

  • Le backtesting évalue la viabilité d’une stratégie de trading ou d’un modèle de tarification en découvrant comment cela se serait déroulé rétrospectivement à l’aide de données historiques.
  • La théorie sous-jacente est que toute stratégie qui a bien fonctionné dans le passé est susceptible de bien fonctionner à l’avenir, et inversement, toute stratégie qui a mal fonctionné dans le passé est susceptible de mal fonctionner à l’avenir.
  • Lors du test d’une idée sur des données historiques, il est avantageux de réserver une période de données historiques à des fins de test. S’il réussit, le tester sur des périodes de temps alternatives ou des données hors échantillon peut aider à confirmer sa viabilité potentielle.

Comprendre le backtesting

Le backtesting permet à un trader de simuler une stratégie de trading en utilisant des données historiques pour générer des résultats et analyser le risque et la rentabilité avant de risquer un capital réel.

Un backtest bien mené qui donne des résultats positifs assure aux traders que la stratégie est fondamentalement saine et qu’elle est susceptible de générer des bénéfices lorsqu’elle est mise en œuvre dans la réalité. En revanche, un backtest bien mené qui donne des résultats sous-optimaux incitera les traders à modifier ou rejeter la stratégie.



Les stratégies de trading particulièrement compliquées, telles que les stratégies mises en œuvre par des systèmes de trading automatisés, reposent fortement sur les backtesting pour prouver leur valeur, car elles sont trop obscures pour être évaluées autrement.

Tant qu’une idée de trading peut être quantifiée, elle peut être backtestée. Certains commerçants et investisseurs peuvent rechercher l’expertise d’un programmeur qualifié pour développer l’idée sous une forme testable. En règle générale, cela implique un programmeur codant l’idée dans le langage propriétaire hébergé par la  plateforme de trading.

Le programmeur peut incorporer des variables d’entrée définies par l’utilisateur qui permettent au commerçant de «peaufiner» le système. Un exemple de ceci serait dans le  système de croisement de moyenne mobile simple (SMA). Le commerçant serait en mesure de saisir (ou de modifier) ​​les longueurs des deux moyennes mobiles utilisées dans le système. Le trader pourrait alors effectuer un backtest pour déterminer les longueurs de moyennes mobiles qui auraient le mieux fonctionné sur les données historiques.

Le scénario de backtesting idéal

Le backtest idéal choisit des échantillons de données à partir d’une période de temps pertinente d’une durée qui reflète une variété de conditions du marché. De cette façon, on peut mieux juger si les résultats du backtest représentent un hasard ou un trading judicieux.

L’ensemble de données historiques doit inclure un échantillon véritablement représentatif des actions, y compris celles d’entreprises qui ont finalement fait faillite ou qui ont été vendues ou liquidées. L’alternative, y compris uniquement les données des stocks historiques qui existent encore aujourd’hui, produira des rendements artificiellement élevés en backtesting.

Un backtest doit prendre en compte tous les coûts de trading, même insignifiants, car ceux-ci peuvent s’additionner au cours de la période de backtesting et affecter considérablement l’apparence de la rentabilité d’une stratégie. Les traders doivent s’assurer que leur logiciel de backtesting prend en compte ces coûts.

Les tests hors échantillon et les tests de performance avant fournissent une confirmation supplémentaire de l’efficacité d’un système et peuvent montrer les vraies couleurs d’un système avant que de l’argent réel ne soit en jeu. Une forte corrélation  entre les résultats des tests de performance backtesting, hors échantillon et forward est essentielle pour déterminer la viabilité d’un système de trading.

Backtesting vs Forward Performance Testing

Les tests de performance à terme, également connus sous le nom de  trading sur papier, fournissent aux traders un autre ensemble de données hors échantillon sur lesquelles évaluer un système. Les tests de performance à terme sont une simulation du trading réel et impliquent de suivre la logique du système dans un marché en direct. Il est également appelé trading sur papier puisque toutes les transactions sont exécutées sur papier uniquement; c’est-à-dire que les entrées et sorties de transaction sont documentées avec tout profit ou perte pour le système, mais aucune transaction réelle n’est exécutée.

Un aspect important des tests de performance avant est de suivre exactement la logique du système; sinon, il devient difficile, voire impossible, d’évaluer avec précision cette étape du processus. Les commerçants devraient être honnêtes au sujet de toutes les entrées et sorties de commerce et éviter les comportements tels que le  choix des  métiers ou ne pas inclure un commerce sur papier rationalisant que « je n’aurais jamais pris ce commerce. » Si l’échange avait eu lieu selon la logique du système, il devrait être documenté et évalué.

Backtesting vs analyse de scénario

Alors que le backtesting utilise des données historiques réelles pour tester l’ajustement ou le succès, l’ analyse de scénario utilise des données hypothétiques qui simulent divers résultats possibles. Par exemple, l’analyse de scénarios simulera des changements spécifiques dans la valeur des titres du portefeuille ou des facteurs clés qui se produisent, comme un changement du taux d’intérêt.

L’analyse de scénario est couramment utilisée pour estimer les changements de valeur d’ un portefeuille en réponse à un événement défavorable et peut être utilisée pour examiner un scénario théorique du pire des cas.

Quelques pièges du backtesting

Pour que le backtesting fournisse des résultats significatifs, les traders doivent développer leurs stratégies et les tester de bonne foi, en évitant autant que possible les biais. Cela signifie que la stratégie doit être développée sans s’appuyer sur les données utilisées lors des backtests.

C’est plus difficile qu’il n’y paraît. Les traders élaborent généralement des stratégies basées sur des données historiques. Ils doivent être stricts sur les tests avec des ensembles de données différents de ceux sur lesquels ils entraînent leurs modèles. Sinon, le backtest produira des résultats élogieux qui ne veulent rien dire.

De même, les traders doivent éviter le dragage de données, dans lequel ils testent un large éventail de stratégies hypothétiques par rapport au même ensemble de données, ce qui produira également des succès qui échouent sur les marchés en temps réel, car il existe de nombreuses stratégies invalides qui battraient le marché sur un période de temps spécifique par hasard.

Une façon de compenser la tendance au dragage de données ou au tri sélectif consiste à utiliser une stratégie qui réussit dans la période pertinente ou dans l’échantillon et à la tester à nouveau avec des données d’une période différente ou hors échantillon.. Si les backtests dans et hors de l’échantillon donnent des résultats similaires, ils ont plus de chances d’être prouvés valides.