Aller au contenu principal

Pine Script Library Gratuite

Dix stratégies classiques avec leur code Pine Script v5 complet, et cinq stratégies de tendance exportées et jugées par la Lab. Copiez-en une dans TradingView, puis testez-la sur des données jamais vues dans la Lab gratuite.

10+ Scripts Gratuits Pine Script v5 Copier-Coller Sans Inscription
1. Public Pine Copie le baseline

Les scripts gratuits restent ouverts pour inspection TradingView et tests rapides.

2. ArenaScript Construis en privé

Builder transforme les idées en ArenaScript lisible avec backtests privés et export Pine.

3. World Arena Teste les marchés hostiles

Operator montre où une stratégie survit, meurt, reste cash, ou bat le Buy & Hold et un filtre 200 jours.

4. TradingView Exporte après validation

La sortie publique reste TradingView ; la Lab gratuite valide avant cette sortie.

Achat quand le RSI croise 30 à la hausse (survente), sortie quand il repasse sous 70 (surachat). La stratégie Pine Script la plus connue.
//@version=5
strategy("RSI Mean Reversion", overlay=true, pyramiding=0, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.1, process_orders_on_close=true, margin_long=0)
rsiLen = input.int(14)
rsiVal = ta.rsi(close, rsiLen)
if (ta.crossover(rsiVal, 30))
    strategy.entry("Long", strategy.long)
if (ta.crossunder(rsiVal, 70))
    strategy.close("Long")
Pas encore jugée par la Lab. Un backtest court sur TradingView n'est pas un verdict : testez-la sur une période scellée qu'elle n'a jamais vue.
Suivi de tendance classique : achat quand l'EMA rapide (9) croise au-dessus de l'EMA lente (21).
//@version=5
strategy("EMA Crossover 9/21", overlay=true, pyramiding=0, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.1, process_orders_on_close=true, margin_long=0)
fast = ta.ema(close, 9)
slow = ta.ema(close, 21)
if (ta.crossover(fast, slow))
    strategy.entry("Long", strategy.long)
if (ta.crossunder(fast, slow))
    strategy.close("Long")
Pas encore jugée par la Lab. Un backtest court sur TradingView n'est pas un verdict : testez-la sur une période scellée qu'elle n'a jamais vue.
Trois EMA alignées (8 > 21 > 55) pour entrer. Confirmation de tendance plus forte qu'un simple croisement.
//@version=5
strategy("EMA Ribbon", overlay=true)
ema1 = ta.ema(close, 8)
ema2 = ta.ema(close, 21)
ema3 = ta.ema(close, 55)
if (ema1 > ema2 and ema2 > ema3)
    strategy.entry("Long", strategy.long)
if (ema1 < ema2)
    strategy.close("Long")
Pas encore jugée par la Lab. Un backtest court sur TradingView n'est pas un verdict : testez-la sur une période scellée qu'elle n'a jamais vue.
Achat sous la bande inférieure, sortie au-dessus de la bande supérieure. Retour à la moyenne fondé sur l'écart-type.
//@version=5
strategy("BB Bounce", overlay=true, pyramiding=0, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.1, process_orders_on_close=true, margin_long=0)
length = input.int(20)
mult = input.float(2.0)
[middle, upper, lower] = ta.bb(close, length, mult)
if (close < lower)
    strategy.entry("Long", strategy.long)
if (close > upper)
    strategy.close("Long")
Pas encore jugée par la Lab. Un backtest court sur TradingView n'est pas un verdict : testez-la sur une période scellée qu'elle n'a jamais vue.
Achat sur croisement haussier du MACD, sortie sur croisement baissier.
//@version=5
// MACD 12/26/9 : long tant que la ligne MACD est au-dessus de sa signal, plat sinon.
// Le croisement haussier ouvre, le croisement baissier ferme : ces etats en sont la lecture.
strategy("MACD Momentum", overlay=true, pyramiding=0, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.1, process_orders_on_close=true, margin_long=0)
[macdLine, signalLine, hist] = ta.macd(close, 12, 26, 9)
longSignal = macdLine > signalLine
exitSignal = macdLine < signalLine
if longSignal
    strategy.entry("Long", strategy.long)
if exitSignal
    strategy.close("Long")
Pas encore jugée par la Lab. Un backtest court sur TradingView n'est pas un verdict : testez-la sur une période scellée qu'elle n'a jamais vue.
Suivi de tendance fondé sur l'ATR : la ligne SuperTrend suit la volatilité.
//@version=5
// SuperTrend (facteur 3, ATR 10) : long en tendance haussiere, plat sinon.
strategy("SuperTrend", overlay=true, pyramiding=0, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.1, process_orders_on_close=true, margin_long=0)
// direction vaut -1 en hausse, +1 en baisse.
[supertrend, direction] = ta.supertrend(3.0, 10)
longSignal = direction < 0
exitSignal = direction > 0
if longSignal
    strategy.entry("Long", strategy.long)
if exitSignal
    strategy.close("Long")
Pas encore jugée par la Lab. Un backtest court sur TradingView n'est pas un verdict : testez-la sur une période scellée qu'elle n'a jamais vue.
Applique l'oscillateur stochastique au RSI : achat quand %K croise %D à la hausse sous 20, sortie quand il le recroise à la baisse au-dessus de 80.
//@version=5
strategy("Stoch RSI", overlay=true)
rsi1 = ta.rsi(close, 14)
k = ta.sma(ta.stoch(rsi1, rsi1, rsi1, 14), 3)
d = ta.sma(k, 3)
if (ta.crossover(k, d) and k < 20)
    strategy.entry("Long", strategy.long)
if (ta.crossunder(k, d) and k > 80)
    strategy.close("Long")
Pas encore jugée par la Lab. Un backtest court sur TradingView n'est pas un verdict : testez-la sur une période scellée qu'elle n'a jamais vue.
Entrée sur cassure du plus haut de 20 périodes quand l'ATR dépasse sa moyenne, stop à 2 ATR.
//@version=5
strategy("ATR Breakout", overlay=true)
atr = ta.atr(14)
upper = ta.highest(high, 20)
if (close > upper[1] and atr > ta.sma(atr, 20))
    strategy.entry("Long", strategy.long)
    strategy.exit("Exit", "Long", stop=close - atr * 2)
Pas encore jugée par la Lab. Un backtest court sur TradingView n'est pas un verdict : testez-la sur une période scellée qu'elle n'a jamais vue.
Achat quand le prix repasse au-dessus du VWAP, sortie quand il repasse en dessous.
//@version=5
strategy("VWAP Bounce", overlay=true)
vwapVal = ta.vwap(hlc3)
if (close > vwapVal and close[1] < vwapVal[1])
    strategy.entry("Long", strategy.long)
if (close < vwapVal and close[1] > vwapVal[1])
    strategy.close("Long")
Pas encore jugée par la Lab. Un backtest court sur TradingView n'est pas un verdict : testez-la sur une période scellée qu'elle n'a jamais vue.
Double condition : le RSI sort de la survente ET le prix est au-dessus de l'EMA 50.
//@version=5
strategy("RSI + EMA Combo", overlay=true)
rsiVal = ta.rsi(close, 14)
ema50 = ta.ema(close, 50)
if (ta.crossover(rsiVal, 30) and close > ema50)
    strategy.entry("Long", strategy.long)
if (rsiVal > 70 or close < ema50)
    strategy.close("Long")
Pas encore jugée par la Lab. Un backtest court sur TradingView n'est pas un verdict : testez-la sur une période scellée qu'elle n'a jamais vue.
Reste investi tant que la clôture mensuelle dépasse sa moyenne à 10 mois, sort en dessous. À utiliser en mensuel.
//@version=5
strategy("Faber 10-Month Timing", overlay=true, pyramiding=0, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.1, process_orders_on_close=true, margin_long=0)
smaVal = ta.sma(close, 10)
if (close > smaVal)
    strategy.entry("Long", strategy.long)
if (close < smaVal)
    strategy.close("Long")
Pas encore jugée par la Lab. Un backtest court sur TradingView n'est pas un verdict : testez-la sur une période scellée qu'elle n'a jamais vue.

5 stratégies de tendance célèbres, exportées en Pine par la Lab, avec leur verdict

Réglages d'origine de la source, jugés en walk-forward (4 plis, 2019-2025, deux marchés jamais ouverts par la famille, frais 10 pb). Aucune ne bat l'achat-conservation sur plusieurs cycles. Chaque Pine est l'export TradingView exact de la règle jugée, produit par la Lab (sans inputs, journal des trades dans les Pine Logs).

Recherche sur données publiques passées ; ni preuve scellée ni conseil d'investissement. Méthode et limites : l'article complet.

TSMOM 12M long/short · vol target 40%
TREND VERDICT LAB : NON CONCLUANT
Long si le prix a monté sur 12 mois, short sinon. Gagne le pli baissier, rend tout dans les hausses. (Moskowitz, Ooi, Pedersen 2012 · BTC + ETH 1d)
Chaîne hors éch.
+186 %
Achat-conservation
+1852 %
Plis gagnés
1/4
Évén. indép.
1 (579)
Ne bat pas l'achat-conservation sur 2019-2025. Règle jugée (ArenaScript) : entry: ROC(12, 1M) > 0 · short: ROC(12, 1M) < 0 · size: vol_target 40% window 60
Pine v5 · tv_exact_v1 · sha256 b70f42171725509bca001035d338ac333b67db529f05bc67c3210a1705ffc30f
Faber 10M (monthly)
TREND VERDICT LAB : NON CONCLUANT
Long au-dessus de la moyenne 10 mois, cash en dessous. Ne réduit même pas la baisse max sur LTC et XLM. (Faber 2007 · LTC + XLM 1d)
Chaîne hors éch.
+5,4 %
Achat-conservation
+496,6 %
Plis gagnés
1/4
Évén. indép.
1 (383)
Ne bat pas l'achat-conservation sur 2019-2025. Règle jugée (ArenaScript) : entry: price > SMA(10, 1M) · exit: price < SMA(10, 1M) · monthly
Pine v5 · tv_exact_v1 · sha256 8c0fab06e6183ae813f0e9de51ca27e538f9bbc36db5f9c4a7a8f2a562a251a8
Donchian ensemble 9 windows · vol target 25%
TREND VERDICT LAB : NON CONCLUANT
Neuf canaux votent. La meilleure protection dans le pli baissier (−8,8 % contre −55,2 %). (Zarattini, Pagani, Barbon 2025 (approx.) · TRX + ETC 1d)
Chaîne hors éch.
+368,2 %
Achat-conservation
+1207,8 %
Plis gagnés
1/4
Évén. indép.
1 (510)
Ne bat pas l'achat-conservation sur 2019-2025. Règle jugée (ArenaScript) : entry: VOTE(DONCHIAN_TREND(5…360)) >= 5 of 9 · size: vol_target 25% window 90
Pine v5 · tv_exact_v1 · sha256 72347b054eb66eca5e1a18603bdd1c13b05ecc25c0b511bd5410b79e9b1642a2
SMA 200d defense · vol target 40% (4h)
TREND VERDICT LAB : NON CONCLUANT
La plus solide sur le risque : baisse max ÷1,7 (BTC) et ÷1,8 (ETH), DSR 98,9 %. Perd le pli 2019-2020. (Moreira, Muir 2017 · BTC + ETH 4h)
Chaîne hors éch.
+766,7 %
Achat-conservation
+2012,9 %
Plis gagnés
1/4
Évén. indép.
2 (1 320)
Ne bat pas l'achat-conservation sur 2019-2025. Règle jugée (ArenaScript) : entry: price > SMA(200, 1d) · exit: price < SMA(200, 1d) · size: vol_target 40% window 360
Pine v5 · tv_exact_v1 · sha256 51c7a00188d5cb16a25a7070f39bbefe364e64f5b04028937e87fa307bcb213a
EMA 50/200 long/short
TREND VERDICT LAB : MIRAGE
Short symétrique à pleine taille : ruine complète sur ATOM sur la série entière. (Murphy 1999 · ATOM + LINK 1d)
Chaîne hors éch.
-93,1 %
Achat-conservation
-21,0 %
Plis gagnés
1/4
Évén. indép.
1 (470)
Ne bat pas l'achat-conservation sur 2019-2025. Règle jugée (ArenaScript) : long: EMA(50) > EMA(200) · short: EMA(50) < EMA(200) · size: 100%
Pine v5 · tv_exact_v1 · sha256 8c76604425d0aadb7a18ff43cf8134f14ba53ebe307714032e690bc98f6a1ce5
TradingView Starter
Choisissez votre parcours de compte. Vérifiez votre stratégie séparément.
Votre premier graphique et votre première alerte de prix ne nécessitent pas le Lab. Une preuve Strategy Arena reste nécessaire avant de faire confiance à une stratégie ou de l'exporter.
L'attribution partenaire concerne les nouveaux utilisateurs et les achats web éligibles. Strategy Arena peut recevoir une commission ; commencer avec un compte gratuit ne demande aucun paiement.
Je n’ai jamais eu de compte · Commencer gratuitement J’ai déjà un compte Vérifier une stratégie
Autres parcours TradingView
Revue Pine sous contrôle de preuve

Soumettez Votre Pine Script

Une stratégie qui bat le cash, le Buy & Hold et un filtre 200 jours sur un holdout scellé ? Soumettez-la. Battre le HODL YouTube en bear ne suffit pas.

Soumettre & Tester Votre Script

En soumettant, vous acceptez que votre strategie puisse etre analysee pour améliorer nos systèmes IA.

Comment exécuter votre Pine Script sur TradingView

Une stratégie Pine ne sert qu'une fois visible sur un graphique live. Voici l'ordre exact qui évite les pièges habituels.

  1. Testez d'abord le Pine gratuitement dans le Lab — verdict scellé, sans compte.
  2. Créez un compte TradingView (le plan gratuit suffit pour tracer).
  3. Ouvrez l'éditeur Pine et collez votre script.
  4. Ajoutez vos alertes, puis relisez le rapport Strategy Arena exact avant de vous y fier.

TradingView gratuit ou payant ?

Le compte web gratuit suffit pour tracer un script et créer quelques alertes. Les plans payants ajoutent des indicateurs, alertes et dispositions — ils se décident sur TradingView et ne changent jamais un verdict Strategy Arena. Strategy Arena n'est pas un courtier et ne place aucun ordre réel.

Pourquoi tester avant d'exécuter

Un backtest naïf surestime presque toujours une stratégie. Le Lab utilise un holdout chronologique scellé et des diagnostics d'incertitude pour réduire le sur-apprentissage avant qu'un script n'atteigne un graphique live.