Support & Resistance Power Channel

Support & Resistance Power Channel

One-line summary:
A dynamic support/resistance channel that highlights recent extremes, projects actionable zones forward with ATR-based thickness, and quantifies “Buy vs. Sell Power” to gauge who’s in control.

1) What This Indicator Does

This tool builds a power channel using the highest high and lowest low over a configurable lookback. It then expands these bounds into support/resistance areas using a volatility buffer (ATR), plots a midline as a quick gravity center, and marks tests (touches/crosses) of the zones. On top of that, it tallies how many candles were bullish vs. bearish in the lookback window, displaying Buy Power and Sell Power as an ultra-fast market read.

At a glance, you get:

  • A resistance area around the recent highest high.

  • A support area around the recent lowest low.

  • A midline for mean-reversion context.

  • Arrows/points to call out zone tests and exact extremes.

  • Buy/Sell Power labels to judge recent pressure.

2) How It Works

a) Lookback highs & lows
The indicator computes:

  • maxVal = highest high over length.

  • minVal = lowest low over length.

  • midVal = (maxVal + minVal) / 2.

b) Volatility buffer (zone thickness)
It uses AverageTrueRange[200] * 0.5 to define half-ATR bands around the top and bottom levels. The result is a thickness that adapts to current volatility:

  • Resistance area spans maxVal + ATR*0.5 to maxVal - ATR*0.5.

  • Support area spans minVal + ATR*0.5 to minVal - ATR*0.5.

c) Forward projection
Zones are drawn from barindex - length (left anchor) to barindex + extend (right projection), so you see the channel ahead of current price action.

d) Buy vs. Sell Power
Over the last length candles, the script counts:

  • Buy Power: bars where close > open.

  • Sell Power: bars where close < open.
    Neutral candles (dojis) are ignored. Labels are placed near the support/resistance to keep context on the same vertical scale.

e) Zone tests & markers

  • A support test is flagged when price reclaims the top of the support band from below (low crosses above topOfSupport), printing an up arrow under the zone.

  • A resistance test is flagged when price rejects from the bottom of the resistance band (high crosses below bottomOfResistance), printing a down arrow above the zone.

  • Exact occurrences of the absolute high and absolute low in the window are point-marked for precision.

3) Inputs & Defaults

  • length (integer)Lookback window for highs/lows and power count.

    • Typical values: 100–200.

    • Example default: length = 130.

  • extend (integer)Forward projection (how far to extend drawings to the right).

    • Typical values: 15–50 depending on chart timeframe.

    • Example default: extend = 30.

  • Colors & opacity (RGBA)

    • Top zone (resistance): tcolR=255, tcolG=0, tcolB=255 (magenta tone)

    • Bottom zone (support): bcolR=0, bcolG=255, bcolB=0 (green tone)

    • Fill transparency: alpha = 60 (soft overlay)
      Tweak to match your chart theme.

  • ATR factor (implicit): AverageTrueRange[200] * 0.5

    • You can change the ATR period (e.g., 100, 50) or the multiplier (e.g., 0.35 / 0.75 / 1.0) to tighten or loosen the zones.

4) Plot Elements & Visual Guide

  • Resistance area:
    Rectangle + top guideline + “▲ #maxVal#” label at the right extension.
    Useful to spot supply and potential exhaustion.

  • Support area:
    Rectangle + lower guideline + “▼ #minVal#” label.
    Useful to spot demand and potential absorption.

  • Midline (dotted):
    Horizontal line at the midpoint between maxVal and minVal with a “▶ #midVal#” label.
    Think of this as a balance point—helpful for mean-reversion bias.

  • Tests:

    • Up arrows appear when price reclaims the top of support from below.

    • Down arrows appear when price rejects the bottom of resistance from above.

    • Points mark the exact bar(s) that set the window’s absolute high/low.

  • Buy/Sell Power labels:
    Plotted to the right of price (halfway into the extension), aligned with the top/bottom zones for instant context.

5) How to Use It in Practice

A) Bounce mindset (range conditions)

  • Prefer longs near support area when tests fire upward (up arrows) and Buy Power ≥ Sell Power.

  • Prefer shorts near resistance area when tests fire downward (down arrows) and Sell Power ≥ Buy Power.

B) Breakout mindset (trend conditions)

  • A strong close beyond the resistance area with rising Buy Power tilts bias to continuation.

  • A decisive close below the support area with rising Sell Power favors continuation down.

C) Midline behavior

  • In choppy markets, price frequently gravitates to the midline after an extreme; watch for reversion trades back to midline when tests appear at the band edges.

  • In strong trends, the midline often flips from magnet to support/resistance. Treat touches as continuation opportunities if power counts agree.

D) Multi-timeframe tips

  • Use a higher timeframe channel for regime and key levels, then execute on a lower timeframe when tests or breakouts align with the bigger picture.

Nothing here is financial advice; this is a visual decision aid. Always test and manage risk.

6) Parameter Tuning & Examples

  • Increase length for smoother, more stable zones (great for higher timeframes or swing bias).

  • Decrease length for reactive zones (scalping/intraday), at the cost of more frequent changes.

  • Increase extend when you want the levels to stay visible further into the right margin (handy for planning).

  • Decrease extend to declutter on smaller screens or lower timeframes.

  • ATR period & factor

    • Shorter ATR or larger multiplierthicker zones (more tolerance, fewer false tests).

    • Longer ATR or smaller multiplierthinner zones (tighter precision, more tests).

  • Color & opacity

    • Keep high contrast but avoid fully opaque fills; the default alpha=60 is a good balance.

7) Trade Ideas & Rules of Thumb (Non-Financial Advice)

  1. Conservative bounce

    • Wait for an up arrow at support (or down arrow at resistance), then a confirming candle in your direction.

    • Stops just outside the zone (e.g., beyond 1× to 1.5× the ATR buffer).

    • Consider partial profits near midline, trail remainder toward the opposite band.

  2. Aggressive breakout

    • Enter on a close beyond a band with power count in favor (Buy>Sell for upside, vice versa for downside).

    • Invalidations: return into the zone or power count flipping the other way.

    • Trail using recent swing structure or a multiple of ATR.

  3. Midline mean-reversion

    • If range-bound and power is balanced, look for fades from band → midline and midline → opposite band.

8) Limitations & Best Practices

  • Trending vs. ranging: Bounces are less reliable in strong trends; consider breakouts + pullbacks instead.

  • Late recognition: A very large length makes zones stable but slower to reflect regime shifts.

  • Noise: Ultra-short settings may cause over-signaling; pair with structure (swings/volume) to filter.

  • Clarity: If the chart feels busy, reduce extend, lighten fills, or hide midline until needed.

9) ProBuilder Code

Share this

Risk disclosure:

No information on this site is investment advice or a solicitation to buy or sell any financial instrument. Past performance is not indicative of future results. Trading may expose you to risk of loss greater than your deposits and is only suitable for experienced investors who have sufficient financial means to bear such risk.

ProRealTime ITF files and other attachments : How to import ITF files into ProRealTime platform?

PRC is also on YouTube, subscribe to our channel for exclusive content and tutorials

  1. lkiklkik • 3 days ago #

    thanks.

  2. roccafragius • 3 days ago #

    Thank a lot Ivan! Is it possible have a bot that enter on the arrow?

  3. roccafragius • 8 hours ago #

    Hello Ivan, is it possible have the bot related to this indicator? Thank you in andvance!!!

    • Iván • 8 hours ago #

      You would have to enter the buy instructions, but I don’t think you’ll get good results without doing anything else.

      if not onmarket and low[1]<=topOfSupport and low>topOfSupport then
      buy 1 contract at market
      endif
      if not onmarket and high[1]>=bottomOfResistance and high>bottomOfResistance then
      sellshort 1 contract at market
      endif

avatar
Register or

Likes

avatar avatar avatar avatar avatar
Related users ' posts
thierrybl Thanks a lot
B-ling1 Hi Vonasi, I love this indicator - good job! Just one question: If I want the monthly OHLC L...
ezman Copy and paste this code, don't work. error!
datageek How do I change the thickness of the line or change it too dashed lines? Kind regards
lkiklkik NE fonctionne pas ( ou plus ... )
Nicolas il faut modifier toutes les références à top par itop et bottom par ibottom. Ces mots étant ...
Vonasi There is another version of this indicator that can plot the same lines but onto an indicato...
Martin35 Hello Vonasi, do you think it is possible with PRT to code with the same principle as on thi...
abhay I am getting a shading between the lines, how can I avoid that. I just want to see lines as ...
Vonasi Delete the 'Color Zone' in the indicator settings window.
mathiasKN Steffen Schmauch • 12/11/2018 # hello Nicolas, can I change the indicator that I only get t...
Nicolas Please open a new topic in the indicator forum and explain there your query, thank you.
upupandaway This seems like a very useful indicator. However, it does not seem to open properly in the c...
mscharstrom Hi @robertogozzi, I really love this indicator. However, I'd like to tinker with it to fit ...
Ahimsa Hi Roberto I cannot thank you enough for writing this code. It could help me more than you ...
Nicolas With PRT v11, you have to click on "price" at the upper left side of the price chart.
Nicolas Sure, I suggest you open a new topic in the forum to discuss about your ideas.
hdgm Bonjour Nicolas, est ce que l'on peut en faire une stratégie de trading automatisée ?
Nicolas Non, pas en utilisant l'indicateur zigzag traditionnel de la plateforme.
Gianluca ok i fixed it i hope is ok like this: //TAC trader zone 10.2 | indicator //01.01.2018 //R...
TAC Bolsa Hello try this new version or view the blog with the new indicators .. https://www.t...
TAC Bolsa Sorry, TAC Trader Zone V2 https://www.tiburonesdealetacorta.com/2018/11/indicador-tac-tr...
FULVIO09 Attualmente non c'è sufficiente volatilità : la condizione "C0 = AverageTrueRange[1500](Clos...
vlongobardo67 Ma io intendevo in backtest ! Scusa non l’ho menzionato.
ciniselloftse salve fulvio .il trading sistem e sempre profittevole?
cervantes2 Buenas tardes y gracias por este magnifico indicador. Queria saber si tienes un proscreener ...
cervantes2 Que busque los valores que la linea verde acaba de cruzar al alza o a la baja
AngelPujalt Tenéis algún screener de este indicador?
Yannick Hello There is a mistake in trailing stop code, I think that this should fix the problem s...
Paul About the trailing-stop the way it's coded. That works for backtesting only, just look at th...
Jonny sorry paul, but system says that is not possible to put many stop order combined...what have...
s00071609 I am using this indicator but it keep crashing as i change the timeframe. For example, chang...
Nicolas in the mean time you can try this one: https://www.prorealcode.com/prorealtime-indicators/ho...
Gianluca Is it possible to have an indicator where those value are as instogram ? and separated? in o...
rb-72 Thank you, area of twist by dilatacion of the price, missing part of the code that is not pu...
Thomas007 after reading your blog now I understand why there is only a part of your code here. I'm try...
Juanjo Hola¡¡ la estrategia se podria aplicar sobre acciones con marco temporal diario?? gracias.
Leo Hi all, I posted a new version of this indicator ( I just add arrows to spot the local maxi...
Trading_En_El_Ibex35 Muchas Gracias por compartir este interesante indicador. Un saludo
xavieralava hola gracias leo
Nicolas https://www.prorealcode.com/topic/ayuda-screener-indicador-perfect-trend-line/#post-51291
Manu L. Bonjour Nicolas, suite a une de mes precedentes demande dans le forum indicateur, j'ai touv...
AntoGH C'est selon moi le meilleur indicateur, que j'ai vu, si vous trouvez mieux dîtes moi car dif...
Wing Not yet but I plan to.
Leo Have a look in this Forum, I got something interesting for you... https://www.prorealcode.co...
Dávid Gyalus Dear Wing, As I am a daytrader, and one of my best friend is a programmer we think your a...
Nicolas Questo indicatore è stato progettato solo per i dati intraday, ma potrebbe essere adattato a...
MrCrous //FR Bonjour, Dans le code ci dessus, je ne comprends pas ce que fait la ligne : linea...
Nicolas J'ai déjà répondu à cette question quelque part sur le forum. Il faudrait chercher un topic ...
Wing Yes, investigate as much as you want. For more insight, you can view the linet1, linet2 etc....
CKW Hi Wing, Thanks for your sharing. I am still trying to breakdown & understand your code...
Wing Hello CKW. No, the parameter, 7 in this case, is used when calling the RSI indicator to ide...

Top