OPEN-SOURCE SCRIPT
Range Breakout Targets [FEELS]

Ranges boxed. Breakouts get a target. Reached targets get ticked.
Every quiet stretch on the chart is drawn as a box. When price closes out of it, the box height is added to the broken edge, and that price is the target. The script then follows the breakout: it marks the retest, ticks the target when price gets there, and drops it if the breakout fails.
What makes it different: ranges are not a box over a fixed number of bars. They are found relative to the chart's own volatility, measured in % of price, so one setting works across markets and price levels. And every target is followed to an end: reached, failed or expired.
BTC/USD, 1D. The September range broke up and its target is still open. The panel shows how far away it is. The two ticked targets came from earlier ranges.

FEATURES
- Ranges found automatically. Tightness is judged against the chart's own recent bars, so there is no fixed width to set. Nothing shorter than 15 bars is drawn.
- A range that is still forming is shown too, with both possible targets: one if it breaks up, one if it breaks down.
- A target on every breakout: the box height added to the broken edge.
- Under each box: how many bars it lasted and how tall it is in %.
- A dotted riser connects each target to the box it came from.
- The retest is marked the first time price returns to the broken edge.
- Open targets are dashed. Reached targets turn solid and get a tick.
- If a breakout fully reverses, its target is dropped right away. It fades, or gets a label if you prefer.
- A panel with the nearest open target above and below price, plus the range price is in. When nothing is open, it shows how the last target ended.
- Six alerts: broken up, broken down, broken either way, retest, target reached, breakout failed.
- Almost every word, colour, size, width, line style and mark can be changed.
HOW IT WORKS
A range is a stretch where the market has gone quiet. To decide what counts as quiet, the script takes the high-to-low range of the last 10 bars as a share of price and compares it with the last 200 bars. The quietest 30% count. Because it works in % and compares the chart with itself, the same settings behave the same way on a slow index, on a coin that is crashing, and on a coin that has just doubled.
A bar counts as quiet when the last 10 bars fit in a narrow band. That means the range actually started 9 bars earlier, so that is where the box starts, but never before the previous box ended. Stretches shorter than 15 bars are ignored. The box covers the highest high and lowest low of the stretch, and it keeps growing to the right as long as price keeps closing inside it. If the market goes quiet again while still inside a box, the box simply widens instead of a second one being drawn on top. A box that doesn't break within 80 bars is removed, because without a breakout there is no target.
Until it breaks, the box is dashed, and next to it are the two prices it points to: the box height above the top and below the bottom. They move while the range is still forming and disappear once it breaks.
The bar that closes outside the box ends it and creates the target: the box height, added once to the edge that broke.
After that, the script watches three things. The first time price comes back to the broken edge, the retest is marked. If price trades through the target from the next bar on (a wick is enough), the line turns solid, runs to that bar and gets a tick. If price instead closes back beyond the far side of the box, the breakout has failed and the target is dropped.
A target that is neither reached nor dropped within 120 bars expires and fades.
Gold, 1D. A range is still forming, so it is dashed, with IF UP and IF DOWN showing where each breakout would lead. On the left, the July range broke up and its target was reached.

HOW TO READ IT
1. The grey box is where the market went sideways. Everything else comes from its height. After the break, the % under the box is exactly the distance to its target.
2. A dashed box hasn't broken yet. IF UP and IF DOWN show where each breakout would lead, and they can still move.
3. Box, riser and target line belong together. The riser shows which box a target came from.
4. A dashed line is an open target, with its price at the right end. A solid line is a reached target. It runs to the bar that reached it, and its price moves to the left end with a tick, over the box it came from, so it stays clear of the candles.
5. A small circle on the edge of a box is the retest.
6. A faint dotted line is a target that didn't make it. No words means the breakout failed. Faded words mean it ran out of time.
7. The panel only lists open targets. A dash means there is none on that side. When nothing is open, the last line shows how the last target ended.
8. Targets, retests and ticks are set on closed bars and never change afterwards. A dashed box and its IF UP / IF DOWN prices keep moving until the range breaks. The panel follows the live bar, so it never lists a target the current candle has already passed.
EUR/USD, 4h. Ticked targets in both directions, retests marked on the broken edges, and an open target below price.

SETTINGS WORTH KNOWING
- Shortest range worth keeping, bars: 15 by default. Raise it to see only the longest ranges.
- Before the break: turn off the forming range or its IF UP / IF DOWN prices if you only want finished ranges.
- Counts as tight when inside the quietest, %: decides how much shows up on your chart. Lower it for fewer, tighter ranges.
- Target sits this many box heights away: 1.0 is the classic measured move. Raise it for a further target.
- A target expires after, bars: how long a target stays open.
- A target dies if price closes back through the far side of its box: turn off to keep failed breakouts open until they expire.
- Look · the words → Where: the box name at the top of the box, in the middle, or above it.
- Look · the mark → Plate: a filled plate under the tick, or around the whole reached target as a badge.
- Look · failed targets → Label them: off by default to keep the chart clean. On, failed targets get a label instead of fading.
- Look · break volume: off by default. Shows the breakout bar's volume as a multiple of the average before it.
HONESTY
The target is simple arithmetic: the range height measured a second time. It is not a forecast, and the script doesn't claim price will get there. It only shows what happened afterwards.
A target is followed for 120 bars and then expires. A tick months later would say nothing about the breakout that made it.
Quiet is measured against the last 200 bars. On a market that has been flat for a very long time, an ordinary stretch can still count as quiet. If that happens on your chart, raise Compared against the last, bars.
Open source. Read it, change it, and tell me if something is wrong.
Every quiet stretch on the chart is drawn as a box. When price closes out of it, the box height is added to the broken edge, and that price is the target. The script then follows the breakout: it marks the retest, ticks the target when price gets there, and drops it if the breakout fails.
What makes it different: ranges are not a box over a fixed number of bars. They are found relative to the chart's own volatility, measured in % of price, so one setting works across markets and price levels. And every target is followed to an end: reached, failed or expired.
BTC/USD, 1D. The September range broke up and its target is still open. The panel shows how far away it is. The two ticked targets came from earlier ranges.
FEATURES
- Ranges found automatically. Tightness is judged against the chart's own recent bars, so there is no fixed width to set. Nothing shorter than 15 bars is drawn.
- A range that is still forming is shown too, with both possible targets: one if it breaks up, one if it breaks down.
- A target on every breakout: the box height added to the broken edge.
- Under each box: how many bars it lasted and how tall it is in %.
- A dotted riser connects each target to the box it came from.
- The retest is marked the first time price returns to the broken edge.
- Open targets are dashed. Reached targets turn solid and get a tick.
- If a breakout fully reverses, its target is dropped right away. It fades, or gets a label if you prefer.
- A panel with the nearest open target above and below price, plus the range price is in. When nothing is open, it shows how the last target ended.
- Six alerts: broken up, broken down, broken either way, retest, target reached, breakout failed.
- Almost every word, colour, size, width, line style and mark can be changed.
HOW IT WORKS
A range is a stretch where the market has gone quiet. To decide what counts as quiet, the script takes the high-to-low range of the last 10 bars as a share of price and compares it with the last 200 bars. The quietest 30% count. Because it works in % and compares the chart with itself, the same settings behave the same way on a slow index, on a coin that is crashing, and on a coin that has just doubled.
A bar counts as quiet when the last 10 bars fit in a narrow band. That means the range actually started 9 bars earlier, so that is where the box starts, but never before the previous box ended. Stretches shorter than 15 bars are ignored. The box covers the highest high and lowest low of the stretch, and it keeps growing to the right as long as price keeps closing inside it. If the market goes quiet again while still inside a box, the box simply widens instead of a second one being drawn on top. A box that doesn't break within 80 bars is removed, because without a breakout there is no target.
Until it breaks, the box is dashed, and next to it are the two prices it points to: the box height above the top and below the bottom. They move while the range is still forming and disappear once it breaks.
The bar that closes outside the box ends it and creates the target: the box height, added once to the edge that broke.
After that, the script watches three things. The first time price comes back to the broken edge, the retest is marked. If price trades through the target from the next bar on (a wick is enough), the line turns solid, runs to that bar and gets a tick. If price instead closes back beyond the far side of the box, the breakout has failed and the target is dropped.
A target that is neither reached nor dropped within 120 bars expires and fades.
Gold, 1D. A range is still forming, so it is dashed, with IF UP and IF DOWN showing where each breakout would lead. On the left, the July range broke up and its target was reached.
HOW TO READ IT
1. The grey box is where the market went sideways. Everything else comes from its height. After the break, the % under the box is exactly the distance to its target.
2. A dashed box hasn't broken yet. IF UP and IF DOWN show where each breakout would lead, and they can still move.
3. Box, riser and target line belong together. The riser shows which box a target came from.
4. A dashed line is an open target, with its price at the right end. A solid line is a reached target. It runs to the bar that reached it, and its price moves to the left end with a tick, over the box it came from, so it stays clear of the candles.
5. A small circle on the edge of a box is the retest.
6. A faint dotted line is a target that didn't make it. No words means the breakout failed. Faded words mean it ran out of time.
7. The panel only lists open targets. A dash means there is none on that side. When nothing is open, the last line shows how the last target ended.
8. Targets, retests and ticks are set on closed bars and never change afterwards. A dashed box and its IF UP / IF DOWN prices keep moving until the range breaks. The panel follows the live bar, so it never lists a target the current candle has already passed.
EUR/USD, 4h. Ticked targets in both directions, retests marked on the broken edges, and an open target below price.
SETTINGS WORTH KNOWING
- Shortest range worth keeping, bars: 15 by default. Raise it to see only the longest ranges.
- Before the break: turn off the forming range or its IF UP / IF DOWN prices if you only want finished ranges.
- Counts as tight when inside the quietest, %: decides how much shows up on your chart. Lower it for fewer, tighter ranges.
- Target sits this many box heights away: 1.0 is the classic measured move. Raise it for a further target.
- A target expires after, bars: how long a target stays open.
- A target dies if price closes back through the far side of its box: turn off to keep failed breakouts open until they expire.
- Look · the words → Where: the box name at the top of the box, in the middle, or above it.
- Look · the mark → Plate: a filled plate under the tick, or around the whole reached target as a badge.
- Look · failed targets → Label them: off by default to keep the chart clean. On, failed targets get a label instead of fading.
- Look · break volume: off by default. Shows the breakout bar's volume as a multiple of the average before it.
HONESTY
The target is simple arithmetic: the range height measured a second time. It is not a forecast, and the script doesn't claim price will get there. It only shows what happened afterwards.
A target is followed for 120 bars and then expires. A tick months later would say nothing about the breakout that made it.
Quiet is measured against the last 200 bars. On a market that has been flat for a very long time, an ordinary stretch can still count as quiet. If that happens on your chart, raise Compared against the last, bars.
Open source. Read it, change it, and tell me if something is wrong.
Skrip open-source
Dengan semangat TradingView yang sesungguhnya, pembuat skrip ini telah menjadikannya sebagai sumber terbuka, sehingga para trader dapat meninjau dan memverifikasi fungsinya. Salut untuk penulisnya! Meskipun Anda dapat menggunakannya secara gratis, perlu diingat bahwa penerbitan ulang kode ini tunduk pada Tata Tertib kami.
💰Free Channel — t.me/FeelsStrategy
🤵For more info contact — t.me/VolodymyrFeels
🔗 Links — feelsstrategy.com/links
🤵For more info contact — t.me/VolodymyrFeels
🔗 Links — feelsstrategy.com/links
Pernyataan Penyangkalan
Informasi dan publikasi ini tidak dimaksudkan, dan bukan merupakan, saran atau rekomendasi keuangan, investasi, trading, atau jenis lainnya yang diberikan atau didukung oleh TradingView. Baca selengkapnya di Ketentuan Penggunaan.
Skrip open-source
Dengan semangat TradingView yang sesungguhnya, pembuat skrip ini telah menjadikannya sebagai sumber terbuka, sehingga para trader dapat meninjau dan memverifikasi fungsinya. Salut untuk penulisnya! Meskipun Anda dapat menggunakannya secara gratis, perlu diingat bahwa penerbitan ulang kode ini tunduk pada Tata Tertib kami.
💰Free Channel — t.me/FeelsStrategy
🤵For more info contact — t.me/VolodymyrFeels
🔗 Links — feelsstrategy.com/links
🤵For more info contact — t.me/VolodymyrFeels
🔗 Links — feelsstrategy.com/links
Pernyataan Penyangkalan
Informasi dan publikasi ini tidak dimaksudkan, dan bukan merupakan, saran atau rekomendasi keuangan, investasi, trading, atau jenis lainnya yang diberikan atau didukung oleh TradingView. Baca selengkapnya di Ketentuan Penggunaan.