02 · Stratégie 1 — Absorption à un niveau clé¶
La stratégie d'order flow la plus documentée, et celle dont la logique microstructurelle est la plus solide. C'est le point de départ recommandé.
L'idée¶
Le prix atteint une zone identifiée à l'avance. L'agressivité s'y déverse massivement dans une direction — et le prix ne bouge pas. Quelqu'un absorbe. Quand cette agressivité s'épuise sans avoir produit de mouvement, le prix reflue dans la direction opposée.
Intuition
Trois mille contrats achetés au marché contre un plus haut de la veille, et le prix reste bloqué à 2 ticks du sommet. Cela signifie qu'un vendeur passif a livré 3 000 contrats à ce prix sans reculer. Les acheteurs qui viennent de payer sont en position sans profit ; le premier reflux les met en perte, et leurs sorties alimentent la baisse.
Spécification complète¶
Couche 1 — Régime¶
| Condition | Valeur de départ |
|---|---|
| Créneau horaire | 15 h 30 – 18 h 00 (heure de Paris), ouverture cash US |
| Volume relatif | ≥ 0,8 × médiane du même créneau sur 20 séances |
| Ratio d'efficience sur 30 barres | ≤ 0,4 (marché non directionnel) |
Le troisième filtre est le plus important : l'absorption est une stratégie de retournement, elle est mortelle en tendance forte. Dans un marché à ratio d'efficience élevé, l'absorption apparente n'est qu'une pause avant la reprise du mouvement.
Couche 2 — Zone¶
Le signal n'est recevable qu'à moins de 3 ticks de l'une des zones suivantes :
- plus haut / plus bas de la veille ;
- plus haut / plus bas de la séance européenne ;
- bandes de VWAP à ±2 écarts-types ;
- POC de la veille.
Couche 3 — Déclencheur¶
Sur une fenêtre glissante \(W\) de 30 secondes (ou une barre de volume) :
où \(q_{0{,}9}(\Delta)\) est le 90ᵉ percentile du delta observé sur les 60 dernières fenêtres du même créneau horaire.
Confirmation obligatoire — le déclencheur seul ne suffit pas. Il faut attendre l'un des deux événements suivants dans les 60 secondes :
- retournement du delta : le delta de la fenêtre suivante passe négatif ;
- échec de nouveau plus haut : le prix ne parvient pas à dépasser \(P_{\max}(W)\) malgré une nouvelle poussée acheteuse.
Ne jamais entrer sur l'absorption seule
L'absorption dit qu'un vendeur est présent. Elle ne dit pas qu'il gagnera. Si les acheteurs finissent par consommer tout son inventaire, le mouvement à la hausse est explosif — et vous êtes vendeur en plein dedans.
La confirmation transforme un pari sur la présence d'un vendeur en une observation de sa victoire locale. Cela coûte 1 à 2 ticks d'entrée et élimine la classe de pertes la plus violente. Ce n'est pas négociable.
Couche 4 — Exécution¶
- Ordre au marché, ou limite marketable de 1 tick, à la confirmation.
- Taille : voir dimensionnement.
- Pas de moyenne à la baisse. Jamais. Une position qui va contre vous signifie que l'absorption a échoué : la thèse est invalidée, pas affaiblie.
Couche 5 — Sortie¶
| Sortie | Valeur de départ | Justification |
|---|---|---|
| Stop | 2 ticks au-delà de \(P_{\max}(W)\) | Au-delà, l'absorption a échoué par définition |
| Cible | VWAP, ou 2,5 × la distance au stop | Retour vers l'équilibre |
| Temps maximal | 3 minutes | Au-delà, l'information est périmée |
Le stop est structurel, pas arbitraire
C'est la vraie force de cette stratégie : le niveau d'invalidation est défini par le motif lui-même. Si le prix dépasse le sommet de la zone d'absorption, l'hypothèse « un vendeur tient ce niveau » est factuellement fausse. Il n'y a rien à interpréter.
Un stop structurel de 4-6 ticks avec une cible à 12-15 ticks donne un ratio de 2,5:1, soit un taux d'équilibre autour de 30-35 % sur MES.
Couche 6 — Risque¶
- Maximum 2 tentatives par zone et par séance. Après deux échecs sur le même niveau, la zone est réputée cassée.
- Arrêt de la séance après 3 pertes consécutives.
- Aucune entrée dans les 2 minutes précédant une publication macro majeure.
Pseudo-code¶
def signal_absorption(fenetres, zones, contexte):
"""Retourne 'short', 'long' ou None. Voir annexes pour l'implémentation
complète des primitives (footprint, percentiles)."""
w = fenetres[-1]
# couche 1 : régime
if not contexte.dans_creneau() or contexte.efficience(30) > 0.4:
return None
if contexte.volume_relatif() < 0.8:
return None
# couche 2 : zone
zone = zones.plus_proche(w.prix_max, tolerance_ticks=3)
if zone is None:
return None
# couche 3 : déclencheur
seuil = contexte.percentile_delta(0.90)
absorbe_vente = (w.delta >= seuil
and w.amplitude_ticks <= 3
and w.cloture <= w.ouverture + contexte.tick)
if not absorbe_vente:
return None
# confirmation : delta retourné ou échec de nouveau plus haut
suivante = fenetres[-1] if len(fenetres) < 2 else fenetres[-1]
if not (suivante.delta < 0 or not contexte.nouveau_plus_haut(w.prix_max)):
return None
return "short"
Ce qu'il faut mesurer avant d'y croire¶
Suivez la méthode de validation du chapitre Anatomie :
| Mesure | Question |
|---|---|
| Fréquence | 2 à 8 signaux par séance attendus. Hors de cette plage, recalibrez \(q_{0,9}\). |
| MFE médiane à 3 min | Dépasse-t-elle 6 ticks ? Sinon, la cible de 12 est irréaliste. |
| MAE médiane à 3 min | Dépasse-t-elle le stop structurel ? Alors le stop est trop serré. |
| Comparaison au hasard | Le signal bat-il un tirage aléatoire de même fréquence horaire ? |
| Effet de la confirmation | Comparez avec et sans. Si la confirmation ne change rien, votre implémentation est probablement fausse. |
Le biais du survivant graphique
Toute la littérature commerciale sur l'absorption illustre le concept avec des captures d'écran de cas réussis (LiteFinance, Order Flow Labs). Aucune ne publie le taux d'échec. Vos propres mesures sur 200 signaux valent infiniment plus que mille captures d'écran.
Variantes¶
| Variante | Modification | Effet attendu |
|---|---|---|
| Absorption + épuisement | Exiger en plus un volume terminal faible | Moins de signaux, meilleure qualité |
| Absorption sur sweep | Exiger un sweep préalable de la zone | Cible le stop-run, voir chapitre 4 |
| Absorption multi-fenêtres | Cumuler l'absorption sur 3 fenêtres | Détecte les gros vendeurs patients |
Résumé¶
- L'absorption est un retournement : elle exige un filtre anti-tendance.
- Le déclencheur est un delta extrême sans mouvement de prix, à une zone identifiée.
- La confirmation (delta retourné ou échec de nouveau plus haut) n'est pas optionnelle.
- Le stop est structurel : 2 ticks au-delà de l'extrême absorbé.
- Sortie temporelle à 3 minutes.
- Mesurez MFE, MAE et comparaison au hasard avant toute mise en production.
Chapitre précédent : Anatomie d'une stratégie · Chapitre suivant : Imbalances empilées