600 / 736FIT

Overfitting

Surapprentissage

Overfitting désigne une règle trop ajustée aux données passées, y compris à leurs hasards. Elle peut alors échouer sur de nouvelles données. Une stratégie simple longuement retouchée peut aussi être surajustée.

Overfitting apparaît lorsqu’un modèle ou une règle apprend les particularités des données de développement plutôt qu’une relation transposable. En trading, le meilleur résultat historique ne suffit donc pas : il faut savoir comment la stratégie a été choisie et ce qu’elle donne sur d’autres données.

Pierre teste une règle d’achat de bitcoin. Le test historique perd de l’argent ; il change donc la période de la moyenne. Puis il ajoute une condition pour éviter les opérations ratées. La courbe s’améliore, mais il contourne peut-être seulement des hasards déjà observés. QuantConnect décrit ainsi l’ajustement aux détails et au bruit des données d’entraînement. Apprendre du passé n’est pas le problème. Prendre ses particularités pour une régularité durable en est un. [1]

Pierre pourrait supprimer toutes les conditions, mais perdre aussi une relation utile. scikit-learn illustre les deux extrêmes : un modèle trop simple manque la relation, un modèle trop souple peut suivre les détails accidentels. Le nombre de réglages ne suffit donc pas à diagnostiquer le surajustement. Une procédure simple doit être évaluée honnêtement sur des données correctement séparées, comme une procédure complexe. Si elle est choisie après consultation du test final, ce test a déjà participé au développement. [2]

Pierre finit par retenir une règle courte. Elle ne montre pas combien de versions infructueuses l’ont précédée. Bailey et ses coauteurs décrivent comment répéter les tests sur les mêmes données peut produire de fausses découvertes. Conservez candidats, modifications et méthode de sélection, pas seulement la jolie courbe gagnante. Un résultat simple peut venir d’une longue recherche. Le nombre d’essais ne suffit toutefois pas à calculer une probabilité de surajustement : les données, leurs dépendances et la sélection comptent aussi. [3]

Pierre a besoin de données pour développer et d’autres pour évaluer ensuite. scikit-learn l’illustre par la validation imbriquée : à l’intérieur, on choisit les réglages ; à l’extérieur, on évalue toute la sélection. C’est comme préparer un examen puis le passer. La meilleure note d’entraînement n’est pas une note indépendante. Le choix des indicateurs et la préparation des entrées font aussi partie du développement. Si le résultat final conduit à modifier les règles, il faut d’autres données adaptées pour réévaluer ; le même examen n’est plus intact. [4]

Mélanger les exemples peut être pertinent pour apprendre à partir de photographies. Avec des observations successives du marché, cela peut produire un test irréaliste ; scikit-learn souligne leur dépendance temporelle. Pierre ne peut utiliser que les entrées disponibles au moment considéré. Les résultats servant à entraîner ou choisir une règle doivent également être connus : une opération encore ouverte n’est pas un résultat achevé. Walk-forward Analysis avance des données anciennes vers les suivantes. Elle n’apporte pas non plus de preuve nouvelle si son protocole est réécrit à répétition selon les mêmes résultats. [5]

Pierre pourrait séparer les lignes de test, mais avoir d’abord calculé une moyenne sur toute la table pour transformer les entrées. Le test ne serait plus réellement isolé. scikit-learn demande donc d’apprendre ces transformations uniquement sur l’entraînement, puis de les appliquer au test. L’utilisation d’une information indisponible au moment pertinent est une fuite de données. Ce n’est pas la même chose qu’Overfitting : on peut apprendre le bruit sans lignes futures, et une fuite peut fausser un modèle simple. Vérifiez tout le processus, pas seulement une frontière dans le tableau. [6]

La stratégie de Pierre perd lors de la période suivante. Le surajustement est une explication possible, pas la seule. Marché, coûts ou qualité des données ont pu changer ; un court intervalle peut être fortement influencé par le hasard. scikit-learn propose des courbes de validation et d’apprentissage pour comparer les résultats lorsque réglages ou volume d’entraînement changent. Vérifier si des réglages voisins donnent des résultats proches peut aussi aider. Mais chaque nouveau réglage est consigné comme développement. Ce diagnostic ne démontre pas à lui seul un avantage statistique exploitable. [2]

Une conclusion utile explique l’origine de la stratégie, les changements et ce qui a réellement été évalué plus tard, en plus du gain. Séparez résultats de développement et résultats ultérieurs ; indiquez essais connus, coûts et limites. La NFA rappelle que le trading hypothétique ne reproduit pas pleinement liquidité, glissements de prix et comportement face aux pertes réelles ; ses règles publicitaires concernent des membres déterminés. Toute nouvelle évaluation commence donc par des règles consignées avant l’essai. Réduire les erreurs de méthode est utile, mais même des données encore inutilisées ne garantissent pas de profits futurs. [7]

ExempleEXEMPLE · FIT

Le gagnant de la sélection peut perdre au test suivant

Dans cet exemple fictif, Pierre dispose de candidats A, B et C définis à l’avance, avec la même taille de position fixe. Leurs résultats nets sur trois périodes de sélection sont A [8, 10, 12] USD, B [6, 8, 10] USD et C [4, 6, 8] USD. Les totaux dans l’ordre A, B, C sont [30, 24, 18] USD. La règle préalablement consignée choisit le total maximal et, en cas d’égalité, le premier candidat dans cet ordre. Pierre choisit donc A avant la période suivante. Il révèle ensuite seulement les résultats de trois périodes de test ultérieures : A [-6, -4, -2] USD, B [1, 2, 3] USD et C [0, 1, 2] USD. Les totaux de test sont [-12, 6, 3] USD. Le candidat A initialement retenu obtient -12 USD au test. Les liquidités initiales de test de 1000 USD terminent donc à 988 USD. Le gain de sélection de 30 USD n’y est pas ajouté. La taille reste fixe, les montants incluent tous les coûts du modèle et chaque période finit sans position ouverte ; il n’y a ni dette ni flux externes. Le schéma compare sélection et test ultérieur pour chaque candidat. Constater maintenant que B fait mieux ne permet pas de changer rétroactivement le choix. Le classement de sélection ne s’est pas transmis, mais cet exemple ne prouve pas que le surajustement soit la seule cause et n’en estime pas la probabilité. Ce sont des chiffres pédagogiques, pas des résultats de marché réels ni une recommandation de stratégie.

Pour une vision complète, lisez aussi Backtesting, Walk-forward Analysis, Look-ahead Bias, Paper Trading, Trading Journal. Cette entrée est également citée par Technical analysis, Technical indicator, Moving average crossover, Relative Strength Index.

01Une stratégie simple peut-elle être surajustée ?

Oui. La courte règle finale a pu gagner parmi de nombreux essais sur les mêmes données. Nous évaluons donc toute la recherche, pas seulement le nombre de réglages de la dernière version.

02Un mauvais résultat sur de nouvelles données prouve-t-il le surajustement ?

Non. Un changement du marché, des coûts, une erreur de données ou un court intervalle dominé par le hasard peuvent aussi l’expliquer. L’écart invite à examiner méthode et conditions ; il ne détermine seul ni cause ni probabilité de surajustement.

DOC · 001QuantConnect — Optimization ParametersDocumentation DOC · 002scikit-learn — Validation and Learning CurvesDocumentation DOC · 003Bailey et al. — The Probability of Backtest OverfittingSource primaire DOC · 004scikit-learn — Nested versus Non-nested Cross-validationDocumentation DOC · 005scikit-learn — Cross-validation: Evaluating Estimator PerformanceDocumentation DOC · 006scikit-learn — Common Pitfalls: Data LeakageDocumentation DOC · 007NFA — Use of Promotional Material Containing Hypothetical Performance ResultsDocumentation
Révisé le: Sources d’abord · Pas un conseil financier