ToxicJ3ster - Day Trading SignalsThis Pine Script™ indicator, "ToxicJ3ster - Signals for Day Trading," is designed to assist traders in identifying key trading signals for day trading. It employs a combination of Moving Averages, RSI, Volume, ATR, ADX, Bollinger Bands, and VWAP to generate buy and sell signals. The script also incorporates multiple timeframe analysis to enhance signal accuracy. It is optimized for use on the 5-minute chart.
Purpose:
This script uniquely combines various technical indicators to create a comprehensive and reliable day trading strategy. Each indicator serves a specific purpose, and their integration is designed to provide multiple layers of confirmation for trading signals, reducing false signals and increasing trading accuracy.
1. Moving Averages: These are used to identify the overall trend direction. By calculating short and long period Moving Averages, the script can detect bullish and bearish crossovers, which are key signals for entering and exiting trades.
2. RSI Filtering: The Relative Strength Index (RSI) helps filter signals by ensuring trades are only taken in favorable market conditions. It detects overbought and oversold levels and trends within the RSI to confirm market momentum.
3. Volume and ATR Conditions: Volume and ATR multipliers are used to identify significant market activity. The script checks for volume spikes and volatility to confirm the strength of trends and avoid false signals.
4. ADX Filtering: The ADX is used to confirm the strength of a trend. By filtering out weak trends, the script focuses on strong and reliable signals, enhancing the accuracy of trade entries and exits.
5. Bollinger Bands: Bollinger Bands provide additional context for the trend and help identify potential reversal points. The script uses Bollinger Bands to avoid false signals and ensure trades are taken in trending markets.
6. Higher Timeframe Analysis: This feature ensures that signals align with broader market trends by using higher timeframe Moving Averages for trend confirmation. It adds a layer of robustness to the signals generated on the 5-minute chart.
7. VWAP Integration: VWAP is used for intraday trading signals. By calculating the VWAP and generating buy and sell signals based on its crossover with the price, the script provides additional confirmation for trade entries.
8. MACD Analysis: The MACD line, signal line, and histogram are calculated to generate additional buy/sell signals. The MACD is used to detect changes in the strength, direction, momentum, and duration of a trend.
9. Alert System: Custom alerts are integrated to notify traders of potential trading opportunities based on the signals generated by the script.
How It Works:
- Trend Detection: The script calculates short and long period Moving Averages and identifies bullish and bearish crossovers to determine the trend direction.
- Signal Filtering: RSI, Volume, ATR, and ADX are used to filter and confirm signals, ensuring trades are taken in strong and favorable market conditions.
- Multiple Timeframe Analysis: The script uses higher timeframe Moving Averages to confirm trends, aligning signals with broader market movements.
- Additional Confirmations: VWAP, MACD, and Bollinger Bands provide multiple layers of confirmation for buy and sell signals, enhancing the reliability of the trading strategy.
Usage:
- Customize the input parameters to suit your trading strategy and preferences.
- Monitor the generated signals and alerts to make informed trading decisions.
- This script is made to work best on the 5-minute chart.
Disclaimer:
This indicator is not perfect and can generate false signals. It is up to the trader to determine how they would like to proceed with their trades. Always conduct thorough research and consider seeking advice from a financial professional before making trading decisions. Use this script at your own risk.
Cari dalam skrip untuk "THE SCRIPT"
Multi-Timeframe MA Levels█ OVERVIEW
This Pine Script is an indicator for displaying multiple moving average (MA) levels from several timeframes on your TradingView charts. At the Realtime Bar (the right-most bar on your chart), it draws a line where the various moving averages currently are.
For example, it will show you where the 8 EMA on the 5 minute timeframe is on your 1-minute timeframe chart.
It derives its look and function from "Lepelle's Key Levels" and focuses on visualizing various moving averages to complement this indicator.
█ FEATURES
1 — Multi-Timeframe Analysis:
• The script allows traders to view moving averages from different timeframes on a single chart.
This multi-timeframe approach helps identify significant levels and trends that might not be apparent when looking at a single timeframe.
2 — Customization and Flexibility:
• Extensive input options for customizing the appearance of the lines (width, style, color) and labels (size, position, distance from price).
This ensures that the indicator can be tailored to individual preferences and charting styles.
3 — Multiple Moving Averages:
• Support for various types of moving averages (8 EMA, 21 EMA, 50 SMA, 100 SMA, 200 SMA).
Each moving average can be individually enabled or disabled for specific timeframes,
providing a flexible tool for technical analysis.
█ SETTINGS
Inputs for Styling:
• Controls the appearance of the lines and labels.
• Includes options for line width, line style, text size, distance from the candlesticks, label position,
and whether to hide prices or use shorthand notation.
Moving Averages Settings:
• Inputs to select different moving averages (8 EMA, 21 EMA, 50 SMA, 100 SMA, 200 SMA) and their corresponding colors.
• Boolean inputs to enable or disable these moving averages on various timeframes (2 min, 5 min, hourly, daily).
█ SUMMARY
In essence, this script provides a comprehensive tool for technical analysis by combining multi-timeframe moving averages into a single, customizable, and user-friendly indicator. It enhances traders' ability to make informed decisions by providing clear visual representations of key moving average levels across different timeframes.
═════════════════════════════════════════════════════════════
█ LIMITATIONS
This script is best used with a short timeframe such as 1-minute or lower because of the limitations of Multi-Timeframe scripts. Basically, the alternate timeframes in use should always be higher than the chart timeframe.
═════════════════════════════════════════════════════════════
█ NOTES
This indicator is intended to complement and be used with "Lepelle's Key Levels" indicator.
In that indictor settings, I recommend turning off the 5 Daily timeframe moving average levels in that script, if using this one.
═════════════════════════════════════════════════════════════
[UST] Protein+Support/Resistance Script: A Comprehensive Overview
Thanks to Pmgjiv for providing the foundation to this improved Version.
In the world of trading, having a robust support and resistance analysis tool can make a significant difference in decision-making and overall strategy. Let's delve into the enhancements made to the support/resistance script and how each component contributes to a trader's arsenal:
Changes and improvements made for the script to help Traders make better rational decisions in their Trading:
1. Multiple Timeframes:
Integrating multiple timeframes into the analysis provides a multi-dimensional view of the market. Traders can now assess price action across different time horizons simultaneously. This feature allows for a deeper understanding of market dynamics and helps in identifying significant support and resistance levels across various timeframes.
2. Timeframe Labels Inside Zones:
By including timeframe labels within the zones, traders can easily identify the origin of each support or resistance level. This contextual information enhances clarity and facilitates more informed decision-making, especially when navigating through multiple timeframes.
3. Visual Zone Update:
Visual updates on zones enable traders to track changes in support and resistance levels in real-time. This dynamic feature enhances the analytical process by providing immediate insights into evolving market conditions, thereby enabling traders to adapt their strategies accordingly.
4. Zones Hit:
Understanding the frequency and intensity of zone hits offers valuable insights into the strength and relevance of support and resistance levels. Traders can gauge the significance of each zone based on its historical interaction with price, thereby gaining a deeper understanding of market sentiment and potential trading opportunities.
5. Option to Turn off Current Timeframe:
The ability to toggle off the current timeframe streamlines chart analysis by focusing only on the most critical support and resistance zones. This decluttering feature helps traders prioritize key levels, reducing cognitive overload and enhancing decision-making efficiency.
Explanation of Additional Functions:
a. Lookback:
The 'lookback' parameter allows traders to customize the age of support and resistance zones based on their trading style and preferences. By adjusting the lookback setting, traders can choose whether to prioritize recent price action or consider historical data, thus tailoring the analysis to their specific trading strategies.
b. Swinglength:
Swinglength determines the sensitivity of the support and resistance zones. By modifying this parameter, traders can control how aggressively the script identifies pivot points. A higher swinglength value results in smoother, more stable zones, whereas a lower value increases sensitivity, capturing smaller price movements.
c. ZigZag Indicator:
The ZigZag indicator plays a pivotal role in identifying significant price reversals. Its period setting determines the number of price bars considered before confirming a pivot point. Traders can utilize this indicator to identify key turning points in the market, aiding in the identification of robust support and resistance levels.
Impact of Sensitivity on Zones:
Adjusting the sensitivity of the ZigZag indicator directly influences the identification and delineation of support and resistance zones. Higher sensitivity levels result in fewer but more robust zones, capturing significant price movements. Conversely, lower sensitivity levels yield more zones, accommodating smaller price fluctuations but potentially introducing noise into the analysis.
d. S/R Range:
The ability to adjust the width of support and resistance zones allows traders to customize the breadth of key areas on a chart. Choosing a wider range encompasses a broader spectrum of prices, thereby identifying more comprehensive support and resistance levels. This flexibility enables traders to adapt their analysis to different market conditions and trading strategies.
Utilization in Trading:
Comprehensive Analysis: By incorporating multiple timeframes, traders gain a holistic view of market dynamics, enabling them to identify high-probability trading opportunities across various horizons.
Contextual Understanding: Timeframe labels within zones provide context, helping traders understand the significance of each level in relation to different timeframes and market conditions.
Real-time Adaptability: Visual zone updates facilitate real-time analysis, allowing traders to adjust their strategies promptly in response to changing market conditions.
Informed Decision-making: By considering zone hits, traders can assess the strength and relevance of support and resistance levels, enhancing their ability to make informed trading decisions.
Customized Analysis: Adjustable parameters such as lookback, swinglength, and sensitivity empower traders to tailor the analysis to their individual trading styles and preferences, enhancing precision and effectiveness.
In summary, these enhancements to the support/resistance script provide traders with a powerful toolkit for analyzing market dynamics, identifying key levels, and executing well-informed trading strategies across various timeframes and market conditions.
MTF TREND-PANEL-(AS)
0). INTRODUCTION: "MTF TREND-PANEL-(AS)" is a technical tool for traders who often perform multi-timeframe analysis.
This simple tool is meant for traders who wish to monitor and keep track of trend directions simultaneously on various timeframes, ranging from 1MIN to 3MONTHS (or other - 'DIFF')
script enhances decision-making efficiency and provides a clearer picture of market condition by integrating multiple timeframe analysis into a single panel.
1). WARNING!:
-script doesn't make any calculations on its own really but is more of a tool for traders to remember what is happening on other time frames
- use tooltips to navigate settings easier
2). MAIN OPTIONS:
- Keeps track of up to 7 timeframes. (NUMBER of TimeFrames setting, from 1-7)
- Customizable Display: Choose to display nothing, upward/downward arrows, or a range indication for each timeframe.
- timeframe options: '1-MIN','5-MIN','15-MIN','30-MIN','1H','4H','1D','1W','1M','3M','DIFF'
- Color Coding: Define your preferred colors for each timeframe
- set position of the table and size of text (Position/text)
- Personal Touch: Add your own trading maxim or motto for inspiration to show up when SHOW TEXT is turned on
3. )OPTIONS:
-NUMBER of TimeFrames setting: from 1-7 - how many rows to show
-SHOW TABLE: Toggle to display or hide the trend table panel.
-SHOW TEXT: Show or hide your personalized trading maxim.
-SHOW TREND: Enable to display trend direction arrows.
-SHOW_CLRS: Turn on to activate color coding for each timeframe.
-position/text size for table
-settings for each timeframe:color,time,trend
-place to type ur own text
5). How to Use the Script:
-After adding the script to your chart, use the 'NUMBER of TimeFrames' setting to select how many timeframes you want to track (1 to 7).
-Customize the appearance of each timeframe row using the color and arrow options.
-For trend analysis, the script offers arrows to indicate upward, downward, or ranging markets.
-decide what trend dominates particular TF (using other tools - script does not calculate trend on its own )
- mark trends on panel to keep track of all TF
-Enable or disable various features like the table panel, trader maxim, and color coding using the ON/OFF options.
6). just in case:
- ask me anything about the code
-don't be shy to report any bugs or offer improvements of any kind.
- originally created for @ict_whiz and made public at his request
Harmony or Divergence Single CandleThis script is designed for traders who seek to visually identify and analyze patterns of harmony and divergence in the price action of securities directly on their trading charts. The script provides a nuanced approach to understanding market sentiment and potential price movement directions by examining candle sizes and volumes over a specified lookback period.
What the Script Does:
The script overlays indicators on the price chart that highlight periods of harmony and divergence using background colors. These periods are determined based on comparisons between current candle sizes, candle volumes, and their respective simple moving averages (SMAs) over a user-defined lookback period.
Harmony : A state where the candle size and volume are either both above or below their respective averages, indicating a consensus or agreement in market direction.
Divergence : A state where there's a mismatch, such as a larger candle size with lower volume or vice versa, suggesting uncertainty or potential reversal in market trends.
How It Does It:
User Inputs : Traders can customize several parameters, including the lookback period for averages, whether to include wicks in candle size calculations, and preferences for displaying harmony and divergence indicators with specific colors.
Calculations :
- The script calculates the simple moving average (SMA) of volume and candle sizes (with an option to consider the full candle range including wicks or just the body) over the specified lookback period.
- It then compares the current candle's size and volume against these averages to identify states of harmony or divergence.
Visualization :
- Based on the user's input, it colors the background of the chart to reflect identified patterns. Each state (harmony above or below average, divergence with higher volume or larger candle body) can be highlighted with different colors, providing immediate visual cues to the trader.
What Traders Can Do With the Script:
Traders can utilize this script to enhance their technical analysis by:
Identifying Trend Consistency : Harmony indicators can signal strong trends where price action and volume confirm each other, possibly supporting continuation strategies.
Spotting Potential Reversals : Divergence indicators may highlight potential exhaustion points or reversals, especially when price moves significantly without corresponding volume support.
Customizing Analysis : By adjusting the lookback period, candle size consideration (body or including wicks), and visualization options, traders can tailor the analysis to fit their trading style and strategy.
Simple Moving Average CrossoverThis Pine Script is a TradingView script for creating a technical analysis indicator known as a Simple Moving Average Crossover (SMAC). The script visualizes two moving averages on a chart and provides buy and sell signals based on the crossover of these moving averages.
Here's a breakdown of the script:
Input Parameters:
fastLength: The length of the fast/simple moving average.
slowLength: The length of the slow/simple moving average.
Moving Averages Calculation:
fastMA: Calculates the simple moving average with a length of fastLength using the closing prices.
slowMA: Calculates the simple moving average with a length of slowLength using the closing prices.
Plotting:
Plots the fast and slow moving averages on the chart using different colors.
Buy and Sell Signals:
buySignal: Generates a boolean series indicating a buy signal when the fast moving average crosses above the slow moving average.
sellSignal: Generates a boolean series indicating a sell signal when the fast moving average crosses below the slow moving average.
Plotting Signals:
Plots green triangle-up shapes below price bars for buy signals.
Plots red triangle-down shapes above price bars for sell signals.
In summary, this script helps traders visualize potential trend reversals by identifying points where a shorter-term moving average crosses above (buy signal) or below (sell signal) a longer-term moving average. These crossover signals are often used in trend-following strategies to capture potential changes in market direction. Traders can customize the script by adjusting the input parameters to suit their trading preferences.
IU SIP CALCULATORHow This Indicator Script Works:
1. This indicator script calculate the monthly SIP returns of any market over any user defined period.
2. SIP stands for Systematic Investment Plan. It is a way to invest in any asset by regularly investing a fixed amount of money at regular intervals for example Monthly, Weekly, Quarterly etc.
3. This indicator Calculate the following
# Average buy price
# Total quantity hold
# Yearly returns
# Monthly returns
# Total invested amount
# Total profits in amount
# Total portfolio value
# Total returns in per percentage term.
4. This script takes monthly SIP amount, starting month, starting year, ending year, ending month from the user and store the value for calculations.
5. After that it store the open price of every month into an array then it average the array and compare that price with the last month close price.
6. on the bases of this it performs all of the calculations.
7. The script plot every calculation into an table from.
8. It requires monthly chart timeframe for working.
9. The table is editable user can change the color and transparency.
How User Can Benefit From The Script:
1. User can get the past monthly SIP returns of any market he wants to invest this will give him an overview about what to expect from the market.
2. Once user understand the expected returns from the market he can adjust his investment strategy.
3. This help the user to Analyse various stocks and their past performance.
4. User can also short list the best performed stocks.
5. Over all this script will give complete SIP vision of any market.
Relative Trend Index (RTI) by Zeiierman█ Overview
The Relative Trend Index (RTI) developed by Zeiierman is an innovative technical analysis tool designed to measure the strength and direction of the market trend. Unlike some traditional indicators, the RTI boasts a distinctive ability to adapt and respond to market volatility, while still minimizing the effects of minor, short-term market fluctuations.
The Relative Trend Index blends trend-following and mean-reverting characteristics, paired with a customizable and intuitive approach to trend strength, and its sensitivity to price action makes this indicator stand out.
█ Benefits of using this RTI instead of RSI
The Relative Strength Index (RSI) and the Relative Trend Index (RTI) are both powerful technical indicators, each with its own unique strengths.
However, there are key differences that make the RTI arguably more sophisticated and precise, especially when it comes to identifying trends and overbought/oversold (OB/OS) areas.
The RSI is a momentum oscillator that measures the speed and change of price movements and is typically used to identify overbought and oversold conditions in a market. However, its primary limitation lies in its tendency to produce false signals during extended trending periods.
On the other hand, the RTI is designed specifically to identify and adapt to market trends. Instead of solely focusing on price changes, the RTI measures the relative positioning of the current closing price within its recent range, providing a more comprehensive view of market conditions.
The RTI's adaptable nature is particularly valuable. The user-adjustable sensitivity percentage allows traders to fine-tune the indicator's responsiveness, making it more resilient to sudden market fluctuations and noise that could otherwise produce false signals. This feature is advantageous in various market conditions, from trending to choppy and sideways-moving markets.
Furthermore, the RTI's unique method of defining OB/OS zones takes into account the prevailing trend, which can provide a more precise reflection of the market's condition.
While the RSI is an invaluable tool in many traders' toolkits, the RTI's unique approach to trend identification, adaptability, and enhanced definition of OB/OS zones can provide traders with a more nuanced understanding of market conditions and potential trading opportunities. This makes the RTI an especially powerful tool for those seeking to ride long-term trends and avoid false signals.
█ Calculations
In summary, while simple enough, the math behind the RTI indicator is quite powerful. It combines the quantification of price volatility with the flexibility to adjust the trend sensitivity. It provides a normalized output that can be interpreted consistently across various trading scenarios.
The math behind the Relative Trend Index (RTI) indicator is rooted in some fundamental statistical concepts: Standard Deviation and Percentiles.
Standard Deviation: The Standard Deviation is a measure of dispersion or variability in a dataset. It quantifies the degree to which each data point deviates from the mean (or average) of the data set. In this script, the standard deviation is computed on the 'close' prices over a specified number of periods. This provides a measure of the volatility in the price over that period. The higher the standard deviation, the more volatile the price has been.
Percentiles: The percentile is a measure used in statistics indicating the value below which a given percentage of observations in a group falls. After calculating the upper and lower trends for the last 'length' periods and sorting these values, the script uses the 'Sensitivity ' parameter to extract percentiles from these sorted arrays. This is a powerful concept because it allows us to adjust the sensitivity of our signals. By choosing different percentiles (controlled through the 'Sensitivity' parameter), we can decide whether we want to react only to extreme events (high percentiles) or be more reactive and consider smaller deviations from the norm as significant (lower percentiles).
Finally, the script calculates the Relative Trend Index value, which is essentially a normalized measure indicating where the current price falls between the upper and lower trend values. This simple ratio is incredibly powerful as it provides a standardized measure that can be used across different securities and market conditions to identify potential trading signals.
Core Components
Trend Data Count: This parameter denotes the number of data points used in the RTI's calculation, determining the trend length. A higher count captures a more extended market view (long-term trend), providing smoother results that are more resistant to sudden market changes. In contrast, a lower count focuses on more recent data (short-term trend), yielding faster responses to market changes, albeit at the cost of increased susceptibility to market noise.
Trend Sensitivity Percentage: This parameter is employed to select the indices within the trend arrays used for upper and lower trend definitions. By adjusting this value, users can affect the sensitivity of the trend, with higher percentages leading to a less sensitive trend.
█ How to use
The RTI plots a line that revolves around a mid-point of 50. When the RTI is above 50, it implies that the market trend is bullish (upward), and when it's below 50, it indicates a bearish (downward) trend. Furthermore, the farther the RTI deviates from the 50 line, the stronger the trend is perceived to be.
Bullish
Bearish
The RTI includes user-defined Overbought and Oversold levels. These thresholds suggest potential trading opportunities when they are crossed, serving as a cue for traders to possibly buy or sell. This gives the RTI an additional use case as a mean-reversion tool, in addition to being a trend-following indicator.
In short
Trend Confirmation and Reversals: If the percentage trend value is consistently closer to the upper level, it can indicate a strong uptrend. Similarly, if it's closer to the lower level, a downtrend may be in play. If the percentage trend line begins to move away from one trend line towards the other, it could suggest a potential trend reversal.
Identifying Overbought and Oversold Conditions: When the percentage trend value reaches the upper trend line (signified by a value of 1), it suggests an overbought condition - i.e., the price has been pushed up, perhaps too far, and could be due for a pullback, or indicating a strong positive trend. Conversely, when the percentage trend value hits the lower trend line (a value of 0), it indicates an oversold condition - the price may have been driven down and could be set to rebound, or indicate a strong negative trend. Traders often use these overbought and oversold signals as contrarian indicators, considering them potential signs to sell (in overbought conditions) or buy (in oversold conditions). If the RTI line remains overbought or oversold for an extended period, it indicates a strong trend in that direction.
█ Settings
One key feature of the RTI is its configurability. It allows users to set the trend data length and trend sensitivity.
The trend data length represents the number of data points used in the trend calculation. A longer trend data length will reflect a more long-term trend, whereas a shorter trend data length will capture short-term movements.
Trend sensitivity refers to the threshold for determining what constitutes a significant trend. High sensitivity levels will deem fewer price movements as significant, hence making the trend less sensitive. Conversely, low sensitivity levels will deem more price movements as significant, hence making the trend more sensitive.
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems does not constitute financial advice or a solicitation to buy or sell any securities of any type. 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.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
Psychological levels (Bank levels) PsychoLevels v3 - TartigradiaPsychological levels (Bank levels) plots the closest "round" price levels above and below current price, based on neuroscience research of how humans intuitively calculate in logarithms.
Psychological levels, also called bank levels, are "round" price numbers, by truncating after the nth leftmost digits, around which price often experience resistance or support, because traders and investors tend to set orders around these round numbers.
The calculation done here is fully automatic and dynamic, contrary to other similar scripts, this one uses a mathematical calculation that extracts the 1, 2 or 3 leftmost digits and calculate the previous and next level by incrementing/decrementing these digits. This means it works for any symbol under any price range.
This approach is based on neuroscience research, which found that human brains intuitively approximate numbers on a logarithmic scale, adults and children alike, and similarly to macaques, for more info see Numerical Cognition , Weber-Fechner Law , Zipf law .
For example, if price is at 0.0421, the next major price level is 0.05 and medium one is 0.043. For another asset currently priced at 19354, the next and previous major price levels are 20000 and 10000 respectively, and the next/previous medium levels are 20000 and 19000, and the next/previous weak levels are 19400 and 19300.
IMPORTANT: Please enable "Scale price chart only" in the chart's scale's options, as otherwise major levels may make the chart's scale very small and hard to read.
How it works
At any time, there are 3 levels of strength (1 leftmost digit, 2 leftmost digits, 3 leftmost digits) represented by different sizes, and 3 directional levels for each of these strengths (level above, level below, and half-level) represented by different colors and positions, around current price.
Indeed, contrary to other similar price levels scripts, we do not plot ALL price levels at all times, because otherwise the chart becomes wayyy too cluttered, and also it's highly processing intensive to plot so many lines. So we here use a dynamical approach: we plot only the relevant levels, the closest ones according to current price.
Hence, when a level disappears, it does not mean that it does not exist anymore, but simply that we are not drawing it right now because it is not pertinent for the current price movement (ie, too far away).
Breakouts can be detected in two different ways depending on if SMA is set to a value higher than 1 or not: if SMA == 1, then there is no smoothing, so the levels adapt instantaneously to the current price, so to detect breakout, you should refer to the levels at the previous tick and whether they were broken by current tick's price; if SMA > 1, then there is some smoothing, and so the levels will stay in-place even if there is a breakout, so it's easier to spot breakouts without having to look at the previous ticks, but on the other hand you won't see the new levels for the new price range until after a few more ticks for the smoothing window to adapt. Hence, by default, smoothing is disabled, so that you can see the currently pertinent levels at all time, even right after or during a breakout.
By default, the strong above level is in green, strong below level is in red, medium above level is in blue, medium below level is in yellow, and weak levels aren't displayed but can be. Half levels are also displayed, in a darker color. Strong levels are increments of the first leftmost digit (eg, 10000 to 20000), medium levels are increments of the second leftmost digit (eg, 19000 to 20000), and weak levels of the third leftmost digit (eg, 19100 to 19200). Instead of plotting all the psychological levels all at once as a grid, which makes the chart unintelligible, here the levels adapt dynamically around the current price, so that they show the above/below/half levels relatively to the current price.
Indeed, "half-levels" are also displayed (eg, medium level can also display 19500 instead of only 19000 or 20000). This was made because otherwise the gap between two levels was too big, especially for the strongest levels (eg, there was no major level between 20000 and 30000, but with a half-step we also get a half-level at 25000, and empirically price tends to respect these half levels - I also tried quarter levels but empirically the results were not good). In addition to this hard-coded half-level, you can also create more subdivisions (eg, quarter levels) by setting the simple moving average to a value higher than 1.
The script can be made to run on the daily timeframe whatever the current chart's timeframe is, to reduce the variability in levels, to make it less noisy than intraday price movement. But by default, the chart resolution is used, because I empirically found that the levels found with this indicator work on all time resolutions quite well.
The step can be adjusted to increase the gap between levels, eg, if you want to display one every 2 levels then input step = 2 (eg, 22000, 24000, 26000, etc), or if you want to display quarter levels, input 0.25 (eg, 22000, 22250, 22500, etc). The default values should fit most use cases and cover most psychological levels.
How to read
Focust first on bigger dotted levels, they are stronger and more likely to cause a rebound or a major event or price to stay at this level.
Remember that it's not enough to just look at levels, the context is important, because levels have various effects depending on current price movement: if price is above a level, the level is a support on which price can rebound; if price is below a level, the level is a resistance on which price can rebound (or break); and finally sometimes price also stays hovering around a level for some time.
Levels closer to 9 are less weaker, and levels closer to 0 are stronger, according to Zipf law. This is now reflected since v3 in the transparency, levels that are closer to 9 will be more transparent.
The switch in color for the same level illustrates how a level switches from being a support to a resistance and inversely. Eg, if a major level turns from green to red, then it changed from being a resistance (above) to a support (below).
As is well known in trading, longer standing levels are stronger. This indicator provides a direct illustration: in practice, the number of consecutive dots on the same line influences the strength of the level: the longer the chain of dots, the more you can expect this price level to be significant. The length does not mean the level will necessarily hold, but that other traders are likely to monitor if it holds, and if not then price will break down. Hence, longer levels are good spots to place stop losses, or to enter trades depending on your strategy. In general, a single dot is not enough to consider a level significant, but 2 or more is a good enough level, and 10+ is a strong level. Intuitively, this makes sense, and is what pro traders do: the longer a level is tested, the stronger it is. This indicator can visually represent this intuition and allows to use it as a more systematic trading signal.
Motivation
I initially made the first version of the PsychoLevels indicator mainly to train with PineScript, but I found it surprisingly accurate to define levels that are respected by price movements. So I guess it can be useful for new traders and experienced traders alike, as it's easy to forget that psychological levels can often be as strong if not stronger than technical levels. It can also be used to quickly screen other minor assets for trading opportunities. For example, a hybrid strategy would be to manually define levels on BTCUSD but using this script to automatically define levels in crypto altcoins and quickly screen them for a trade opportunity that can be greater than with BTCUSD but with the same trend.
Personally, although initially I did not believe an automated tool would work well for this purpose, I could now empirically verify that it is quite reliable for the purpose of detecting levels, and so I use it all the time to find the levels automatically and help me monitor them like a hawk, so that I only have to draw uber major levels, the ones that last between cycles and that are hard to autodetect, but otherwise all daily/weekly levels are usually covered. However, trendlines must still be drawn manually or with another indicator (but note that up to now I have found none that worked well enough), as PsychoLevels only draws levels (ie, horizontal lines, not oblique ones!).
Differences with the previous version PsychoLevels v2
price levels now have a transparency according to their importance for the human brain: numbers closer to 9 are weaker, and numbers closer to 0 are stronger and represent a major psychological threshold (eg, that's why prices marked as $9.99 sell better than $10.00). This option can be disabled to get the exact same behavior as v2.
modularized and typed code
PsychoLevels v2 can be found here:
Trend Angle Candle ColorIntroduction:
As a trader, understanding the trend of the market is crucial for making informed decisions. One way to gain insight into the market trend is by using technical indicators, which are mathematical calculations that provide traders with valuable information about price action. In this post, we will explore a unique indicator called the "Trend Angle Candle Color" that not only identifies the trend but also visualizes it using color-coded candlesticks. We'll dive into the script, discuss its key components, and explain how you can benefit from using it in your trading strategy.
Script Overview:
The Trend Angle Candle Color Indicator is written in the Pine Script language for the TradingView platform. The indicator utilizes a combination of Exponential Moving Average (EMA), Average True Range (ATR), and Epanechnikov Kernel function to calculate the trend angle, which is then represented by color-coded candlesticks. The script offers several customizable inputs, such as the length of the lookback period, the scale (sensitivity), and the smoothing factor.
Key Components of the Script:
Inputs:
Length: Determines the lookback period for calculating the trend.
Scale: Adjusts the sensitivity of the indicator.
Smoothing: Controls the degree of smoothing applied to the angle calculation.
Smoothing Factor: Adjusts the weight of the Epanechnikov Kernel function.
Functions:
grad(src): A function that takes an input value and returns a corresponding color from a predefined gradient.
ema(source): An Exponential Moving Average function that smoothens the price data.
atan2(y, x) and degrees(float source): Functions that convert the slope into an angle in radians and then into degrees.
epanechnikov_kernel(_src, _size, _h, _r): A function that applies the Epanechnikov Kernel smoothing method to the angle data.
Calculations:
ATR: Calculates the Average True Range using the EMA function.
Slope: Determines the slope of the price change over the specified lookback period.
Angle_rad: Converts the slope into an angle in radians.
Degrees: Applies the Epanechnikov Kernel smoothing function to the angle data and scales it to a range between 0 to 100.
Visualization:
Colour: Assigns a color to each candlestick based on the calculated degree value using the grad() function.
Barcolor(colour) and plotcandle(): Functions that display the color-coded candlesticks on the chart.
Benefits of Using the Trend Angle Candle Color Indicator:
Easy Visualization: The color-coded candlesticks provide a simple and intuitive way to understand the market trend direction and strength at a glance.
Customizable Parameters: The customizable inputs allow traders to fine-tune the indicator to their preferred settings, suiting their trading style and strategy.
Versatility: The Trend Angle Candle Color Indicator can be used across various timeframes and financial instruments, making it a valuable addition to any trader's toolkit.
Conclusion:
The Trend Angle Candle Color Indicator is a powerful tool that can enhance your trading strategy by providing a visual representation of the market trend. The unique combination of EMA, ATR, and Epanechnikov Kernel smoothing helps create a more accurate and easy-to-understand trend angle calculation. By incorporating this indicator into your trading analysis, you can gain better insight into market dynamics and make more informed trading decisions.
Visible Fibonacci█ OVERVIEW
This indicator displays Fibonacci retracement and extension levels on the price chart using data within the chart's visible range, providing traders with an automated alternative to our well-known drawing tool .
█ CONCEPTS
Fibonacci sequence and the Golden ratio
The Fibonacci sequence is a sequence of numbers where each term is the sum of the previous two terms. In his book Liber Abaci , Fibonacci used this sequence to estimate the growth of rabbit populations. Although most commonly associated with Fibonacci, this numeric sequence appeared in Indian mathematics as early as 200 BC. As this sequence approaches infinity, the ratio of the last element to the preceding approaches the Golden ratio (1.618033...), a well-known metallic ratio theoretically observed in many natural and synthetic systems. Many traders believe that the Fibonacci sequence and the Golden ratio carry significance in the financial markets.
Fibonacci retracements and extensions
Fibonacci retracements and extensions are extremely popular in technical analysis. They are created by connecting two extreme points, typically pivot points, by a trend line and multiplying the range between them by the ratios of steps in the Fibonacci sequence, or more precisely, powers of the Golden Ratio, to produce estimated levels of support and resistance. The ratios used for retracement multipliers are typically the Golden ratio raised to the power of 0, -0.5, -1, -2, and -3, or 1, 0.786, 0.618, 0.382, and 0.236, respectively. It is also common to see traders use a retracement ratio of 0.5. The ratios used for extension multipliers are typically the Golden ratio raised to the power of 0.5, 1, 2, and 3, or 1.272, 1.618, 2.618, and 4.236, respectively. Traders often combine these retracement and extension ratios with others they deem significant for a more personalized output.
Zig Zag
Zig Zag is a popular indicator that filters out minor price fluctuations to denoise data and emphasize trends. Traders commonly use Zig Zag for trend confirmation, identifying potential support and resistance, and pattern detection. It is formed by identifying significant local high and low points in alternating order and connecting them with straight lines, omitting all other data points from their output. There are several ways to calculate the Zig Zag's data points and the conditions by which its direction changes. This script uses the highest and lowest values over a specified length to estimate the locations of pivots. The Zig Zag reverses its direction when a new high or low emerges in the opposite direction. Additionally, enabling the "Detect additional pivots" option in the script settings will locate extra pivots when the number of bars in which no new pivot occurs exceeds the Zig Zag length.
Visible Fibonacci
This script uses the chart's visible bars to calculate and display an automated Fibonacci retracement tool with extreme points based on either of two calculation methods:
• Visible Chart Range: This method uses the highest and lowest points from the visible chart range for Fibonacci level calculation.
• Visible Zig Zag: This method uses historical pivots from a Zig Zag indicator for level calculation. The "nth Last Pivot" input in the script settings controls how many pivots back from the last visible one will be used to calculate the Fibonacci levels.
As traders pan and zoom on their charts, the script dynamically recalculates its values explicitly using the bars within the visible range.
Note that levels drawn outside the range between the high and low points may affect the scale of the chart. To prevent this, select the "Scale price chart only" option in the chart settings.
█ FOR Pine Script™ CODERS
• This script utilizes functions from the VisibleChart library by our resident PineCoders . The library exploits the chart.left_visible_bar_time and chart.right_visible_bar_time variables, which return the opening time of the leftmost and rightmost bars on the chart. They are only two of many new built-ins in the `chart.*` namespace. See this blog post for more information, or look them up by typing "chart." in the Pine Script™ Reference Manual .
• This script's architecture utilizes user-defined types (UDTs) to create custom objects which are the equivalent of variables containing multiple parts, each able to hold independent values of different types . The recently added feature was announced in this blog post.
Look first. Then leap.
Oscillator Workbench — Chart [LucF]█ OVERVIEW
This indicator uses an on-chart visual framework to help traders with the interpretation of any oscillator's behavior. The advantage of using this tool is that you do not need to know all the ins and outs of a particular oscillator such as RSI, CCI, Stochastic, etc. Your choice of oscillator and settings in this indicator will change its visuals, which allows you to evaluate different configurations in the context of how the workbench models oscillator behavior. My hope is that by using the workbench, you may come up with an oscillator selection and settings that produce visual cues you find useful in your trading.
The workbench works on any symbol and timeframe. It uses the same presentation engine as my Delta Volume Channels indicator; those already familiar with it will feel right at home here.
█ CONCEPTS
Oscillators
An oscillator is any signal that moves up and down a centerline. The centerline value is often zero or 50. Because the range of oscillator values is different than that of the symbol prices we look at on our charts, it is usually impossible to display an oscillator on the chart, so we typically put oscillators in a separate pane where they live in their own space. Each oscillator has its own profile and properties that dictate its behavior and interpretation. Oscillators can be bounded , meaning their values oscillate between fixed values such as 0 to 100 or +1 to -1, or unbounded when their maximum and minimum values are undefined.
Oscillator weight
How do you display an oscillator's value on a chart showing prices when both values are not on the same scale? The method I use here converts the oscillator's value into a percentage that is used to weigh a reference line. The weight of the oscillator is calculated by maintaining its highest and lowest value above and below its centerline since the beginning of the chart's history. The oscillator's relative position in either of those spaces is then converted to a percentage, yielding a positive or negative value depending on whether the oscillator is above or below its centerline. This method works equally well with bounded and unbounded oscillators.
Oscillator Channel
The oscillator channel is the space between two moving averages: the reference line and a weighted version of that line. The reference line is a moving average of a type, source and length which you select. The weighted line uses the same settings, but it averages the oscillator-weighted price source.
The weight applied to the source of the reference line can also include the relative size of the bar's volume in relation to previous bars. The effect of this is that the oscillator's weight on bars with higher total volume will carry greater weight than those with lesser volume.
The oscillator channel can be in one of four states, each having its corresponding color:
• Bull (teal): The weighted line is above the reference line.
• Strong bull (lime): The bull condition is fulfilled and the bar's close is above the reference line and both the reference and the weighted lines are rising.
• Bear (maroon): The weighted line is below the reference line.
• Strong bear (pink): The bear condition is fulfilled and the bar's close is below the reference line and both the reference and the weighted lines are falling.
Divergences
In the context of this indicator, a divergence is any bar where the slope of the reference line does not match that of the weighted line. No directional bias is assigned to divergences when they occur. You can also choose to define divergences as differences in polarity between the oscillator's slope and the polarity of close-to-close values. This indicator's divergences are designed to identify transition levels. They have no polarity; their bullish/bearish bias is determined by the behavior of price relative to the divergence channel after the divergence channel is built.
Divergence Channel
The divergence channel is the space between two levels (by default, the bar's low and high ) saved when divergences occur. When price has breached a channel and a new divergence occurs, a new channel is created. Until that new channel is breached, bars where additional divergences occur will expand the channel's levels if the bar's price points are outside the channel.
Price breaches of the divergence channel will change its state. Divergence channels can be in one of five different states:
• Bull (teal): Price has breached the channel to the upside.
• Strong bull (lime): The bull condition is fulfilled and the oscillator channel is in the strong bull state.
• Bear (maroon): Price has breached the channel to the downside.
• Strong bear (pink): The bear condition is fulfilled and the oscillator channel is in the strong bear state.
• Neutral (gray): The channel has not been breached.
█ HOW TO USE THE INDICATOR
Load the indicator on an active chart (see here if you don't know how).
The default configuration displays:
• The Divergence channel's levels.
• Bar colors using the state of the oscillator channel.
The default settings use:
• RSI as the oscillator, using the close source and a length of 20 bars.
• An Arnaud-Legoux moving average on the close and a length of 20 bars as the reference line.
• The weighted version of the reference line uses only the oscillator's weight, i.e., without the relative volume's weight.
The weighted line is capped to three standard deviations of the reference.
• The divergence channel's levels are determined using the high and low of the bars where divergences occur.
Breaches of the channel require a bar's low to move above the top of the channel, and the bar's high to move below the channel's bottom.
No markers appear on the chart; if you want to create alerts from this script, you will need first to define the conditions that will trigger the markers, then create the alert, which will trigger on those same conditions.
To learn more about how to use this indicator, you must understand the concepts it uses and the information it displays, which requires reading this description. There are no videos to explain it.
█ FEATURES
The script's inputs are divided in five sections: "Oscillator", "Oscillator channel", "Divergence channel", "Bar Coloring" and "Marker/Alert Conditions".
Oscillator
This is where you configure the oscillator you want to study. Thirty oscillators are available to choose from, but you can also use an oscillator from another indicator that is on your chart, if you want. When you select an external indicator's plot as the oscillator, you must also specify the value of its centerline.
Oscillator Channel
Here, you control the visibility and colors of the reference line, its weighted version, and the oscillator channel between them.
You also specify what type of moving average you want to use as a reference line, its source and its length. This acts as the oscillator channel's baseline. The weighted line is also a moving average of the same type and length as the reference line, except that it will be calculated from the weighted version of the source used in the reference line. By default, the weighted line is capped to three standard deviations of the reference line. You can change that value, and also elect to cap using a multiple of ATR instead. The cap provides a mechanism to control how far the weighted line swings from the reference line. This section is also where you can enable the relative volume component of the weight.
Divergence Channel
This is where you control the appearance of the divergence channel and the key price values used in determining the channel's levels and breaching conditions. These choices have an impact on the behavior of the channel. More generous level prices like the default low and high selection will produce more conservative channels, as will the default choice for breach prices.
In this section, you can also enable a mode where an attempt is made to estimate the channel's bias before price breaches the channel. When it is enabled, successive increases/decreases of the channel's top and bottom levels are counted as new divergences occur. When one count is greater than the other, a bull/bear bias is inferred from it. You can also change the detection mode of divergences, and choose to display a mark above or below bars where divergences occur.
Bar Coloring
You specify here:
• The method used to color chart bars, if you choose to do so.
• If you want to hollow out the bodies of bars where volume has not increased since the last bar.
Marker/Alert Conditions
Here, you specify the conditions that will trigger up or down markers. The trigger conditions can include a combination of state transitions of the oscillator and the divergence channels. The triggering conditions can be filtered using a variety of conditions.
Configuring the marker conditions is necessary before creating an alert from this script, as the alert will use the marker conditions to trigger.
Realtime values will repaint, as is usually the case with oscillators, but markers only appear on bar closes, so they will not repaint. Keep in mind, when looking at markers on historical bars, that they are positioned on the bar when it closes — NOT when it opens.
Raw values
The raw values calculated by this script can be inspected using the Data Window, including the oscillator's value and the weights.
█ INTERPRETATION
Except when mentioned otherwise, this section's charts use the indicator's default settings, with different visual components turned on or off.
The aim of the oscillator channel is to provide a visual representation of an oscillator's general behavior. The simplest characteristic of the channel is its bull/bear state, determined by whether the weighted line is above or below the reference line. One can then distinguish between its bull and strong bull states, as transitions from strong bull to bull states will generally happen when trends are losing steam. While one should not infer a reversal from such transitions, they can be a good place to tighten stops. Only time will tell if a reversal will occur. One or more divergences will often occur before reversals. This shows the oscillator channel, with the reference line and the thicker, weighted line:
The nature of the divergence channel 's design makes it particularly adept at identifying consolidation areas if its settings are kept on the conservative side. The divergence channel will also reveal transition areas. A gray divergence channel should usually be considered a no-trade zone. More adventurous traders can use the oscillator channel to orient their trade entries if they accept the risk of trading in a neutral divergence channel, which by definition will not have been breached by price. This show only the divergence channels:
This chart shows divergence channels and their levels, and colors bars on divergences and on the state of the oscillator channel, which is not visible on the chart:
If your charts are already busy with other stuff you want to hold on to, you could consider using only the chart bar coloring component of this indicator. Here we only color bars using the combined state of the oscillator and divergence channel, and we do not color the bodies of bars where volume has not increased. Note that my chart's settings do not color the candle bodies:
At its simplest, one way to use this indicator would be to look for overlaps of the strong bull/bear colors in both the oscillator channel and a divergence channel, as these identify points where price is breaching the divergence channel when the oscillator's state is consistent with the direction of the breach.
Tip
One way to use the Workbench is to combine it with my Delta Volume Channels indicator. If both indicators use the same MA as a reference line, you can display its delta volume channel instead of the oscillator channel.
This chart shows such a setup. The Workbench displays its divergence levels, the weighted reference line using the default RSI oscillator, and colors bars on divergences. The DV Channels indicator only displays its delta volume channel, which uses the same MA as the workbench for its baseline. This way you can ascertain the volume delta situation in contrast with the visuals of the Workbench:
█ LIMITATIONS
• For some of the oscillators, assumptions are made concerning their different parameters when they are more complex than just a source and length.
See the `oscCalc()` function in this indicator's code for all the details, and ask me in a comment if you can't find the information you need.
• When an oscillator using volume is selected and no volume information is available for the chart's symbol, an error will occur.
• The method I use to convert an oscillator's value into a percentage is fragile in the early history of datasets
because of the nascent expression of the oscillator's range during those early bars.
█ NOTES
Working with this workbench
This indicator is called a workbench for a reason; it is designed for traders interested in exploring its behavior with different oscillators and settings, in the hope they can come up with a setup that suits their trading methodology. I cannot tell you which setup is the best because its setup should be compatible with your trading methodology, which may require faster or slower transitions, thus different configurations of the settings affecting the calculations of the divergence channels.
For Pine Script™ Coders
• This script uses the new overload of the fill() function which now makes it possible to do vertical gradients in Pine. I use it for both channels displayed by this script.
• I use the new arguments for plot() 's `display` parameter to control where the script plots some of its values,
namely those I only want to appear in the script's status line and in the Data Window.
• I used my ta library for some of the oscillator calculations and helper functions.
• I also used TradingView's ta library for other oscillator calculations.
• I wrote my script using the revised recommendations in the Style Guide from the Pine v5 User Manual.
Position Tool█ OVERVIEW
This script is an interactive measurement tool that can be used to evaluate or keep track of trades. Like the long and short position drawing tools, it calculates a risk reward ratio and a risk-adjusted position size from the entry, stop and take profit levels, but it also does much more:
• It can be used to configure long or short trades.
• All monetary values can be expressed in any number of currencies.
• The value of tick/pip movement (which varies with the position's size) is displayed in the currency you have selected.
• The CAGR ( Compound Annual Growth Rate ) for the trade can be displayed.
• It does live tracking of the position.
• You can configure alerts on entries and exits.
█ HOW TO USE IT
Load the indicator on an active chart (see here if you don't know how).
When you first load this script on a chart, you will enter an interactive selection mode where the script asks you to pick three points in price and time on your chart by clicking on the chart. Directions will appear in a blue box at the bottom of the screen with each click of the mouse. The first selection is the entry point for the trade you are considering, which takes into account both the time and level you choose, the next are the take profit and stop levels. Once you have selected all three points, the script will draw trade zones and labels containing the trade metrics. The script determines if the trade is a long or short from the position of the take profit and stop loss levels in relation to the entry price. If the take profit level is above the entry price, the stop must be below and vice versa, otherwise an error occurs.
You can change levels by dragging the handles that appear when you select the indicator, or by entering new values in the script's settings. The only way to re-enter interactive mode is to re-add the indicator to your chart.
Once you place the position tool on a chart, it will appear at the same levels on all symbols you use. If your scale is not set to "Scale price chart only", the position tool's levels will be taken into account when scaling the chart, which can cause the symbol's bars to be compressed. If your scale is set to "Scale price chart only", the position tool will still be there, but it will not impact the scale of the chart's bars, so you won't see it if it sits outside the symbol's price scale.
If you select the position tool on your chart and delete it, this will also delete the indicator from the chart. You will need to re-add it if you want to draw another position tool. You can add multiple instances of the indicator if you need a position tool on more than one of your charts.
█ FEATURES
Display
The position tool displays the following information for entries:
• The entry's price level with an '@' sign before it.
• Open or Closed P&L : For an open trade, the "Open P&L" displays the difference in money value between the entry level and the chart's current price.
For a closed trade, the "Closed P&L" displays the realized P&L on the trade.
• Quantity : The trade size, which takes into account the risk tolerance you set in the script's settings.
• RR : The reward to risk ratio expresses the relationship of the distance between the entry and the take profit level vs the entry and the stop level.
Example: A $100 stop with a $100 target will have a ratio of 1:1, whereas a $200 target with the same stop will have a 2:1 ratio.
• Per tick/pip : Represents the money value of a tick or pip movement.
• CAGR : The Compound Annual Growth Rate will be displayed on the main order label on trades that exceed one day in duration.
This value is calculated the same way as in our CAGR Custom Range indicator.
If the trade duration is less than one day, the metric will not be present in the display.
The stop and take profit levels display:
• Their price level with an '@' sign before it.
• Their distance from the entry in money value, percentage and ticks/pips.
• The projected end money value of the position if the level is reached. These values are calculated based on the trade size and the currency.
Currency adjustments
This indicator modifies the trade label's colors and values based on the final Profit and Loss (P&L), which considers the dynamic exchange rate between base and conversion currencies in its calculations when the conversion currency is a specified value other than the default. Depending on the cross rate between the base and account currencies, this process can yield a negative P&L on an otherwise successful simulated trade.
For instance, if your account is in currency XYZ, you might buy 10 Apple shares at $150 each, with the XYZ to USD exchange rate being 2:1. This purchase would cost you 3000 units of XYZ. Suppose that later on, the shares appreciate to $170 each, and you decide to sell. One might expect this trade to result in profit. However, if the exchange rate has now equalized to 1:1, the return on selling the shares, calculated in XYZ, would only be 1700 units, resulting in a loss of 1300 units XYZ.
The indicator will mark the P&L and the target labels in red in such cases, regardless of whether the market price reached the profit target, as the trade produced a net loss due to reduced funds after currency conversion. Conversely, an otherwise unsuccessful position can result in a net profit in the account currency due to conversion rate fluctuations. The final losses or gains appear in the label metrics, and the corresponding color coding reflects the trade's success or failure.
Settings
The settings in the "Trade sizing" section are used to calculate the position size and the monetary value of trades. Two types of risk can be chosen from the menu; a percentage based risk calculation, or a fixed money value. The risk is used to calculate the quantity of units to purchase to achieve that level of risk exposure. Example: An account size of $1000 and 10% risk will have a projected end amount of $900 if the stop loss is hit. The quantity is a product of this relationship; a projected number of units to allow for the equivalent of $100 of risk exposure over the change in price from the entry to the stop value.
The "Trade levels" allow you to manually set the entry, take profit and stop levels of an existing position tool on your chart.
You can control the appearance of the tool and the values it displays in the settings following these first two sections.
Alerts
Three alerts that will trigger when you configure an alert on this indicator. The first will send an alert when the entry price is breached by price action if that price has not already been breached in the previous price history. This is dependant on the entry location you select when placing the indicator on the chart. The other two alerts will trigger when either the stop loss or the take profit level is breached to signal that a trade exit has occurred.
█ NOTES FOR Pine Script™ CODERS
• Interactive inputs are implemented for input.time() and input.price() . These specialized input functions allow users to interact with a script.
You can create one interactive input for both time and price values by using the same `inline` argument in a pair of input.time() and input.price() function calls.
• We use the `cagr()` function from our ta library.
• The script uses the runtime.error() function to throw an error if the stop and limit prices are not placed on opposing sides of the entry price.
• We use the `currency` parameter in a request.security() call to convert currencies.
Look first. Then leap.
Input Source█ OVERVIEW
This script demonstrates how your script can provide multiple input source selections while still allowing the use of an external indicator input.
█ CONCEPTS
There are occasions when one needs to provide script users with multiple input source selections while still allowing the selection of an external input. This is usually impossible because for external indicators to appear in an input widget's dropdown menu, only one input.source() call must be used in the script. If multiple calls are used, then no external indicator can be selected in any of the script's input widgets.
This script demonstrates how you can provide input sources offering a selection among the usual source built-ins ( open , high , low , close , hl2 , hlc3 , ohlc4 , hlcc4 ), but without the ability for users to select an external indicator. This allows your script to use multiple source inputs while still using one source input allowing the selection of an external input.
Look first. Then leap.
Ichimoku Cloud MasterIchimoku Cloud Master aims to provide the ichimoku trader with easy alert functionality to not miss out on valuable trade setups. The key purpose of this script is to better visualise crucial moments in Ichimoku trading. These alerts should not be used for botting in my opinion as they always need a human to confirm the ichimoku market structure. For example, is the Kijun-Sen flat and too far away from price? A good ichimoku trader will not enter at such a point in time.
Explanation of script:
Chikou(lagging span): pink line, this is price plotted 26 bars ago. People ignore the power of this it is crucial to see how chikou behaves towards past price action as seen in the chart below where we got an entry at red arrow because chikou bounced from past fractal bottom.
Kijun-Sen(base line): Black line or color coded line. This is the equilibrium of last 26 candles. To me this is the most important line in the system as it attracts price.
Kijun = (Highest high of 26 periods + Lowest low of 26 periods) ÷ 2
Tenkan-Sen(conversion line): Blue line. This is the equilibrium of last 9 candles. In a strong uptrend price stays above this line.
Tenkan = (Highest high of 9 periods + Lowest low of 9 periods) ÷ 2
Senkou A (Leading span A)= Pink cloud line, this is the average of the 2 components projected 26 bars in the future.
Senkou A = (Tenkan + Kijun) ÷ 2
Senkou B (Leading span B) = Green cloud line, this is the 52 day equilibrium projected 26 bars in the future.
Senkou B = (Highest high of prior 52 periods + Lowest low of prior 52 periods) ÷ 2
Notice how the distance between Chikou and the cloud is also 52 bars. This is all part of Hosoda's numbers which I am not going to explain here.
Fractals: These are the black triangles you find at key turning point. If you want to know how they work reseach williams fractals. I've used fractals with a period of 9 as it is an ichimoku number. These fractals are useful when working with ichimoku wave theory. Again I will not explain that here but in further education
Fractal Support: Ability to extend lines from the fractals which can be used as an entry/exit mechanism in your trading. For example wait for tenkan to cross kijun and then enter on fractal breakout.
Signals:
Crossing of Chikou (lagging span) with past Kijun-Sen: this will color code the Bars / Kijun-Sen (you can turn this off in options)
The script also has a signal for this, this will be the green and purple diamonds. Where green is bullish and purple is bearish.
wy is this important?
When current price plotted 26 candles back (chikou) crosses over the past equilibrium (kijun-sen) this usualy means price has moved past resistance levels where sellers come in. This indicates a switch in market structure and price is bullish from this point, this is the same in the other direction.
Kumo Twist: when the kumo cloud (future) has a crossover from for example green to red (bull to bear). The script plots these using the colored cross symbols as seen in the picture above. A chikou cross + a Kumo twist at same bar of next to eachother below the cloud can be a great entry sign: this would be an entry after cross in the chart above.
Kijun Bounce: when in an uptrend the price retraces back to Kijun-Sen and starts to go back up. These are marked by the yellow circles as seen in chart below:
low below Kijun-Sen and close above it
Strong Trend: when Tenkan is above Kijun, price above cloud, future cloud green, chikou above close, chikou above Kijun we establish a strong bullish trend. For bearish the exact opposite. The script has a function to send an alert at the start of such trends and to plot them with small colored circles above the bars.
Customisation:
I've added options to disable specific aspects of the indicator for those traders who do not want to use all aspects of the indicator. In the customisation tab I've given each part a clear title so you can use your own colors/shapes.
The perfect entry?
Further info:
Look into my education pane, I will be adding education in the future. The chance of me making a more advanced version of the script including line forecasting etc is rather high so watch out for that.
For those who want to master this system I recommend reading the book:
How to make money with the ichimoku system by Balkrishna M. Sadekar
Or the originals books by Hosoda the inventor of Ichimoku if you can get your hands on them and can read Japanese.
Almost all info about the ichimoku system you find on the internet will lose you money because they reduce the system to simple signals that do not generate money.
I will be providing educational material on tradingview using this indicator.
FULL MA Optimization ScriptHello!
This script measures the performance of 10 moving averages and compares them!
Crossover and crossunders are both tested.
The tested moving averages include: TEMA, DEMA, EMA, SMA, ALMA, HMA, T3 Average, WMA, VWMA, LSMA.
You can select the length of the moving averages and the data source (I.E, close, open, ohlc4, etc.) and the script will calculate your selections!
For instance, if you select a length of 32 and a source of ohlc4 for crossovers, the script will assign the ten moving averages that length and data source and compare the performance for ohlc4 crossovers of the 32TEMA, 32DEMA, 32SMA, 32WMA, etc. If you select crossunder, the script will calculate the performance of ohlc4 crossunders of the same moving average lengths.
Moving average performances are listed in descending order (best to worst) and are categorized by tier: Upper-Tier, Mid-Tier, Lower-Tier. The Upper-Tier displays the three best performing averages relative to the MA length and data source, for the asset on the relevant chart timeframe. The Lower-Tier displays the three worst performing averages. The Mid-Tier displays the moving averages whose performance did not achieve a top three spot or a bottom three spot.
Also calculated is the moving average which achieved the highest cumulative gain/loss and the lowest cumulative gain/loss. Any asset and timeframe can be tested; the script recalculates relative to the chart timeframe. I added a "Benchmark Moving Average" free parameter and a "Custom Moving Average" free parameter. The two operate identically; you can set the length and data source of both for quick and simple comparison between differing average lengths and sources.
If "Crossover" is selected, the "(X Candles)" displayed on the tables reflects the average number of sessions the data source remains above a moving average following a crossover. If "Crossunder" is selected, the "(X Candles)" reflects the average number of sessions the data source remains below the moving average following a crossunder.
If "Crossover" is selected, the listed "X%" reflects the average percentage gain/loss following a source crossover of a moving average up until the source crosses back under the moving average. If "Crossunder" is selected, the listed "X%" reflects the average percentage gain/loss following a source crossunder of a moving average up until the source crosses back over the moving average.
If "Crossover" is selected, the listed "X Crosses" reflects the number of instances in which the source crossed over a moving average. If "Crossunder" is selected, the listed "X Crosses" reflects the number of instances in which the source crossed under a moving average.
Additional tooltips and instructions are included should you access the user input menu.
The moving averages can be plotted as a gradient (highest priced MA to lowest priced MA) alongside the best performing moving average. The moving averages can be plotted in full color, light color alongside the best performing average, or not plotted.
This script improves upon a similar script I have released:
I decided not to update the previous script. The previous script calculates crossovers only and, due to being less code intensive, calculates much quicker. If a user is concerned only with price crossovers, not crossunders, the original script is a better option! It's faster, making it the preferable choice!
This script "FULL MA Optimization" calculates crossovers/crossunders and incorporates additional plot styles. I ran into trouble a few times where the script was too large to run on TV. This script is not "slow", I suppose; however, calculations and parameter modifications take a bit longer than the original script!
neutronix community bot ML + Alerts 4h-daily (mod. capissimo)Gm traders,
i have been a python programmer for some years studying artificial intelligence for general purpose; after some time i finally decided to have a look at some finance related stuff and scripts.
Moved by curiosity i've decided to make some but decisive modifications to a script i tried to use initially but without success: the LVQ machine learning strategy.
So after studying the charts and indicators, i have rewritten this script made by Capissimo and added heavy filtering thanks to vwap and vwma, then fixed repaint and other issues.
I hope you enjoy it and that it could increase your possibilities of success in trading.
HOW TO USE THE SCRIPT
Add the script to 3h+ charts like for example BTC 4h, 6h, 8h, 12h, daily. (In order for it to work on shorter timeframes charts you can try to change to lookback window but i dont advise it).
Change only rsi and volfilter(volume filtering) settings to try to find the best winrate. Leave dataset to open. Fyi the winrate isn't 100% accurate but can give you a raw vision of final results.
Use alerts included for trading and and in options click on 'Once per bar'. If you have checked 'Reverse Signals' in the control panel you have got more 'risky' signals so be advised if trading futures and stocks.
Exit trade signals not provided, so it is recommended the use of take profits and stop loss (1.5:1 ratio)
As always, the script is for study purposes. Do not risk more than you can spend!
Original LVQ-based strategy made by capissimo
Modified by gravisxv 13/10/2021
Filter Information Box - PineCoders FAQWhen designing filters it can be interesting to have information about their characteristics, which can be obtained from the set of filter coefficients (weights). The following script analyzes the impulse response of a filter in order to return the following information:
Lag
Smoothness via the Herfindahl index
Percentage Overshoot
Percentage Of Positive Weights
The script also attempts to determine the type of the analyzed filter, and will issue warnings when the filter shows signs of unwanted behavior.
DISPLAYED INFORMATION AND METHODS
The script displays one box on the chart containing two sections. The filter metrics section displays the following information:
- Lag : Measured in bars and calculated from the convolution between the filter's impulse response and a linearly increasing sequence of value 0,1,2,3... . This sequence resets when the impulse response crosses under/over 0.
- Herfindahl index : A measure of the filter's smoothness described by Valeriy Zakamulin. The Herfindahl index measures the concentration of the filter weights by summing the squared filter weights, with lower values suggesting a smoother filter. With normalized weights the minimum value of the Herfindahl index for low-pass filters is 1/N where N is the filter length.
- Percentage Overshoot : Defined as the maximum value of the filter step response, minus 1 multiplied by 100. Larger values suggest higher overshoots.
- Percentage Positive Weights : Percentage of filter weights greater than 0.
Each of these calculations is based on the filter's impulse response, with the impulse position controlled by the Impulse Position setting (its default is 1000). Make sure the number of inputs the filter uses is smaller than Impulse Position and that the number of bars on the chart is also greater than Impulse Position . In order for these metrics to be as accurate as possible, make sure the filter weights add up to 1 for low-pass and band-stop filters, and 0 for high-pass and band-pass filters.
The comments section displays information related to the type of filter analyzed. The detection algorithm is based on the metrics described above. The script can detect the following type of filters:
All-Pass
Low-Pass
High-Pass
Band-Pass
Band-Stop
It is assumed that the user is analyzing one of these types of filters. The comments box also displays various warnings. For example, a warning will be displayed when a low-pass/band-stop filter has a non-unity pass-band, and another is displayed if the filter overshoot is considered too important.
HOW TO SET THE SCRIPT UP
In order to use this script, the user must first enter the filter settings in the section provided for this purpose in the top section of the script. The filter to be analyzed must then be entered into the:
f(input)
function, where `input` is the filter's input source. By default, this function is a simple moving average of period length . Be sure to remove it.
If, for example, we wanted to analyze a Blackman filter, we would enter the following:
f(input)=>
pi = 3.14159,sum = 0.,sumw = 0.
for i = 0 to length-1
k = i/length
w = 0.42 - 0.5 * cos(2 * pi * k) + 0.08 * cos(4 * pi * k)
sumw := sumw + w
sum := sum + w*input
sum/sumw
EXAMPLES
In this section we will look at the information given by the script using various filters. The first filter we will showcase is the linearly weighted moving average (WMA) of period 9.
As we can see, its lag is 2.6667, which is indeed correct as the closed form of the lag of the WMA is equal to (period-1)/3 , which for period 9 gives (9-1)/3 which is approximately equal to 2.6667. The WMA does not have overshoots, this is shown by the the percentage overshoot value being equal to 0%. Finally, the percentage of positive weights is 100%, as the WMA does not possess negative weights.
Lets now analyze the Hull moving average of period 9. This moving average aims to provide a low-lag response.
Here we can see how the lag is way lower than that of the WMA. We can also see that the Herfindahl index is higher which indicates the WMA is smoother than the HMA. In order to reduce lag the HMA use negative weights, here 55% (as there are 45% of positive ones). The use of negative weights creates overshoots, we can see with the percentage overshoot being 26.6667%.
The WMA and HMA are both low-pass filters. In both cases the script correctly detected this information. Let's now analyze a simple high-pass filter, calculated as follows:
input - sma(input,length)
Most weights of a high-pass filters are negative, which is why the lag value is negative. This would suggest the indicator is able to predict future input values, which of course is not possible. In the case of high-pass filters, the Herfindahl index is greater than 0.5 and converges toward 1, with higher values of length . The comment box correctly detected the type of filter we were using.
Let's now test the script using the simple center of gravity bandpass filter calculated as follows:
wma(input,length) - sma(input,length)
The script correctly detected the type of filter we are using. Another type of filter that the script can detect is band-stop filters. A simple band-stop filter can be made as follows:
input - (wma(input,length) - sma(input,length))
The script correctly detect the type of filter. Like high-pass filters the Herfindahl index is greater than 0.5 and converges toward 1, with greater values of length . Finally the script can detect all-pass filters, which are filters that do not change the frequency content of the input.
WARNING COMMENTS
The script can give warning when certain filter characteristics are detected. One of them is non-unity pass-band for low-pass filters. This warning comment is displayed when the weights of the filter do not add up to 1. As an example, let's use the following function as a filter:
sum(input,length)
Here the filter pass-band has non unity, and the sum of the weights is equal to length . Therefore the script would display the following comments:
We can also see how the metrics go wild (note that no filter type is detected, as the detected filter could be of the wrong type). The comment mentioning the detection of high overshoot appears when the percentage overshoot is greater than 50%. For example if we use the following filter:
5*wma(input,length) - 4*sma(input,length)
The script would display the following comment:
We can indeed see high overshoots from the filter:
@alexgrover for PineCoders
Look first. Then leap.
TTM Squeeze Scanner This script scans for TTM Squeezes for the crypto symbols included in the body of the script. The timeframe for the squeeze scan is controlled within the input not the chart.
This script is a merge of @Nico.Muselle's TTM Squeeze script and @QuantNomad's custom screener script. Thanks to both of them!
Fibonacci Exponential Moving Averages ( EMA )Here you can have 4 EMA on one indicator. The inputs are for 8, 13, 21 and 55 previous open&close which are from Fibonacci sequence.
How to : To use the script, click on "Add to Favourite Scripts", then load the script from Indicators on the Chart.
VWAP Supply & Demand Zones PRO**Overview:**
This script represents a major evolution of the original "VWAP Supply and Demand Zones" indicator. Initially created to explore price interaction with VWAP, it has now matured into a robust and feature-rich tool for identifying high-probability zones of institutional buying and selling pressure. The update introduces volume and momentum validation, dynamic zone management, alert logic, and a visual dashboard (HUD) — all designed for improved precision and clarity. The structural improvements, anti-repainting logic, and significant added utility warranted releasing this as a new script rather than a minor update.
---
### What It Does:
This indicator dynamically detects **supply and demand zones** using VWAP-based logic combined with **volume** and **momentum confirmation**. When price crosses VWAP with strength, it identifies the potential zone of excess demand (below VWAP) or supply (above VWAP), marking it visually with colored regions on the chart.
Each zone is extended for a user-defined duration, monitored for touch interactions (tests), and tracked for possible breaks. The script helps traders interpret price behavior around these institutional zones as either **reversal** opportunities or **continuation** confirmation depending on context and strategy preference.
---
### How It Works:
* **VWAP Basis**: Zones are anchored at VWAP at the time of a significant cross.
* **Volume & Momentum Filters**: Crosses are only considered valid if backed by above-average volume and notable price momentum.
* **Zone Drawing**: Validated supply and demand zones are drawn as boxes on the chart. Each is extended forward for a customizable number of bars.
* **Touch Counting**: Zones track the number of price touches. Alerts are issued after a user-defined number of tests.
* **Break Detection**: If price closes significantly beyond a zone boundary, the zone is marked as broken and visually dimmed.
* **Visual Dashboard (HUD)**: A compact real-time HUD displays VWAP value, active zone counts, and current market bias.
---
### How to Use It:
**Reversal Trading:**
* Look for price **rejecting** a zone after touching it.
* Use rejection candles or secondary indicators (e.g., RSI divergence) to confirm.
* These setups may offer low-risk entries when price respects the zone.
**Continuation Trading:**
* A **break of a zone** suggests strong directional bias.
* Use confirmed zone breaks to enter in the direction of momentum.
* Ideal in trending environments, especially with high volume and ATR movement.
---
### Key Inputs:
* **VWAP Length**: Moving VWAP period (default: 20)
* **Zone Width %**: Percentage size of zone buffer (default: 0.5%)
* **Min Touches**: How many times price must test a zone before alerts trigger
* **Zone Extension**: How far into the future zones are projected
* **Volume & ATR Filters**: Ensure only strong, valid crossovers create zones
---
### Alerts:
You can enable alerts for:
* **New zone creation**
* **Zone tests (after minimum touch count)**
* **Zone breaks**
* **VWAP crosses**
* **Active presence inside a zone (entry conditions)**
These alerts help automate market monitoring, making it suitable for discretionary or systematic workflows.
---
### Why It's a New Script:
This is not a cosmetic update. The internal logic, signal generation, filtering methodology, visual engine, and UX framework have been entirely rebuilt from the ground up. The result is a highly adaptive, precision-oriented tool — appropriate for intraday scalpers and swing traders alike. It goes far beyond the original in terms of functionality and reliability, justifying a fresh release.
---
### Suitable Markets and Timeframes:
* Works across all liquid markets (crypto, equities, futures, forex)
* Best used on timeframes where volume data is stable (5m and above recommended)
* Recalibrate inputs for optimal detection across instruments
Enhanced Stock Ticker with 50MA vs 200MADescription
The Enhanced Stock Ticker with 50MA vs 200MA is a versatile Pine Script indicator designed to visualize the relative position of a stock's price within its short-term and long-term price ranges, providing actionable bullish and bearish signals. By calculating normalized indices based on user-defined lookback periods (defaulting to 50 and 200 bars), this indicator helps traders identify potential reversals or trend continuations. It offers the flexibility to plot signals either on the main price chart or in a separate lower pane, leveraging Pine Script v6's force_overlay functionality for seamless integration. The indicator also includes a customizable ticker table, visual fills, and alert conditions for automated trading setups.
Key Features
Dual Lookback Indices: Computes short-term (default: 50 bars) and long-term (default: 200 bars) indices, normalizing the closing price relative to the high/low range over the specified periods.
Flexible Signal Plotting: Users can toggle between plotting crossover signals (triangles) on the main price chart (location.abovebar/belowbar) or in the lower pane (location.top/bottom) using the Plot Signals on Main Chart option.
Crossover Signals: Generates bullish (Golden Cross) and bearish (Death Cross) signals when the short or long index crosses above 5 or below 95, respectively.
Visual Enhancements:
Plots short-term (blue) and long-term (white) indices in a separate pane with customizable lookback periods.
Includes horizontal reference lines at 0, 20, 50, 80, and 100, with green and red fills to highlight overbought/oversold zones.
Dynamic fill between indices (green when short > long, red when long > short) for quick trend visualization.
Displays a ticker and legend table in the top-right corner, showing the symbol and lookback periods.
Alert Conditions: Supports alerts for bullish and bearish crossovers on both short and long indices, enabling integration with TradingView's alert system.
Technical Innovation: Utilizes Pine Script v6's force_overlay parameter to plot signals on the main chart from a non-overlay indicator, combining the benefits of a separate pane and chart-based signals in a single script.
Technical Details
Calculation Logic:
Uses confirmed bars (barstate.isconfirmed) to calculate indices, ensuring reliability by avoiding real-time bar fluctuations.
Short-term index: (close - lowest(low, lookback_short)) / (highest(high, lookback_short) - lowest(low, lookback_short)) * 100
Long-term index: (close - lowest(low, lookback_long)) / (highest(high, lookback_long) - lowest(low, lookback_long)) * 100
Signals are triggered using ta.crossover() and ta.crossunder() for indices crossing 5 (bullish) and 95 (bearish).
Signal Plotting:
Main chart signals use force_overlay=true with location.abovebar/belowbar for precise alignment with price bars.
Lower pane signals use location.top/bottom for visibility within the indicator pane.
Plotting is controlled by boolean conditions (e.g., bullishLong and plot_on_chart) to ensure compliance with Pine Script's global scope requirements.
Performance Considerations: Optimized for efficiency by calculating indices only on confirmed bars and using lightweight plotting functions.
How to Use
Add to Chart:
Copy the script into TradingView's Pine Editor and add it to your chart.
Configure Settings:
Short Lookback Period: Adjust the short-term lookback (default: 50 bars) to match your trading style (e.g., 20 for shorter-term analysis).
Long Lookback Period: Adjust the long-term lookback (default: 200 bars) for broader market context.
Plot Signals on Main Chart: Check this box to display signals on the price chart; uncheck to show signals in the lower pane.
Interpret Signals:
Golden Cross (Bullish): Green (long) or blue (short) triangles indicate the index crossing above 5, suggesting a potential buying opportunity.
Death Cross (Bearish): Red (long) or white (short) triangles indicate the index crossing below 95, signaling a potential selling opportunity.
Set Alerts:
Use TradingView's alert system to create notifications for the four alert conditions: Long Index Valley, Long Index Peak, Short Index Valley, and Short Index Peak.
Customize Visuals:
The ticker table displays the symbol and lookback periods in the top-right corner.
Adjust colors and styles via TradingView's settings if desired.
Example Use Cases
Swing Trading: Use the short-term index (e.g., 50 bars) to identify short-term reversals within a broader trend defined by the long-term index.
Trend Confirmation: Monitor the fill between indices to confirm whether the short-term trend aligns with the long-term trend.
Automated Trading: Leverage alert conditions to integrate with bots or manual trading strategies.
Notes
Testing: Always backtest the indicator on your chosen market and timeframe to validate its effectiveness.
Optional Histogram: The script includes a commented-out histogram for the index difference (index_short - index_long). Uncomment the plot(index_diff, ...) line to enable it.
Compatibility: Built for Pine Script v6 and tested on TradingView as of May 27, 2025.
Acknowledgments
This indicator was inspired by the need for a flexible tool that combines lower-pane analysis with main chart signals, made possible by Pine Script's force_overlay feature. Share your feedback or suggestions in the comments below, and happy trading!
VWAP table with color
## 📊 VWAP Table with Color – Clear VWAP Deviation at a Glance
This script displays a **VWAP (Volume-Weighted Average Price)** table in a non-intrusive, color-coded panel on your chart. It helps you **quickly assess where the current price stands relative to VWAP**, classified into sigma bands (standard deviations). The goal is to provide valuable VWAP insight **without cluttering the chart with multiple lines**.
---
### 🔍 Purpose & Concept
VWAP is a powerful tool used by institutional traders to measure the average price an asset has traded at throughout the day, based on both volume and price.
In this script:
- We **do not plot traditional VWAP lines** with multiple ±1σ, ±2σ, etc., on the chart.
- Instead, we **summarize VWAP and its relative position in a table**, color-coded by deviation.
- This provides the **same information**, but in a **cleaner, minimal, and visually digestible format**.
---
### 🧠 VWAP Deviation Classification
The script calculates how far the current price is from the VWAP, in units of **standard deviation (σ)**.
The formula is:
```plaintext
VWAP Delta σ = (Current Price - VWAP) / Standard Deviation
```
This gives you a normalized value for deviation from VWAP, and it is **clamped between -3 and +3** to avoid extreme outliers.
Each range is color-coded and classified as:
| VWAP Δσ | Zone | Interpretation | Color |
|---------|---------------|------------------------------------------|--------------|
| -3σ | Far Below | Strongly below VWAP – potentially oversold | 🔴 Red |
| -2σ | Below | Below VWAP – bearish territory | 🟠 Orange |
| -1σ | Slightly Below| Slightly under VWAP – weak signal | 🟡 Yellow |
| 0σ | At VWAP | Price is around VWAP – neutral zone | ⚪ Gray |
| +1σ | Slightly Above| Slightly above VWAP – weak bullish | 🟢 Lime Green |
| +2σ | Above | Above VWAP – bullish signal | 🟢 Green |
| +3σ | Far Above | Strongly above VWAP – potentially overbought | 🟦 Teal |
This **compact summary in the table** provides a clear situational view while keeping the chart clean.
---
### ⚙️ User Customization
Users can configure:
- **VWAP σ Multiplier** (default 0.1) to set the width of the optional VWAP band on the chart.
- **Table Position** (Top Center, Bottom Right, etc.).
- **Text Size** and **Text Color**.
- **Hide VWAP logic**: VWAP data can be hidden automatically on higher timeframes (e.g., daily or weekly).
- **Enable/disable the VWAP ±σ band lines** (optional visual aid).
---
### 📐 Technical Highlights
- VWAP is recalculated each day using `ta.vwap(hlc3, isNewPeriod, 1)`.
- The band width uses standard deviation and the selected multiplier: `VWAP ± σ * multiplier`.
- Table updates dynamically with the new VWAP values each day.
- To **avoid floating-point rounding issues**, `vwapDelta` is rounded before comparison, ensuring correct background color display.
---
### ✅ Why Use This?
- Keeps your chart **visually clean and readable**.
- Gives **immediate context** to current price action relative to VWAP.
- Helps **discretionary traders** or **scalpers** decide whether price is stretched too far from the mean.
- Easier than tracking multiple σ bands manually.
---
### Example Usage:
- On intraday timeframes, you can identify price exhaustion as it hits ±2σ or ±3σ.
- On a 5-minute chart, if price touches `+3σ`, you may consider taking profits on longs.
- On reversal setups, watch for price at `-3σ` with bullish divergence.
---
### 🧩 Future Enhancements (Optional Ideas)
- Add alerts for when `vwapDelta` crosses thresholds like ±2σ or ±3σ.
- Let user select the timeframe for VWAP source (e.g., 1H, 5M, etc.).
- Extend to display VWAP on session or weekly basis.
---
Let me know if you want a version of this script formatted and cleaned up for direct TradingView publication (with annotations, credits, and formatting). Would you like that?