ATR Bands (Keltner Channel), Wick and SRSI Signals [MW]Introduction
This indicator uses a novel combination of ATR Bands, candle wicks crossing the ATR upper and lower bands, and baseline, and combines them with the Stochastic SRSI oscillator to provide early BUY and SELL signals in uptrends, downtrends, and in ranging price conditions.
How it’s unique
People generally understand Bollinger Bands and Keltner Channels. Buy at the bottom band, sell at the top band. However, because the bands themselves are not static, impulsive moves can render them useless. People also generally understand wicks. Candles with large wicks can represent a change in pattern, or volatile price movement. Combining those two to determine if price is reaching a pivot point is relatively novel. When Stochastic RSI (SRSI) filtering is also added, it becomes a genuinely unique combination that can be used to determine trade entries and exits.
What’s the benefit
The benefit of the indicator is that it can help potentially identify pivots WHEN THEY HAPPEN, and with potentially minimal retracement, depending on the trader’s time window. Many indicators wait for a trend to be established, or wait for a breakout to occur, or have to wait for some form of confirmation. In the interpretation used by this indicator, bands, wicks, and SRSI cycles provide both the signal and confirmation.
It takes into account 3 elements:
Price approaching the upper or lower band or the baseline - MEANING: Price is becoming extended based on calculations that use the candle trading range.
A candle wick of a defined proportion (e.g. wick is 1/2 the size of a full candle OR candle body) crosses a band or baseline, but the body does not cross the band or baseline - MEANING: Buyers and sellers are both very active.
The Stochastic RSI reading is above 80 for SELL signals and below 20 for BUY signals - MEANING: Additional confirmation that price is becoming extended based on the current cyclic price pattern.
How to Use
SIGNALS
Buy Signals - Green(ish):
B Signal - Potential pivot up from the lower band when using the preferred multiplier
B1 Signal - Potential pivot up from the lower band when using phi * multiplier
B2 Signal - Potential pivot up from the lower band when using 1/2 * multiplier
B3 Signal - Potential pivot up from baseline
Sell Signals - Red(ish):
S Signal - Potential pivot down from the upper band when using the preferred multiplier
S1 Signal - Potential pivot down from the upper band when using
S2 Signal - Potential pivot down from the upper band when using 1/2 * multiplier
S3 Signal - Potential pivot down from the baseline
DISCUSSION
During an uptrend or downtrend, signals from the baseline can help traders identify areas where they may enter the trending move with the least amount of drawdown. In both cases, entry points can occur with baseline signals in the direction of the trend.
For example, in an uptrend (when the price is forming higher highs and higher lows, or when the baseline is rising), price tends to oscillate between the upper band and baseline. In this case, the baseline BUY signal (B3) can show an entry point.
In a downtrend (when the price is forming lower highs and lower lows, or when the baseline is falling), price tends to oscillate between the baseline and the lower band. In this case, the baseline SELL signal (S3) can show an entry point.
During consolidation, when price is ranging, price tends to oscillate between the upper and lower bands, while crossing through the baseline unperturbed. Here, entry points can occur at the upper and lower bands.
When all conditions are met at the lower band during consolidation, a BUY signal (B), can occur. This signal may also occur prior to a break out of consolidation to the upside.
When all conditions are met at the upper band during consolidation, a SELL signal (S), can occur. This signal may also occur prior to a break out of consolidation to the downside.
Additional B1, B2, and S1, and S2 signals can be displayed that use the bands based on a multiplier that is half that of the primary one, and phi (0.618) times the primary multiplier as a way to quickly check for signals occurring along different, but related, bands.
Calculations
ATR Bands, or Keltner Channels, are a technical analysis tool that are used to measure market volatility and identify overbought or oversold conditions in the trading of financial instruments, such as stocks, bonds, commodities, and currencies. ATR Bands consist of three lines plotted on a price chart:
Middle Band, Basis, or Baseline: This is typically a simple moving average (SMA) of the closing prices over a certain period. It represents the intermediate-term trend of the asset's price.
Upper Band: This is calculated by adding a certain number of ATRs to the middle band (SMA). The upper band adjusts itself with the increase in volatility.
Lower Band: This is calculated by subtracting the same number of ATRs from the middle band (SMA). Like the upper band, the lower band adjusts to changes in volatility.
The candle wick signals occur if the wick is at the specified ratio compared to either the entire candle or the candle body. The upper band, lower band, and baseline signals happen if the wick is the specified ratio of the total candle size. For the major signals for upper and lower bands, these occur when the wick extends outside of the bands while closing a candle inside of the bands. For the baseline signals, they occur if a wick crosses a baseline but closes on the other side.
Settings
CHANNEL SETTINGS
Baseline EMA Period (Default: 21): Period length of the moving average basis line.
ATR Period (Default: 21): The number of periods over which the Average True Range (ATR) is calculated.
Basis MA Type (Default: SMA): The moving average type for the basis line.
Multiplier (Default: 2.5: The deviation multiplier used to calculate the band distance from the basis line.
ADDITIONAL CHANNELS
Half of Multiplier Offset (Default: True): Toggles the display of the ATR bands that are set a distance of half of the ATR multiplier.
Quarter of Multiplier Offset (Default: false): Toggles the display of the ATR bands that are set a distance of one quarter of the ATR multiplier.
Phi (Φ) Offset (Default: false): Toggles the display of the ATR bands that are set a distance of phi (Φ) times the ATR multiplier.
WICK SETTINGS FOR CANDLE FILTERS
Wick Ratio for Bands (Default: 0.4): The ratio of wick size to total candle size for use at upper and lower bands.
Wick Ratio for Baseline (Default: 0.4): The ratio of wick size to total candle size for use at baseline.
Use Candle Body (rather than full candle size) (Default: false): Determines whether wick calculations use the candle body or the entire candle size.
VISUAL PREFERENCES - SIGNALS
Show Signals (Default: true): Allows signal labels to be shown.
Show Signals from 1/2 Band Offset (Default: false): Toggle signals originating from 1/2 offset upper and lower bands.
Show Signals from Phi (Φ) Band Offset (Default: false): Toggle signals originating from phi (Φ) offset upper and lower bands.
Show Baseline Signals (Default: false): Toggle Baseline signals.
VISUAL PREFERENCES - BANDS
Show ATR (Keltner) Bands (Default: true): Use a background color inside the Bollinger Bands.
Fill Bands (Default: true): Use a background color inside the Bollinger Bands.
STOCHASTIC SETTINGS
Use Stochastic RSI Filtering (Default: False): This will only trigger some SELL signals when the stochastic RSI is above 80, and BUY signals when below 20.
K (Default: 3): The smoothing level for the Stochastic RSI.
RSI Length (Default: 14): The period length for the RSI calculation.
Stochastic Length (Default: 8): The period length over which the stochastic calculation is performed.
Other Usage Notes and Limitations
To understand future price movement, this indicator assumes that 3 things must be known:
Evidence of a change of market structure. This can be demonstrated by increased volatility, consolidation, volume spikes (which can be tracked with the MW Volume Impulse Indicator) or, in the case of this indicator, candle wicks.
The potential cause of the change. It could be a VWAP line (which can be tracked with the Multi VWAP , and Multi VWAP from Gaps indicators), an event, an important support or resistance level, a key moving average, or many other things. This indicator assumes the ATR bands can be a cause.
The current position in the price cycle. Oscillators like the RSI, and MACD, are typical measures of price oscillation (other oscillators like the Price and Volume Stochastic Divergence indicator can also be useful). This indicator uses the Stochastic RSI oscillator to determine overbought and oversold conditions.
When evidence of the change appears, and the potential cause of the change is identified, and the price oscillation is at a favorable position for the desired trading direction, this indicator will generate a signal.
ATR Bands (or Keltner Channels) are used to determine when price might “revert to the mean”. Crossing, or being near the upper or lower band, can indicate an overbought or oversold condition, which could lead to a price reversal. By tracking the behavior of candle wicks during these events, we can see how active the battle is between buyers and sellers.
If the top of a wick is large, it may indicate that sellers are aggressively attempting to bring the price down. Conversely, if the bottom wick is large, it can indicate that buyers are actively trying to counter the price action caused by selling pressure.
When this wicking action occurs at times when price is not near the upper band, lower band, or baseline, it could indicate the presence of an important level. That could mean a nearby VWAP line, a supply or demand zone, a round price number, or a number of other factors. In any case, this wick may be the first indication of a price reversal.
Shorter baseline periods may be better for short period trading like scalping or day trading, while longer period baselines can show signals that are better suited to swing trading, or longer term investing.
It's important for traders to be aware of the limitations of any indicator and to use them as part of a broader, well-rounded trading strategy that includes risk management, fundamental analysis, and other tools that can help with reducing false signals, determining trend direction, and providing additional confirmation for a trade decision. Diversifying strategies and not relying solely on one type of indicator or analysis can help mitigate some of these risks.
The TradingView platform allows a maximum of 500 labels per chart. This means that if your settings allow for a lot of signals, labels for earlier ones may not appear if the total number of labels exceeds 500 for the chart.
Search in scripts for "track"
Bollinger Band Wick and SRSI Signals [MW]Introduction
This indicator uses a novel combination of Bollinger Bands, candle wicks crossing the upper and lower Bollinger Bands and baseline, and combines them with the Stochastic SRSI oscillator to provide early BUY and SELL signals in uptrends, downtrends, and in ranging price conditions.
How it’s unique
People generally understand Bollinger Bands and Keltner Channels. Buy at the bottom band, sell at the top band. However, because the bands themselves are not static, impulsive moves can render them useless. People also generally understand wicks. Candles with large wicks can represent a change in pattern, or volatile price movement. Combining those two to determine if price is reaching a pivot point is relatively novel. When Stochastic RSI (SRSI) filtering is also added, it becomes a genuinely unique combination that can be used to determine trade entries and exits.
What’s the benefit
The benefit of the indicator is that it can help potentially identify pivots WHEN THEY HAPPEN, and with potentially minimal retracement, depending on the trader’s time window. Many indicators wait for a trend to be established, or wait for a breakout to occur, or have to wait for some form of confirmation. In the interpretation used by this indicator, bands, wicks, and SRSI cycles provide both the signal and confirmation.
It takes into account 3 elements:
Price approaching the upper or lower band or the baseline - MEANING: Price is becoming extended based on calculations that use the candle trading range.
A candle wick of a defined proportion (e.g. wick is 1/2 the size of a full candle OR candle body) crosses a band or baseline, but the body does not cross the band or baseline - MEANING: Buyers and sellers are both very active.
The Stochastic RSI reading is above 80 for SELL signals and below 20 for BUY signals - MEANING: Additional confirmation that price is becoming extended based on the current cyclic price pattern.
How to Use
SIGNALS
Buy Signals - Green(ish):
B Signal - Potential pivot up from the lower band when using the preferred multiplier
B1 Signal - Potential pivot up from baseline
Sell Signals - Red(ish):
S Signal - Potential pivot down from the upper band when using the preferred multiplier
S1 Signal - Potential pivot down from the baseline
DISCUSSION
During an uptrend or downtrend, signals from the baseline can help traders identify areas where they may enter the trending move with the least amount of drawdown. In both cases, entry points can occur with baseline signals in the direction of the trend.
For example, in an uptrend (when the price is forming higher highs and higher lows, or when the baseline is rising), price tends to oscillate between the upper band and baseline. In this case, the baseline BUY signal (B3) can show an entry point.
In a downtrend (when the price is forming lower highs and lower lows, or when the baseline is falling), price tends to oscillate between the baseline and the lower band. In this case, the baseline SELL signal (S3) can show an entry point.
During consolidation, when price is ranging, price tends to oscillate between the upper and lower bands, while crossing through the baseline unperturbed. Here, entry points can occur at the upper and lower bands.
When all conditions are met at the lower band during consolidation, a BUY signal (B), can occur. This signal may also occur prior to a break out of consolidation to the upside.
When all conditions are met at the upper band during consolidation, a SELL signal (S), can occur. This signal may also occur prior to a break out of consolidation to the downside.
Additional, B1 and S1 signals can be displayed that use the baseline as the pivot level.
Settings
SIGNALS
Show Bollinger Band Signals (Default: True): Allows signal labels to be shown.
Hide Baseline Signals (Default: False): Baseline signals are on by default. This will turn them off.
Show Wick Signals (Defau
lt: True): Displays signals when wicking occurs.
BOLLINGER BAND SETTINGS
Period length for Bollinger Band Basis (Default: 21): Length of the Bollinger Band (BB) moving average basis line.
Basis MA Type (Default: SMA): The moving average type for the BB Basis line.
Source (Default: “close”): The source of time series data.
Standard Deviation Multiplier (Default: 2.5: The deviation multiplier used to calculate the band distance from the basis line.
WICK SETTINGS FOR BOLLINGER BANDS
Wick Ratio for Bands (Default: 0.3): The ratio of wick size to total candle size for use at upper and lower bands.
Wick Ratio for Baseline (Default: 0.3): The ratio of wick size to total candle size for use at baseline.
WICK SETTINGS FOR CANDLE SIGNALS
Upper Wick Threshold (Default: 50): The percent of upper wick compared to the full candle size or candle body size.
Lower Wick Threshold (Default: 50): The percent of lower wick compared to the full candle size or candle body size.
Use Candle Body (Default: false): Toggles the use of the full candle size versus the candle body size when calculating the wick signal.
VISUAL PREFERENCES
Fill Bands (Default: true): Use a background color inside the Bollinger Bands.
Show Signals (Default: true): Toggle the Bollinger Band upper band, lower band, and baseline signals.
Show Bollinger Bands (Default: true): Show the Bollinger Bands.
STOCHASTIC SETTINGS
Use Stochastic RSI Filtering (Default: False): This will only trigger some SELL signals when the stochastic RSI is above 80, and BUY signals when below 20.
K (Default: 3): The smoothing level for the Stochastic RSI.
RSI Length (Default: 14): The period length for the RSI calculation.
Stochastic Length (Default: 8): The period length over which the stochastic calculation is performed.
Calculations
Bollinger Bands are a technical analysis tool that are used to measure market volatility and identify overbought or oversold conditions in the trading of financial instruments, such as stocks, bonds, commodities, and currencies. Bollinger Bands consist of three lines plotted on a price chart:
Middle Band, Basis, or Baseline: This is typically a simple moving average (SMA) of the closing prices over a certain period. It represents the intermediate-term trend of the asset's price.
Upper Band: This is calculated by adding a certain number of standard deviations to the middle band (SMA). The upper band adjusts itself with the increase in volatility.
Lower Band: This is calculated by subtracting the same number of standard deviations from the middle band (SMA). Like the upper band, the lower band adjusts to changes in volatility.
The candle wick signals occur if the wick is at the specified ratio compared to either the entire candle or the candle body. The upper band, lower band, and baseline signals happen if the wick is the specified ratio of the total candle size. For the major signals for upper and lower bands, these occur when the wick extends outside of the bands while closing a candle inside of the bands. For the baseline signals, they occur if a wick crosses a baseline but closes on the other side.
Other Usage Notes and Limitations
To understand future price movement, this indicator assumes that 3 things must be known:
Evidence of a change of market structure. This can be demonstrated by increased volatility, consolidation, volume spikes (which can be tracked with the MW Volume Impulse Indicator) or, in the case of this indicator, candle wicks.
The potential cause of the change. It could be a VWAP line (which can be tracked with the Multi VWAP , and Multi VWAP from Gaps indicators), an event, an important support or resistance level, a key moving average, or many other things. This indicator assumes the ATR bands can be a cause.
The current position in the price cycle. Oscillators like the RSI, and MACD, are typical measures of price oscillation (other oscillators like the Price and Volume Stochastic Divergence indicator can also be useful). This indicator uses the Stochastic RSI oscillator to determine overbought and oversold conditions.
When evidence of the change appears, and the potential cause of the change is identified, and the price oscillation is at a favorable position for the desired trading direction, this indicator will generate a signal.
ATR Bands (or Keltner Channels) are used to determine when price might “revert to the mean”. Crossing, or being near the upper or lower band, can indicate an overbought or oversold condition, which could lead to a price reversal. By tracking the behavior of candle wicks during these events, we can see how active the battle is between buyers and sellers.
If the top of a wick is large, it may indicate that sellers are aggressively attempting to bring the price down. Conversely, if the bottom wick is large, it can indicate that buyers are actively trying to counter the price action caused by selling pressure.
When this wicking action occurs at times when price is not near the upper band, lower band, or baseline, it could indicate the presence of an important level. That could mean a nearby VWAP line, a supply or demand zone, a round price number, or a number of other factors. In any case, this wick may be the first indication of a price reversal.
Shorter baseline periods may be better for short period trading like scalping or day trading, while longer period baselines can show signals that are better suited to swing trading, or longer term investing.
It's important for traders to be aware of the limitations of any indicator and to use them as part of a broader, well-rounded trading strategy that includes risk management, fundamental analysis, and other tools that can help with reducing false signals, determining trend direction, and providing additional confirmation for a trade decision. Diversifying strategies and not relying solely on one type of indicator or analysis can help mitigate some of these risks.
The TradingView platform allows a maximum of 500 labels per chart. This means that if your settings allow for a lot of signals, labels for earlier ones may not appear if the total number of labels exceeds 500 for the chart.
Weight Gain 4000 - (Adjustable Volume Weighted MA) - [mutantdog]Short Version:
This is a fairly self-contained system based upon a moving average crossover with several unique features. The most significant of these is the adjustable volume weighting system, allowing for transformations between standard and weighted versions of each included MA. With this feature it is possible to apply partial weighting which can help to improve responsiveness without dramatically altering shape. Included types are SMA, EMA, WMA, RMA, hSMA, DEMA and TEMA. Potentially more will be added in future (check updates below).
In addition there are a selection of alternative 'weighted' inputs, a pair of Bollinger-style deviation bands, a separate price tracker and a bunch of alert presets.
This can be used out-of-the-box or tweaked in multiple ways for unusual results. Default settings are a basic 8/21 EMA cross with partial volume weighting. Dev bands apply to MA2 and are based upon the type and the volume weighting. For standard Bollinger bands use SMA with length 20 and try adding a small amount of volume weighting.
A more detailed breakdown of the functionality follows.
Long Version:
ADJUSTABLE VOLUME WEIGHTING
In principle any moving average should have a volume weighted analogue, the standard VWMA is just an SMA with volume weighting for example. Actually, we can consider the SMA to be a special case where volume is a constant 1 per bar (the value is somewhat arbitrary, the important part is that it's constant). Similar principles apply to the 'elastic' EVWMA which is the volume weighted analogue of an RMA. In any case though, where we have standard and weighted variants it is possible to transform one into the other by gradually increasing or decreasing the weighting, which forms the basis of this system. This is not just a simple multiplier however, that would not work due to the relative proportions being the same when set at any non zero value. In order to create a meaningful transformation we need to use an exponent instead, eg: volume^x , where x is a variable determined in this case by the 'volume' parameter. When x=1, the full volume weighting applies and when x=0, the volume will be reduced to a constant 1. Values in between will result in the respective partial weighting, for example 0.5 will give the square root of the volume.
The obvious question here though is why would you want to do this? To answer that really it is best to actually try it. The advantages that volume weighting can bring to a moving average can sometimes come at the cost of unwanted or erratic behaviour. While it can tend towards much closer price tracking which may be desirable, sometimes it needs moderating especially in markets with lower liquidity. Here the adjustability can be useful, in many cases i have found that adding a small amount of volume weighting to a chosen MA can help to improve its responsiveness without overpowering it. Another possible use case would be to have two instances of the same MA with the same length but different weightings, the extent to which these diverge from each other can be a useful indicator of trend strength. Other uses will become apparent with experimentation and can vary from one market to another.
THE INCLUDED MODES
At the time of publication, there are 7 included moving average types with plans to add more in future. For now here is a brief explainer of what's on offer (continuing to use x as shorthand for the volume parameter), starting with the two most common types.
SMA: As mentioned above this is essentially a standard VWMA, calculated here as sma(source*volume^x,length)/sma(volume^x,length). In this case when x=0 then volume=1 and it reduces to a standard SMA.
RMA: Again mentioned above, this is an EVWMA (where E stands for elastic) with constant weighting. Without going into detail, this method takes the 1/length factor of an RMA and replaces it with volume^x/sum(volume^x,length). In this case again we can see that when x=0 then volume=1 and the original 1/length factor is restored.
EMA: This follows the same principle as the RMA where the standard 2/(length+1) factor is replaced with (2*volume^x)/(sum(volume^x,length)+volume^x). As with an RMA, when x=0 then volume=1 and this reduces back to the standard 2/(length+1).
DEMA: Just a standard Double EMA using the above.
TEMA: Likewise, a standard Triple EMA using the above.
hSMA: This is the same as the SMA except it uses harmonic mean calculations instead of arithmetic. In most cases the differences are negligible however they can become more pronounced when volume weighting is introduced. Furthermore, an argument can be made that harmonic mean calculations are better suited to downtrends or bear markets, in principle at least.
WMA: Probably the most contentious one included. Follows the same basic calculations as for the SMA except uses a WMA instead. Honestly, it makes little sense to combine both linear and volume weighting in this manner, included only for completeness and because it can easily be done. It may be the case that a superior composite could be created with some more complex calculations, in which case i may add that later. For now though this will do.
An additional 'volume filter' option is included, which applies a basic filter to the volume prior to calculation. For types based around the SMA/VWMA system, the volume filter is a WMA-4, for types based around the RMA/EVWMA system the filter is a RMA-2.
As and when i add more they will be listed in the updates at the bottom.
WEIGHTED INPUTS
The ohlc method of source calculations is really a leftover from a time when data was far more limited. Nevertheless it is still the method used in charting and for the most part is sufficient. Often the only important value is 'close' although sometimes 'high' and 'low' can be relevant also. Since we are volume weighting however, it can be useful to incorporate as much information as possible. To that end either 'hlc3' or 'hlcc4' tend to be the best of the defaults (in the case of 24/7 charting like crypto or intraday trading, 'ohlc4' should be avoided as it is effectively the same as a lagging version of 'hlcc4'). There are many other (infinitely many, in fact) possible combinations that can be created, i have included a few here.
The premise is fairly straightforward, by subtracting one value from another, the remaining difference can act as a kind of weight. In a simple case consider 'hl2' as simply the midrange ((high+low)/2), instead of this using 'high+low-open' would give more weight to the value furthest from the open, providing a good estimate of the median. An even better estimate can be achieved by combining that with 'high+low-close' to give the included result 'hl-oc2'. Similarly, 'hlc3' can be considered the basic mean of the three significant values, an included weighted version 'hlc2-o2' combines a sum with subtraction of open to give an estimated mean that may be more accurate. Finally we can apply a similar principle to the close, by subtracting the other values, this one potentially gets more complex so the included 'cc-ohlc4' is really the simplest. The result here is an overbias of the close in relation to the open and the midrange, while in most cases not as useful it can provide an estimate for the next bar assuming that the trend continues.
Of the three i've included, hlc2-o2 is in my opinion the most useful especially in this context, although it is perhaps best considered to be experimental in nature. For that reason, i've kept 'hlcc4' as the default for both MAs.
Additionally included is an 'aux input' which is the standard TV source menu and, where possible, can be set as outputs of other indicators.
THE SYSTEM
This one is fairly obvious and straightforward. It's just a moving average crossover with additional deviation (bollinger) bands. Not a lot to explain here as it should be apparent how it works.
Of the two, MA1 is considered to be the fast and MA2 is considered to be the slow. Both can be set with independent inputs, types and weighting. When MA1 is above, the colour of both is green and when it's below the colour of both is red. An additional gradient based fill is there and can be adjusted along with everything else in the visuals section at the bottom. Default alerts are available for crossover/crossunder conditions along with optional marker plots.
MA2 has the option for deviation bands, these are calculated based upon the MA type used and volume weighted according to the main parameter. In the case of a unweighted SMA being used they will be standard Bollinger bands.
An additional 'source direct' price tracker is included which can be used as the basis for an alert system for price crossings of bands or MAs, while taking advantage of the available weighted inputs. This is displayed as a stepped line on the chart so is also a good way to visualise the differences between input types.
That just about covers it then. The likelihood is that you've used some sort of moving average cross system before and are probably still using one or more. If so, then perhaps the additional functionality here will be of benefit.
Thanks for looking, I welcome any feedack
Waindrops [Makit0]█ OVERALL
Plot waindrops (custom volume profiles) on user defined periods, for each period you get high and low, it slices each period in half to get independent vwap, volume profile and the volume traded per price at each half.
It works on intraday charts only, up to 720m (12H). It can plot balanced or unbalanced waindrops, and volume profiles up to 24H sessions.
As example you can setup unbalanced periods to get independent volume profiles for the overnight and cash sessions on the futures market, or 24H periods to get the full session volume profile of EURUSD
The purpose of this indicator is twofold:
1 — from a Chartist point of view, to have an indicator which displays the volume in a more readable way
2 — from a Pine Coder point of view, to have an example of use for two very powerful tools on Pine Script:
• the recently updated drawing limit to 500 (from 50)
• the recently ability to use drawings arrays (lines and labels)
If you are new to Pine Script and you are learning how to code, I hope you read all the code and comments on this indicator, all is designed for you,
the variables and functions names, the sometimes too big explanations, the overall structure of the code, all is intended as an example on how to code
in Pine Script a specific indicator from a very good specification in form of white paper
If you wanna learn Pine Script form scratch just start HERE
In case you have any kind of problem with Pine Script please use some of the awesome resources at our disposal: USRMAN , REFMAN , AWESOMENESS , MAGIC
█ FEATURES
Waindrops are a different way of seeing the volume and price plotted in a chart, its a volume profile indicator where you can see the volume of each price level
plotted as a vertical histogram for each half of a custom period. By default the period is 60 so it plots an independent volume profile each 30m
You can think of each waindrop as an user defined candlestick or bar with four key values:
• high of the period
• low of the period
• left vwap (volume weighted average price of the first half period)
• right vwap (volume weighted average price of the second half period)
The waindrop can have 3 different colors (configurable by the user):
• GREEN: when the right vwap is higher than the left vwap (bullish sentiment )
• RED: when the right vwap is lower than the left vwap (bearish sentiment )
• BLUE: when the right vwap is equal than the left vwap ( neutral sentiment )
KEY FEATURES
• Help menu
• Custom periods
• Central bars
• Left/Right VWAPs
• Custom central bars and vwaps: color and pixels
• Highly configurable volume histogram: execution window, ticks, pixels, color, update frequency and fine tuning the neutral meaning
• Volume labels with custom size and color
• Tracking price dot to be able to see the current price when you hide your default candlesticks or bars
█ SETTINGS
Click here or set any impar period to see the HELP INFO : show the HELP INFO, if it is activated the indicator will not plot
PERIOD SIZE (max 2880 min) : waindrop size in minutes, default 60, max 2880 to allow the first half of a 48H period as a full session volume profile
BARS : show the central and vwap bars, default true
Central bars : show the central bars, default true
VWAP bars : show the left and right vwap bars, default true
Bars pixels : width of the bars in pixels, default 2
Bars color mode : bars color behavior
• BARS : gets the color from the 'Bars color' option on the settings panel
• HISTOGRAM : gets the color from the Bearish/Bullish/Neutral Histogram color options from the settings panel
Bars color : color for the central and vwap bars, default white
HISTOGRAM show the volume histogram, default true
Execution window (x24H) : last 24H periods where the volume funcionality will be plotted, default 5
Ticks per bar (max 50) : width in ticks of each histogram bar, default 2
Updates per period : number of times the histogram will update
• ONE : update at the last bar of the period
• TWO : update at the last bar of each half period
• FOUR : slice the period in 4 quarters and updates at the last bar of each of them
• EACH BAR : updates at the close of each bar
Pixels per bar : width in pixels of each histogram bar, default 4
Neutral Treshold (ticks) : delta in ticks between left and right vwaps to identify a waindrop as neutral, default 0
Bearish Histogram color : histogram color when right vwap is lower than left vwap, default red
Bullish Histogram color : histogram color when right vwap is higher than left vwap, default green
Neutral Histogram color : histogram color when the delta between right and left vwaps is equal or lower than the Neutral treshold, default blue
VOLUME LABELS : show volume labels
Volume labels color : color for the volume labels, default white
Volume Labels size : text size for the volume labels, choose between AUTO, TINY, SMALL, NORMAL or LARGE, default TINY
TRACK PRICE : show a yellow ball tracking the last price, default true
█ LIMITS
This indicator only works on intraday charts (minutes only) up to 12H (720m), the lower chart timeframe you can use is 1m
This indicator needs price, time and volume to work, it will not work on an index (there is no volume), the execution will not be allowed
The histogram (volume profile) can be plotted on 24H sessions as limit but you can plot several 24H sessions
█ ERRORS AND PERFORMANCE
Depending on the choosed settings, the script performance will be highly affected and it will experience errors
Two of the more common errors it can throw are:
• Calculation takes too long to execute
• Loop takes too long
The indicator performance is highly related to the underlying volatility (tick wise), the script takes each candlestick or bar and for each tick in it stores the price and volume, if the ticker in your chart has thousands and thousands of ticks per bar the indicator will throw an error for sure, it can not calculate in time such amount of ticks.
What all of that means? Simply put, this will throw error on the BITCOIN pair BTCUSD (high volatility with tick size 0.01) because it has too many ticks per bar, but lucky you it will work just fine on the futures contract BTC1! (tick size 5) because it has a lot less ticks per bar
There are some options you can fine tune to boost the script performance, the more demanding option in terms of resources consumption is Updates per period , by default is maxed out so lowering this setting will improve the performance in a high way.
If you wanna know more about how to improve the script performance, read the HELP INFO accessible from the settings panel
█ HOW-TO SETUP
The basic parameters to adjust are Period size , Ticks per bar and Pixels per bar
• Period size is the main setting, defines the waindrop size, to get a better looking histogram set bigger period and smaller chart timeframe
• Ticks per bar is the tricky one, adjust it differently for each underlying (ticker) volatility wise, for some you will need a low value, for others a high one.
To get a more accurate histogram set it as lower as you can (min value is 1)
• Pixels per bar allows you to adjust the width of each histogram bar, with it you can adjust the blank space between them or allow overlaping
You must play with these three parameters until you obtain the desired histogram: smoother, sharper, etc...
These are some of the different kind of charts you can setup thru the settings:
• Balanced Waindrops (default): charts with waindrops where the two halfs are of same size.
This is the default chart, just select a period (30m, 60m, 120m, 240m, pick your poison), adjust the histogram ticks and pixels and watch
• Unbalanced Waindrops: chart with waindrops where the two halfs are of different sizes.
Do you trade futures and want to plot a waindrop with the first half for the overnight session and the second half for the cash session? you got it;
just adjust the period to 1860 for any CME ticker (like ES1! for example) adjust the histogram ticks and pixels and watch
• Full Session Volume Profile: chart with waindrops where only the first half plots.
Do you use Volume profile to analize the market? Lucky you, now you can trick this one to plot it, just try a period of 780 on SPY, 2760 on ES1!, or 2880 on EURUSD
remember to adjust the histogram ticks and pixels for each underlying
• Only Bars: charts with only central and vwap bars plotted, simply deactivate the histogram and volume labels
• Only Histogram: charts with only the histogram plotted (volume profile charts), simply deactivate the bars and volume labels
• Only Volume: charts with only the raw volume numbers plotted, simply deactivate the bars and histogram
If you wanna know more about custom full session periods for different asset classes, read the HELP INFO accessible from the settings panel
EXAMPLES
Full Session Volume Profile on MES 5m chart:
Full Session Unbalanced Waindrop on MNQ 2m chart (left side Overnight session, right side Cash Session):
The following examples will have the exact same charts but on four different tickers representing a futures contract, a forex pair, an etf and a stock.
We are doing this to be able to see the different parameters we need for plotting the same kind of chart on different assets
The chart composition is as follows:
• Left side: Volume Labels chart (period 10)
• Upper Right side: Waindrops (period 60)
• Lower Right side: Full Session Volume Profile
The first example will specify the main parameters, the rest of the charts will have only the differences
MES :
• Left: Period size: 10, Bars: uncheck, Histogram: uncheck, Execution window: 1, Ticks per bar: 2, Updates per period: EACH BAR,
Pixels per bar: 4, Volume labels: check, Track price: check
• Upper Right: Period size: 60, Bars: check, Bars color mode: HISTOGRAM, Histogram: check, Execution window: 2, Ticks per bar: 2,
Updates per period: EACH BAR, Pixels per bar: 4, Volume labels: uncheck, Track price: check
• Lower Right: Period size: 2760, Bars: uncheck, Histogram: check, Execution window: 1, Ticks per bar: 1, Updates per period: EACH BAR,
Pixels per bar: 2, Volume labels: uncheck, Track price: check
EURUSD :
• Upper Right: Ticks per bar: 10
• Lower Right: Period size: 2880, Ticks per bar: 1, Pixels per bar: 1
SPY :
• Left: Ticks per bar: 3
• Upper Right: Ticks per bar: 5, Pixels per bar: 3
• Lower Right: Period size: 780, Ticks per bar: 2, Pixels per bar: 2
AAPL :
• Left: Ticks per bar: 2
• Upper Right: Ticks per bar: 6, Pixels per bar: 3
• Lower Right: Period size: 780, Ticks per bar: 1, Pixels per bar: 2
█ THANKS TO
PineCoders for all they do, all the tools and help they provide and their involvement in making a better community
scarf for the idea of coding a waindrops like indicator, I did not know something like that existed at all
All the Pine Coders, Pine Pros and Pine Wizards, people who share their work and knowledge for the sake of it and helping others, I'm very grateful indeed
I'm learning at each step of the way from you all, thanks for this awesome community;
Opensource and shared knowledge: this is the way! (said with canned voice from inside my helmet :D)
█ NOTE
This description was formatted following THIS guidelines
═════════════════════════════════════════════════════════════════════════
I sincerely hope you enjoy reading and using this work as much as I enjoyed developing it :D
GOOD LUCK AND HAPPY TRADING!
Multi SMA EMA WMA HMA BB (4x3 MAs Bollinger Bands) Pro MTF - RRBMulti SMA EMA WMA HMA 4x3 Moving Averages with Bollinger Bands Pro MTF by RagingRocketBull 2018
Version 1.0
This indicator shows multiple MAs of any type SMA EMA WMA HMA etc with BB and MTF support, can show MAs as dynamically moving levels.
There are 4 MA groups + 1 BB group. You can assign any type/timeframe combo to a group, for example:
- EMAs 50,100,200 x H1, H4, D1, W1 (4 TFs x 3 MAs x 1 type)
- EMAs 8,13,21,55,100,200 x M15, H1 (2 TFs x 6 MAs x 1 type)
- D1 EMAs and SMAs 12,26,50,100,200,400 (1 TF x 6 MAs x 2 types)
- H1 WMAs 7,77,231; H4 HMAs 50,100,200; D1 EMAs 144,169,233; W1 SMAs 50,100,200 (4 TFs x 3 MAs x 4 types)
- +1 extra MA type/timeframe for BB
compile time: 25-30 sec
full redraw time after parameter change in UI: 3 sec
There are several versions: Simple, MTF, Pro MTF, Advanced MTF and Ultimate MTF. This is the Pro MTF version. The Differences are listed below. All versions have BB
- Simple: you have 2 groups of MAs that can be assigned any type (5+5)
- MTF: +2 custom Timeframes for each group (2x5 MTF)
- Pro MTF: +4 custom Timeframes for each group (4x3 MTF), MA levels and show max bars back options
- Advanced MTF: +2 extra MAs/group (4x5 MTF), custom Ticker/Symbol, backreferences for type, TF and MA lengths in UI
- Ultimate MTF: +individual settings for each MA, custom Ticker/Symbols
Features:
- 4x3 = 12 MAs of any type including Hull Moving Average (HMA)
- 4x MTF groups with step line smoothing
- BB +1 extra TF/type for BB MAs
- 12 MA levels with adjustable group offsets, indents and shift
- show max bars back
- you can show/hide both groups of MAs/levels and individual MAs
Notes:
1. based on 3EmaBB, uses plot*, barssince and security functions
2. you can't set certain constants from input due to Pinescript limitations - change the code as needed, recompile and use as a private version
3. Levels = trackprice implementation
4. Show Max Bars Back = show_last implementation
5. uses timeframe textbox instead of input resolution to allow for 120 240 and other custom TFs. Also supports TFs in hours: 2H or H2
6. swma has a fixed length = 4, alma and linreg have additional offset and smoothing params
7. Smoothing is applied by default for visual aesthetics on MTF. To use exact ma mtf values (lines with stair stepping) - disable it
MTF Notes:
- uses simple timeframe textbox instead of input resolution dropdown to allow for 120, 240 and other custom TFs, also supports timeframes in H: 2H, H2
- Groups that are not assigned a Custom TF will use Current Timeframe (0).
- MTF will work for any MA type assigned to the group
- MTF works both ways: you can display a higher TF MA/BB on a lower TF or a lower TF MA/BB on a higher TF.
- MTF MA values are normally aligned at the boundary of their native timeframe. This produces stair stepping when a higher TF MA is viewed on a lower TF.
Therefore X Y Point Density/Smoothing is applied by default on MA MTF for visual aesthetics. Set both to 0 to disable and see exact ma mtf values (lines with stair stepping and original mtf alignment).
- Smoothing is disabled for BB MTF bands because fill doesn't work with smoothed MAs after duplicate values are replaced with na.
- MTF MA Value fluctuation is possible on the current bar due to default security lookahead
Smoothing:
- X,Y == 0 - X,Y smoothing disabled (stair stepping on high TFs)
- X == 0, Y > 0 - X,Y smoothing applied to all TFs
- Y == 0, X > 0 - X smoothing applied to all TFs < deltaX_max_tf, Y smoothing disabled
- X > 0, Y > 0 - Y smoothing applied to all TFs, then X smoothing applied to all TFs < deltaX_max_tf
X Smoothing with Y == 0 - shows only every deltaX-th point starting from the first bar.
X Smoothing with Y > 0 - shows only every deltaX-th point starting from the last shown Y point, essentially filling huge gaps remaining after Y Smoothing with points and preserving the curve's general shape
X Smoothing on high TFs with already scarce points produces weird curve shapes, it works best only on high density lower TFs
Y Smoothing reduces points on all TFs, removes adjacent points with prices within deltaY, while preserving the smaller curve details.
A combination of X,Y produces the most accurate smoothing. Higher delta value - larger range, more points removed.
Show Max Bars Back:
- can't set plot show_last from input -> implemented using a timenow based range check
- you can't delete/modify history once plotted, so essentially it just sets a start point for plotting (from num_bars bars back) that works only in realtime mode (not in replay)
Levels:
You can plot current MA value using plot trackprice=true or by checking Show Price Line in Style. Problem is:
- you can only change color (not the dashed line style, width), have both ma + price line (not just the line), and it's full screen wide
- you can't set plot trackprice from input => implemented using plotshape/plotchar with fixed text labels serving as levels
- there's no other way of creating a dynamic level: hline, plot, offset - nothing else works.
- you can't plot a text var - all text strings must be constants, so you can't change the style, width and text labels without recompiling.
- from input you can only adjust offset, indent and shift for each level group, and change color
- the dot below each level line is the exact MA value. If you want just the line swap plotshape with plotchar, recompile and save as your private version, adjust Y shift.
To speed up redraw times: reduce last_bars to ~2000, recompile and use as your own private version
Pinescript is a rudimentary language (should be called Painscript instead) that can basically only plot data. You can't do much else. Please see the code for tips and hints.
Certain things just can't be done or require shady workarounds and weeks of testing trying to resolve weird node.js compiler errors.
Feel free to learn from/reuse/change the code as needed and use as your own private version. See comments in code. Good Luck!
ADR Dashboard with Move, Left and AlertsIndicator Name: ADR Dashboard with Move, Left and Alerts
Overview
The ADR Dashboard is a powerful real-time trading tool that tracks how much a stock, crypto, or other asset has moved today relative to its Average Daily Range (ADR). It provides a clear visual representation of:
1. Today’s price movement (Move)
2. Remaining potential movement left to reach ADR (Left)
3. Percentage of ADR covered (% Covered)
4.Additionally, it provides automated alerts for key movement thresholds.
A) What it Does
1.Calculates the Average Daily Range (ADR):
2. Uses True Range over a user-defined lookback period (default 14 days).
3. ADR measures typical daily volatility.
B) Tracks Today’s Move:
1. Move = Current Price – Today’s Open (Realtime)
2. Positive → bullish move, Negative → bearish move
C) Tracks Remaining Potential (Left):
1. Left = ADR – |Move| (Realtime)
2. Shows how much of the ADR is still available for today’s move
3. Percentage Covered:
4. % Covered = |Move| / ADR × 100
D) Color-coded for visual clarity:
1. Green (<50%) → small move, plenty of range left
2. Yellow (50–80%) → moderate move, watch for acceleration
3. Orange (80–100%) → strong move, ADR almost reached
4. Red (>100%) → ADR exceeded, momentum may be exhausted
E) Dashboard Table:
1. Columns: ADR | Move | Left | % Covered
2. Position: middle-right of the chart
F) Left column color-coded:
1. Green → some ADR left
2. Red → ADR fully reached or exceeded
3. Move column: usually yellow for visibility, but could be enhanced for positive/negative moves
G) Alerts
The indicator provides directional alerts:
Bullish Alerts (upward moves):
1. 90% ADR warning: fires when Move ≥ 90% of ADR → early warning of strong bullish momentum
2. 100% ADR breach: fires when Move ≥ ADR → full daily range reached
Bearish Alerts (downward moves):
1. 90% ADR warning: fires when Move ≤ -90% of ADR → early warning of strong bearish momentum
2. 100% ADR breach: fires when Move ≤ -ADR → full daily range reached
All alerts are unique and fire once per session per threshold.
H) How Traders Can Use This Indicator
Momentum Trading:
1. Identify strong intraday moves approaching ADR.
2. Enter positions early at 90% ADR warning or take profits near 100% ADR.
Scalping & Intraday Trading:
1. Gauge how much of today’s range is left for quick entries/exits.
2. Avoid trades when ADR is almost fully consumed → reduces risk of reversals.
Swing Trading:
1. Combine with trend indicators to see if today’s move is significant relative to historical volatility.
I) Risk Management:
1. Set profit targets or stop-loss levels based on Move and Left values.
Visual Efficiency:
At-a-glance view of Move, Left, % Covered, and alert status without manual calculations.
Key Features
1. Real-time Move and Left updates
2. Color-coded % Covered and Left for quick visualization
3. Alerts for 90% and 100% ADR levels, bullish and bearish
4. Clean dashboard table at middle-right of the chart
5. Works across stocks, crypto, forex, and other markets
J) Why This Indicator is Powerful
1. Combines volatility (ADR) with real-time price tracking
2. Provides visual clarity and actionable alerts
3. Helps traders stay ahead of intraday moves, manage risk, and time entries/exits effectively
Daily Candle Bias Backtesting Stats @MaxMaserati This indicator, is a powerful backtesting and probability tool designed to quantify the "follow-through" of specific candle types across different market sessions.
It identifies specific price action setups and tracks whether price hits a "Target" (continuation) or an "Invalidation" (reversal) first, providing real-time win rates for your favorite sessions.
The Candle Bias Stats indicator automatically categorizes every candle based on the MMM candle bias and tracks their historical success rate. It calculates how often a candle's high/low is broken before its opposite end is touched. By breaking this data down into sessions (Asian, London, NY), it identifies high-probability "time-of-day" windows where specific price action setups are most reliable.
MMM CANDLE LOGIC
Bullish Expansion & Breakout Signatures
Bullish Body Close Plus (BuBC Plus): Represents strong bullish momentum where price closes above the previous high and near its own top, signaling that buyers are in complete control.
Bullish Body Close Minus (BuBC Minus): Indicates weak bullish momentum; while the price closes above the previous high, a long top wick shows sellers pushed back, suggesting a potential retest of the previous high.
Bearish Expansion & Breakout Signatures
Bearish Body Close Plus (BeBC Plus): A very strong bearish signal where price closes below the previous low and near its own bottom, indicating sellers are dominant.
Bearish Body Close Minus (BeBC Minus): Signifies weak bearish momentum; the price breaks the previous low but finishes with a long bottom wick as buyers push back, often leading to a retest of the old ceiling.
Bullish Reversal & Trap Signatures (Affinity)
Bullish Affinity Plus (BuAF Plus): A strong bullish reversal where a new low is made, but sellers hit a wall and get trapped, causing price to finish near its top with a long bottom wick.
Bullish Affinity Minus (BuAF Minus): A weak bullish bounce where a new low is made and price finishes back inside the previous range, but buyers lack the energy for a significant move.
Bearish Reversal & Trap Signatures (Affinity)
Bearish Affinity Plus (BeAF Plus): A strong bearish reversal; buyers are trapped after making a new high, and price finishes near its bottom with a long top wick.
Bearish Affinity Minus (BeAF Minus): A weak bearish drop where sellers stop the rise but lack the energy to push price significantly lower.
Neutral & Volatility Signatures
Close Inside Bullish (CI•BuAF): Bullish neutral state where price stays inside the previous candle’s range but finishes in the top half, indicating buyers are slightly more active.
Close Inside Bearish (CI•BeAF): Bearish neutral state where price remains inside the previous box and finishes in the bottom half.
Seek & Destroy Bullish (S&D•BuAF): Bullish volatility characterized by price moving above and below the previous candle before buyers win the battle and close price near the top.
Seek & Destroy Bearish (S&D•BeAF): Bearish volatility where sellers win a high-chaos battle, closing price near the bottom after sweeping both sides of the previous candle.
H4 CANDLE EXAMPLE
Deep Dive: Analysis of the 4H Statistics
The image presents a comprehensive backtest of 4,999 total candles from September 2022 to December 2025. Here is the breakdown of what the interface is telling us:
1. The Strategy: Target vs. Invalidation
The indicator tracks BuBC (Bullish Body Close) and BeBC (Bearish Body Close).
The Target: For a Bullish candle, the target is the High. For a Bearish candle, it is the Low.
The Invalidation: The opposite end of the candle (the Low for Bullish, the High for Bearish).
The Goal: To see which level is touched first in the subsequent bars.
2. Global Performance (The Top Right Table)
Looking at the BuBC (1402 samples) section:
Target First (67.8%): In nearly 7 out of 10 cases, once a 4H candle closes "bullish" (breaking the previous high), the price continues higher to break its own high before it ever returns to take out its own low.
Both Hit (17.7%): This is a critical metric. It represents "Stop Runs" or "Wicks" where price hits the target but also hits the invalidation within the same tracking period.
Efficiency (1.3 Bars): This tells us the "follow-through" is almost immediate. If the trade doesn't work within 1 or 2 candles, the statistical edge drops off significantly.
3. The Session Breakdown (The Bottom Left Table)
This is where the "Edge" is found. Not all hours of the day are created equal.
Asian Late (02:00-06:00) – The "Star" Performer: With a 72.9% Target rate, this is labeled "BEST." It has the lowest "Both%" (6.5%), meaning moves during these hours are incredibly "clean." If a setup forms here, price usually moves directly to the target without looking back.
London Open & Overlap (06:00-14:00): These sessions maintain a high win rate (approx. 70%). This suggests that the European session provides reliable trend continuation for the S&P 500.
NY Session (14:00-18:00) – The "Trap" Zone: This is labeled "WORST" for a reason. While the win rate is basically a coin flip (49.6%), the Both% spikes to 36.7%. This means that even if you are right about the direction, the market is highly likely to "sweep" your stop loss before going to the target. It is the most volatile and "fake-out" prone time for this specific setup.
Summary of the Data
The statistics show that the S&P 500 4H Candle Bias is a highly reliable trend-following indicator, provided you trade it at the right time.
The data suggests a clear three-step logic:
Directional Edge: Both Bullish and Bearish body closes have a natural ~67% probability of continuation.
Timing is Everything: Trading during the Late Asian and London sessions increases your probability of success to over 70% with very low risk of a "fake-out."
Risk Warning: Avoid "Body Close" breakout strategies during the NY Mid-day (14:00-18:00). The statistics prove that this window is dominated by "Seek and Destroy" price action, where price is mathematically likely to hit both your target and your stop, usually hitting the stop first.
Kalman VWAP Filter [BackQuant]Kalman VWAP Filter
A precision-engineered price estimator that fuses Kalman filtering with the Volume-Weighted Average Price (VWAP) to create a smooth, adaptive representation of fair value. This hybrid model intelligently balances responsiveness and stability, tracking trend shifts with minimal noise while maintaining a statistically grounded link to volume distribution.
If you would like to see my original Kalman Filter, please find it here:
Concept overview
The Kalman VWAP Filter is built on two core ideas from quantitative finance and control theory:
Kalman filtering — a recursive Bayesian estimator used to infer the true underlying state of a noisy system (in this case, fair price).
VWAP anchoring — a dynamic reference that weights price by traded volume, representing where the majority of transactions have occurred.
By merging these concepts, the filter produces a line that behaves like a "smart moving average": smooth when noise is high, fast when markets trend, and self-adjusting based on both market structure and user-defined noise parameters.
How it works
Measurement blend : Combines the chosen Price Source (e.g., close or hlc3) with either a Session VWAP or a Rolling VWAP baseline. The VWAP Weight input controls how much the filter trusts traded volume versus price movement.
Kalman recursion : Each bar updates an internal "state estimate" using the Kalman gain, which determines how much to trust new observations vs. the prior state.
Noise parameters :
Process Noise controls agility — higher values make the filter more responsive but also more volatile.
Measurement Noise controls smoothness — higher values make it steadier but slower to adapt.
Filter order (N) : Defines how many parallel state estimates are used. Larger orders yield smoother output by layering multiple one-dimensional Kalman passes.
Final output : A refined price trajectory that captures VWAP-adjusted fair value while dynamically adjusting to real-time volatility and order flow.
Why this matters
Most smoothing techniques (EMA, SMA, Hull) trade off lag for smoothness. Kalman filtering, however, adaptively rebalances that tradeoff each bar using probabilistic weighting, allowing it to follow market state changes more efficiently. Anchoring it to VWAP integrates microstructure context — capturing where liquidity truly lies rather than only where price moves.
Use cases
Trend tracking : Color-coded candle painting highlights shifts in slope direction, revealing early trend transitions.
Fair value mapping : The line represents a continuously updated equilibrium price between raw price action and VWAP flow.
Adaptive moving average replacement : Outperforms static MAs in variable volatility regimes by self-adjusting smoothness.
Execution & reversion logic : When price diverges from the Kalman VWAP, it may indicate short-term imbalance or overextension relative to volume-adjusted fair value.
Cross-signal framework : Use with standard VWAP or other filters to identify convergence or divergence between liquidity-weighted and state-estimated prices.
Parameter guidance
Process Noise : 0.01–0.05 for swing traders, 0.1–0.2 for intraday scalping.
Measurement Noise : 2–5 for normal use, 8+ for very smooth tracking.
VWAP Weight : 0.2–0.4 balances both price and VWAP influence; 1.0 locks output directly to VWAP dynamics.
Filter Order (N) : 3–5 for reactive short-term filters; 8–10 for smoother institutional-style baselines.
Interpretation
When price > Kalman VWAP and slope is positive → bullish pressure; buyers dominate above fair value.
When price < Kalman VWAP and slope is negative → bearish pressure; sellers dominate below fair value.
Convergence of price and Kalman VWAP often signals equilibrium; strong divergence suggests imbalance.
Crosses between Kalman VWAP and the base VWAP can hint at shifts in short-term vs. long-term liquidity control.
Summary
The Kalman VWAP Filter blends statistical estimation with market microstructure awareness, offering a refined alternative to static smoothing indicators. It adapts in real time to volatility and order flow, helping traders visualize balance, transition, and momentum through a lens of probabilistic fair value rather than simple price averaging.
MA Oscillator Map [ChartPrime]⯁ OVERVIEW
The MA Oscillator Map transforms moving average deviations into an oscillator framework that highlights overextended price conditions. By normalizing the difference between price and a chosen moving average, the tool maps oscillations between -100 and +100 , with gradient coloring to emphasize bullish and bearish momentum. When the oscillator cools from extreme levels (-100/100), the indicator marks potential reversal points and extends short-term levels from those extremes. A compact side table and dynamic bar coloring make momentum context visible at a glance.
⯁ KEY FEATURES
Oscillator Mapping (±100 Scale):
Price deviation from the selected MA is normalized into a percentage scale, allowing consistent overbought/oversold readings across assets and timeframes.
// MA
MA = ma(close, maLengthInput, maTypeInput)
diff = src - MA
maxVal = ta.highest(math.abs(diff), 50)
osc = diff / maxVal * 100
Customizable MA Types:
Choose SMA, EMA, SMMA, WMA, or VWMA to fine-tune the smoothing method that powers the oscillator.
Extreme Signal Diamonds:
When the oscillator retreats from +100 or -100, the script plots diamonds to flag potential exhaustion and reversal zones.
Dynamic Levels from Extremes:
Upper and lower dotted lines extend from recent overextension points, projecting temporary barriers until broken by price.
Gradient Bar Coloring:
Candles and oscillator values adopt a bullish-to-bearish gradient, making shifts in momentum instantly visible on the chart.
Compact Momentum Map:
A table at the chart’s edge plots the oscillator position with a gradient scale and live percentage label for precise momentum tracking.
⯁ USAGE
Watch for diamonds after the oscillator exits ±100 — these mark potential exhaustion zones.
Use extended dotted levels as short-term reference lines; if broken, trend continuation is favored.
Combine gradient bar coloring with oscillator shifts for confirmation of momentum reversals.
Experiment with different MA types to adapt sensitivity for trending vs. ranging markets.
Use the side momentum table as a quick-read gauge of trend strength in percent terms.
⯁ CONCLUSION
The MA Oscillator Map reframes moving average deviations into a visual momentum tracker with extremes, reversal signals, and dynamic levels. By blending oscillator math with intuitive visuals like gradient candles, diamonds, and a live gauge, it helps traders spot overextension, exhaustion, and momentum shifts across any market.
Ichimoku Screener [Pineify]Advanced Multi-Timeframe Ichimoku Screener - Complete Market Analysis Tool
This sophisticated Ichimoku Screener represents a comprehensive approach to multi-timeframe market analysis, combining four distinct Ichimoku-based indicators into a unified screening system. Unlike traditional single-symbol indicators, this screener provides simultaneous analysis across multiple assets and timeframes, enabling traders to identify optimal trading opportunities with enhanced precision and efficiency.
Key Features
Multi-asset screening capability for up to 10 symbols simultaneously
Four customizable timeframes per symbol for comprehensive analysis
Four integrated Ichimoku-based indicators working in harmony
Real-time visual feedback with color-coded signals
Customizable Ichimoku parameters for personalized analysis
Clean, organized table display for easy interpretation
Automated signal strength assessment and timing
How It Works
The screener employs the traditional Ichimoku Kinko Hyo methodology, utilizing five core components: Conversion Line (Tenkan-sen), Base Line (Kijun-sen), Leading Span A (Senkou Span A), Leading Span B (Senkou Span B), and displacement calculations. Each component is mathematically calculated using specific period lengths:
Conversion Line = (Highest High + Lowest Low) / 2 over conversion period
Base Line = (Highest High + Lowest Low) / 2 over base period
Leading Span A = (Conversion Line + Base Line) / 2
Leading Span B = (Highest High + Lowest Low) / 2 over lagging span period
The screener processes these calculations across multiple securities simultaneously using TradingView's security() function, enabling real-time cross-asset analysis. The system tracks state changes using barssince() functions to provide precise timing information for each signal type.
Trading Ideas and Insights
This screener excels in identifying momentum convergence patterns where multiple Ichimoku components align across different timeframes. The most powerful signals occur when:
Cloud color aligns with price position relative to the cloud
Conversion Line crosses above/below Base Line in the same direction as cloud bias
Multiple timeframes show consistent directional bias
Entry signals appear with minimal bars since formation (indicating fresh momentum)
For trend following strategies , focus on symbols where the cloud maintains consistent color across higher timeframes while showing recent entry signals on lower timeframes. For reversal opportunities , identify assets where cloud color changes coincide with price re-entering the cloud after extended periods above or below.
The screener particularly excels in cryptocurrency and forex markets where momentum shifts can be dramatic and sustained. By monitoring multiple timeframes simultaneously, traders can identify when short-term signals align with longer-term trends, significantly improving trade success probability.
How Multiple Indicators Work Together
The four integrated indicators create a comprehensive analytical framework through synergistic interaction:
Ichimoku Cloud (IchiCld) establishes the primary trend bias by comparing Leading Span A with Leading Span B. When Span A > Span B, the cloud displays bullish characteristics; when Span A < Span B, bearish characteristics emerge. The indicator tracks duration since the last cloud color change, providing momentum persistence insight.
Ichimoku Lagging Cloud (IchiLagCld) determines price position relative to the displaced cloud formation. This indicator identifies whether current price action occurs above, below, or within the cloud structure, revealing support/resistance dynamics and trend confirmation signals.
Conversion vs Base (IchiC>Base) monitors the relationship between short-term (Conversion Line) and medium-term (Base Line) momentum. Crossovers in this relationship often precede significant price movements and provide early trend change warnings.
Ichimoku Entry (IchiEnt) synthesizes all components into actionable signals by requiring alignment between cloud bias, price position, and conversion/base relationship. This multi-factor confirmation approach significantly reduces false signals while maintaining sensitivity to genuine momentum shifts.
The mathematical foundation ensures that each indicator contributes unique information while maintaining logical consistency. The system's strength lies in requiring multiple confirmations before generating entry signals, following Ichimoku's original philosophy of comprehensive market analysis.
Unique Aspects
This implementation distinguishes itself through several innovative features:
Advanced State Tracking : Unlike standard Ichimoku indicators that show current values, this screener tracks duration since state changes , providing crucial timing information for signal freshness and momentum strength assessment.
Multi-Asset Efficiency : The screener eliminates the need to manually check multiple charts by presenting comparative analysis across assets and timeframes in a single view, dramatically improving analytical efficiency.
Customizable Visual Feedback : The color-coding system adapts to different signal types and strengths, with recent signals receiving enhanced visual prominence to draw attention to fresh opportunities.
Professional Table Architecture : The organized display accommodates up to 40 symbol-timeframe combinations (10 symbols × 4 timeframes), with intelligent pagination for optimal screen utilization.
Signal Correlation Analysis : By displaying multiple timeframes for each symbol, traders can quickly identify timeframe confluence and divergence patterns that would otherwise require extensive manual analysis.
How to Use
Symbol Configuration : Enter up to 10 symbols in the Symbol input group. Use full exchange:ticker format for optimal compatibility (e.g., "BINANCE:BTCUSDT").
Timeframe Selection : Configure four timeframes in ascending order for logical analysis progression. Recommended combinations include 1m/5m/15m/1h for intraday analysis or 1h/4h/1D/1W for swing trading.
Ichimoku Parameters : Adjust the four core parameters based on your trading style:
Conversion Line Length (default: 9) - Controls short-term momentum sensitivity
Base Line Length (default: 26) - Determines medium-term trend identification
Leading Span B Length (default: 52) - Sets long-term trend calculation period
Displacement (default: 26) - Controls forward projection of cloud structure
Signal Interpretation :
Green backgrounds indicate bullish conditions
Red backgrounds indicate bearish conditions
Numerical values show bars since last state change
"L:" prefix indicates long entry signals
"S:" prefix indicates short entry signals
"N/A" indicates neutral/transitional states
Trading Workflow : Scan for symbols showing consistent signals across multiple timeframes, prioritize fresh signals (low bar counts), and use individual charts for precise entry timing and risk management.
Customization
The screener accommodates various trading approaches through parameter adjustment:
Scalping Configuration : Use shorter periods (Conversion: 5, Base: 13, Span B: 26) with 1m/3m/5m/15m timeframes for high-frequency opportunities.
Swing Trading Setup : Employ standard parameters with 4h/1D/3D/1W timeframes for position trading across days or weeks.
Cryptocurrency Optimization : Given crypto's 24/7 nature, consider using 4h/8h/1D/3D combinations for optimal signal timing.
Symbol selection can focus on correlated assets (e.g., major cryptocurrencies) for sector analysis or diverse assets for portfolio opportunity identification. The flexible timeframe configuration allows adaptation to any market's characteristic volatility and trading patterns.
Conclusion
This Advanced Multi-Timeframe Ichimoku Screener transforms traditional single-chart analysis into a comprehensive market monitoring system. By integrating multiple Ichimoku components across various timeframes and assets, it provides traders with unprecedented analytical efficiency and signal reliability.
The mathematical rigor of traditional Ichimoku analysis combines with modern Pine Script capabilities to deliver a professional-grade screening tool. Whether used for identifying trend continuation opportunities, spotting potential reversals, or conducting broad market analysis, this screener offers the analytical depth and practical functionality required for serious trading applications.
The system's emphasis on signal confluence across multiple timeframes and indicators significantly improves trade selection quality while reducing analysis time. For traders seeking to leverage Ichimoku's proven methodology across multiple markets simultaneously, this screener represents an essential analytical upgrade to traditional single-symbol approaches.
Iron Condor Pro v6 – Full EngineIronCondor Engine v6.6 is a multi-mode options strategy tool for planning and managing iron condors, straddles, strangles, and butterflies. It supports both setup planning and live trade tracking with modeled delta, risk-based strike selection, IV rank estimation, and visual breach alerts.
Use Setup Mode to preview strike structures based on IV proxy, ATR, delta targeting, and risk tier (High/Mid/Low/Delta). Use Live Mode to track real trades, enter strike/premium data, and monitor live P&L, delta drift, and range status.
This script does not connect to live option chains. Volatility and delta are modeled using price history. All strikes and premiums must be confirmed using your broker before placing trades. Best used with strong support/resistance levels and high IV rank (30%+).
For educational purposes only.
Workflow Guide
Use this flow whether you're setting up on Sunday night or any day before placing a trade.
Step 0: Pre-Script Preparation
Before using the script:
Identify major support and resistance zones on your chart. Define the expected range or consolidation area. Use this context to help evaluate strike placement
1. Setup Phase (Pre-Trade Planning)
Step 1 – Load the Script
Add: IronCondor Engine v6.6 – Full Risk/Decay Edition to your chart
Step 2 – Set Mode = Setup
This enables planning mode, where the engine calculates strike combinations based on:
Your selected risk profile (High, Mid, Low, or Delta)
Historical volatility (20-day log return)
ATR (Average True Range)
Target short delta (adjustable)
Step 3 – Review Setup Table
Enable Show Setup Table to view calculated strikes and width by risk tier.
Adjust any of the following as needed:
Target Short Delta
Strike Interval ($)
Width multipliers (High/Mid/Low)
Risk tier under Auto-Feed Choice
Step 4 – Evaluate the Setup
Is the net credit at least 1.5–2.0x your max risk?
Are the short strikes clearly outside support/resistance zones?
Are the short deltas between 0.15 and 0.30?
Is the range wide enough to handle normal price movement?
Step 5 – Prep for Execution
Enable Auto-Feed Setup → Live to carry Setup strikes into Live mode
Or disable it if you prefer to manually enter strikes later
2. Trade Execution (Live Tracking Mode)
Step 1 – Place the Trade with Your Broker
Use your brokerage (TOS, Tasty, IBKR, etc.) to place the iron condor or other structure
Step 2 – Set Mode = Live
In Live mode:
If Auto-Feed is ON, the Setup strikes auto-populate
If Auto-Feed is OFF, manually enter:
Short and long strikes (Call and Put)
Premiums collected/paid per leg
Total net credit (Entry Credit)
Optional: Input current mid prices for each leg in the "Live Chain" section to track live mark-to-market P&L
Once all required fields are valid, the script activates:
Real-time profit/loss tracking
Max risk estimate
Delta monitoring on short legs
IV Rank estimate
Breach detection system
Chart visuals (if enabled)
3. Trade Management (During the Week)
While the trade is active, use the dashboard and visuals to monitor:
Key Metrics:
Unrealized P/L %
Mark-to-market value vs entry credit
Daily decay (theta)
Days until expiration
Breach status:
In Range
Near Breach
Breached
Alerts:
Price near short strike → suggests roll
Price breaches long strike → breach alert
50% or 75% profit → optional exit signal
Delta exceeds threshold → exposure may need adjustment
Management Tips:
At 50–75% profit: consider closing early
If price nears a short leg: roll, hedge, or manage
If nearing expiry: decide whether to hold or close
If IV collapses: may accelerate time decay or reduce exit value
4. End-of-Week or Expiration Management
If Profit Target Hit
Close early to reduce risk and lock gains
If Still Open Near Expiry
Close the position or
Hold through expiration only if you're fully prepared for pinning/gamma/assignment scenarios
Avoid holding open spreads over the weekend unless part of a defined strategy
Reference Notes
Strike Width
Defined as:
Width = Distance between Short and Long strike
Used for calculating max loss and breach visuals
Delta Guidelines
0.15–0.20 = safer, wider range, lower credit
0.25–0.30 = more aggressive, tighter range, higher credit
Use Target Short Delta input to adjust auto-selected strikes accordingly
Credit Example
Sell Call: $1.04
Sell Put: $0.23
Buy Call + Put wings: $0.14
Net Credit = $1.13 = $113 per contract (max profit)
This is the max profit if price stays between short strikes through expiration
IV Rank (Estimated)
This script does not use options chain IV data.
Instead, it calculates a volatility proxy:
ivRaw = ta.stdev(log returns, 20) * sqrt(252)
IV Rank is then calculated as the percentile of this value within the last 252 bars.
High IV Rank (30%–100%) → better premium-selling conditions
Low IV Rank (<30%) → lower edge for condors
Ideal to sell premium when IV Rank is above 30–50%
Disclosures and Limitations
This script is for educational use only
It does not connect to live option chains
All strikes, deltas, and premiums must be validated through your broker
Always confirm real-time IV, delta, and pricing before placing a trade
Session Based Liquidity# Session Based Liquidity Indicator - Educational Open Source
## 📊 Overview
The Session Based Liquidity indicator is a comprehensive educational tool designed to help traders understand and visualize liquidity concepts across major trading sessions. This indicator identifies Buy-Side Liquidity (BSL) and Sell-Side Liquidity (SSL) levels created during Asia, London, and New York trading sessions, providing insights into institutional order flow and potential market reversal zones.
## 🎯 Key Features
### 📈 Multi-Session Tracking
- **Asia Session**: Tokyo/Sydney overlap (20:00-02:00 EST)
- **London Session**: European markets (03:00-07:30 EST)
- **New York Session**: US markets (09:30-16:00 EST)
- Individual session toggle controls for focused analysis
### 💧 Liquidity Level Detection
- **Buy-Side Liquidity (BSL)**: Identifies stop losses above swing highs where short positions get stopped out
- **Sell-Side Liquidity (SSL)**: Identifies stop losses below swing lows where long positions get stopped out
- Advanced filtering algorithm to identify only significant liquidity zones
- Configurable pivot strength for sensitivity adjustment
### 🎨 Visual Management System
- **Unclaimed Levels**: Active liquidity zones that haven't been hit (default: black lines)
- **Claimed Levels**: Swept liquidity zones showing historical interaction (default: red lines)
- Customizable line styles, colors, and widths for both states
- Dynamic label system showing session origin and level significance
- Real-time line extension and label positioning
### ⚙️ Advanced Configuration
- **Pivot Strength**: Adjust sensitivity (1-20) for liquidity detection
- **Max Levels Per Side**: Control number of tracked levels (1-10) per session
- **Label Offset**: Customize label positioning
- **Style Customization**: Full control over visual appearance
## 📚 Educational Value
### Core Concepts Explained
- **Liquidity Pools**: Areas where stop losses and pending orders cluster
- **Liquidity Sweeps**: When price moves through levels to trigger stops, then reverses
- **Session-Based Analysis**: How different market sessions create distinct liquidity characteristics
- **Institutional Order Flow**: Understanding how large players interact with retail liquidity
### Trading Applications
- Identify high-probability reversal zones after liquidity sweeps
- Understand where stop losses are likely clustered
- Avoid trading into obvious liquidity traps
- Use session context for timing entries and exits
- Recognize institutional accumulation and distribution patterns
### Code Learning Opportunities
- **Pine Script v6 Best Practices**: Modern syntax and efficient coding patterns
- **Object-Oriented Design**: Custom types and methods for clean code organization
- **Array Management**: Dynamic data structure handling for performance
- **Visual Programming**: Line, label, and styling management
- **Session Detection**: Time-based filtering and timezone handling
## 🔧 Technical Implementation
### Performance Optimized
- Efficient memory management with automatic cleanup
- Limited historical level tracking to maintain responsiveness
- Optimized array operations for smooth real-time updates
- Smart filtering to reduce noise and focus on significant levels
### Code Architecture
- **Modular Design**: Clean separation of concerns with dedicated methods
- **Type Safety**: Custom SessionLiquidity type for organized data management
- **Extensible Structure**: Easy to modify and enhance for specific needs
- **Educational Comments**: Comprehensive documentation throughout
## 💡 Usage Guide
### Basic Setup
1. Add indicator to chart
2. Configure session times for your timezone
3. Adjust pivot strength based on timeframe (higher for lower timeframes)
4. Enable/disable sessions based on your trading focus
### Interpretation
- **Unclaimed levels**: Watch for price interaction and potential reversals
- **Claimed levels**: Use as potential support/resistance after sweep
- **External levels**: Beyond session range, higher significance
- **Internal levels**: Within session range, may indicate ranging conditions
### Best Practices
- Use higher timeframes (15m+) for cleaner signals
- Combine with price action analysis for confirmation
- Consider session overlap periods for increased significance
- Monitor multiple sessions for comprehensive market view
## 🎓 Educational Goals
This open-source project aims to:
- Demystify liquidity concepts for retail traders
- Provide practical coding examples in Pine Script v6
- Encourage understanding of institutional trading behavior
- Foster community learning and collaboration
- Bridge the gap between theory and practical application
## 📄 License & Usage
Released under Mozilla Public License 2.0 - free for educational and commercial use with proper attribution.
## 🤝 Contributing
As an open-source educational tool, contributions are welcome! Whether it's bug fixes, feature enhancements, or educational improvements, your input helps the trading community learn and grow.
## ⚠️ Disclaimer
This indicator is for educational purposes only. All trading involves risk, and past performance does not guarantee future results. Always practice proper risk management and never risk more than you can afford to lose.
---
*By studying and using this indicator, traders can develop a deeper understanding of market microstructure and improve their ability to read institutional order flow patterns.*
ATR Stop-Loss with Fibonacci Take-Profit [jpkxyz]ATR Stop-Loss with Fibonacci Take-Profit Indicator
This comprehensive indicator combines Average True Range (ATR) volatility analysis with Fibonacci extensions to create dynamic stop-loss and take-profit levels. It's designed to help traders set precise risk management levels and profit targets based on market volatility and mathematical ratios.
Two Operating Modes
Default Mode (Rolling Levels)
In default mode, the indicator continuously plots evolving stop-loss and take-profit levels based on real-time price action. These levels update dynamically as new bars form, creating rolling horizontal lines across the chart. I use this mode primarily to plot the rolling ATR-Level which I use to trail my Stop-Loss into profit.
Characteristics:
Levels recalculate with each new bar
All selected Fibonacci levels display simultaneously
Uses plot() functions with trackprice=true for price tracking
Custom Anchor Mode (Fixed Levels)
This is the primary mode for precision trading. You select a specific timestamp (typically your entry bar), and the indicator locks all calculations to that exact moment, creating fixed horizontal lines that represent your actual trade levels.
Characteristics:
Entry line (blue) marks your anchor point
Stop-loss calculated using ATR from the anchor bar
Fibonacci levels projected from entry-to-stop distance
Lines terminate when price breaks through them
Includes comprehensive alert system
Core Calculation Logic
ATR Stop-Loss Calculation:
Stop Loss = Entry Price ± (ATR × Multiplier)
Long positions: SL = Entry - (ATR × Multiplier)
Short positions: SL = Entry + (ATR × Multiplier)
ATR uses your chosen smoothing method (RMA, SMA, EMA, or WMA)
Default multiplier is 1.5, adjustable to your risk tolerance
Fibonacci Take-Profit Projection:
The distance from entry to stop-loss becomes the base unit (1.0) for Fibonacci extensions:
TP Level = Entry + (Entry-to-SL Distance × Fibonacci Ratio)
Available Fibonacci Levels:
Conservative: 0.618, 1.0, 1.618
Extended: 2.618, 3.618, 4.618
Complete range: 0.0 to 4.764 (23 levels total)
Multi-Timeframe Functionality
One of the indicator's most powerful features is timeframe flexibility. You can analyze on one timeframe while using stop-loss and take-profit calculations from another.
Best Practices:
Identify your entry point on execution timeframe
Enable "Custom Anchor" mode
Set anchor timestamp to your entry bar
Select appropriate analysis timeframe
Choose relevant Fibonacci levels
Enable alerts for automated notifications
Example Scenario:
Analyse trend on 4-hour chart
Execute entry on 5-minute chart for precision
Set custom anchor to your 5-minute entry bar
Configure timeframe setting to "4h" for swing-level targets
Select appropriate Fibonacci Extension levels
Result: Precise entry with larger timeframe risk management
Visual Intelligence System
Line Behaviour in Custom Anchor Mode:
Active levels: Lines extend to the right edge
Hit levels: Lines terminate at the breaking bar
Entry line: Always visible in blue
Stop-loss: Red line, terminates when hit
Take-profits: Green lines (1.618 level in gold for emphasis)
Customisation Options:
Line width (1-4 pixels)
Show/hide individual Fibonacci levels
ATR length and smoothing method
ATR multiplier for stop-loss distance
BackTestLibLibrary "BackTestLib"
Allows backtesting indicator performance. Tracks typical metrics such as won/loss, profit factor, draw down, etc. Trading View strategy library provides similar (and more comprehensive)
functionality but only works with strategies. This libary was created to address performance tracking within indicators.
Two primary outputs are generated:
1. Summary Table: Displays overall performance metrics for the indicator over the chart's loaded timeframe and history
2. Details Table: Displays a table of individual trade entries and exits. This table can grow larger than the available chart space. It does have a max number of rows supported. I haven't
found a way to add scroll bars or scroll bar equivalents yet.
f_init(data, _defaultStopLoss, _defaultTakeProfit, _useTrailingStop, _useTraingStopToBreakEven, _trailingStopActivation, _trailingStopOffset)
f_init Initialize the backtest data type. Called prior to using the backtester functions
Parameters:
data (backtesterData) : backtesterData to initialize
_defaultStopLoss (float) : Default trade stop loss to apply
_defaultTakeProfit (float) : Default trade take profit to apply
_useTrailingStop (bool) : Trailing stop enabled
_useTraingStopToBreakEven (bool) : When trailing stop active, trailing stop will increase no further than the entry price
_trailingStopActivation (int) : When trailing stop active, trailing will begin once price exceeds base stop loss by this number of points
_trailingStopOffset (int) : When trailing stop active, it will trail the max price achieved by this number of points
Returns: Initialized data set
f_buildResultStr(_resultType, _price, _resultPoints, _numWins, _pointsWon, _numLoss, _pointsLost)
f_buildResultStr Helper function to construct a string of resutling data for exit tooltip labels
Parameters:
_resultType (string)
_price (float)
_resultPoints (float)
_numWins (int)
_pointsWon (float)
_numLoss (int)
_pointsLost (float)
f_buildResultLabel(data, labelVertical, labelOffset, long)
f_buildResultLabel Helper function to construct an Exit label for display on the chart
Parameters:
data (backtesterData)
labelVertical (bool)
labelOffset (int)
long (bool)
f_updateTrailingStop(_entryPrice, _curPrice, _sl, _tp, trailingStopActivationInput, trailingStopOffsetInput, useTrailingStopToBreakEven)
f_updateTrailingStop Helper function to advance the trailing stop as price action dictates
Parameters:
_entryPrice (float)
_curPrice (float)
_sl (float)
_tp (float)
trailingStopActivationInput (float)
trailingStopOffsetInput (float)
useTrailingStopToBreakEven (bool)
Returns: Updated stop loss for current price action
f_enterShort(data, entryPrice, fixedStopLoss)
f_enterShort Helper function to enter a short and collect data necessary for tracking the trade entry
Parameters:
data (backtesterData)
entryPrice (float)
fixedStopLoss (float)
Returns: Updated backtest data
f_enterLong(data, entryPrice, fixedStopLoss)
f_enterLong Helper function to enter a long and collect data necessary for tracking the trade entry
Parameters:
data (backtesterData)
entryPrice (float)
fixedStopLoss (float)
Returns: Updated backtest data
f_exitTrade(data)
f_enterLong Helper function to exit a trade and update/reset tracking data
Parameters:
data (backtesterData)
Returns: Updated backtest data
f_checkTradeConditionForExit(data, condition, curPrice, enableRealTime)
f_checkTradeConditionForExit Helper function to determine if provided condition indicates an exit
Parameters:
data (backtesterData)
condition (bool) : When true trade will exit
curPrice (float)
enableRealTime (bool) : When true trade will evaluate if barstate is relatime or barstate is confirmed; otherwise just checks on is confirmed
Returns: Updated backtest data
f_checkTrade(data, curPrice, curLow, curHigh, enableRealTime)
f_checkTrade Helper function to determine if current price action dictates stop loss or take profit exit
Parameters:
data (backtesterData)
curPrice (float)
curLow (float)
curHigh (float)
enableRealTime (bool) : When true trade will evaluate if barstate is relatime or barstate is confirmed; otherwise just checks on is confirmed
Returns: Updated backtest data
f_fillCell(_table, _column, _row, _title, _value, _bgcolor, _txtcolor, _text_size)
f_fillCell Helper function to construct result table cells
Parameters:
_table (table)
_column (int)
_row (int)
_title (string)
_value (string)
_bgcolor (color)
_txtcolor (color)
_text_size (string)
Returns: Table cell
f_prepareStatsTable(data, drawTesterSummary, drawTesterDetails, summaryTableTextSize, detailsTableTextSize, displayRowZero, summaryTableLocation, detailsTableLocation)
f_fillCell Helper function to populate result table
Parameters:
data (backtesterData)
drawTesterSummary (bool)
drawTesterDetails (bool)
summaryTableTextSize (string)
detailsTableTextSize (string)
displayRowZero (bool)
summaryTableLocation (string)
detailsTableLocation (string)
Returns: Updated backtest data
backtesterData
backtesterData - container for backtest performance metrics
Fields:
tradesArray (array) : Array of strings with entries for each individual trade and its results
pointsBalance (series float) : Running sum of backtest points won/loss results
drawDown (series float) : Running sum of backtest total draw down points
maxDrawDown (series float) : Running sum of backtest total draw down points
maxRunup (series float) : Running sum of max points won over the backtest
numWins (series int) : Number of wins of current backtes set
numLoss (series int) : Number of losses of current backtes set
pointsWon (series float) : Running sum of points won to date
pointsLost (series float) : Running sum of points lost to date
entrySide (series string) : Current entry long/short
tradeActive (series bool) : Indicates if a trade is currently active
tradeComplete (series bool) : Indicates if a trade just exited (due to stop loss or take profit)
entryPrice (series float) : Current trade entry price
entryTime (series int) : Current trade entry time
sl (series float) : Current trade stop loss
tp (series float) : Current trade take profit
defaultStopLoss (series float) : Default trade stop loss to apply
defaultTakeProfit (series float) : Default trade take profit to apply
useTrailingStop (series bool) : Trailing stop enabled
useTrailingStopToBreakEven (series bool) : When trailing stop active, trailing stop will increase no further than the entry price
trailingStopActivation (series int) : When trailing stop active, trailing will begin once price exceeds base stop loss by this number of points
trailingStopOffset (series int) : When trailing stop active, it will trail the max price achieved by this number of points
resultType (series string) : Current trade won/lost
exitPrice (series float) : Current trade exit price
resultPoints (series float) : Current trade points won/lost
summaryTable (series table) : Table to deisplay summary info
tradesTable (series table) : Table to display per trade info
[Smith] VWAP Deviation + VWAP Deviation +
Short Description:
Advanced VWAP indicator with deviation bands, smart signal filtering, and session-based performance tracking. Features log-space scaling, RSI confirmation, volume filters, and market regime detection.
Full Description:
The VWAP Deviation + is a comprehensive trading indicator that combines Volume Weighted Average Price (VWAP) analysis with advanced signal filtering to identify high-probability trade opportunities. This indicator goes beyond basic VWAP by incorporating multiple confirmation layers and intelligent market analysis.
🎯 Key Features
Core VWAP Analysis:
- Custom volume-weighted mean calculation with deviation bands (2σ and 3σ)
- Optional log-space scaling for proportional price movements
- Real-time VWAP line with customizable visibility
Smart Signal Detection:
- RSI confirmation for all trade signals
- Volume filter requiring above-average trading activity
- Market regime detection (trending vs ranging markets)
- Optional RSI divergence analysis
Advanced Filtering:
- Multi-condition signal validation
- Session-based performance tracking (Asian, London, NY)
- Real-time win rate calculation
- Strong vs regular signal classification
Visual Features:
- Clean, professional interface with customizable colors
- Optional signal shapes and annotations
- Performance statistics table
- Filled deviation bands for easy visualization
📊 How It Works
The indicator identifies trade opportunities when:
1. Price touches VWAP deviation bands (2σ or 3σ)
2. RSI confirms oversold/overbought conditions
3. Volume exceeds the specified threshold
4. Market regime conditions are favorable
Signal Types:
- LONG : Price at lower bands + RSI oversold + volume confirmation
- SHORT : Price at upper bands + RSI overbought + volume confirmation
- STRONG : Same conditions but at 3σ bands for higher conviction trades
⚙️ Customization Options
Core Settings:
- VWAP length and source selection
- Adjustable deviation multipliers
- Log-space scaling toggle
Signal Filters:
- RSI length and threshold levels
- Volume filter with customizable multiplier
- Market type filtering options
Advanced Features:
- Session statistics tracking
- RSI divergence detection
- Market regime analysis
Visual Controls:
- Show/hide individual components
- Custom color schemes
- Signal display toggles
🔔 Alert System
Built-in alerts for:
- Long and short trade opportunities
- Strong signal confirmations
- RSI divergence signals
💡 Best Practices
- Use higher timeframes (15m+) for more reliable signals
- Combine with additional confirmation indicators
- Pay attention to session statistics for timing optimization
- Monitor market regime indicators for context
This indicator is suitable for day traders, swing traders, and anyone looking to improve their VWAP-based trading strategies with advanced filtering and market analysis.
Trend Impulse Channels (Zeiierman)█ Overview
Trend Impulse Channels (Zeiierman) is a precision-engineered trend-following system that visualizes discrete trend progression using volatility-scaled step logic. It replaces traditional slope-based tracking with clearly defined “trend steps,” capturing directional momentum only when price action decisively confirms a shift through an ATR-based trigger.
This tool is ideal for traders who prefer structured, stair-step progression over fluid curves, and value the clarity of momentum-based bands that reveal breakout conviction, pullback retests, and consolidation zones. The channel width adapts automatically to market volatility, while the step logic filters out noise and false flips.
⚪ The Structural Assumption
This indicator is built on a core market structure observation:
After each strong trend impulse, the market typically enters a “cooling-off” phase as profit-taking occurs and counter-trend participants enter. This often results in a shallow pullback or stall, creating a slight negative slope in an uptrend (or a positive slope in a downtrend).
These “cooling-off” phases don’t reverse the trend — they signal temporary pressure before the next leg continues. By tracking trend steps discretely and filtering for this behavior, Trend Impulse Channels helps traders align with the rhythm of impulse → pause → impulse.
█ How It Works
⚪ Step-Based Trend Engine
At the heart of this tool is a dynamic step engine that progresses only when price crosses a predefined ATR-scaled trigger level:
Trigger Threshold (× ATR) – Defines how far price must break beyond the current trend state to register a new trend step.
Step Size (Volatility-Guided) – Each trend continuation moves the trend line in discrete units, scaling with ATR and trend persistence.
Trend Direction State – Maintains a +1/-1 internal bias to support directional filters and step tracking.
⚪ Volatility-Adaptive Channel
Each step is wrapped inside a dynamic envelope scaled to current volatility:
Upper and Lower Bands – Derived from ATR and band multipliers to expand/contract as volatility changes.
⚪ Retest Signal System
Optional signal markers show when price re-tests the upper or lower band:
Upper Retest → Pullback into resistance during a bearish trend.
Lower Retest → Pullback into support during a bullish trend.
⚪ Trend Step Signals
Circular markers can be shown to mark each time the trend steps forward, making it easy to identify structurally significant moments of continuation within a larger trend.
█ How to Use
⚪ Trend Alignment
Use the Trend Line and Step Markers to visually confirm the direction of momentum. If multiple trend steps occur in sequence without reversal, this typically signals strong conviction and trend persistence.
⚪ Retest-Based Entries
Wait for pullbacks into the channel and monitor for triangle retest signals. When used in confluence with trend direction, these offer high-quality continuation setups.
⚪ Breakouts
Look for breakouts beyond the upper or lower band after a longer period of pause. For higher likelihood of success, look for breakouts in the direction of the trend.
█ Settings
Trigger Threshold (× ATR) - Defines how far price must move to register a new trend step. Controls sensitivity to trend flips.
Max Step Size (× ATR) - Caps how far each trend step can extend. Prevents runaway step expansion in high volatility.
Band Multiplier (× ATR) - Expands the upper and lower channels. Controls how much breathing room the bands allow.
Trend Hold (bars) - Minimum number of bars the trend must remain active before allowing a flip. Helps reduce noise.
Filter by Trend - Restrict retest signals to those aligned with the current trend direction.
-----------------
Disclaimer
The content provided in my scripts, indicators, ideas, algorithms, and systems is for educational and informational purposes only. It does not constitute financial advice, investment recommendations, or a solicitation to buy or sell any financial instruments. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
Balance of Power for US30 4H [PineIndicators]The Balance of Power (BoP) Strategy is a momentum-based trading system for the US30 index on a 4-hour timeframe. It measures the strength of buyers versus sellers in each candle using the Balance of Power (BoP) indicator and executes trades based on predefined threshold crossovers. The strategy includes dynamic position sizing, adjustable leverage, and visual trade tracking.
⚙️ Core Strategy Mechanics
Positive values indicate buying strength.
Negative values indicate selling strength.
Values close to 1 suggest strong bullish momentum.
Values close to -1 indicate strong bearish pressure.
The strategy uses fixed threshold crossovers to determine trade entries and exits.
📌 Trade Logic
Entry Conditions
Long Entry: When BoP crosses above 0.8, signaling strong buying pressure.
Exit Conditions
Position Close: When BoP crosses below -0.8, indicating a shift to selling pressure.
This threshold-based system filters out low-confidence signals and focuses on high-momentum shifts.
📏 Position Sizing & Leverage
Leverage: Adjustable by the user (default = 5x).
Risk Management: Position size adapts dynamically based on equity fluctuations.
📊 Trade Visualization & History Tracking
Trade Markers:
"Buy" labels appear when a long position is opened.
"Close" labels appear when a position is exited.
Trade History Boxes:
Green for profitable trades.
Red for losing trades.
These elements provide clear visual tracking of past trade execution.
⚡ Usage & Customization
1️⃣ Apply the script to a US30 4H chart in TradingView.
2️⃣ Adjust leverage settings as needed.
3️⃣ Review trade signals and historical performance with visual markers.
4️⃣ Enable backtesting to evaluate past performance.
This strategy is designed for momentum-based trading and is best suited for volatile market conditions.
EMA Crossover Backtest [BarScripts]This indicator lets you backtest an EMA crossover strategy with built-in risk management and trade tracking. It simulates long and short trades based on EMA crossovers, allowing you to fine-tune entry conditions, stop-loss placement, and reward/risk settings.
🔹 How It Works:
Long Entry: Fast EMA crosses above Slow EMA, and price closes above Fast EMA.
Short Entry: Fast EMA crosses below Slow EMA, and price closes below Fast EMA.
Stop Loss: Set based on previous bars or a fixed amount.
Take Profit: Adjustable reward/risk ratio.
Higher Timeframe Confluence: Confirms trades based on a larger timeframe.
Trade Hours Filter: Limits trades to specific time windows.
🔹 Key Features:
✅ Shows Entry & Exit Points with visual trade lines.
✅ Customizable EMA Lengths to fit any strategy.
✅ P&L Tracking & Statistics to measure performance.
✅ Position Sizing Options: Fixed position, fixed risk, or percentage of balance.
✅ Commissions Tracking (based on total trades, not contracts).
Use this tool to fine-tune your EMA crossover strategy and see how it performs over time! 🚀
💬 Let me know your feedback—suggest improvements, report issues, or request new features!
Futuristic Indicator v3 - Enhanced Glow & Strength MetersTo ensure candles are display by script go to trading view settings and uncheck default Candle, Body and Wick to prevent them from plotting over your modified candles.
Futuristic Indicator v3 - Enhanced Glow & Strength Meters: Detailed Breakdown
This Modern styled Pine Script indicator is designed to enhance technical analysis by providing a visually striking OLED-style dashboard with multiple market insights. It integrates trend detection, momentum analysis, volatility tracking, and strength meters into a single, streamlined interface for traders.
1️⃣ Customizable Features for Flexibility
The indicator offers multiple user-configurable settings, allowing traders to adjust the display based on their trading strategy and preferences. Users can toggle elements such as strength meters, volatility indicators, trend arrows, moving averages, and buy/sell alerts. Additionally, background and candle colors can be customized for better readability.
🔹 Why is this useful?
Traders can customize their charts to focus on the data they care about.
Reduces chart clutter by allowing users to toggle features on or off.
2️⃣ Trend Detection Using EMAs
This indicator detects market trends using two Exponential Moving Averages (EMA):
A "Fast" EMA (shorter period) for quick trend shifts.
A "Slow" EMA (longer period) to confirm trends.
Comparison of the two EMAs determines if the trend is bullish (uptrend) or bearish (downtrend).
The indicator colors the trend lines accordingly and adds a trend arrow 📈📉 for quick visual cues.
🔹 Why is this useful?
EMA crossovers are widely used to identify trend reversals.
Provides clear visual cues for traders to confirm entry & exit points.
3️⃣ RSI-Based Momentum Analysis
The indicator integrates the Relative Strength Index (RSI) to gauge market momentum. The momentum value changes color dynamically based on whether it's in bullish (>50) or bearish (<50) territory.
🔹 Why is this useful?
RSI helps identify overbought and oversold conditions.
Detects trend strength by measuring the speed of price movements.
4️⃣ Bullish & Bearish Strength Meters
The indicator quantifies bullish and bearish market strength based on RSI and converts it into a percentage-based meter:
Bullish Strength (Long Strength)
Bearish Strength (Short Strength)
Strength meters are displayed using OLED-styled bars, dynamically changing in real-time.
🔹 Why is this useful?
Allows traders to visually gauge market sentiment at a glance.
Helps confirm if a trend has strong momentum or is losing strength.
5️⃣ Market Volatility Indicator (ATR-Based)
The indicator includes a volatility tracker using the Average True Range (ATR):
ATR is scaled up to provide easier readability.
Higher ATR values indicate higher market volatility.
🔹 Why is this useful?
Helps traders identify potential breakout or consolidation phases.
Allows better risk management by understanding price fluctuations.
6️⃣ Trend Strength Calculation
The indicator calculates trend strength based on the difference between the EMAs:
A higher trend strength value suggests a stronger directional trend.
Displayed as a percentage for better clarity.
🔹 Why is this useful?
Helps traders differentiate between strong and weak trends.
Reduces the likelihood of entering weak or choppy markets.
7️⃣ OLED-Style Dashboard for Market Data
A futuristic OLED-styled table is used to display critical market data in a visually appealing way:
Trend direction (Bullish/Bearish with an arrow 📈📉).
Current price.
Momentum value.
Strength meters (Bullish/Bearish).
Trend strength percentage.
Volatility Meter
The dashboard uses high-contrast colors and neon glow effects, making it easier to read against dark backgrounds.
🔹 Why is this useful?
Provides a centralized view of key trading metrics.
Eliminates the need to manually calculate trend strength.
8️⃣ Modern Style Neon Glow Effects
To enhance visibility, the indicator applies glowing effects to:
Moving Averages (EMAs): Highlighted with layered glow effects.
Candlesticks: Borders and wicks dynamically change color based on trend direction.
🔹 Why is this useful?
Improves readability in low-contrast or dark-mode charts.
Helps traders spot trends faster without reading numerical data.
9️⃣ Automated Buy & Sell Alerts
The script triggers alerts when momentum crosses key levels:
Above 55 → Potential Long Setup
Below 45 → Potential Short Setup.
🔹 Why is this useful?
Alerts help traders react quickly without constantly monitoring the chart.
Reduces the risk of missing critical trade opportunities.
🔹 Final Summary: Why is This Indicator Useful?
This futuristic cyberpunk-styled trading tool enhances traditional market analysis by combining technical indicators with high-visibility visuals.
🔹 Key Benefits:
✅ Customizable Display – Toggle elements based on trading needs.
✅ Trend Detection – EMAs highlight uptrends & downtrends.
✅ Momentum Tracking – RSI-based momentum gauge identifies strong moves.
✅ Strength Meters – Bullish/Bearish power is clearly visualized.
✅ Volatility Insights – ATR-based metric highlights market turbulence.
✅ Trend Strength Analysis – Quantifies trend intensity.
✅ Dashboard – Provides a centralized, easy-to-read data panel.
✅ Cyberpunk Neon Glow – Enhances clarity with stylish aesthetics.
✅ Real-Time Alerts – Helps traders react to key opportunities.
This indicator is designed to be both functional and visually appealing, making market analysis more intuitive and efficient. 🚀
Smart Money Concepts (Advanced)Inspired and initially based on LuxAlgo's Smart Money Concepts Indicator I created a library lib_smc that started to convert every function and return objects. This allowed certain customizations like tracking the current fill level of FVGs or tracking the creation of Order Blocks, by monitoring consecutive bars against the current trend.
This indicator is provided as is, based on, but probably not always be up to date with my lib_smc that I am using for my projects.
WARNING: This indicator shows EXPERIMENTAL Order Blocks that are tracked LIVE. Unlike usual Order Blocks these are not just based on the last confirmed Swing Point (formed 50 bars before) but on consecutive candles opposing an unconfirmed trend. Blocks are confirmed by price movements relative to the unconfirmed block and unconfirmed swing points. This means that some Order Blocks will appear on pullbacks, as well as reversals.
Features
Swing Points (HH / LH / HL / LL), indicating support / resistance zones price might reject off of or want to push through
Market Structure (BOS / ChoCh), indicates confirmation for a continued / changing trend
live Order Blocks (OB), see warning above.
Fair Value Gaps (FVG), optional from higher timeframes
Equal Highs / Lows (EQH/EQL), indicates strong support / resistance zones, especially when the bars forming it have long wicks toward that zone
using my lib_no_delay all moving averages are working from bar 0, so it can be used on charts with limited bars
Ichimoku Cloud +Ichimoku Cloud Plus - Advanced Technical Analysis Indicator
Ichimoku Cloud Plus is an advanced technical analysis tool that combines the traditional Ichimoku Cloud system with Pearson correlation analysis and multi-timeframe momentum tracking. This innovative approach provides traders with a comprehensive view of market trends, momentum, and potential reversal points across multiple time frames.
Core Components
Enhanced Ichimoku Cloud Analysis
The traditional Ichimoku Cloud components have been preserved and enhanced with customizable visual parameters:
The indicator includes:
- Conversion Line (Tenkan-sen) - Short-term trend identifier
- Base Line (Kijun-sen) - Medium-term trend identifier
- Leading Span A and B (Senkou Span A and B) - Future cloud projections
- Lagging Span (Chikou Span) - Historical price momentum confirmation
The cloud (Kumo) formations provide dynamic support and resistance levels, with color-coding to instantly identify bullish and bearish market conditions.
Pearson Correlation Analysis
A sophisticated Pearson correlation coefficient calculation has been integrated to provide statistical validation of trend strength and direction. This component:
- Calculates correlation between price movement and time
- Provides real-time correlation coefficients
- Identifies trend strength through correlation thresholds
- Generates signals for trend changes and potential reversals
Multi-Timeframe Momentum Tracking
The indicator incorporates a unique multi-timeframe analysis system that:
- Displays momentum calculations across five timeframes (15m, 30m, 1h, 4h, 1d)
- Provides percentage-based momentum values
- Includes volatility adjustment capabilities
- Offers volume-weighted calculations for enhanced accuracy
Advanced Features
Statistical Analysis Panel
A comprehensive statistical panel provides real-time analysis including:
- Current Pearson coefficient value
- Correlation strength classification
- Trend direction identification
- Analysis period information
Dynamic Alert System
The indicator includes sophisticated alert conditions for:
- Bearish trend initiation (positive correlation threshold breach)
- Bullish trend initiation (negative correlation threshold breach)
- Trend direction changes (zero-line crossovers)
Visual Optimization
Advanced visualization features include:
- Customizable color schemes for all components
- Adjustable label sizes and positions
- Transparency controls for better chart visibility
- Warning indicators for potential trend weakening
Technical Implementation
The indicator combines multiple calculation methods:
- Donchian Channel calculations for Ichimoku components
- Pearson correlation coefficient computation with customizable periods
- EMA smoothing for momentum calculations
- Volume-weighted averaging capabilities
- Volatility adjustment mechanisms
Trading Applications
This indicator is particularly effective for:
1. Trend Direction Confirmation
- Multiple timeframe analysis provides comprehensive trend validation
- Pearson correlation adds statistical confidence to trend identification
- Ichimoku cloud formations confirm support and resistance levels
2. Entry and Exit Point Identification
- Cloud breakouts combined with correlation strength indicate potential entry points
- Multi-timeframe momentum alignment helps identify high-probability trades
- Warning indicators assist in timing market exits
3. Risk Management
- Dynamic support and resistance levels from the cloud
- Statistical trend strength measurement
- Multi-timeframe confirmation reduces false signals
Performance Considerations
The indicator uses efficient calculations to maintain good performance while providing comprehensive analysis. The smoothing parameters and analysis periods can be adjusted to balance between responsiveness and reliability.
Future Applications and Research
This combination of indicators opens possibilities for:
- Machine learning integration for pattern recognition
- Additional statistical measures for trend validation
- Enhanced alert systems based on multiple condition combinations
- Further optimization of calculation methods
The innovative combination of traditional Ichimoku analysis with modern statistical methods and multi-timeframe momentum tracking provides traders with a powerful tool for market analysis and decision-making.
Granular Candle-by-Candle VWAPGranular Candle-by-Candle VWAP is a customizable Volume Weighted Average Price (VWAP) indicator designed for TradingView. Unlike traditional VWAP indicators that operate on the chart's primary timeframe, this script enhances precision by incorporating lower timeframe (e.g., 1-minute) data into VWAP calculations. This granular approach provides traders with a more detailed and accurate representation of the average price, accounting for intra-bar price and volume movements. The indicator dynamically adjusts to the chart's current timeframe and offers a range of customization options, including price type selection, visual styling, and alert configurations.
Customizable Features
Users have extensive control over various aspects of the Granular Candle-by-Candle VWAP indicator. Below are the key features that can be customized to align with individual trading preferences:
🎛️ Customizable Features
Users have extensive control over various aspects of the Granular Candle-by-Candle VWAP indicator. Below are the key features that can be customized to align with individual trading preferences:
🔢 Lookback Period
Description: Defines the number of lower timeframe bars used in the VWAP calculation.
Customization:
Input: VWAP Lookback Period (Number of Lower Timeframe Bars)
Default Value: 20 bars
Range: Minimum of 1 bar
Purpose: Allows traders to adjust the sensitivity of the VWAP. A smaller lookback period makes the VWAP more responsive to recent price changes, while a larger period smoothens out fluctuations.
📈 Price Type Selection
Description: Determines which price metric is used in the VWAP calculation.
Customization:
Input: Price Type for VWAP Calculation
Options:
Open: Uses the opening price of each lower timeframe bar.
High: Uses the highest price of each lower timeframe bar.
Low: Uses the lowest price of each lower timeframe bar.
Close: Uses the closing price of each lower timeframe bar.
OHLC/4: Averages the Open, High, Low, and Close prices.
HL/2: Averages the High and Low prices.
Typical Price: (High + Low + Close) / 3
Weighted Close: (High + Low + 2 × Close) / 4
Default Value: Close
Purpose: Offers flexibility in how the average price is calculated, allowing traders to choose the price metric that best fits their analysis style.
🕒 Lower Timeframe Selection
Description: Specifies the lower timeframe from which data is fetched for granular VWAP calculations.
Customization:
Input: Lower Timeframe for Granular Data
Default Value: 1 minute ("1")
Options: Any valid TradingView timeframe (e.g., "1", "3", "5", "15", etc.)
Purpose: Enables traders to select the granularity of data used in the VWAP calculation, enhancing the indicator's precision on higher timeframe charts.
🎨 VWAP Line Customization
Description: Adjusts the visual appearance of the VWAP line based on price position relative to the VWAP.
Customizations:
Color When Price is Above VWAP:
Input: VWAP Color (Price Above)
Default Value: Green
Color When Price is Below VWAP:
Input: VWAP Color (Price Below)
Default Value: Red
Line Thickness:
Input: VWAP Line Thickness
Default Value: 2
Range: Minimum of 1
Line Style:
Input: VWAP Line Style
Options: Solid, Dashed, Dotted
Default Value: Solid
Purpose: Enhances visual clarity, allowing traders to quickly assess price positions relative to the VWAP through color coding and line styling.
🔔 Alerts and Notifications
Description: Provides real-time notifications when the price crosses the VWAP.
Customizations:
Enable/Disable Alerts:
Input: Enable Alerts for Price Crossing VWAP
Default Value: Enabled (true)
Alert Conditions:
Price Crossing Above VWAP:
Trigger: When the closing price crosses from below to above the VWAP.
Alert Message: "Price has crossed above the Granular VWAP."
Price Crossing Below VWAP:
Trigger: When the closing price crosses from above to below the VWAP.
Alert Message: "Price has crossed below the Granular VWAP."
Purpose: Keeps traders informed of significant price movements relative to the VWAP, facilitating timely trading decisions.
📊 Plotting and Visualization
Description: Displays the calculated Granular VWAP on the chart with user-defined styling.
Customization Options:
Color, Thickness, and Style: As defined in the VWAP Line Customization section.
Track Price Feature:
Parameter: trackprice=true
Function: Ensures that the VWAP line remains visible even when the price moves far from the VWAP.
Purpose: Provides a clear and persistent visual reference of the VWAP on the chart, aiding in trend analysis and support/resistance identification.
⚙️ Performance Optimizations
Description: Ensures the indicator runs efficiently, especially on higher timeframes with large datasets.
Strategies Implemented:
Minimized Security Calls: Utilizes two separate request.security calls to fetch necessary data, balancing functionality and performance.
Efficient Calculations: Employs built-in functions like ta.sum for rolling calculations to reduce computational load.
Conditional Processing: Alerts are processed only when enabled, preventing unnecessary computations.
Purpose: Maintains smooth chart performance and responsiveness, even when using lower timeframe data for granular calculations.
TradeTracker v33 - Interactive Journal [AR33_]TradeTracker v33 - Interactive Journal is a unique tool designed to enhance your trading experience by integrating an interactive journal directly onto your charts. Unlike traditional trading journals that require manual entries outside of TradingView, this script allows traders to document, track, and review their trades in real-time, right where the action happens.
What sets TradeTracker v33 apart from existing tools is its seamless blend of note-taking, task management, and performance tracking—all within a single, intuitive interface. With features like customizable checklists, due dates, and color-coded status indicators, this script provides a powerful and practical solution for traders who want to stay organized and disciplined.
2. Description
. TradeTracker v33 - Interactive Journal is designed to keep traders on track by allowing them to record trade-related notes, set tasks, and mark progress directly on their charts.
Here’s how it works:
• Purpose: The script serves as an all-in-one journal and task manager, helping traders document their trading strategies, track ongoing tasks, and review completed actions. It’s particularly useful for maintaining discipline and ensuring that every trade is executed according to a well-thought-out plan.
• How It Works:
• Interactive Notes and Tasks: Users can create and manage notes and tasks directly on their charts. Each note can be customized with a title, description, due date, and completion status.
• Status Indicators: Tasks are color-coded based on their status—green for completed, red for overdue, and default colors for pending tasks—allowing traders to quickly assess their progress.
• Dynamic Display: Notes are displayed in a clean, organized table on the chart, making it easy to review multiple tasks without cluttering the trading interface.
• Usage:
• Adding Notes: Simply fill in the note title, content, and optional due date within the script’s input settings, and the note will appear on your chart.
• Tracking Progress: Mark tasks as completed with a simple toggle, and the script will update their status in real-time.
• Customizing Your Workflow: Adjust the position, size, and visibility of notes to fit your trading style, ensuring that your journal supports rather than distracts from your trading activities.
3. Chart Presentation
To provide a clear and focused user experience, TradeTracker v33 - Interactive Journal is designed to be the sole feature on your chart when published. This ensures that users can easily identify and interact with their notes and tasks without any unnecessary distractions.
• Clean and Focused Display: The chart will exclusively display the interactive journal, showcasing how tasks and notes appear and update in real-time as you manage them.
• Useful Annotations: Annotations such as checkboxes and status indicators are clearly explained within the script’s description and are vital to understanding the functionality of the tool.
• Minimal Distractions: Only elements directly related to the script’s functionality are included on the chart, ensuring that users can easily follow along and implement the script in their own trading setup.






















