Backtesting et forward testing: l’importance de la corrélation
Les traders désireux d’essayer une idée de trading sur un marché réel font souvent l’erreur de se fier entièrement aux résultats de backtesting pour déterminer si le système sera rentable. Si les backtests peuvent fournir aux commerçants des informations précieuses, ils sont souvent trompeurs et ne constituent qu’une partie du processus d’évaluation.
Les tests hors échantillon et les tests de performance en aval 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 bonne corrélation entre les résultats du backtesting, des tests de performance hors échantillon et à terme est essentielle pour déterminer la viabilité d’un système de trading.
Bases du backtesting
Le backtesting fait référence à l’application d’un système commercial aux données historiques pour vérifier comment un système se serait comporté pendant la période spécifiée. De nombreuses plateformes de trading actuelles prennent en charge le backtesting. Les traders peuvent tester des idées en quelques touches et avoir un aperçu de l’efficacité d’une idée sans risquer des fonds dans un compte de trading. Le backtesting peut évaluer des idées simples, telles que la façon dont un croisement de moyenne mobile fonctionnerait sur des données historiques, ou des systèmes plus complexes avec une variété d’entrées et de déclencheurs.
Tant qu’une idée 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 noté ci-dessus: le trader serait en mesure de saisir (ou de modifier) les longueurs des deux moyennes mobiles utilisées dans le système. Le trader pourrait effectuer un backtest pour déterminer les longueurs de moyennes mobiles qui auraient le mieux fonctionné sur les données historiques.
Etudes d’optimisation
De nombreuses plateformes de trading permettent également des études d’ optimisation. Cela implique de saisir une plage pour l’entrée spécifiée et de laisser l’ordinateur « faire le calcul » pour déterminer quelle entrée aurait fonctionné le mieux. Une optimisation à plusieurs variables peut faire le calcul pour deux ou plusieurs variables afin de déterminer quelles combinaisons auraient obtenu le meilleur résultat.
Par exemple, les commerçants peuvent indiquer au programme les intrants qu’ils aimeraient ajouter à leur stratégie; ceux-ci seraient ensuite optimisés à leur poids idéal compte tenu des données historiques testées.
Le backtesting peut être passionnant dans la mesure où un système non rentable peut souvent être transformé par magie en une machine à gagner de l’argent avec quelques optimisations. Malheureusement, peaufiner un système pour atteindre le plus haut niveau de rentabilité passée conduit souvent à un système qui fonctionnera mal dans le commerce réel. Cette sur-optimisation crée des systèmes qui ne semblent bons que sur papier.
L’ajustement de courbe est l’utilisation d’analyses d’optimisation pour créer le plus grand nombre de transactions gagnantes avec le plus grand profit sur les données historiques utilisées pendant la période de test. Bien que cela semble impressionnant dans les résultats des tests rétrospectifs, l’ajustement de courbe conduit à des systèmes peu fiables car les résultats sont essentiellement conçus sur mesure pour ces données et cette période de temps particulières.
Le backtesting et l’optimisation offrent de nombreux avantages à un commerçant, mais ce n’est qu’une partie du processus lors de l’évaluation d’un système commercial potentiel. L’étape suivante d’un trader consiste à appliquer le système aux données historiques qui n’ont pas été utilisées lors de la phase de backtesting initiale.
Données dans l’échantillon et hors échantillon
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. Les données historiques initiales sur lesquelles l’idée est testée et optimisée sont appelées données d’échantillonnage. L’ensemble de données réservé est appelé données hors échantillon. Cette configuration est une partie importante du processus d’évaluation car elle permet de tester l’idée sur des données qui n’ont pas été un composant du modèle d’optimisation.
En conséquence, l’idée n’aura en aucune façon été influencée par les données hors échantillon, et les traders seront en mesure de déterminer les performances du système sur de nouvelles données, c’est-à-dire dans le trading réel.
Avant de lancer un backtest ou une optimisation, les traders peuvent réserver un pourcentage des données historiques à des tests hors échantillon. Une méthode consiste à diviser les données historiques en tiers et à en séparer un tiers pour les utiliser dans les tests hors échantillon. Seules les données de l’échantillon doivent être utilisées pour les tests initiaux et toute optimisation.
La figure ci-dessous montre une chronologie dans laquelle un tiers des données historiques est réservé pour les tests hors échantillon et les deux tiers sont utilisés pour les tests dans l’échantillon. Bien que la figure ci-dessous représente les données hors échantillon au début du test, les procédures typiques auraient la partie hors échantillon précédant immédiatement la performance avant.
La corrélation fait référence aux similitudes entre les performances et les tendances générales des deux ensembles de données. Les métriques de corrélation peuvent être utilisées pour évaluer les rapports de performance de stratégie créés pendant la période de test (une fonctionnalité fournie par la plupart des plateformes de trading). Plus la corrélation entre les deux est forte, meilleure est la probabilité qu’un système fonctionne bien dans les tests de performance à terme et le trading en direct.
La figure ci-dessous illustre deux systèmes différents qui ont été testés et optimisés sur des données dans l’échantillon, puis appliqués à des données hors échantillon. Le graphique de gauche montre un système qui était clairement ajusté à la courbe pour bien fonctionner sur les données dans l’échantillon et qui a complètement échoué sur les données hors échantillon. Le graphique de droite montre un système qui a bien fonctionné sur les données dans et hors de l’échantillon.
Une fois qu’un système commercial a été développé à l’aide de données dans l’échantillon, il est prêt à être appliqué aux données hors échantillon. Les traders peuvent évaluer et comparer les résultats de performance entre les données de l’échantillon et les données hors échantillon.
S’il y a peu de corrélation entre les tests dans l’échantillon et hors échantillon, comme le graphique de gauche dans la figure ci-dessus, il est probable que le système ait été suroptimisé et ne fonctionnera pas bien dans le trading en direct. S’il existe une forte corrélation entre les performances, comme le montre le graphique de droite, la prochaine phase d’évaluation implique un type supplémentaire de test hors échantillon appelé test de performance avant.
Principes de base des tests de performance avancés
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 doivent ê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 une transaction sur papier rationalisant que « je n’aurais jamais pris cette transaction. » Si l’échange avait eu lieu selon la logique du système, il devrait être documenté et évalué.
De nombreux courtiers proposent un compte de trading simulé sur lequel les transactions peuvent être placées et les profits et pertes correspondants calculés. L’utilisation d’un compte de trading simulé peut créer une atmosphère semi-réaliste dans laquelle pratiquer le trading et évaluer davantage le système.
La figure ci-dessus montre également les résultats des tests de performance avant sur deux systèmes. Encore une fois, le système représenté dans le graphique de gauche ne réussit pas bien au-delà des tests initiaux sur les données de l’échantillon. Cependant, le système illustré dans le graphique de droite continue de bien fonctionner pendant toutes les phases, y compris les tests de performance en aval. Un système qui montre des résultats positifs avec une bonne corrélation entre les tests de performance dans l’échantillon, hors échantillon et avant est prêt à être mis en œuvre sur un marché en direct.
La ligne de fond
Le backtesting est un outil précieux disponible sur la plupart des plateformes de trading. La division des données historiques en plusieurs ensembles pour permettre des tests sur échantillon et hors échantillon peut fournir aux traders un moyen pratique et efficace pour évaluer une idée et un système de trading. Étant donné que la plupart des commerçants utilisent des techniques d’optimisation dans le backtesting, il est important d’évaluer ensuite le système sur des données propres pour déterminer sa viabilité.
Poursuivre les tests hors échantillon avec des tests de performance avancés fournit une autre couche de sécurité avant de mettre un système sur le marché risquant de gagner de l’argent réel. Des résultats positifs et une bonne corrélation entre le backtesting dans l’échantillon et hors de l’échantillon et les tests de performance à terme augmentent la probabilité qu’un système fonctionne bien dans le trading réel.