Skip to content
Tous les guides sur les options et contrats à terme
Étiquetage d’événements en apprentissage automatique financier9 min de lecture

Méthode des trois barrières : étiqueter les événements financiers

Découvrez comment des seuils de gain et de perte ajustés à la volatilité, associés à une durée maximale, transforment les événements de marché en labels pour l’apprentissage automatique.

Dans ce guideÀ quelle question répond la méthode des trois barrières ?

Bref résumé

La méthode des trois barrières attribue un label au parcours du prix après le début d’un événement : elle regarde si le seuil de gain, celui de perte ou la limite de temps est atteint en premier. Dans cet article, l’expiration sans franchissement d’un seuil horizontal donne le label 0, même si le rendement final est positif ou négatif. La volatilité cible doit être connue au début de l’événement ; les prix ultérieurs forment y, pas les variables X.

À quelle question répond la méthode des trois barrières ?

En apprentissage automatique financier, chaque ligne de variables doit être associée à un résultat que le modèle peut apprendre à prédire. Étiqueter toutes les observations avec le rendement après un nombre fixe de jours ne correspond pas toujours à la question étudiée : le prix a-t-il suffisamment évolué dans un sens ou dans l’autre ? En combien de temps ? Le seuil de perte a-t-il été atteint avant l’objectif de gain ? La méthode des trois barrières encadre un événement par deux seuils de prix horizontaux et une limite de temps.

L’événement commence à un prix de référence P₀. Un filtre comme CUSUM peut sélectionner des instants de départ lorsqu’un mouvement dépasse un seuil. Ce filtre indique quand commencer l’observation, mais ne détermine pas le label final. Une fois le départ fixé, on pose les barrières et on suit le prix jusqu’au premier franchissement ou à l’expiration. Le chapitre 3 d’Advances in Financial Machine Learning présente cette méthode. La documentation de mlfinpy sur l’étiquetage décrit les barrières et le méta-étiquetage.

Calculer les seuils horizontaux au début de l’événement

Estimez la volatilité cible σᵢ à partir des seules informations disponibles jusqu’au début de l’événement. Choisissez ensuite le multiplicateur de prise de profit mPT et celui de stop loss mSL. Si σᵢ est exprimée en rendement simple et que le côté est acheteur, les seuils sont :

  • Seuil supérieur : P₀ × (1 + mPT × σᵢ)
  • Seuil inférieur : P₀ × (1 − mSL × σᵢ)

La distance s’adapte ainsi au risque estimé de chaque événement, au lieu d’imposer le même écart de prix à toutes les observations. Une volatilité initiale plus élevée éloigne les seuils ; une volatilité plus faible les rapproche. Fixez σᵢ au départ : la recalculer à partir du parcours futur laisserait les données qui servent à créer le label modifier aussi la cible. Si l’étude utilise les rendements logarithmiques, adaptez la formule et gardez une convention cohérente.

La troisième barrière est verticale : un instant final défini à l’avance qui fixe la durée maximale de détention. Si aucun seuil horizontal n’est atteint avant cet instant, l’événement expire. Changer cette durée revient à poser une autre question au modèle. Choisissez-la donc selon l’horizon de recherche, et non après avoir consulté les résultats.

Exemple synthétique : repérer le premier seuil atteint

Supposons que P₀ vaille 100 dollars et que σᵢ soit de 2 % au départ. Avec mPT = 2 et mSL = 1,5, le seuil supérieur vaut 100 × (1 + 2 × 0,02), soit 104 dollars. Le seuil inférieur vaut 100 × (1 − 1,5 × 0,02), soit 97 dollars. La barrière verticale expire à la fin de la troisième barre future.

Sur le parcours 100 → 104,50, le prix dépasse le seuil supérieur dès la première barre future : le label est +1. Sur 100 → 96,50, le prix passe sous 97 dès la première barre future : le label est −1. Sur 100 → 101 → 102 → 101,50, aucun seuil horizontal n’est atteint avant la fin de la troisième barre future, moment où la limite de temps expire. Avec la convention retenue ici, le label est 0, même si le rendement final entre 100 et 101,50 est positif et s’élève à 1,5 %.

Ces exemples donnent l’ordre des prix. Dans des données de marché agrégées, cet ordre peut manquer, notamment si le plus haut et le plus bas d’une même barre OHLC dépassent chacun un seuil.

Préciser la règle appliquée à l’expiration

Lorsque la barrière verticale est atteinte en premier, plusieurs conventions sont possibles. Ici, la règle est explicite : si le seuil de gain ou de perte n’a pas été touché avant l’échéance, le label vaut 0, que le prix final soit au-dessus ou au-dessous du prix initial. La documentation de mlfinpy décrit la barrière verticale comme une durée maximale ; dans l’implémentation labeling.py, le seuil supérieur reçoit +1, le seuil inférieur −1 et la barrière verticale 0.

D’autres implémentations peuvent plutôt utiliser le signe du rendement à l’échéance : +1 si le prix final est supérieur, −1 s’il est inférieur, et éventuellement 0 s’il est inchangé. Elles répondent à une question différente : la direction du rendement final, plutôt que l’absence de franchissement d’un seuil horizontal. Avant de comparer deux bibliothèques ou deux jeux de données, vérifiez leur convention et consignez-la dans la définition de la cible.

Trois parcours de prix sans libellé : l’un franchit la limite haute, l’autre la limite basse et le troisième s’arrête entre les deux à la limite de temps
Schéma conceptuel du premier contact avec une limite haute, basse ou temporelle ; les parcours sont illustratifs, pas des données de marché

Distinguer les labels directionnels du méta-étiquetage

Un label directionnel primaire peut prendre les valeurs +1 lorsque le seuil de gain est atteint, −1 pour le seuil de perte et 0 à l’expiration selon la règle choisie ici. Un modèle primaire peut déjà sélectionner le côté acheteur ou vendeur ; un modèle secondaire apprend alors à accepter le signal ou à s’abstenir. C’est le méta-étiquetage. Dans ce cadre, la classe binaire 1 signifie généralement accepter et 0 refuser : elle ne se confond pas avec les trois classes directionnelles.

Si le modèle primaire a déjà choisi le côté, évaluez le résultat dans ce sens. Le modèle secondaire n’a pas à deviner une nouvelle direction s’il doit seulement décider de suivre ou non le signal existant. Précisez également si la cible représente un rendement brut ou un rendement net des coûts.

Garder les résultats futurs hors des variables X

Au départ de l’événement, σᵢ, les multiplicateurs et les variables X doivent être connus ou calculés uniquement à partir des informations déjà disponibles. Les prix qui suivent révèlent quelle barrière a été atteinte en premier et constituent y. Ajouter à X un rendement futur, l’instant de résolution ou toute donnée encore inconnue à la décision revient à fournir une partie de la réponse au modèle.

Des événements proches peuvent se chevaucher et partager une portion du même parcours futur. Un découpage aléatoire des lignes ne supprime pas cette dépendance. Comparez les intervalles de résultat réels et appliquez le purging pour retirer de l’entraînement les observations dont les intervalles recoupent ceux du test. Si nécessaire, ajoutez une période d’embargo justifiée séparément. Le guide sur la validation croisée purgée et l’embargo en séries financières explique comment traiter les labels qui se chevauchent.

Définir la lecture des prix et les coûts

Sur une même barre OHLC, le plus haut peut dépasser le seuil de gain tandis que le plus bas passe sous le seuil de perte. Les valeurs agrégées ne disent pas lequel a été atteint en premier. Utilisez des données plus fines si elles existent ; sinon, fixez à l’avance une règle cohérente et prudente pour ces cas ambigus. Une règle fondée uniquement sur les clôtures peut aussi manquer un franchissement intrabar suivi d’un retour avant la clôture.

Si le label est censé représenter un résultat négociable, tenez compte des commissions, du spread, du glissement, de l’impact de marché et, selon le marché, du financement ou du coût d’emprunt. Le rendement net peut modifier la décision d’accepter un signal en méta-étiquetage. La méthode des trois barrières construit des cibles d’apprentissage ; elle ne constitue pas à elle seule une stratégie ni une preuve de rentabilité.

Questions fréquentes

Q1CUSUM attribue-t-il aussi le label de l’événement ?

Non. CUSUM peut servir de filtre pour choisir les instants où les événements commencent. Les trois barrières déterminent ensuite le label du parcours observé.

Q2Le label à la barrière verticale vaut-il toujours 0 ?

Non. C’est la convention retenue ici et celle présentée dans les exemples mlfinpy cités. D’autres implémentations peuvent attribuer le signe du rendement à l’échéance ; vérifiez la règle avant de comparer des résultats.

Q3Un label +1 signifie-t-il que le trade est rentable après coûts ?

Pas nécessairement. Il indique que le seuil supérieur a été atteint en premier selon la règle de prix définie. Les commissions, le spread, le glissement, le financement et l’exécution peuvent modifier le résultat net.

Sources et lectures complémentaires

Signaler un problème

Nous préparons un e-mail avec le lien de cet article. Mark ne reçoit le signalement qu’après son envoi

Vérification rapide

Guide terminé ? Vérifiez vos acquis avec 3 questions

Question 1 / 3

Question 01

Dans l’exemple, quel label reçoit 100 → 101 → 102 → 101.50 à la fin de la troisième barre future, lorsque le délai expire ?

Choisissez une réponse pour voir l'explication

Glossaire des options