☁️ Cluster Indicateur Japonais

Ichimoku Cloud — Pine Script Complet

Par Dan Machado · 8 min · Code copier-coller

Ichimoku Kinko Hyo (一目均衡表) signifie littéralement « tableau d’équilibre en un coup d’œil ». Développé par Goichi Hosoda en 1969, c’est l’indicateur le plus complet jamais conçu — il donne tendance, support/résistance, momentum, et signaux d’entrée en un seul outil. Apparence complexe, logique simple une fois comprise.

🎯 5 Composants Clés

1. Tenkan-sen (転換線) : ligne conversion, MA(9) du milieu high/low
2. Kijun-sen (基準線) : ligne base, MA(26)
3. Senkou Span A (先行スパンA) : moyenne Tenkan + Kijun, projetée 26 bougies devant
4. Senkou Span B (先行スパンB) : MA(52), projetée 26 bougies devant
5. Chikou Span (遅行スパン) : prix actuel projeté 26 bougies en arrière

Le « Cloud » (Kumo) = zone entre Senkou A et B. C’est le cœur du système.

Code Pine Script v5 Complet

▸ Pine Script v5 · Ichimoku Cloud Complet
//@version=5
indicator("Ichimoku Cloud Complet - IA Trader Pro", overlay=true)

// === INPUTS ===
conversionPeriods = input.int(9, "Tenkan-sen Period", minval=1)
basePeriods = input.int(26, "Kijun-sen Period", minval=1)
laggingSpan2Periods = input.int(52, "Senkou Span B Period", minval=1)
displacement = input.int(26, "Displacement", minval=1)

showCloud = input.bool(true, "Show Cloud", group="Visual")
showChikou = input.bool(true, "Show Chikou Span", group="Visual")
showSignals = input.bool(true, "Show TK Cross Signals", group="Visual")

// === FONCTION DONCHIAN (high + low) / 2 ===
donchian(len) => math.avg(ta.lowest(len), ta.highest(len))

// === CALCULS ICHIMOKU ===
tenkan = donchian(conversionPeriods)
kijun = donchian(basePeriods)
senkouA = math.avg(tenkan, kijun)
senkouB = donchian(laggingSpan2Periods)

// === PLOTS LIGNES ===
plot(tenkan, "Tenkan-sen", color=#448AFF, linewidth=2)
plot(kijun, "Kijun-sen", color=#FF5252, linewidth=2)

// === PLOTS CLOUD (KUMO) ===
spanAPlot = plot(showCloud ? senkouA : na, "Senkou Span A",
                color=color.new(#00E676, 50), offset=displacement, linewidth=1)
spanBPlot = plot(showCloud ? senkouB : na, "Senkou Span B",
                color=color.new(#FF5252, 50), offset=displacement, linewidth=1)
fill(spanAPlot, spanBPlot,
     color=senkouA > senkouB ? color.new(#00E676, 85) : color.new(#FF5252, 85),
     title="Kumo Cloud")

// === CHIKOU SPAN ===
plot(showChikou ? close : na, "Chikou Span",
     color=#E040FB, offset=-displacement, linewidth=2)

// === SIGNAUX TK CROSS ===
bullCross = ta.crossover(tenkan, kijun)
bearCross = ta.crossunder(tenkan, kijun)

plotshape(showSignals and bullCross, "TK Bull Cross",
          style=shape.triangleup, location=location.belowbar,
          color=#00E676, size=size.small, text="TK↑", textcolor=color.white)
plotshape(showSignals and bearCross, "TK Bear Cross",
          style=shape.triangledown, location=location.abovebar,
          color=#FF5252, size=size.small, text="TK↓", textcolor=color.white)

// === KUMO BREAKOUT ===
priceAboveCloud = close > senkouA[displacement] and close > senkouB[displacement]
priceBelowCloud = close < senkouA[displacement] and close < senkouB[displacement]

kumoBullBreak = ta.crossover(close, math.max(senkouA[displacement], senkouB[displacement]))
kumoBearBreak = ta.crossunder(close, math.min(senkouA[displacement], senkouB[displacement]))

plotshape(kumoBullBreak, "Kumo Bull Break",
          style=shape.diamond, location=location.belowbar,
          color=#FFD700, size=size.normal, text="KUMO↑", textcolor=color.black)
plotshape(kumoBearBreak, "Kumo Bear Break",
          style=shape.diamond, location=location.abovebar,
          color=#FFD700, size=size.normal, text="KUMO↓", textcolor=color.black)

// === ALERTES ===
alertcondition(bullCross, "TK Bull Cross", "Tenkan crossed above Kijun on {{ticker}}")
alertcondition(bearCross, "TK Bear Cross", "Tenkan crossed below Kijun on {{ticker}}")
alertcondition(kumoBullBreak, "Kumo Bull Breakout", "Price broke above Kumo on {{ticker}}")
alertcondition(kumoBearBreak, "Kumo Bear Breakout", "Price broke below Kumo on {{ticker}}")

// === DASHBOARD TABLE ===
var table dashboard = table.new(position.top_right, 2, 6,
                                bgcolor=color.new(#06090F, 10), border_width=1)
if (barstate.islast)
    table.cell(dashboard, 0, 0, "Élément", text_color=color.white, bgcolor=color.new(#E040FB, 60))
    table.cell(dashboard, 1, 0, "Statut", text_color=color.white, bgcolor=color.new(#E040FB, 60))
    
    cloudColor = senkouA > senkouB ? "🟢 BULL" : "🔴 BEAR"
    table.cell(dashboard, 0, 1, "Cloud", text_color=color.white, bgcolor=color.new(#06090F, 50))
    table.cell(dashboard, 1, 1, cloudColor,
              text_color=senkouA > senkouB ? color.green : color.red,
              bgcolor=color.new(#06090F, 50))
    
    pricePos = priceAboveCloud ? "↑ Au-dessus" : priceBelowCloud ? "↓ En-dessous" : "= Dans"
    table.cell(dashboard, 0, 2, "Prix vs Cloud", text_color=color.white, bgcolor=color.new(#06090F, 50))
    table.cell(dashboard, 1, 2, pricePos,
              text_color=priceAboveCloud ? color.green : priceBelowCloud ? color.red : color.yellow,
              bgcolor=color.new(#06090F, 50))
    
    tkPos = tenkan > kijun ? "↑ Bull" : "↓ Bear"
    table.cell(dashboard, 0, 3, "TK Relation", text_color=color.white, bgcolor=color.new(#06090F, 50))
    table.cell(dashboard, 1, 3, tkPos,
              text_color=tenkan > kijun ? color.green : color.red,
              bgcolor=color.new(#06090F, 50))
    
    chikouPos = close > close[displacement] ? "↑ Clear" : "↓ Bloqué"
    table.cell(dashboard, 0, 4, "Chikou", text_color=color.white, bgcolor=color.new(#06090F, 50))
    table.cell(dashboard, 1, 4, chikouPos,
              text_color=close > close[displacement] ? color.green : color.red,
              bgcolor=color.new(#06090F, 50))
    
    // Signal global
    bullishAll = priceAboveCloud and tenkan > kijun and senkouA > senkouB and close > close[displacement]
    bearishAll = priceBelowCloud and tenkan < kijun and senkouA < senkouB and close < close[displacement]
    signal = bullishAll ? "🟢 STRONG BUY" : bearishAll ? "🔴 STRONG SELL" : "⚪ NEUTRE"
    table.cell(dashboard, 0, 5, "Signal", text_color=color.white, bgcolor=color.new(#06090F, 50))
    table.cell(dashboard, 1, 5, signal,
              text_color=bullishAll ? color.green : bearishAll ? color.red : color.yellow,
              bgcolor=color.new(#06090F, 50))

Comment Interpréter le Dashboard

Le tableau coin droit montre 5 éléments :

  1. Cloud BULL/BEAR : direction Senkou A vs B
  2. Prix vs Cloud : au-dessus = bullish, en-dessous = bearish, dans = chop
  3. TK Relation : Tenkan au-dessus de Kijun = bullish momentum
  4. Chikou : prix actuel vs prix 26 bougies plus tôt
  5. Signal global : STRONG BUY si tous 4 alignés bullish, STRONG SELL si tous bearish, NEUTRE sinon

Stratégies Ichimoku

Stratégie 1 : TK Cross (Débutants)

  • BUY : Tenkan croise au-dessus de Kijun
  • SELL : Tenkan croise au-dessous de Kijun
  • Win rate moyen : ~55%
  • Avantage : signaux fréquents
  • Désavantage : beaucoup de faux signaux dans chop

Stratégie 2 : Kumo Breakout (Intermédiaire)

  • BUY : prix casse au-dessus du Cloud (Kumo)
  • SELL : prix casse au-dessous du Cloud
  • Win rate : ~62%
  • Avantage : signaux puissants, moins fréquents
  • Désavantage : peut entrer tard dans le move

Stratégie 3 : Confluence Complète (Pro)

  • BUY uniquement si TOUT est aligné :
    • Prix au-dessus du Cloud
    • Cloud futur bullish (Span A > Span B)
    • Tenkan > Kijun
    • Chikou Span « clear » (au-dessus prix 26 bougies plus tôt)
  • Win rate : ~70%
  • Trades très peu fréquents mais haute qualité
  • Ratio R:R typique 1:3+

Avertissements

⚠️ Limitations Ichimoku

1. Ne fonctionne pas sur V75 — indices synthétiques aléatoires, Ichimoku trend-based
2. Lag inhérent : moyennes lentes, signaux retardés
3. Chop kills : marchés sans tendance produisent faux signaux
4. Visuel complexe : 5 lignes simultanées, peut être confus
5. Pas pour scalping : timeframes M1-M5 = trop bruyants

Best pour : H1, H4, D1 sur forex majeurs, or, BTC, indices boursiers réels.

Pour Traders d’Afrique Francophone

🌍 Recommandations

1. USD/XOF stable : peu utile (peg fixe), peu de mouvement
2. Or (XAU/USD H4) : très efficace, ~70% win rate
3. EUR/USD H1 : excellent en sessions Londres
4. BTC/USD D1 : Ichimoku populaire en crypto
5. Évitez V75 : Ichimoku ne fonctionne pas sur synthétiques aléatoires

🚀 Testez Ichimoku sur Deriv MT5 démo (forex + XAU) :

Ouvrir Compte Démo →

Lectures Connexes

DM

Dan Machado

Fondateur IA Trader Pro · Trader Ichimoku 4+ ans

⚠️ Avertissement : Ichimoku ne garantit pas profits. Toujours backtester avant live. Trading dérivés = risque élevé. Deriv régulé MFSA/Vanuatu. Contient des liens d’affiliation. Avertissement complet.

Publications similaires