SuperTrend — stratégie Pine Script v5
Cette stratégie Pine Script v5 trace la ligne SuperTrend fondée sur l'ATR et lit sa valeur de direction pour trader. Elle ouvre une position longue quand la direction bascule à la hausse et la ferme quand la direction bascule à la baisse.
Code complet (gratuit, à copier)
//@version=5
strategy("SuperTrend", overlay=true)
atrPeriod = input.int(10)
factor = input.float(3.0)
[supertrend, direction] = ta.supertrend(factor, atrPeriod)
if (direction < 0)
strategy.entry("Long", strategy.long)
if (direction > 0)
strategy.close("Long")Comment fonctionne le script
Le script déclare une stratégie sur le graphique avec overlay réglé sur true, la ligne SuperTrend est donc tracée par-dessus les bougies. Deux entrées l'alimentent : atrPeriod vaut 10 par défaut et factor vaut 3.0. L'appel ta.supertrend(factor, atrPeriod) renvoie deux séries, la ligne SuperTrend et la valeur direction, que le code stocke dans les variables supertrend et direction.
La logique d'entrée tient en une condition : si direction est inférieure à zéro, le code appelle strategy.entry avec l'identifiant Long et strategy.long comme sens. En Pine Script v5, ta.supertrend renvoie une valeur négative tant que le prix reste au-dessus de la ligne, cette condition se déclenche quand la tendance bascule à la hausse. L'ordre est exécuté à la bougie suivante, pas sur celle qui a produit le signal.
La sortie est la condition miroir : si direction est supérieure à zéro, strategy.close est appelé pour la position Long. Le script ne prend pas de position courte et ne définit ni stop loss ni take profit, la position reste donc ouverte jusqu'à ce que la valeur direction repasse au-dessus de zéro et que ce basculement opposé la ferme.
Paramètres du code
| Paramètre | Valeur | Rôle |
|---|---|---|
période ATR | 10 | Valeur par défaut de input.int(10), passée en second argument de ta.supertrend(factor, atrPeriod). |
facteur | 3.0 | Valeur par défaut de input.float(3.0), le multiplicateur d'ATR passé en premier argument de ta.supertrend. |
overlay | true | Réglé dans la déclaration strategy() pour afficher la ligne SuperTrend sur le graphique des prix. |
titre de la stratégie | SuperTrend | Premier argument de strategy(), le nom affiché par la plateforme pour ce script. |
condition d'entrée | direction < 0 | Seule condition qui déclenche strategy.entry dans le script. |
condition de sortie | direction > 0 | Seule condition qui déclenche strategy.close dans le script. |
identifiant d'entrée | Long | Chaîne passée à strategy.entry puis réutilisée par strategy.close. |
sens de l'entrée | strategy.long | Second argument de strategy.entry, ouvre la position à l'achat. |
appel de sortie | strategy.close("Long") | Ferme toute la position Long quand direction devient positive. |
taille d'ordre | non réglée (défaut Pine) | strategy.entry ne reçoit aucun argument qty, la taille d'ordre par défaut de la plateforme s'applique. |
Limites connues de cette règle
- SuperTrend suit la tendance : en range, la valeur direction bascule sans cesse et chaque basculement ouvre ou ferme la position, ce qui multiplie les allers-retours.
- La valeur direction est calculée sur les bougies passées et l'exécution a lieu à la bougie suivante, donc les entrées et sorties arrivent après le début du mouvement, et un basculement tardif peut retourner la position en fin de mouvement.
- Le script ne règle ni commission, ni glissement, ni stop loss : le résultat affiché ignore les frais de trading et chaque position est portée sans limite de risque définie.
Avant de lui faire confiance : testez-la sur des données jamais vues
Un backtest dans le Strategy Tester de TradingView montre un seul chemin passé, avec les réglages que vous avez choisis. Strategy Arena Lab (gratuite, Windows et Linux) rejoue ce Pine sur votre PC, compare ses trades un par un à ceux de TradingView pour le Pine pris en charge, compte les variantes essayées, puis juge la règle sur une période restée scellée pendant la recherche : résiste, mirage ou non concluant.
FAQ
Est-ce que ça marche sur les cryptos ?
Le script n'impose aucun filtre de marché, la même règle peut donc s'appliquer à tout symbole fourni par votre flux de données. Vous pouvez la rejouer sur une période jamais vue dans Strategy Arena Lab, qui est gratuite.
Comment ajouter un stop loss ?
Le code ne ferme que sur un basculement de direction. Il faudrait ajouter un appel strategy.exit avec un paramètre stop ou loss à côté de l'entrée existante.
Autres stratégies Pine Script v5 gratuites
Autres parcours TradingView
Code pédagogique sur données passées. Aucun conseil d’investissement, aucun résultat promis.