Cet indicateur vise à identifier les principaux niveaux de support et de résistance sur le marché et à dessiner des nuages de support et de résistance sur le graphique pour représenter les zones entre ces points.
La logique de base de cet indicateur est de calculer statistiquement les prix les plus élevés et les plus bas sur une certaine période de temps afin d'identifier les niveaux de soutien et de résistance potentiels.
Les quatre lignes ci-dessus constituent les points clés du nuage de support/résistance de cet indicateur.
Lorsque le prix de clôture est au-dessus de la ligne 0.618, la couleur de la barre est blanche, et inversement lorsqu'il est en dessous de la ligne 0.382, la couleur de la barre est noire, qui appartient aux signaux de vente et d'achat.
Cet indicateur de nuage de support/résistance présente les avantages suivants:
Il convient de noter que cet indicateur comporte également des lacunes et des risques inhérents:
Cet indicateur peut être encore optimisé dans les aspects suivants:
Cet indicateur de nuage de support/résistance intègre des fonctions d'analyse statistique et d'affichage graphique. Il peut aider efficacement à déterminer les principaux niveaux de support/résistance et les ruptures. Cependant, il ne peut pas compter uniquement sur lui-même. Il doit être combiné avec d'autres indicateurs multiples pour maximiser son utilité. Il peut être mis à niveau à partir de paramètres adaptatifs, de combinaisons de filtrage multi-indicateurs et d'autres dimensions pour améliorer la praticité.
/*backtest start: 2024-01-10 00:00:00 end: 2024-01-17 00:00:00 period: 15m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("[IND] rang3r", overlay=true) entP = input(50, "Entry Period: ") exP = input(25, "Exit period: ") sensitivity = input(0.9999, "Sensitivity") periodHigh = 0.0 periodLow = 0.0 epH = 0.0 epL = 0.0 //Entry Trades for i = 1 to (entP+1) if i == 1 periodHigh:=high[i] else if periodHigh < high[i] periodHigh:=high[i] for i = 1 to (entP+1) if i == 1 periodLow:=low[i] else if periodLow > low[i] periodLow:=low[i] s = high[1] > periodHigh*sensitivity and open > close //and (close[1] > open[1] ? open[1] : close[1]) > close l = low[1] < periodLow*(1/sensitivity) and close > open //and (close[1] > open[1] ? close[1] : open[1]) < close strategy.entry("long", strategy.long, when=s) strategy.entry("short", strategy.short, when=l) bgcolor(l ? green : na) bgcolor(s ? red : na) periodCenter = (periodHigh+periodLow)/2 period0618 = (periodLow)+(periodHigh-periodLow)*0.618 period0382 = (periodLow)+(periodHigh-periodLow)*0.382 cloud1 = plot(period0382, color=#494949) cloud2 = plot(period0618, color=#494949) fill(cloud1, cloud2, color=#d8d8d8) plot(periodHigh, color=#d81751) plot(periodLow, color=#0daa20) //plot(periodCenter, color=#494949) bc = close > period0618 ? white : (close < period0382 ? black : na) barcolor(bc)