[Mehrok]-Relative Strength IndexI have attempted to modify existing RSI Model and add some more features to it. Below are the features.
DC High Line - Basis Donchian Channel concept i have added high line. Period can be selected in indicator options. Usage: Let's say i am tracking 90 day High period of RSI which will be shown with orange line on chart. If this orange line is breached it means RSI has made new high. Basis position of RSI we can determine if need to be in trade or exit.
DC Low Line - Basis Donchian Channel concept i have added low line. Period can be selected in indicator options. Usage: Let's say i am tracking 90 day Low period of RSI which will be shown with aqua line on chart. If this aqua line is breached it means RSI has made new low. Basis position of RSI we can determine if we can enter the trade or not.
DC MID Line - DC High + DC LOW / 2 gives a mid line which act as important resistance or support level.
Buy and Sell Zone: I have added two dotted lines which clearly indicate 55 and 45 levels in RSI. Above 55 is considered as sell zone and below 45 as buy zone. You can change the settings basis your need.
Mid Line: Indicator also show mid line at RSI 50 level which makes easier to understand if RSI is above mid line or below. It improves visualization of the indicator.
In den Scripts nach "donchian" suchen
[kai]MAYou can display various types of moving averages up to 5 lines.
The following moving averages are available
sma, vwma, ema, rma, wma, hma, ssma, jma, dema, tema, trima, t3, tma, lsma, kama, mama, frma, vwap, donchian
The following moving averages are the original moving averages
evma, rvma, wvma, terima, twrima
最大5本までの様々な種類の移動平均線を表示できます
以下の移動平均線が使用可能です
sma, vwma, ema, rma, wma, hma, ssma, jma, dema, tema, trima, t3, tma, lsma, kama, mama, frma, vwap, donchian
以下の移動平均線はオリジナル移動平均線です
evma, rvma, wvma, terima, twrima
Bollinger Bands Trending Reverse StrategyWelcome to yet another script. This script was a lot easier since I was stuck for so long on the Donchian Channels one and learned so much from that one that I could use in this one.
This code should be a lot cleaner compared to the Donchian Channels, but we'll leave that up to the pro's.
This strategy has two entry signals, long = when price hits lower band, while above EMA, previous candle was bearish and current candle is bullish.
Short = when price hits upper band, while below EMA, previous candle was bullish and current candle is bearish.
Take profits are the opposite side's band(lower band for long signals, upper band for short signals). This means our take profit price will change per bar.
Our stop loss doesn't change, it's the difference between entry price and the take profit target divided by the input risk reward.
Efficient Work [LucF]█ OVERVIEW
Efficient Work measures the ratio of price movement from close to close ( resulting work ) over the distance traveled to the high and low before settling down at the close ( total work ). The closer the two values are, the more Efficient Work approaches its maximum value of +1 for an up move or -1 for a down move. When price does not change, Efficient Work is zero.
Higher values of Efficient Work indicate more efficient price travel between the close of two successive bars, which I interpret to be more significant, regardless of the move's amplitude. Because it measures the direction and strength of price changes rather than their amplitude, Efficient Work may be thought of as a sentiment indicator.
█ CONCEPTS
This oscillator's design stems from a few key concepts.
Relative Levels
Other than the centerline, relative rather than absolute levels are used to identify levels of interest. Accordingly, no fixed levels correspond to overbought/oversold conditions. Relative levels of interest are identified using:
• A Donchian channel (historical highs/lows).
• The oscillator's position relative to higher timeframe values.
• Oscillator levels following points in time where a divergence is identified.
Higher timeframes
Two progressively higher timeframes are used to calculate larger-context values for the oscillator. The rationale underlying the use of timeframes higher than the chart's is that, while they change less frequently than the values calculated at the chart's resolution, they are more meaningful because more work (trader activity) is required to calculate them. Combining the immediacy of values calculated at the chart's resolution to higher timeframe values achieves a compromise between responsiveness and reliability.
Divergences as points of interest rather than directional clues
A very simple interpretation of what constitutes a divergence is used. A divergence is defined as a discrepancy between any bar's direction and the direction of the signal line on that same bar. No attempt is made to attribute a directional bias to divergences when they occur. Instead, the oscillator's level is saved and subsequent movement of the oscillator relative to the saved level is what determines the bullish/bearish state of the oscillator.
Conservative coloring scheme
Several additive coloring conditions allow the bull/bear coloring of the oscillator's main line to be restricted to specific areas meeting all the selected conditions. The concept is built on the premise that most of the time, an oscillator's value should be viewed as mere noise, and that somewhat like price, it only occasionally conveys actionable information.
█ FEATURES
Plots
• Three lines can be plotted. They are named Main line , Line 2 and Line 3 . You decide which calculation to use for each line:
• The oscillator's value at the chart's resolution.
• The oscillator's value at a medium timeframe higher than the chart's resolution.
• The oscillator's value at the highest timeframe.
• An aggregate line calculated using a weighed average of the three previous lines (see the Aggregate Weights section of Inputs to configure the weights).
• The coloring conditions, divergence levels and the Hi/Lo channel always apply to the Main line, whichever calculation you decide to use for it.
• The color of lines 2 and 3 are fixed but can be set in the "Colors" section of Inputs.
• You can change the thickness of each line.
• When the aggregate line is displayed, higher timeframe values are only used in its calculation when they become available in the chart's history,
otherwise the aggregate line would appear much later on the chart. To indicate when each higher timeframe value becomes available,
a small label appears near the centerline.
• Divergences can be shown as small dots on the centerline.
• Divergence levels can be shown. The level and fill are determined by the oscillator's position relative to the last saved divergence level.
• Bull/bear markers can be displayed. They occur whenever a new bull/bear state is determined by the "Main Line Coloring Conditions".
• The Hi/Lo (Donchian) channel can be displayed, and its period defined.
• The background can display the state of any one of 11 different conditions.
• The resolutions used for the higher timeframes can be displayed to the right of the last bar's value.
• Four key values are always displayed in the Data Window (fourth icon down to the right of your chart):
oscillator values for the chart, medium and highest timeframes, and the oscillator's instant value before it is averaged.
Main Line Coloring Conditions
• Nine different conditions can be selected to determine the bull/bear coloring of the main line. All conditions set to "ON" must be met to determine the bull/bear state.
• A volatility state can also be used to filter the conditions.
• When the coloring conditions and the filter do not allow for a bull/bear state to be determined, the neutral color is used.
Signal
• Seven different averages can be used to calculate the average of the oscillator's value.
• The average's period can be set. A period of one will show the instant value of the oscillator,
provided you don't use linear regression or the Hull MA as they do not work with a period of one.
• An external signal can be used as the oscillator's instant value. If an already averaged external value is used, set the period to one in this indicator.
• For the cases where an external signal is used, a centerline value can be set.
Higher Timeframes
• The two higher timeframes are named Medium timeframe and Highest timeframe . They can be determined using one of three methods:
• Auto-steps: the higher timeframes are determined using the chart's resolution. If the chart uses a seconds resolution, for example,
the medium and highest resolutions will be 15 and 60 minutes.
• Multiples: the timeframes are calculated using a multiple of the chart's resolution, which you can set.
• Fixed: the set timeframes do not change with the chart's resolution.
Repainting
• Repainting can be controlled separately for the chart's value and the higher timeframe values.
• The default is a repainting chart value and non-repainting higher timeframe values. The Aggregate line will thus repaint by default,
as it uses the chart's value along with the higher timeframes values.
Aggregate Weights
• The weight of each component of the Aggregate line can be set.
• The default is equal weights for the three components, meaning that the chart's value accounts for one third of the weight in the Aggregate.
High Volatility
• This provides control over the volatility filter used in the Main line's coloring conditions and the background display.
• Volatility is determined to be high when the short-term ATR is greater than the long-term ATR.
Colors
• You can define your own colors for all of the oscillator's plots.
• The default colors will perform well on both white and black chart backgrounds.
Alerts
• An alert can be defined for the script. The alert will trigger whenever a bull/bear marker appears in the indicator's display.
The particular combination of coloring conditions and the display of bull/bear markers when you create the alert will thus determine when the alert triggers.
Once the alerts are created, subsequent changes to the conditions controlling the display of markers will not affect the existing alert(s).
• You can create multiple alerts from this script, each triggering on different conditions.
Backtesting & Trading Engine Signal Line
• An invisible plot named "BTE Signal" is provided. It can be used as an entry signal when connected to the PineCoders Backtesting & Trading Engine as an external input.
It will generate an entry whenever a marker is displayed.
█ NOTES
• I do not know for sure if the calculations in Efficient Work are original. I apologize if they are not.
• Because this version of Efficient Work only has access to OHLC information, it cannot measure the total distance traveled through all of a bar's ticks, but the indicator nonetheless behaves in a manner consistent with the intentions underlying its design.
For Pine coders
This code was written using the following standards:
• The PineCoders Coding Conventions for Pine .
• A modified version of the PineCoders MTF Oscillator Framework and MTF Selection Framework .
MTF Oscillator Framework [PineCoders]This framework allows Pine coders to quickly build a complete multi-timeframe oscillator from any calculation producing values around a centerline, whether the values are bounded or not. Insert your calculation in the script and you have a ready-to-publish MTF Oscillator offering a plethora of presentation options and features.
█ HOW TO USE THE FRAMEWORK
1 — Insert your calculation in the `f_signal()` function at the top of the "Helper Functions" section of the script.
2 — Change the script's name in the `study()` declaration statement and the `alertcondition()` text in the last part of the "Plots" section.
3 — Adapt the default value used to initialize the CENTERLINE constant in the script's "Constants" section.
4 — If you want to publish the script, copy/paste the following description in your new publication's description and replace the "OVERVIEW" section with a description of your calculations.
5 — Voilà!
═════════════════════════════════════════════════════════════════════════
█ OVERVIEW
This oscillator calculates a directional value of True Range. When a bar is up, the positive value of True Range is used. A negative value is used when the bar is down. When there is no movement during the bar, a zero value is generated, even if True Range is different than zero. Because the unit of measure of True Range is price, the oscillator is unbounded (it does not have fixed upper/lower bounds).
True Range can be used as a metric for volatility, but by using a signed value, this oscillator will show the directional bias of progressively increasing/decreasing volatility, which can make it more useful than an always positive value of True Range.
The True Range calculation appeared for the first time in J. Welles Wilder's New Concepts in Technical Trading Systems book published in 1978. Wilder's objective was to provide a reliable measure of the effective movement—or range—between two bars, to measure volatility. True Range is also the building block used to calculate ATR (Average True Range), which calculates the average of True Range values over a given period using the `rma` averaging method—the same used in the calculation of another of Wilder's remarkable creations: RSI.
█ CONCEPTS
This oscillator's design stems from a few key concepts.
Relative Levels
Other than the centerline, relative rather than absolute levels are used to identify levels of interest. Accordingly, no fixed levels correspond to overbought/oversold conditions. Relative levels of interest are identified using:
• A Donchian channel (historical highs/lows).
• The oscillator's position relative to higher timeframe values.
• Oscillator levels following points in time where a divergence is identified.
Higher timeframes
Two progressively higher timeframes are used to calculate larger-context values for the oscillator. The rationale underlying the use of timeframes higher than the chart's is that, while they change less frequently than the values calculated at the chart's resolution, they are more meaningful because more work (trader activity) is required to calculate them. Combining the immediacy of values calculated at the chart's resolution to higher timeframe values achieves a compromise between responsiveness and reliability.
Divergences as points of interest rather than directional clues
A very simple interpretation of what constitutes a divergence is used. A divergence is defined as a discrepancy between any bar's direction and the direction of the signal line on that same bar. No attempt is made to attribute a directional bias to divergences when they occur. Instead, the oscillator's level is saved and subsequent movement of the oscillator relative to the saved level is what determines the bullish/bearish state of the oscillator.
Conservative coloring scheme
Several additive coloring conditions allow the bull/bear coloring of the oscillator's main line to be restricted to specific areas meeting all the selected conditions. The concept is built on the premise that most of the time, an oscillator's value should be viewed as mere noise, and that somewhat like price, it only occasionally conveys actionable information.
█ FEATURES
Plots
• Three lines can be plotted. They are named Main line , Line 2 and Line 3 . You decide which calculation to use for each line:
• The oscillator's value at the chart's resolution.
• The oscillator's value at a medium timeframe higher than the chart's resolution.
• The oscillator's value at the highest timeframe.
• An aggregate line calculated using a weighed average of the three previous lines (see the Aggregate Weights section of Inputs to configure the weights).
• The coloring conditions, divergence levels and the Hi/Lo channel always apply to the Main line, whichever calculation you decide to use for it.
• The color of lines 2 and 3 are fixed but can be set in the "Colors" section of Inputs.
• You can change the thickness of each line.
• When the aggregate line is displayed, higher timeframe values are only used in its calculation when they become available in the chart's history,
otherwise the aggregate line would appear much later on the chart. To indicate when each higher timeframe value becomes available,
a small label appears near the centerline.
• Divergences can be shown as small dots on the centerline.
• Divergence levels can be shown. The level and fill are determined by the oscillator's position relative to the last saved divergence level.
• Bull/bear markers can be displayed. They occur whenever a new bull/bear state is determined by the "Main Line Coloring Conditions".
• The Hi/Lo (Donchian) channel can be displayed, and its period defined.
• The background can display the state of any one of 11 different conditions.
• The resolutions used for the higher timeframes can be displayed to the right of the last bar's value.
• Four key values are always displayed in the Data Window (fourth icon down to the right of your chart):
oscillator values for the chart, medium and highest timeframes, and the oscillator's instant value before it is averaged.
Main Line Coloring Conditions
• Nine different conditions can be selected to determine the bull/bear coloring of the main line. All conditions set to "ON" must be met to determine the bull/bear state.
• A volatility state can also be used to filter the conditions.
• When the coloring conditions and the filter do not allow for a bull/bear state to be determined, the neutral color is used.
Signal
• Seven different averages can be used to calculate the average of the oscillator's value.
• The average's period can be set. A period of one will show the instant value of the oscillator,
provided you don't use linear regression or the Hull MA as they do not work with a period of one.
• An external signal can be used as the oscillator's instant value. If an already averaged external value is used, set the period to one in this indicator.
• For the cases where an external signal is used, a centerline value can be set.
Higher Timeframes
• The two higher timeframes are named Medium timeframe and Highest timeframe . They can be determined using one of three methods:
• Auto-steps: the higher timeframes are determined using the chart's resolution. If the chart uses a seconds resolution, for example,
the medium and highest resolutions will be 15 and 60 minutes.
• Multiples: the timeframes are calculated using a multiple of the chart's resolution, which you can set.
• Fixed: the set timeframes do not change with the chart's resolution.
Repainting
• Repainting can be controlled separately for the chart's value and the higher timeframe values.
• The default is a repainting chart value and non-repainting higher timeframe values. The Aggregate line will thus repaint by default,
as it uses the chart's value along with the higher timeframes values.
Aggregate Weights
• The weight of each component of the Aggregate line can be set.
• The default is equal weights for the three components, meaning that the chart's value accounts for one third of the weight in the Aggregate.
High Volatility
• This provides control over the volatility filter used in the Main line's coloring conditions and the background display.
• Volatility is determined to be high when the short-term ATR is greater than the long-term ATR.
Colors
• You can define your own colors for all of the oscillator's plots.
• The default colors will perform well on both white and black chart backgrounds.
Alerts
• An alert can be defined for the script. The alert will trigger whenever a bull/bear marker appears in the indicator's display.
The particular combination of coloring conditions and the display of bull/bear markers when you create the alert will thus determine when the alert triggers.
Once the alerts are created, subsequent changes to the conditions controlling the display of markers will not affect the existing alert(s).
• You can create multiple alerts from this script, each triggering on different conditions.
Backtesting & Trading Engine Signal Line
• An invisible plot named "BTE Signal" is provided. It can be used as an entry signal when connected to the PineCoders Backtesting & Trading Engine as an external input.
It will generate an entry whenever a marker is displayed.
Look first. Then leap.
Wilder's Volatility Trailing Stop Strategy with various MA'sFor Educational Purposes. Results can differ on different markets and can fail at any time. Profit is not guaranteed.
This only works in a few markets and in certain situations. Changing the settings can give better or worse results for other markets. This strategy is based on Wilder's Volatility System. It is an ATR trailing stop that is used for long term trends. This strategy focuses on the trailing stop alone and goes long and short only when it goes above or below the trailing line. It is similar to Donchian channels except it does not include the certain period channel breakout, only the trailing signal. This is only the trailing stop and an attempt to show how well it works standalone as Wilder described.
In his book, Wilder recommends a multiplier of 2.8-3.1 and an ATR lookback of 7 periods along with a running moving average or otherwise known as Wilder's moving average. The calculation and programming part for the trailing stop varies everywhere. I opted to keep it as simple and accurate as I could think of and interpret from the book. The variations to these types of indicators are numerous unfortunately, but Wilder seems to be the original author of ATR and this ATR-based trailing stop. In his book he says to use the significant closing price or highest/lowest closing price for the calculation part but I also included the option of choosing the highest high and lowest low, and the option to choose various moving averages in case anyone wants to experiment.
Comparing this and Donchian channels, it seems that a 2.5 multiplier is somewhat similar to the middle band of DCs and a 3.0 multiplier is somewhat similar to a double length middle band of DCs. It's hard to say which is the better trailing stop for a long term strategy. It's hard to beat the simplicity of DCs but maybe some might find a need for more inputs in a trailing stop or maybe an ATR based one like Wilder's can work better depending on what setting or strategy it's used in.
Noro's RiskDonchian StrategyThe strategy uses Donchian price channel . The channel is shown in blue lines. All other lines use Donchian channel too. The red line is the center line between the channel lines. The lime line is a few percent further away. The percentage is set by the user in the strategy settings.
Lines
Blue line - to open position using market stop order
Lime line - take-profit (limit order)
Red line - stop-loss (market stop order, trailing-stop)
For
- BTC /USD, XBT/USD, ETH/USD (need USD)
- timeframe: 1h or 4h
ChannelsBreakoutThis script allows you to intercept price channel breakouts (Donchian channel) in a bullish perspective. Applicable both on Equities/ETFs and on Futures (Index Futures).
We open a position when closes crosses the upper channel. The trade ends with a trailing associated with a fast lower Donchian or a monetary stop loss.
It is an educational code and does not constitute a solicitation for public savings.
DonDonAim of this indicator is to detect trend and support more easy
first I use the fib donchian script that i publish sometime ago
next is speacial trend line based on modiffied bollinger and donchian channel
last add info panel so when close cross the basis line up the trend wil be green in the info panel , if cross down the trend will be in red
to this template we can add more indicator but i just keep this simple
Surfing Wave [ChuckBanger]An interesting little script... It utilize Moving Averages with a set multiplier and an offset to locate strong trends and possible future support - resistance. I also include a Donchian wave channel.
The interesting thing with Donchian part is it lines up pretty well with fibonacci retracement
IFTS+TS Strategy OverlayInverse Fisher transform on stochastic with Hull MA and Donchian Channels with oversell/overbuy levels and dynamic trailing stop
Options:
Fixed trailing stop
Dynamic, based on ATR trailing stop
Re-enter after trailing stop
Includes Hull MA
Hull MA filtration for re-entering after trailing stop
Donchian channels, with overbuy/oversell levels
No repaints
Percentile Trend Channel [DW]This is an experimental study designed to identify the trend of price action over a specified period using percentiles.
First, the 50th percentile is calculated over the sampling period using the nearest rank method. I've found that this calculation is useful as a proxy for moving averages and other filters of that class.
Next, the channel levels are calculated. In this study, there are three channel methods to choose from:
-Percentile Donchian, which calculates Donchian Channels using the 100th and 0th percentile ranks
-Percentile Keltner, which calculates the 50th percentile true range multiplied by a specified amount, then adds it to and subtracts it from the 50th percentile
-Percentile Bollinger, which calculates 50th percentile standard deviation multiplied by a specified amount, then adds it to and subtracts it from the 50th percentile
I also included a squeeze box option within this script, which is derived from my original Squeeze Box tool.
This option detects squeezes in the specified channel's range by a specific percentage, and plots the channel values where the squeeze begins.
The box also has a range multiplier, which can be used to expand or contract its range.
Custom bar colors are included. The color scheme is based on the perceived trend over the specified sampling period.
Breakout Scalper (Session)This is a twist on my on my Breakout Scalper strategy that limits trading to a user-configurable session
Find the original "Continuous" version of the scalper here:
The breakout scalper is based on "slow" and "fast" donchian periods. In this version, the "slow" donchian is in fact the Day's high/low. This important difference means that we will always be entering our trades at the day's high or low, so you are exposed to the price making new highs/lows but not to oscillations within the day's range.
Furthermore, the scalper is modified to only enter trades after the start of the user-configured session. Any open trades are closed at the end of the user-configured session. The default session is set to 10:00 AM to 3:30 PM because that's when I like to trade.
BB After CloseThis is just an idea I am toying with.
Enforce patience by triggering after the previous candle close. This way you enter on a confirmation.
I like the way this pairs with a donchian channel, and also I just like donchian channels
How I would trade this, say for a long dip buy:
1. Do not trade the first candle of the day. Close any open positions at the end of the day.
2. Generally speaking, Green/Yellow are bullish signals and Red/Orange are bearish signals
3. The diamond is the signal, and the square is the confirmation of the signal. So generally go with the square as your signal.
4. The cross (which looks like a plus sign) is the "happy" profit stop and the xcross (which is an 'x' sign) is the less happy loss stop. These stop symbols may show up frequently in strong trends - in these situations, use them as a sign of trend as well.
CM_Enhanced_Ichimoku Cloud-V5.2New version of the improved Ichimoku cloud
Original by Chris Moody, great work.
This indicator is a colorized Ichimoku with colors that you can change for any component. Not many changes between 5.1 and 5.2, I fixed some labels and the crossing detection, as well as the default colors.
There's not much more left we can do without radically changing the original Ichimoku. We could implement full-multiframe but you can already do that by adding several times this indicator and changing the periods.
Displayed components:
Kijun-Sen: middle of the highest/lowest prices during the last 26 periods
Tenkan-Sen: middle of the highest/lowest prices during the last 9 periods
Senkou Span A (SSA) : average of Kijun and Tenkan, projected 26 periods ahead
Senkou Span B (SSB): middle of the highest/lowest prices during the last 52 periods, and projected 26 periods ahead
Chikou Span: the closing price projected 26 periods behind.
Kumo: the cloud itself, the area between SSA/SSB.
The script also provides indication of the crossings between Tenkan and Kijun, some trading strategies are based upon that. There is also a separate Kijun with its own period for those you'd like to have this information at another timeframe. I removed the third Kijun that was in version 5.1, I don't think it was widely used and made the configuration screen too crowded. If you really need this, take a look at Donchian indicators, the Kijun is basically a Donchian on 26 periods.
Chris Moody Version (v5):
Trend Tracer [AlgoAlpha]🟠 OVERVIEW
This tool builds a two-stage trend model that reacts to structure shifts while also showing how strong or weak the move is. It uses a mid-price band (from the highest high and lowest low over a lookback) and applies two Supertrend passes on top of it. The first pass smoothens the basis. The second pass refines that direction and produces the final trail used for signals. A gradient fill between the two trails uses RSI of price-to-trail distance to show when price is stretched or cooling off. The aim is to give traders a simple way to read trend alignment, pressure, and early turns without guessing.
🟠 CONCEPTS
The script starts with a mid-range basis. This is the average of the rolling highest high and lowest low. It acts as a stable structure reference instead of raw close or typical price. From there, two Supertrend layers are applied:
• The first Supertrend uses a shorter ATR period and lower factor. It reacts faster and sets the main regime.
• The second Supertrend uses a slightly longer ATR and higher factor. It filters noise, waits for confirmed continuation, and generates the signal line.
The interaction between these trails matters. The outer Supertrend provides context by defining the broader regime. The inner Supertrend provides timing by flipping earlier and marking possible shifts. The gradient fill uses RSI of (close − supertrend value) to display when price stretches away from the trail. This shows strength, exhaustion, or compression within the trend.
🟠 FEATURES
Bullish and bearish flip markers placed at recent highs/lows
Rejection signals off the trend tracer line
Alerts for bullish and bearish trend changes
🟠 USAGE
Setup : Add the script to your chart. Timeframe is flexible; lower timeframes show more flips while higher ones give cleaner swings. Adjust Length to change how wide the basis range is. Use the two ATR settings and factors to match the volatility of the market you trade.
Read the chart : When the refined trail (stv_) sits above price the regime is bearish; when below, it is bullish. The wide trail (stv) confirms the larger move. Watch the gradient fill: darker colors appear when price is stretched from the trail and lighter colors appear when the move is weakening. Flip markers ▲ or ▼ highlight the first clean shift of the refined trail.
Settings that matter : Increasing the Main Factor slows main-trend flips and filters chop. Increasing the Signal Factor delays the timing trail but reduces noise. Shortening Length makes the basis more reactive. ATR periods change how sensitive each Supertrend pass is to volatility.
Period Range AnalyzerThis indicator analyzes a specific periodic range, which can start from a fixed date or a defined lookback period. It draws percentage levels and colored zones between the highest and lowest price. It also displays a detailed information table, which shows the price's position within the range in "Trend" mode, and the relative strength of currency pairs in "Forex" mode. The current price position is also indicated by a label with a percentage value and the name of the corresponding zone.
User Guide
Calculation Method
This setting determines how the indicator defines the range used for the calculation.
Lookback Period: In this mode, the indicator uses the last N candles (the number can be specified in the "Lookback Period (bars)" field). The range (the highest and lowest price) is "floating," meaning it is recalculated with each new candle based on the last N candles.
Date Based: In this mode, the calculation starts from a fixed date and time you select. The indicator finds the opening price of the start date and continuously tracks the highest and lowest price from that point on. This mode is ideal for measuring performance from a specific event (e.g., start of a week/month/year, news).
Data Handling Note: If you select a date in "Date Based" mode for which no data is available on the current timeframe (e.g., switching to a very low timeframe), the indicator will automatically use the earliest available candle as the starting point. All calculations (Open, Max, Min, Range, Percentage, Change, Trend) are based on this actual start date.
Start Date & Time
This setting is only active in "Date Based" mode.
Here you can specify the fixed starting point for the calculation.
The specified time is in the Exchange timezone.
Important limitation: Due to TradingView platform limits, visual elements (levels, zones) are only drawn for a maximum of 250 candles back. If the set date is older than this, the calculation still applies to the entire period (from the set date), but the drawing only covers the last 250 candles. The table always displays accurate data for the entire period.
When switching to a higher timeframe, the range may restart from a slightly later bar due to TradingView's bar alignment. For best accuracy, set your timeframe first, then select the start date.
Table Mode
This setting controls what data the information table displays.
Trend: This is the default mode, which works on any symbol (stock, index, crypto, etc.). It displays information related to the trend and the range.
Forex: This is a special mode used to measure the strength of currency and crypto pairs. It only works on symbols with exactly 6 characters (e.g., "EURUSD", "BTCUSD"). It treats the first 3 characters as the base currency (e.g., EUR) and the last 3 as the quote currency (e.g., USD). If the symbol does not have 6 characters, the table will automatically display in "Trend" mode.
Trend
This trend determination operates based on the formation order of the high and low within the analyzed range:
Its switch is located in the “Table Additional Rows” menu.
Bullish: Indicated if the low was formed before the high (on different candles). Or if they formed on the same candle, it was a bullish candle.
Bearish: Indicated if the high was formed before the low (on different candles). Or if they formed on the same candle, it was a bearish candle.
Neutral: Indicated if the high and low formed on the same candle, and it was a "doji" candle (close = open).
Upper & Lower Threshold
These settings (Upper Threshold (%) and Lower Threshold (%) in the "Label Coloring" section) primarily determine the state (Bullish/Bearish/Neutral) of the top row of the table.
The logic is not based on the percentage change of the price movement, but on the current price's position within the range, where the bottom of the range is 0% and the top is 100%.
Upper Threshold (%): The percentage level (e.g., 60.0) above which the indicator considers the price position "Bullish" (or "Strong").
Lower Threshold (%): The percentage level (e.g., 40.0) below which the indicator considers the price position "Bearish" (or "Weak").
If the price is between the two (e.g., between 40% and 60%), the signal is Neutral.
Secondary function: These thresholds also control the color of the label next to the price, provided the "Dynamic Label Coloring" option is enabled.
Bridge Bands ATR (Overlay) ShaneHurst-Adaptive Volatility Bands
A fractal-inspired evolution of Bollinger and Keltner bands that adapts dynamically to both volatility and trend persistence.
This indicator estimates the Hurst exponent (H) — a measure of market memory — and adjusts a standard volatility band to lean in the direction of the prevailing trend.
When H > 0.5, markets exhibit persistence (trending behavior); the bands shift in the trend’s direction.
When H < 0.5, markets are mean-reverting; the bands flatten and recent extremes become potential fade zones.
Band width scales with recent volatility (σ), expanding in turbulent conditions and contracting during calm periods.
Key Features:
Adaptive offset using the Hurst exponent
Volatility-sensitive width for dynamic market regimes
EMA baseline with directional bias
Clear visual separation between trending and choppy phases
Inspired by Benoit Mandelbrot’s The Misbehavior of Markets and H.E. Hurst’s original work on long-term memory in time series.
Use it to identify regime shifts, trend-following entries, and volatility-adjusted stop levels.
Credit for this script goes to a number of people including Steve B, MichaalAngle, doc and joecat808. 500 day DEMA (double EMA) can be used as a longer term momentum line.
DynLenLibLibrary "DynLenLib"
sum_dyn(src, len)
Parameters:
src (float)
len (int)
lag_dyn(src, len)
Parameters:
src (float)
len (int)
highest_dyn(src, len)
Parameters:
src (float)
len (int)
lowest_dyn(src, len)
Parameters:
src (float)
len (int)
var_dyn(src, len)
Parameters:
src (float)
len (int)
stdev_dyn(src, len)
Parameters:
src (float)
len (int)
hl2()
hlc3()
ohlc4()
sma_dyn(src, len)
Parameters:
src (float)
len (int)
ema_dyn(src, len)
Parameters:
src (float)
len (int)
rma_dyn(src, len)
Parameters:
src (float)
len (int)
smma_dyn(src, len)
Parameters:
src (float)
len (int)
wma_dyn(src, len)
Parameters:
src (float)
len (int)
vwma_dyn(price, vol, len)
Parameters:
price (float)
vol (float)
len (int)
hma_dyn(src, len)
Parameters:
src (float)
len (int)
dema_dyn(src, len)
Parameters:
src (float)
len (int)
tema_dyn(src, len)
Parameters:
src (float)
len (int)
kama_dyn(src, erLen, fastLen, slowLen)
Parameters:
src (float)
erLen (int)
fastLen (int)
slowLen (int)
mcginley_dyn(src, len)
Parameters:
src (float)
len (int)
median_price()
true_range()
atr_dyn(len)
Parameters:
len (int)
bbands_dyn(src, len, mult)
Parameters:
src (float)
len (int)
mult (float)
bb_percent_b(src, len, mult)
Parameters:
src (float)
len (int)
mult (float)
bb_bandwidth(src, len, mult)
Parameters:
src (float)
len (int)
mult (float)
keltner_dyn(src, lenEMA, lenATR, multATR)
Parameters:
src (float)
lenEMA (int)
lenATR (int)
multATR (float)
donchian_dyn(len)
Parameters:
len (int)
choppiness_index(len)
Parameters:
len (int)
vol_stop(lenATR, mult)
Parameters:
lenATR (int)
mult (float)
roc_dyn(src, len)
Parameters:
src (float)
len (int)
rsi_dyn(src, len)
Parameters:
src (float)
len (int)
stoch_dyn(kLen, dLen, smoothK)
Parameters:
kLen (int)
dLen (int)
smoothK (int)
stoch_rsi_dyn(rsiLen, stochLen, kSmooth, dLen)
Parameters:
rsiLen (int)
stochLen (int)
kSmooth (int)
dLen (int)
cci_dyn(src, len)
Parameters:
src (float)
len (int)
cmo_dyn(src, len)
Parameters:
src (float)
len (int)
trix_dyn(len)
Parameters:
len (int)
tsi_dyn(shortLen, longLen)
Parameters:
shortLen (int)
longLen (int)
ultimate_osc(len1, len2, len3)
Parameters:
len1 (int)
len2 (int)
len3 (int)
dpo_dyn(src, len)
Parameters:
src (float)
len (int)
willr_dyn(len)
Parameters:
len (int)
macd_dyn(src, fastLen, slowLen, sigLen)
Parameters:
src (float)
fastLen (int)
slowLen (int)
sigLen (int)
ppo_dyn(src, fastLen, slowLen, sigLen)
Parameters:
src (float)
fastLen (int)
slowLen (int)
sigLen (int)
aroon_dyn(len)
Parameters:
len (int)
dmi_adx_dyn(diLen, adxLen)
Parameters:
diLen (int)
adxLen (int)
vortex_dyn(len)
Parameters:
len (int)
coppock_dyn(rocLen1, rocLen2, wmaLen)
Parameters:
rocLen1 (int)
rocLen2 (int)
wmaLen (int)
rvi_dyn(len)
Parameters:
len (int)
price_osc_dyn(src, fastLen, slowLen)
Parameters:
src (float)
fastLen (int)
slowLen (int)
rci_dyn(src, len)
Parameters:
src (float)
len (int)
obv()
pvt()
cmf_dyn(len)
Parameters:
len (int)
adl()
chaikin_osc_dyn(fastLen, slowLen)
Parameters:
fastLen (int)
slowLen (int)
mfi_dyn(len)
Parameters:
len (int)
volume_osc_dyn(fastLen, slowLen)
Parameters:
fastLen (int)
slowLen (int)
up_down_volume()
cvd()
supertrend_dyn(atrLen, mult)
Parameters:
atrLen (int)
mult (float)
envelopes_dyn(src, len, pct)
Parameters:
src (float)
len (int)
pct (float)
linreg_line_slope(src, len)
Parameters:
src (float)
len (int)
lsma_dyn(src, len)
Parameters:
src (float)
len (int)
corrcoef_dyn(a, b, len)
Parameters:
a (float)
b (float)
len (int)
psar(step, maxStep)
Parameters:
step (float)
maxStep (float)
pivots_standard()
williams_alligator(src, jawLen, teethLen, lipsLen)
Parameters:
src (float)
jawLen (int)
teethLen (int)
lipsLen (int)
twap_dyn(src, len)
Parameters:
src (float)
len (int)
vwap_anchored(price, volume, reset)
Parameters:
price (float)
volume (float)
reset (bool)
performance_pct(len)
Parameters:
len (int)
Swing DistanceHello fellas,
This simple indicator helps to visualize the distance between swings. It consists of two lines, the highest and the lowest line, which show the highest and lowest value of the set lookback, respectively. Additionally, it plots labels with the distance (in %) between the highest and the lowest line when there is a change in either the highest or the lowest value.
Use Case:
This tool helps you get a feel for which trades you might want to take and which timeframe you might want to use.
Side Note: This indicator is not intended to be used as a signal emitter or filter!
Best regards,
simwai
Average Variation Bands OscillatorSimilar to how a donchian% of channel helps to visualize trend and volatility, this tool helps identify those same characteristics, if the oscillator is generally above the 50 mark, it is considered to be trending upwards, and the reverse if it is generally bellow 50.
RedK EVEREX - Effort Versus Results ExplorerRedK EVEREX is an experimental indicator that explores "Volume Price Analysis" basic concepts and Wyckoff law "Effort versus Result" - by inspecting the relative volume (effort) and the associated (relative) price action (result) for each bar - showing the analysis as an easy to read "stacked bands" visual. From that analysis, we calculate a "Relative Rate of Flow" - an easy to use +100/-100 oscilator that can be used to trigger a signal when a bullish or bearish mode is detected for a certain user-selected length of bars.
Basic Concepts of VPA
-------------------------------
(The topics of VPA & Wyckoff Effort vs Results law are too comprehensive to cover here - So here's just a very basic summary - please review these topics in detail in various sources available here in TradingView or on the web)
* Volume Price Analysis (VPA) is the examination of the number of shares or contracts of a security that have been traded in a given period, and the associated price movement. By analyzing trends in volume in conjunction with price movements, traders can determine the significance of changes in price and what may unfold in the near future.
* Oftentimes, high volumes of trading can infer a lot about investors’ outlook on a market or security. A significant price increase along with a significant volume increase, for example, could be a credible sign of a continued bullish trend or a bullish reversal. Adversely, a significant price decrease with a significant volume increase can point to a continued bearish trend or a bearish trend reversal.
* Incorporating volume into a trading decision can help an investor to have a more balanced view of all the broad market factors that could be influencing a security’s price, which helps an investor to make a more informed decision.
* Wyckoff's law "Effort versus results" dictates that large effort is expected to be accompanied with big results - which means that we should expect to see a big price move (result) associated with a large relative volume (effort) for a certain trading period (bar).
* The way traders use this concept in chart analysis is to mainly look for imbalances or invalidation. for example, when we observe a large relative volume that is associated with very limited price change - that should trigger an early flag/warning sign that the current price trend is facing challenges and may be an early sign of "reversal" - this applies in both bearish and bullish conditions. on the other hand, when price starts to trend in a certain direction and that's associated with increasing volume, that can act as kind of validation, or a confirmation that the market supports that move.
How does EVEREX work
---------------------------------
* EVEREX inspects each bar and calculates a relative value for volume (effort) and "strength of price movement" (result) compared to a specified lookback period. The results are then visualized as stacked bands - the lower band represents the relative volume, the upper band represents the relative price strength - with clear color coding for easier analysis.
* The scale of the band is initially set to 100 (each band can occupy up to 50) - and that can be changed in the settings to 200 or 400 - mainly to allow a "zoom in" on the bands.
* Reading the resulting stacked bands makes it easier to see "balanced" volume/price action (where both bands are either equally strong, or equally weak), or when there's imbalance between volume and price (for example, a compression bar will show with high volume band and very small/tiny price action band) - another favorite pattern in VPA is the "Ease of Move", which will show as a relatively small volume band associated with a large "price action band" (either bullish or bearish) .. and so on.
* a bit of a techie piece: why the use of a custom "Normalize()" function to calculate "relative" values in EVEREX?
When we evaluate a certain value against an average (for example, volume) we need a mechanism to deal with "super high" values that largely exceed that average - I also needed a mechanism that mimics how a trader looks at a volume bar and decides that this volume value is super low, low, average, above average, high or super high -- the issue with using a stoch() function, which is the usual technique for comparing a data point against a lookback average, is that this function will produce a "zero" for low values, and cause a large distortion of the next few "ratios" when super large values occur in the data series - i researched multiple techniques here and decided to use the custom Normalize() function - and what i found is, as long as we're applying the same formula consistently to the data series, since it's all relative to itself, we can confidently use the result. Please feel free to play around with this part further if you like - the code is commented for those who would like to research this further.
* Overall, the hope is to make the bar-by-bar analysis easier and faster for traders who apply VPA concepts in their trading
What is RROF?
--------------------------
* Once we have the values of relative volume and relative price strength, it's easy from there to combine these values into a moving index that can be used to track overall strength and detect reversals in market direction - if you think about it this a very similar concept to a volume-weighted RSI. I call that index the "Relative Rate of Flow" - or RROF (cause we're not using the direct volume and price values in the calculation, but rather relative values that we calculated with the proprietary "Normalize" function in the script.
* You can show RROF as a single or double-period - and you can customize it in terms of smoothing, and signal line - and also utilize the basic alerts to get notified when a change in strength from one side to the other (bullish vs bearish) is detected
* In the chart above, you can see how the RROF was able to detect change in market condition from Bearsh to Bullish - then from Bullish to Bearish for TSLA with good accuracy.
Other Usage Options in EVEREX
------------------------------------
* I wrote EVEREX with a lot of flexibility and utilization in mind, while focusing on a clean and easy to use visual - EVEREX should work with any time frame and any instrument - in instruments with no volume data, only price data will be used.
* You can completely hide the "EVEREX bands" and use EVEREX as a single or dual period strength indicator (by exposing the Bias/Sentiment plot which is hidden by default) -
here's how this setup would look like - in this mode, you will basically be using EVEREX the same way you're using a volume-weighted RSI
* or you can hide the bias/sentiment, and expose the Bulls & Bears plots (using the indicator's "Style" tab), and trade it like a Bull/Bear Pressure Index like this
* you can choose Moving Average type for most plot elements in EVEREX, including how to deal with the Lookback averaging
* you can set EVEREX to a different time frame than the chart
* did i mention basic alerts in this v1.0 ?? There's room to add more VPA-specific alerts in future version (for example, when Ease-of-Move or Compression bars are detected...etc) - let me know if the comments what you want to see
Final Thoughts
--------------------
* EVEREX can be used for bar-by-bar VPA analysis - There are so much literature out there about VPA and it's highly recommended that traders read more about what VPA is and how it works - as it adds an interesting (and critical) dimension to technical analysis and will improve decision making
* RROF is a "strength indicator" - it does not track price values (levels) or momentum - as you will see when you use it, the price can be moving up, while the RROF signal line starts moving down, reflecting decreasing strength (or otherwise, increasing bear strength) - So if you incorporate EVEREX in your trading you will need to use it alongside other momentum and price value indicators (like MACD, MA's, Trend Channels, Support & Resistance Lines, Fib / Donchian..etc) - to use for trade confirmation
Smoothed Basis Overview and Purpose
The script calculates a smoothed mid-range basis between the highest and lowest prices over a specified period, then applies a smoothing function (smoothed moving average) to show the trend direction or momentum in a less noisy way. The area between the basis and its smoothed value is color-filled to visually highlight when the basis is above or below the smoothed average, signaling potentially bullish or bearish momentum.
Indicator Setup
length = Period length for calculating the highest and lowest values.
signal = Smoothing period used to smooth the basis.
offset =Optional horizontal shift to the plots (default 0).
Core Calculations
lower = Finds the lowest low over the past length bars.
upper = Finds the highest high over the past length bars.
basis = Calculates the midpoint between the highest and lowest.
Smoothing Calculation (Smoothed Moving Average - SMMA)
Declares smma as 0.0 initially. If the previous smma value is not available (like on the first bar), initializes with a simple moving average of basis over signal bars. Else applies formula
which gives a smoother version of basis which reacts less to sudden changes.
Plotting and Color Fill
Plots the raw basis line and smoothed basis line .
Fills the area between the basis and smoothed basis lines:
Greenish fill if the basis is above the smoothed value (potentially bullish).
Reddish fill if the basis is below the smoothed value (potentially bearish).
Interpretation and Use
The indicator visually shows where price ranges are shifting by tracking the midpoint between recent highs and lows.
The smoothed basis serves as a trend or momentum filter by dampening noise in the basis line.
When the basis is above the smoothed line (green fill), it signals upward momentum or strength; below it (red fill) suggests downward momentum or weakness.
The length and signal parameters allow tuning for different timeframes or asset volatility.
In summary, this code creates a custom smoothed oscillator based on the midpoint range of price extremes, highlighting trend changes via color fills and smoothening price action noise with an SMMA.






















