ICT Digital open Daily DividersDescription for "ICT Digital Open Daily Dividers" TradingView Indicator
Overview
The "ICT Digital Open Daily Dividers" is a versatile and comprehensive TradingView Pine Script indicator designed for traders who utilize Institutional Order Flow methodologies, particularly in ICT (Inner Circle Trader) trading. This indicator provides a structured visual framework to assist traders in identifying key daily market sessions, critical opening prices, and distinguishing different trading days, especially focusing on the Sunday open, which is a crucial element in the ICT trading strategy.
Core Functionalities
Daily Vertical Lines: The script plots vertical lines at the start of each trading day, which helps to demarcate daily trading sessions. These lines are customizable, allowing traders to choose their color, style (solid, dashed, or dotted), and width. This feature helps in visually segmenting each trading day, making it easier to analyze daily price action patterns.
Sunday Open Differentiation: Unlike many other daily divider indicators, this script uniquely provides the option to highlight the Sunday open at 6 PM EST with distinct lines. This feature is especially valuable for ICT traders who consider the Sunday open as a critical reference point for weekly analysis. The color, style, and width of the Sunday open lines can be set separately, providing a clear visual distinction from regular weekday separators.
12 AM Open Toggle: For markets that are influenced by midnight opens, the indicator includes an option to shift the daily open line to 12 AM instead of the default 6 PM. This flexibility allows traders to adapt the indicator to different market dynamics or trading strategies.
Timezone Customization: The indicator allows traders to set the timezone for the open lines, ensuring that the vertical lines align accurately with the trader’s specific market hours, whether they follow New York time or any other timezone.
Session Time Filters: The script can hide or show specific trading session markers, such as the New York session open and close, which are pivotal for ICT traders. These markers help in focusing on the most active and liquid trading times.
Customizable Style Settings: The script includes comprehensive styling options for the plotted lines and session markers, allowing traders to personalize their charts to suit their visual preferences and improve clarity.
Day of the Week Labels: The indicator can plot labels for each day of the week, providing a quick reference to the day’s price action. This feature is particularly useful in reviewing weekly trading patterns and performance.
Use in ICT Trading
In ICT trading, the concept of the "open" is fundamental. The "ICT Digital Open Daily Dividers" indicator serves multiple purposes:
Market Structure Identification: By clearly marking daily opens, traders can easily identify market structure changes such as breakouts, retracements, or consolidations around these key levels.
Reference Points: The Sunday open is often a key level in ICT analysis, serving as a benchmark for assessing market direction for the upcoming week. This indicator’s ability to plot Sunday opens separately makes it uniquely suited for ICT strategies.
Time-based Analysis: ICT methodology often involves analyzing the market at specific times of the day. This indicator supports such analysis by marking significant session opens and closes.
Uniqueness and Advantages
The "ICT Digital Open Daily Dividers" stands out from other similar indicators due to its specialized features:
Sunday Open Highlighting: Few indicators offer the capability to specifically mark the Sunday open with distinct styling options.
Flexibility in Time Adjustments: With options to adjust the open time to either 6 PM or 12 AM, this indicator caters to a broader range of trading strategies and market conditions.
Enhanced Visualization: The wide range of customization options ensures that traders can tailor the indicator to their specific needs, enhancing the usability and visual clarity of their charts.
Compliance with TradingView's Pine Script Community Guidelines
The description adheres to TradingView's guidelines by being comprehensive, clear, and informative. It highlights the utility of the script, its unique features, and its application in trading strategies without making exaggerated claims about performance or profitability. The detailed customization options and unique functionalities are emphasized to differentiate this script from other standard daily divider indicators.
ابحث في النصوص البرمجية عن "market structure"
VPSA-VTDDear Sir/Madam,
I am pleased to present the next iteration of my indicator concept, which, in my opinion, serves as a highly useful tool for analyzing markets using the Volume Spread Analysis (VSA) method or the Wyckoff methodology.
The VPSA (Volume-Price Spread Analysis), the latest version in the family of scripts I’ve developed, appears to perform its task effectively. The combination of visualizing normalized data alongside their significance, achieved through the application of Z-Score standardization, proved to be a sound solution. Therefore, I decided to take it a step further and expand my project with a complementary approach to the existing one.
Theory
At the outset, I want to acknowledge that I’m aware of the existence of other probabilistic models used in financial markets, which may describe these phenomena more accurately. However, in line with Occam's Razor, I aimed to maintain simplicity in the analysis and interpretation of the concepts below. For this reason, I focused on describing the data using the Gaussian distribution.
The data I read from the chart — primarily the closing price, the high-low price difference (spread), and volume — exhibit cyclical patterns. These cycles are described by Wyckoff's methodology, while VSA complements and presents them from a different perspective. I will refrain from explaining these methods in depth due to their complexity and broad scope. What matters is that within these cycles, various events occur, described by candles or bars in distinct ways, characterized by different spreads and volumes. When observing the chart, I notice periods of lower volatility, often accompanied by lower volumes, as well as periods of high volatility and significant volumes. It’s important to find harmony within this apparent chaos. I think that chart interpretation cannot happen without considering the broader context, but the more variables I include in the analytical process, the more challenges arise. For instance, how can I determine if something is large (wide) or small (narrow)? For elements like volume or spread, my script provides a partial answer to this question. Now, let’s get to the point.
Technical Overview
The first technique I applied is Min-Max Normalization. With its help, the script adjusts volume and spread values to a range between 0 and 1. This allows for a comparable bar chart, where a wide bar represents volume, and a narrow one represents spread. Without normalization, visually comparing values that differ by several orders of magnitude would be inconvenient. If the indicator shows that one bar has a unit spread value while another has half that value, it means the first bar is twice as large. The ratio is preserved.
The second technique I used is Z-Score Standardization. This concept is based on the normal distribution, characterized by variables such as the mean and standard deviation, which measures data dispersion around the mean. The Z-Score indicates how many standard deviations a given value deviates from the population mean. The higher the Z-Score, the more the examined object deviates from the mean. If an object has a Z-Score of 3, it falls within 0.1% of the population, making it a rare occurrence or even an anomaly. In the context of chart analysis, such strong deviations are events like climaxes, which often signal the end of a trend, though not always. In my script, I assigned specific colors to frequently occurring Z-Score values:
Below 1 – Blue
Above 1 – Green
Above 2 – Red
Above 3 – Fuchsia
These colors are applied to both spread and volume, allowing for quick visual interpretation of data.
Volume Trend Detector (VTD)
The above forms the foundation of VPSA. However, I have extended the script with a Volume Trend Detector (VTD). The idea is that when I consider market structure - by market structure, I mean the overall chart, support and resistance levels, candles, and patterns typical of spread and volume analysis as well as Wyckoff patterns - I look for price ranges where there is a lack of supply, demand, or clues left behind by Smart Money or the market's enigmatic identity known as the Composite Man. This is essential because, as these clues and behaviors of market participants — expressed through the chart’s dynamics - reflect the actions, decisions, and emotions of all players. These behaviors can help interpret the bull-bear battle and estimate the probability of their next moves, which is one of the key factors for a trader relying on technical analysis to make a trade decision.
I enhanced the script with a Volume Trend Detector, which operates in two modes:
Step-by-Step Logic
The detector identifies expected volume dynamics. For instance, when looking for signs of a lack of bullish interest, I focus on setups with decreasing volatility and volume, particularly for bullish candles. These setups are referred to as No Demand patterns, according to Tom Williams' methodology.
Simple Moving Average (SMA)
The detector can also operate based on a simple moving average, helping to identify systematic trends in declining volume, indicating potential imbalances in market forces.
I’ve designed the program to allow the selection of candle types and volume characteristics to which the script will pay particular attention and notify me of specific market conditions.
Advantages and Disadvantages
Advantages:
Unified visualization of normalized spread and volume, saving time and improving efficiency.
The use of Z-Score as a consistent and repeatable relative mechanism for marking examined values.
The use of colors in visualization as a reference to Z-Score values.
The possibility to set up a continuous alert system that monitors the market in real time.
The use of EMA (Exponential Moving Average) as a moving average for Z-Score.
The goal of these features is to save my time, which is the only truly invaluable resource.
Disadvantages:
The assumption that the data follows a normal distribution, which may lead to inaccurate interpretations.
A fixed analysis period, which may not be perfectly suited to changing market conditions.
The use of EMA as a moving average for Z-Score, listed both as an advantage and a disadvantage depending on market context.
I have included comments within the code to explain the logic behind each part. For those who seek detailed mathematical formulas, I invite you to explore the code itself.
Defining Program Parameters:
Numerical Conditions:
VPSA Period for Analysis – The number of candles analyzed.
Normalized Spread Alert Threshold – The expected normalized spread value; defines how large or small the spread should be, with a range of 0-1.00.
Normalized Volume Alert Threshold – The expected normalized volume value; defines how large or small the volume should be, with a range of 0-1.00.
Spread Z-SCORE Alert Threshold – The Z-SCORE value for the spread; determines how much the spread deviates from the average, with a range of 0-4 (a higher value can be entered, but from a logical standpoint, exceeding 4 is unnecessary).
Volume Z-SCORE Alert Threshold – The Z-SCORE value for volume; determines how much the volume deviates from the average, with a range of 0-4 (the same logical note as above applies).
Logical Conditions:
Logical conditions describe whether the expected value should be less than or equal to or greater than or equal to the numerical condition.
All four parameters accept two possibilities and are analogous to the numerical conditions.
Volume Trend Detector:
Volume Trend Detector Period for Analysis – The analysis period, indicating the number of candles examined.
Method of Trend Determination – The method used to determine the trend. Possible values: Step by Step or SMA.
Trend Direction – The expected trend direction. Possible values: Upward or Downward.
Candle Type – The type of candle taken into account. Possible values: Bullish, Bearish, or Any.
The last available setting is the option to enable a joint alert for VPSA and VTD.
When enabled, VPSA will trigger on the last closed candle, regardless of the VTD analysis period.
Example Use Cases (Labels Visible in the Script Window Indicate Triggered Alerts):
The provided labels in the chart window mark where specific conditions were met and alerts were triggered.
Summary and Reflections
The program I present is a strong tool in the ongoing "game" with the Composite Man.
However, it requires familiarity and understanding of the underlying methodologies to fully utilize its potential.
Of course, like any technical analysis tool, it is not without flaws. There is no indicator that serves as a perfect Grail, accurately signaling Buy or Sell in every case.
I would like to thank those who have read through my thoughts to the end and are willing to take a closer look at my work by using this script.
If you encounter any errors or have suggestions for improvement, please feel free to contact me.
I wish you good health and accurately interpreted market structures, leading to successful trades!
CatTheTrader
Volumetric Rejection Blocks [UAlgo]The Volumetric Rejection Blocks is designed to help traders identify and visualize key price levels where volumetric rejections occur, which may indicate a shift in market sentiment. These rejections can signal potential trend reversals or areas where price action is likely to face support or resistance. By drawing rejection blocks based on volumetric strength, the indicator allows users to observe where significant buying or selling pressure has been exerted, which can be used as a reference point for future price action.
Also indicator dynamically calculates swing highs and lows, analyzes bullish and bearish strengths based on volume-weighted price movements, and displays rejection blocks on the chart. Each rejection block represents an area where the price attempted to move beyond a certain level but faced rejection, either on a close or wick basis. This can be particularly useful for traders who rely on market structure and order flow to make informed decisions about entering or exiting trades.
🔶 Key Features
Swing Length Customization: Allows users to define the swing length, helping tailor the sensitivity of the swing high and low detection to the specific market conditions.
Rejection Block Visualization: Displays up to the last 10 rejection blocks based on user settings, clearly marking areas of significant bullish or bearish rejections.
Volumetric Strength Analysis: The indicator calculates bullish and bearish strength for each rejection block, based on volume-weighted price movements over the last few bars, giving insight into the intensity of the rejection.
Violation Check Type: Offers two options for violation detection—"Close" and "Wick". This allows traders to specify whether a price level is considered broken only if it closes beyond the level or if any wick breaches it.
Bullish and Bearish Block Coloring: Rejection blocks are colored to represent bullish (green) and bearish (red) rejection areas. The color transparency can be adjusted for clear visibility overlaid on the price chart.
Market Structure Labels: Labels and lines marking "Market Structure Shift" (MSS) and "Break of Structure" (BOS) are displayed, giving traders context about significant market structure changes.
🔶 Interpreting the Indicator
Rejection Blocks: These colored blocks on the chart indicate areas where the price faced significant buying or selling pressure. A green block suggests a bullish rejection (support zone), where buyers absorbed the sell-off, potentially pushing the price upward. Conversely, a red block indicates a bearish rejection (resistance zone), where sellers overpowered buyers, potentially driving the price lower.
Strength Analysis: The width of the green and red sections within a rejection block represents the relative bullish and bearish strengths. A wider green section indicates stronger bullish support, while a wider red section suggests more robust bearish resistance. This helps traders gauge the likelihood of price holding or breaching these levels.
Market Structure Shift (MSS) and Break of Structure (BOS): The indicator automatically detects and labels significant changes in market structure. An "MSS" label indicates the first break, suggesting a potential shift in trend direction. A "BOS" label indicates a subsequent confirmation in trend direction, allowing traders to recognize potential trend continuations.
Violation Check: Traders can choose how to interpret breaks of these rejection blocks. Using the "Close" option provides a more conservative approach, requiring a close beyond the level for confirmation. The "Wick" option is more aggressive, treating any wick beyond the level as a break.
🔶 Disclaimer
Use with Caution: This indicator is provided for educational and informational purposes only and should not be considered as financial advice. Users should exercise caution and perform their own analysis before making trading decisions based on the indicator's signals.
Not Financial Advice: The information provided by this indicator does not constitute financial advice, and the creator (UAlgo) shall not be held responsible for any trading losses incurred as a result of using this indicator.
Backtesting Recommended: Traders are encouraged to backtest the indicator thoroughly on historical data before using it in live trading to assess its performance and suitability for their trading strategies.
Risk Management: Trading involves inherent risks, and users should implement proper risk management strategies, including but not limited to stop-loss orders and position sizing, to mitigate potential losses.
No Guarantees: The accuracy and reliability of the indicator's signals cannot be guaranteed, as they are based on historical price data and past performance may not be indicative of future results.
ICT Master Suite [Trading IQ]Hello Traders!
We’re excited to introduce the ICT Master Suite by TradingIQ, a new tool designed to bring together several ICT concepts and strategies in one place.
The Purpose Behind the ICT Master Suite
There are a few challenges traders often face when using ICT-related indicators:
Many available indicators focus on one or two ICT methods, which can limit traders who apply a broader range of ICT related techniques on their charts.
There aren't many indicators for ICT strategy models, and we couldn't find ICT indicators that allow for testing the strategy models and setting alerts.
Many ICT related concepts exist in the public domain as indicators, not strategies! This makes it difficult to verify that the ICT concept has some utility in the market you're trading and if it's worth trading - it's difficult to know if it's working!
Some users might not have enough chart space to apply numerous ICT related indicators, which can be restrictive for those wanting to use multiple ICT techniques simultaneously.
The ICT Master Suite is designed to offer a comprehensive option for traders who want to apply a variety of ICT methods. By combining several ICT techniques and strategy models into one indicator, it helps users maximize their chart space while accessing multiple tools in a single slot.
Additionally, the ICT Master Suite was developed as a strategy . This means users can backtest various ICT strategy models - including deep backtesting. A primary goal of this indicator is to let traders decide for themselves what markets to trade ICT concepts in and give them the capability to figure out if the strategy models are worth trading!
What Makes the ICT Master Suite Different
There are many ICT-related indicators available on TradingView, each offering valuable insights. What the ICT Master Suite aims to do is bring together a wider selection of these techniques into one tool. This includes both key ICT methods and strategy models, allowing traders to test and activate strategies all within one indicator.
Features
The ICT Master Suite offers:
Multiple ICT strategy models, including the 2022 Strategy Model and Unicorn Model, which can be built, tested, and used for live trading.
Calculation and display of key price areas like Breaker Blocks, Rejection Blocks, Order Blocks, Fair Value Gaps, Equal Levels, and more.
The ability to set alerts based on these ICT strategies and key price areas.
A comprehensive, yet practical, all-inclusive ICT indicator for traders.
Customizable Timeframe - Calculate ICT concepts on off-chart timeframes
Unicorn Strategy Model
2022 Strategy Model
Liquidity Raid Strategy Model
OTE (Optimal Trade Entry) Strategy Model
Silver Bullet Strategy Model
Order blocks
Breaker blocks
Rejection blocks
FVG
Strong highs and lows
Displacements
Liquidity sweeps
Power of 3
ICT Macros
HTF previous bar high and low
Break of Structure indications
Market Structure Shift indications
Equal highs and lows
Swings highs and swing lows
Fibonacci TPs and SLs
Swing level TPs and SLs
Previous day high and low TPs and SLs
And much more! An ongoing project!
How To Use
Many traders will already be familiar with the ICT related concepts listed above, and will find using the ICT Master Suite quite intuitive!
Despite this, let's go over the features of the tool in-depth and how to use the tool!
The image above shows the ICT Master Suite with almost all techniques activated.
ICT 2022 Strategy Model
The ICT Master suite provides the ability to test, set alerts for, and live trade the ICT 2022 Strategy Model.
The image above shows an example of a long position being entered following a complete setup for the 2022 ICT model.
A liquidity sweep occurs prior to an upside breakout. During the upside breakout the model looks for the FVG that is nearest 50% of the setup range. A limit order is placed at this FVG for entry.
The target entry percentage for the range is customizable in the settings. For instance, you can select to enter at an FVG nearest 33% of the range, 20%, 66%, etc.
The profit target for the model generally uses the highest high of the range (100%) for longs and the lowest low of the range (100%) for shorts. Stop losses are generally set at 0% of the range.
The image above shows the short model in action!
Whether you decide to follow the 2022 model diligently or not, you can still set alerts when the entry condition is met.
ICT Unicorn Model
The image above shows an example of a long position being entered following a complete setup for the ICT Unicorn model.
A lower swing low followed by a higher swing high precedes the overlap of an FVG and breaker block formed during the sequence.
During the upside breakout the model looks for an FVG and breaker block that formed during the sequence and overlap each other. A limit order is placed at the nearest overlap point to current price.
The profit target for this example trade is set at the swing high and the stop loss at the swing low. However, both the profit target and stop loss for this model are configurable in the settings.
For Longs, the selectable profit targets are:
Swing High
Fib -0.5
Fib -1
Fib -2
For Longs, the selectable stop losses are:
Swing Low
Bottom of FVG or breaker block
The image above shows the short version of the Unicorn Model in action!
For Shorts, the selectable profit targets are:
Swing Low
Fib -0.5
Fib -1
Fib -2
For Shorts, the selectable stop losses are:
Swing High
Top of FVG or breaker block
The image above shows the profit target and stop loss options in the settings for the Unicorn Model.
Optimal Trade Entry (OTE) Model
The image above shows an example of a long position being entered following a complete setup for the OTE model.
Price retraces either 0.62, 0.705, or 0.79 of an upside move and a trade is entered.
The profit target for this example trade is set at the -0.5 fib level. This is also adjustable in the settings.
For Longs, the selectable profit targets are:
Swing High
Fib -0.5
Fib -1
Fib -2
The image above shows the short version of the OTE Model in action!
For Shorts, the selectable profit targets are:
Swing Low
Fib -0.5
Fib -1
Fib -2
Liquidity Raid Model
The image above shows an example of a long position being entered following a complete setup for the Liquidity Raid Modell.
The user must define the session in the settings (for this example it is 13:30-16:00 NY time).
During the session, the indicator will calculate the session high and session low. Following a “raid” of either the session high or session low (after the session has completed) the script will look for an entry at a recently formed breaker block.
If the session high is raided the script will look for short entries at a bearish breaker block. If the session low is raided the script will look for long entries at a bullish breaker block.
For Longs, the profit target options are:
Swing high
User inputted Lib level
For Longs, the stop loss options are:
Swing low
User inputted Lib level
Breaker block bottom
The image above shows the short version of the Liquidity Raid Model in action!
For Shorts, the profit target options are:
Swing Low
User inputted Lib level
For Shorts, the stop loss options are:
Swing High
User inputted Lib level
Breaker block top
Silver Bullet Model
The image above shows an example of a long position being entered following a complete setup for the Silver Bullet Modell.
During the session, the indicator will determine the higher timeframe bias. If the higher timeframe bias is bullish the strategy will look to enter long at an FVG that forms during the session. If the higher timeframe bias is bearish the indicator will look to enter short at an FVG that forms during the session.
For Longs, the profit target options are:
Nearest Swing High Above Entry
Previous Day High
For Longs, the stop loss options are:
Nearest Swing Low
Previous Day Low
The image above shows the short version of the Silver Bullet Model in action!
For Shorts, the profit target options are:
Nearest Swing Low Below Entry
Previous Day Low
For Shorts, the stop loss options are:
Nearest Swing High
Previous Day High
Order blocks
The image above shows indicator identifying and labeling order blocks.
The color of the order blocks, and how many should be shown, are configurable in the settings!
Breaker Blocks
The image above shows indicator identifying and labeling order blocks.
The color of the breaker blocks, and how many should be shown, are configurable in the settings!
Rejection Blocks
The image above shows indicator identifying and labeling rejection blocks.
The color of the rejection blocks, and how many should be shown, are configurable in the settings!
Fair Value Gaps
The image above shows indicator identifying and labeling fair value gaps.
The color of the fair value gaps, and how many should be shown, are configurable in the settings!
Additionally, you can select to only show fair values gaps that form after a liquidity sweep. Doing so reduces "noisy" FVGs and focuses on identifying FVGs that form after a significant trading event.
The image above shows the feature enabled. A fair value gap that occurred after a liquidity sweep is shown.
Market Structure
The image above shows the ICT Master Suite calculating market structure shots and break of structures!
The color of MSS and BoS, and whether they should be displayed, are configurable in the settings.
Displacements
The images above show indicator identifying and labeling displacements.
The color of the displacements, and how many should be shown, are configurable in the settings!
Equal Price Points
The image above shows the indicator identifying and labeling equal highs and equal lows.
The color of the equal levels, and how many should be shown, are configurable in the settings!
Previous Custom TF High/Low
The image above shows the ICT Master Suite calculating the high and low price for a user-defined timeframe. In this case the previous day’s high and low are calculated.
To illustrate the customizable timeframe function, the image above shows the indicator calculating the previous 4 hour high and low.
Liquidity Sweeps
The image above shows the indicator identifying a liquidity sweep prior to an upside breakout.
The image above shows the indicator identifying a liquidity sweep prior to a downside breakout.
The color and aggressiveness of liquidity sweep identification are adjustable in the settings!
Power Of Three
The image above shows the indicator calculating Po3 for two user-defined higher timeframes!
Macros
The image above shows the ICT Master Suite identifying the ICT macros!
ICT Macros are only displayable on the 5 minute timeframe or less.
Strategy Performance Table
In addition to a full-fledged TradingView backtest for any of the ICT strategy models the indicator offers, a quick-and-easy strategy table exists for the indicator!
The image above shows the strategy performance table in action.
Keep in mind that, because the ICT Master Suite is a strategy script, you can perform fully automatic backtests, deep backtests, easily add commission and portfolio balance and look at pertinent metrics for the ICT strategies you are testing!
Lite Mode
Traders who want the cleanest chart possible can toggle on “Lite Mode”!
In Lite Mode, any neon or “glow” like effects are removed and key levels are marked as strict border boxes. You can also select to remove box borders if that’s what you prefer!
Settings Used For Backtest
For the displayed backtest, a starting balance of $1000 USD was used. A commission of 0.02%, slippage of 2 ticks, a verify price for limit orders of 2 ticks, and 5% of capital investment per order.
A commission of 0.02% was used due to the backtested asset being a perpetual future contract for a crypto currency. The highest commission (lowest-tier VIP) for maker orders on many exchanges is 0.02%. All entered positions take place as maker orders and so do profit target exits. Stop orders exist as stop-market orders.
A slippage of 2 ticks was used to simulate more realistic stop-market orders. A verify limit order settings of 2 ticks was also used. Even though BTCUSDT.P on Binance is liquid, we just want the backtest to be on the safe side. Additionally, the backtest traded 100+ trades over the period. The higher the sample size the better; however, this example test can serve as a starting point for traders interested in ICT concepts.
Community Assistance And Feedback
Given the complexity and idiosyncratic applications of ICT concepts amongst its proponents, the ICT Master Suite’s built-in strategies and level identification methods might not align with everyone's interpretation.
That said, the best we can do is precisely define ICT strategy rules and concepts to a repeatable process, test, and apply them! Whether or not an ICT strategy is trading precisely how you would trade it, seeing the model in action, taking trades, and with performance statistics is immensely helpful in assessing predictive utility.
If you think we missed something, you notice a bug, have an idea for strategy model improvement, please let us know! The ICT Master Suite is an ongoing project that will, ideally, be shaped by the community.
A big thank you to the @PineCoders for their Time Library!
Thank you!
Pivot-based Swing Highs and LowsRelease Notes for Pivot-based Swing Highs and Lows Indicator with HH, HL, LH, LL and Labels
Version 1.0.0
Release Date: 29th Sept 2024
Overview:
This Pine Script version 5 indicator is designed to identify and display Swing Highs and Swing Lows based on pivot points. The indicator visually marks Higher Highs (HH), Lower Highs (LH), Higher Lows (HL), and Lower Lows (LL) on the chart. The release introduces an improved visual representation with dotted lines and colored labels for easy identification of market structure, using plotshape() and line.new().
Key Features:
1. Pivot-Based Swing Identification:
The indicator uses ta.pivothigh() and ta.pivotlow() to detect significant pivot points on the chart.
The length of the pivot can be adjusted through the pivot_length parameter, allowing users to customize the sensitivity of swing identification.
2. Swing Highs and Lows with Labels:
Higher High (HH) and Lower High (LH) points are marked with green downward triangles.
Higher Low (HL) and Lower Low (LL) points are marked with red upward triangles.
The plotshape() function is used to provide clear visual markers, making it easy to spot the changes in market structure.
3. Dotted Line Visuals:
Green Dotted Lines: Connect Higher Highs (HH) and Higher Lows (HL) to their corresponding previous swings.
Red Dotted Lines: Connect Lower Highs (LH) and Lower Lows (LL) to their corresponding previous swings.
The use of color-coded dotted lines ensures better visual understanding of the trend continuation or reversal patterns.
4. Customizable Input:
The user can adjust the pivot_length parameter to fine-tune the detection of pivot highs and lows according to different timeframes or trading strategies.
Usage:
Higher High (HH): Green downward triangle, indicating a new high compared to the previous pivot high.
Lower High (LH): Green downward triangle, indicating a lower high compared to the previous pivot high.
Higher Low (HL): Red upward triangle, indicating a higher low compared to the previous pivot low.
Lower Low (LL): Red upward triangle, indicating a new lower low compared to the previous pivot low.
Dotted Lines: Connect previous swing points, helping users visualize the trend and potential market structure changes.
Improvements:
Label Substitution: In place of label.new() (which might cause issues in some environments), the indicator now uses plotshape() to provide a reliable and visually effective solution for marking swings.
Streamlined Performance: The logic for determining higher highs, lower highs, higher lows, and lower lows has been optimized for smooth performance across multiple timeframes.
Known Limitations:
No Direct Text Labels: Due to the constraints of plotshape(), text labels like "HH", "LH", "HL", and "LL" are not directly displayed. Instead, color-coded shapes are used for easy identification.
How to Use:
Apply the script to your chart via the TradingView Pine Editor.
Customize the pivot_length to suit your trading style or the timeframe you are analyzing.
Monitor the chart for marked Higher Highs, Lower Highs, Higher Lows, and Lower Lows for potential trend continuation or reversal opportunities.
Use the dotted lines to trace the evolution of market structure.
Please share your comments, thoughts. Also please follow me for more scripts in future. Mean time Happy Trading :)
Enhanced BOS Strategy with SL/TP and EMA TableDescription:
The Enhanced BOS (Break of Structure) Strategy is an advanced open-source trading indicator designed to identify key market structure changes, integrated with dynamic Stop Loss (SL) and Take Profit (TP) levels, along with an informative EMA (Exponential Moving Average) table for added trend analysis.
Key Features:
Break of Structure (BOS) Detection:
The script detects bullish and bearish BOS by identifying pivot points using a custom pivot period. When the price crosses above or below these points, it signals a potential market trend reversal or continuation.
Dynamic SL/TP Levels:
Users can toggle static SL/TP settings, which automatically calculate levels based on user-defined points. These levels are visualized on the chart with dotted lines and labeled for clarity.
Volume Filters:
The strategy includes a volume condition filter to ensure that only trades within a specified volume range are considered. This helps in avoiding low-volume trades that might lead to false signals.
EMA Table Display:
An on-chart table displaying the current values of the 13-period, 50-period, and 200-period EMAs. This provides a quick reference for trend identification and confirmation, helping traders to stay aligned with the broader market trend.
How It Works:
The script utilizes a combination of moving averages and pivot points to identify potential breakouts or breakdowns in market structure. When a bullish BOS is detected, and the volume conditions are met, the strategy suggests a long position, marking potential SL/TP levels. Similarly, it suggests short positions for bearish BOS.
The EMA table serves as a visual aid, providing real-time updates of the EMA values, allowing traders to gauge the market’s directional bias quickly.
How to Use:
Setting Parameters:
Adjust the pivot period to fine-tune BOS detection according to your trading style and the asset’s volatility.
Configure the SL/TP settings based on your risk tolerance and target profit levels.
Interpreting Signals:
A “Buy” label on the chart indicates a bullish BOS with volume confirmation, signaling a potential long entry.
A “Sell” label indicates a bearish BOS with volume confirmation, signaling a potential short entry.
The EMA table aids in confirming these signals, where the position of the fast, mid, and slow EMAs can provide additional context to the trend’s strength and direction.
Volume Filtering:
Ensure your trades are filtered through the script’s volume condition, which allows for the exclusion of low-volume periods that might generate unreliable signals.
Unique Value:
Unlike many other BOS strategies, this script integrates volume conditions and a visual EMA table, providing a comprehensive toolkit for traders looking to capture market structure shifts while maintaining an eye on trend direction and trade execution precision.
Additional Information:
This script is designed for use on standard bar or candlestick charts for best results.
It is open-source and free to use, encouraging collaboration and improvement by the TradingView community.
By combining powerful trend-following EMAs with the precision of BOS detection and the safety of volume filtering, the Enhanced BOS Strategy offers a balanced approach to trading market structure changes.
HTF OverlayThe "HTF Overlay" indicator provides a fully customizable higher timeframe (HTF) candle overlay on your current chart, designed to enhance your analysis and trading strategies. This tool is particularly useful for traders utilizing ICT's AMD power of three strategies, focusing on key candle OHLC/OLHC expansions, or those who need a quick reference to a higher timeframe without switching charts.
Originality and Usefulness:
The "HTF Overlay" script stands out due to its seamless integration of HTF candles onto lower timeframe charts. It ensures the current developing candle is left untouched, preserving the clarity of ongoing market activity. This feature is crucial for traders who need to analyze market structure on a smaller timeframe within the context of a larger timeframe candle.
Functionality:
Dynamic HTF Candle Display:
The script overlays HTF candles, updating them in real-time as new HTF candles form. This allows traders to see historical price behavior and trends alongside the current price action.
Visual Customization:
Users can adjust various aspects of the HTF candles, including the number of candles displayed, body colors, wick colors, wick thickness, and transparency levels for both body and wick. This ensures the overlay fits seamlessly with any chart setup.
Real-time Updates:
The indicator updates dynamically, ensuring that the HTF candles remain relevant to the current market conditions without affecting the developing candle.
How It Works:
Data Retrieval: The script uses the request.security function to fetch HTF data, including open, high, low, close, time, and time close values.
Candle Overlay: It calculates the visual parameters for the HTF candles (body and wick positions, colors, and transparency) and overlays them on the chart.
Update Mechanism: The script differentiates between new and ongoing candles, updating the current candle in real-time without disrupting its development.
How to Use:
Setup:
Select the higher timeframe you want to overlay (e.g., 240 minutes for 4-hour candles).
Specify the number of HTF candles to display.
Customize the appearance of the HTF candles, including colors and transparency settings for both the body and wicks.
Interpretation:
Use the HTF overlay to validate trading decisions by analyzing price action from a broader perspective.
Identify key support and resistance levels, trend directions, and potential reversal points by comparing current price action with HTF structures.
Integration:
Combine this indicator with other tools your strategy may use for a more comprehensive analysis.
Use it in conjunction with the first and last candle highlight feature to quickly identify key reference points and enhance your trading strategy.
Conclusion:
The "HTF Overlay" indicator is a versatile and essential tool for traders who need to incorporate higher timeframe analysis into their trading strategies. Its customizable features and real-time updates provide a deeper insight into market dynamics, helping traders make more informed decisions. Whether used for trend confirmation, breakout identification, or support/resistance analysis, this indicator enhances your ability to navigate the markets effectively.
ICT Turtle Soup | Flux Charts💎 GENERAL OVERVIEW
Introducing our new ICT Turtle Soup Indicator! This indicator is built around the ICT "Turtle Soup" model. The strategy has 5 steps for execution which are described in this write-up. For more information about the process, check the "HOW DOES IT WORK" section.
Features of the new ICT Turtle Soup Indicator :
Implementation of ICT's Turtle Soup Strategy
Adaptive Entry Method
Customizable Execution Settings
Customizable Backtesting Dashboard
Alerts for Buy, Sell, TP & SL Signals
📌 HOW DOES IT WORK ?
The ICT Turtle Soup strategy may have different implementations depending on the selected method of the trader. This indicator's implementation is described as :
1. Mark higher timerame liquidity zones.
Liquidity zones are where a lot of market orders sit in the chart. They are usually formed from the long / short position holders' "liquidity" levels. There are various ways to find them, most common one being drawing them on the latest high & low pivot points in the chart, which this indicator does.
2. Mark current timeframe market structure.
The market structure is the current flow of the market. It tells you if the market is trending right now, and the way it's trending towards. It's formed from swing higs, swing lows and support / resistance levels.
3. Wait for market to make a liquidity grab on the higher timeframe liquidity zone.
A liquidity grab is when the marked liquidity zones have a false breakout, which means that it gets broken for a brief amount of time, but then price falls back to it's previous position.
4. Buyside liquidity grabs are "Short" entries and Sellside liquidity grabs are "Long" entries by default.
5. Wait for the market-structure shift in the current timeframe for entry confirmation.
A market-structure shift happens when the current market structure changes, usually when a new swing high / swing low is formed. This indicator uses it as a confirmation for position entry as it gives an insight of the new trend of the market.
6. Place Take-Profit and Stop-Loss levels according to the risk ratio.
This indicator uses "Average True Range" when placing the stop-loss & take-profit levels. Average True Range calculates the average size of a candle and the indicator places the stop-loss level using ATR times the risk setting determined by the user, then places the take-profit level trying to keep a minimum of 1:1 risk-reward ratio.
This indicator follows these steps and inform you step by step by plotting them in your chart.
🚩UNIQUENESS
This indicator is an all-in-one suit for the ICT's Turtle Soup concept. It's capable of plotting the strategy, giving signals, a backtesting dashboard and alerts feature. It's designed for simplyfing a rather complex strategy, helping you to execute it with clean signals. The backtesting dashboard allows you to see how your settings perform in the current ticker. You can also set up alerts to get informed when the strategy is executable for different tickers.
⚙️SETTINGS
1. General Configuration
MSS Swing Length -> The swing length when finding liquidity zones for market structure-shift detection.
Higher Timeframe -> The higher timeframe to look for liquidity grabs. This timeframe setting must be higher than the current chart's timeframe for the indicator to work.
Breakout Method -> If "Wick" is selected, a bar wick will be enough to confirm a market structure-shift. If "Close" is selected, the bar must close above / below the liquidity zone to confirm a market structure-shift.
Entry Method ->
"Classic" : Works as described on the "HOW DOES IT WORK" section.
"Adaptive" : When "Adaptive" is selected, the entry conditions may chance depending on the current performance of the indicator. It saves the entry conditions and the performance of the past entries, then for the new entries it checks if it predicted the liquidity grabs correctly with the current setup, if so, continues with the same logic. If not, it changes behaviour to reverse the entries from long / short to short / long.
2. TP / SL
TP / SL Method -> If "Fixed" is selected, you can adjust the TP / SL ratios from the settings below. If "Dynamic" is selected, the TP / SL zones will be auto-determined by the algorithm.
Risk -> The risk you're willing to take if "Dynamic" TP / SL Method is selected. Higher risk usually means a better winrate at the cost of losing more if the strategy fails. This setting is has a crucial effect on the performance of the indicator, as different tickers may have different volatility so the indicator may have increased performance when this setting is correctly adjusted.
One for AllOne for All (OFA) - Complete ICT Analysis Suite
Version 3.3.0 by theCodeman
📊 Overview
One for All (OFA) is a comprehensive TradingView indicator designed for traders who follow Inner Circle Trader (ICT) concepts. This all-in-one tool combines essential ICT analysis features—sessions, kill zones, previous period levels, and higher timeframe candles with Fair Value Gaps (FVGs) and Volume Imbalances (VIs)—into a single, highly customizable indicator. Whether you're a beginner learning ICT concepts or an experienced trader refining your edge, OFA provides the visual structure needed for precise market analysis and execution.
✨ Key Features
- 🏷️ Customizable Watermark**: Display your trading identity with customizable titles, subtitles, symbol info, and full style control
- 🌍 Trading Sessions**: Visualize Asian, London, and New York sessions with high/low lines, range boxes, and open/close markers
- 🎯 Kill Zones**: Highlight 5 critical ICT kill zones with precise timing and visual boxes
- 📈 Previous Period H/L**: Track Daily, Weekly, and Monthly highs/lows with customizable styles and lookback periods
- 🕐 Higher Timeframe Candles**: Display up to 5 HTF timeframes with OHLC trace lines, timers, and interval labels
- 🔍 FVG & VI Detection**: Automatically detect and visualize Fair Value Gaps and Volume Imbalances on HTF candles
- ⚙️ Universal Timezone Support**: Works globally with GMT-12 to GMT+14 timezone selection
- 🎨 Full Customization**: Control colors, styles, visibility, and layout for every feature
🚀 How to Use
Watermark Setup
The watermark overlay helps you identify your charts and maintain focus on your trading principles:
1. Enable/disable watermark via "Show Watermark" toggle
2. Customize the title (default: "Name") to display your trading name or account identifier
3. Set up to 3 subtitles (default: "Patience", "Confidence", "Execution") as trading reminders
4. Choose position (9 locations available), size, color, and transparency
5. Toggle symbol and timeframe display as needed
Use Case: Display your trading principles or account name for multi-monitor setups or content creation.
Trading Sessions Analysis
Sessions define market character and liquidity availability:
1. Enable "Show All Sessions" to visualize all three sessions
2. Adjust timezone to match your local market (default: UTC-5 for EST)
3. Customize session times if needed (defaults cover standard hours)
4. Enable session range boxes to see consolidation zones
5. Use session high/low lines to identify key levels for the current session
6. Enable open/close markers to track session transitions
Use Case: Identify which session you're trading in, track session highs/lows for liquidity, and anticipate session transition volatility.
Kill Zones Trading
Kill zones are ICT's high-probability trading windows:
1. Enable individual kill zones or use "Show All Kill Zones"
2. **Asian Kill Zone** (2000-0000 GMT): Early positioning and smart money accumulation
3. **London Kill Zone** (0300-0500 GMT): European market opening volatility
4. **NY AM Kill Zone** (0930-1100 EST): Post-NYSE open expansion
5. **NY Lunch Kill Zone** (1200-1300 EST): Midday consolidation or manipulation
6. **NY PM Kill Zone** (1330-1600 EST): Afternoon positioning and closes
7. Customize colors and times to match your trading style
8. Set max days display to control historical visibility (default: 30 days)
Use Case: Focus entries during high-probability windows. Watch for liquidity sweeps at kill zone openings and institutional positioning.
Previous Period High/Low Levels
Previous period levels act as magnetic price targets and support/resistance:
1. Enable Daily (PDH/PDL), Weekly (PWH/PWL), or Monthly (PMH/PML) levels individually
2. Set lookback period (how many previous periods to display)
3. Choose line style: Solid (current emphasis), Dashed (standard), or Dotted (subtle)
4. Customize colors per timeframe for visual hierarchy
5. Adjust line width (1-5) for visibility preference
6. Enable gradient effect to fade older periods
7. Position labels left or right based on chart layout
8. Customize label text for your preferred notation
Use Case: Identify key levels where price is likely to react. Daily levels work on intraday timeframes, Weekly on daily charts, Monthly for swing trading.
Higher Timeframe (HTF) Candles
HTF candles reveal the larger market context while trading lower timeframes:
1. Enable up to 5 HTF slots simultaneously (default: 5m, 15m, 1H, 4H, Daily)
2. Choose display mode: "Below Chart" (stacked rows) or "Right Side" (compact column)
3. Customize timeframe, colors (bull/bear), and titles for each slot
4. **OHLC Trace Lines**: Visual lines connecting HTF candle levels to chart bars
5. **HTF Timer**: Countdown showing time remaining until HTF candle close
6. **Interval Labels**: Display day of week (Daily+) or time (intraday) on each candle
7. For Daily candles: Choose open time (Midnight, 8:30, 9:30) to match your market structure preference
Use Case: Trade lower timeframes while respecting higher timeframe structure. Watch for HTF candle closes to confirm directional bias.
FVG & VI Detection
Fair Value Gaps and Volume Imbalances highlight inefficiencies that price often revisits:
1. **Fair Value Gaps (FVGs)**: Detected when HTF candle wicks don't overlap between 3 consecutive candles
- Bullish FVG: Gap between candle 1 high and candle 3 low (green box by default)
- Bearish FVG: Gap between candle 1 low and candle 3 high (red box by default)
2. **Volume Imbalances (VIs)**: Similar detection but focuses on body gaps
- Bullish VI: Gap between candle 1 close and candle 3 open
- Bearish VI: Gap between candle 1 open and candle 3 close
3. Enable FVG/VI detection per HTF slot individually
4. Customize colors and transparency for each imbalance type
5. Boxes appear on chart at formation and remain visible as retracement targets
**Use Case**: Identify high-probability retracement zones. Price often returns to fill FVGs and VIs before continuing the trend. Use as entry zones or profit targets.
🎨 Customization
OFA is built for flexibility. Every feature includes extensive customization options:
Visual Customization
- **Colors**: Independent color control for every element (sessions, kill zones, lines, labels, FVGs, VIs)
- **Transparency**: Adjust box and label transparency (0-100%) for clean charts
- **Line Styles**: Choose Solid, Dashed, or Dotted for previous period lines
- **Sizes**: Control text size, line width, and box borders
- **Positions**: Place watermark in 9 positions, labels left/right
Layout Control
- **HTF Display Mode**: "Below Chart" for detailed analysis, "Right Side" for space efficiency
- **Drawing Limits**: Set max days for sessions/kill zones to manage chart clutter
- **Lookback Periods**: Control how many previous periods to display (1-10)
- **Gradient Effects**: Enable fading for older previous period lines
Timing Adjustments
- **Timezone**: Universal GMT offset selector (-12 to +14) for global markets
- **Session Times**: Customize each session's start/end times
- **Kill Zone Times**: Adjust kill zone windows to match your market's characteristics
- **Daily Open**: Choose Midnight, 8:30, or 9:30 for Daily HTF candle open time
💡 Best Practices
1. Start Simple: Enable one feature at a time to learn how each element affects your analysis
2. Match Your Timeframe: Use Daily levels on intraday charts, Weekly on daily charts, HTF candles one or two levels above your trading timeframe
3. Kill Zone Focus: Concentrate your trading activity during kill zones for higher probability setups
4. HTF Confirmation: Wait for HTF candle closes before committing to directional bias
5. FVG/VI Entries: Look for price to return to unfilled FVGs/VIs for entry opportunities with favorable risk/reward
6. Customize Colors: Use a consistent color scheme that matches your chart theme and reduces visual fatigue
7. Reduce Clutter: Disable features you're not actively using in your current trading plan
8. Session Context: Understand which session controls the market—trade with session direction or anticipate reversals at session transitions
⚙️ Settings Guide
OFA organizes settings into logical groups for easy navigation:
- **═══ WATERMARK ═══**: Title, subtitles, position, style, symbol/timeframe display
- **═══ SESSIONS ═══**: Enable/disable sessions, times, colors, high/low lines, boxes, markers
- **═══ KILL ZONES ═══**: Individual kill zone toggles, times, colors, max days display
- **═══ PREVIOUS H/L - DAILY ═══**: Daily high/low lines, style, color, lookback, labels
- **═══ PREVIOUS H/L - WEEKLY ═══**: Weekly high/low lines, style, color, lookback, labels
- **═══ PREVIOUS H/L - MONTHLY ═══**: Monthly high/low lines, style, color, lookback, labels
- **═══ HTF CANDLES ═══**: Global display mode, layout settings
- **═══ HTF SLOT 1-5 ═══**: Individual HTF configuration (timeframe, colors, title, FVG/VI detection, trace lines, timer, interval labels)
Each setting includes tooltips explaining its function. Hover over any input for detailed guidance.
📝 Final Notes
One for All (OFA) represents a complete ICT analysis toolkit in a single indicator. By combining watermark customization, session visualization, kill zone highlighting, previous period levels, and higher timeframe candles with FVG/VI detection, OFA eliminates the need for multiple indicators cluttering your chart.
**Version**: 3.3.0
**Author**: theCodeman
**Pine Script**: v6
**License**: Mozilla Public License 2.0
Start with default settings to learn the indicator's structure, then customize extensively to match your personal trading style. Remember: tools provide information, but your edge comes from disciplined execution of a proven strategy.
Happy Trading! 📈
The Oracle: Dip & Top Adaptive Sniper [Hakan Yorganci]█ OVERVIEW
The Oracle: Dip & Top Adaptive Sniper is a precision-focused trend trading strategy designed to solve the biggest problem in swing trading: Timing.
Most trend-following strategies chase price ("FOMO"), buying when the asset is already overextended. The Oracle takes a different approach. It adopts a "Sniper" mentality: it identifies a strong macro trend but patiently waits for a Mean Reversion (pullback) to execute an entry at a discounted price.
By combining the structural strength of Moving Averages (SMA 50/200) with the momentum precision of RSI and the volatility filtering of ADX, this script filters out noise and targets high-probability setups.
█ HOW IT WORKS
This strategy operates on a strictly algorithmic protocol known as "The Yorganci Protocol," which involves three distinct phases: Filter, Target, and Execute.
1. The Macro Filter (Trend Identification)
* SMA 200 Rule: By default, the strategy only scans for buy signals when the price is trading above the 200-period Simple Moving Average. This ensures we are always trading in the direction of the long-term bull market.
* Adaptive Switch: A new feature allows users to toggle the Only Buy Above SMA 200? filter OFF. This enables the strategy to hunt for oversold bounces (dead cat bounces) even during bearish or neutral market structures.
2. The Volatility Filter (ADX Integration)
* Sideways Protection: One of the main weaknesses of moving average strategies is "whipsaw" losses during choppy, ranging markets.
* Solution: The Oracle utilizes the ADX (Average Directional Index). It will BLOCK any trade entry if the ADX is below the threshold (Default: 20). This ensures capital is only deployed when a genuine trend is present.
3. The Sniper Entry (Buying the Dip)
* Instead of buying on breakout strength (e.g., RSI > 60), The Oracle waits for the RSI Moving Average to dip into the "Value Zone" (Default: 45) and cross back up. This technique allows for tighter stops and higher Risk/Reward ratios compared to traditional breakout systems.
█ EXIT STRATEGY
The Oracle employs a dynamic dual-exit mechanism to maximize gains and protect capital:
* Take Profit (The Peak): The strategy monitors RSI heat. When the RSI Moving Average breaches the Overbought Threshold (Default: 75), it signals a "Take Profit", securing gains near the local top before a potential reversal.
* Stop Loss (Trend Invalidated): If the market structure fails and the price closes below the 50-period SMA, the position is immediately closed to prevent deep drawdowns.
█ SETTINGS & CONFIGURATION
* Moving Averages: Fully customizable lengths for Support (SMA 50) and Trend (SMA 200).
* Trend Filter: Checkbox to enable/disable the "Bull Market Only" rule.
* RSI Thresholds:
* Sniper Buy Level: Adjustable (Default: 45). Lower values = Deeper dips, fewer trades.
* Peak Sell Level: Adjustable (Default: 75). Higher values = Longer holds, potentially higher profit.
* ADX Filter: Checkbox to enable/disable volatility filtering.
█ BEST PRACTICES
* Timeframe: Designed primarily for 4H (4-Hour) charts for swing trading. It can also be used on 1H for more frequent signals.
* Assets: Highly effective on trending assets such as Bitcoin (BTC), Ethereum (ETH), and high-volume Altcoins.
* Risk Warning: This strategy is designed for "Long Only" spot or leverage trading. Always use proper risk management.
█ CREDITS
* Original Concept: Inspired by the foundational work of Murat Besiroglu (@muratkbesiroglu).
* Algorithm Development & Enhancements: Developed by Hakan Yorganci (@hknyrgnc).
* Modifications include: Integration of ADX filters, Mean Reversion entry logic (RSI Dip), and Dynamic Peak Profit taking.
Super-AO with Risk Management Strategy Template - 11-29-25Super-AO Strategy with Advanced Risk Management Template
Signal Lynx | Free Scripts supporting Automation for the Night-Shift Nation 🌙
1. Overview
Welcome to the Super-AO Strategy. This is more than just a buy/sell indicator; it is a complete, open-source Risk Management (RM) Template designed for the Pine Script community.
At its core, this script implements a robust swing-trading strategy combining the SuperTrend (for macro direction) and the Awesome Oscillator (for momentum). However, the real power lies under the hood: a custom-built Risk Management Engine that handles trade states, prevents repainting, and manages complex exit conditions like Staged Take Profits and Advanced Adaptive Trailing Stops (AATS).
We are releasing this code to help traders transition from simple indicators to professional-grade strategy structures.
2. Quick Action Guide (TL;DR)
Best Timeframe: 4 Hours (H4) and above. Designed for Swing Trading.
Best Assets: "Well-behaved" assets with clear liquidity (Major Forex pairs, BTC, ETH, Indices).
Strategy Type: Trend Following + Momentum Confirmation.
Key Feature: The Risk Management Engine is modular. You can strip out the "Super-AO" logic and insert your own strategy logic into the template easily.
Repainting: Strictly Non-Repainting. The engine calculates logic based on confirmed candle closes.
3. Detailed Report: How It Works
A. The Strategy Logic: Super-AO
The entry logic is based on the convergence of two classic indicators:
SuperTrend: Determines the overall trend bias (Green/Red).
Awesome Oscillator (AO): Measures market momentum.
The Signal:
LONG (+2): SuperTrend is Green AND AO is above the Zero Line AND AO is Rising.
SHORT (-2): SuperTrend is Red AND AO is below the Zero Line AND AO is Falling.
By requiring momentum to agree with the trend, this system filters out many false signals found in ranging markets.
B. The Risk Management (RM) Engine
This script features a proprietary State Machine designed by Signal Lynx. Unlike standard strategies that simply fire orders, this engine separates the Signal from the Execution.
Logic Injection: The engine listens for a specific integer signal: +2 (Buy) or -2 (Sell). This makes the code a Template. You can delete the Super-AO section, write your own logic, and simply pass a +2 or -2 to the RM_EngineInput variable. The engine handles the rest.
Trade States: The engine tracks the state of the trade (Entry, In-Trade, Exiting) to prevent signal spamming.
Aggressive vs. Conservative:
Conservative Mode: Waits for a full trend reversal before taking a new trade.
Aggressive Mode: Allows for re-entries if the trend is strong and valid conditions present themselves again (Pyramiding Type 1).
C. Advanced Exit Protocols
The strategy does not rely on a single exit point. It employs a "Layered Defense" approach:
Hard Stop Loss: A fixed percentage safety net.
Staged Take Profits (Scaling Out): The script allows you to set 3 distinct Take Profit levels. For example, you can close 10% of your position at TP1, 10% at TP2, and let the remaining 80% ride the trend.
Trailing Stop: A standard percentage-based trailer.
Advanced Adaptive Trailing Stop (AATS): This is a highly sophisticated volatility stop. It calculates market structure using Hirashima Sugita (HSRS) levels and Bollinger Bands to determine the "floor" and "ceiling" of price action.
If volatility is high: The stop loosens to prevent wicking out.
If volatility is low: The stop tightens to protect profit.
D. Repainting Protection
Many Pine Script strategies look great in backtesting but fail in live trading because they rely on "real-time" price data that disappears when the candle closes.
This Risk Management engine explicitly pulls data from the previous candle close (close , high , low ) for its calculations. This ensures that the backtest results you see match the reality of live execution.
4. For Developers & Modders
We encourage you to tear this code apart!
Look for the section titled // Super-AO Strategy Logic.
Replace that block with your own RSI, MACD, or Price Action logic.
Ensure your logic outputs a 2 for Buy and -2 for Sell.
Connect it to RM_EngineInput.
You now have a fully functioning Risk Management system for your custom strategy.
5. About Signal Lynx
Automation for the Night-Shift Nation 🌙
This code has been in action since 2022 and is a known performer in PineScript v5. We provide this open source to help the community build better, safer automated systems.
If you are looking to automate your strategies, please take a look at Signal Lynx in your search.
License: Mozilla Public License 2.0 (Open Source). If you make beneficial modifications, please release them back to the community!
Double MOST with Pivot and EMAMOST Long Strategy with Multi-Filter Confirmation (Pivot + VAR Trend Filter)
This strategy combines a custom MOST stop-line structure with a moving average trend filter (EMA / VAR / ZLMA), daily pivot levels, and a 9-period VAR filter to generate clean long-only entries.
It aims to capture early trend continuations while avoiding reversals and false breakouts.
✔ Buy Conditions
A long position is opened only if all of the conditions below occur simultaneously:
MA (ort) > MOST Line (s2)
– Confirms that momentum is on the long side.
Price > Daily Pivot (pvt_gun)
– Ensures the market is trading above the day’s fair-value level.
Price > VAR(9)
– Short-term VAR filter to confirm trend strength and reduce noise.
Only the first bar where all conditions turn true generates a position.
✔ Sell Condition
A long position is closed when:
MOST Line (s2) crosses above MA (ort)
– Indicates a momentum shift against the long position.
✔ Execution Style (MetaStock-like)
Strategy operates long-only
Orders are filled on the next bar open, not on the signal bar
Commission: 0.03% (3 bps / on-binde 3)
Position size: 100% of equity per trade
This makes the behavior comparable to classical MetaStock backtesting logic.
✔ Chart Markers
Only actual trade entries and exits are drawn
No repeated signals or overlapping markers
Clean visual trade history
Purpose
This strategy is ideal for traders who want:
A structured long-only trend model
A multi-layer confirmation filter
Clean execution without repaint
High-quality entries above market structure levels
LETHINH-Swing pa,smc🟦 📌 Title (English)
Swing High / Swing Low – 3-Candle Fractal (5-Bar Pivot) | Auto Alerts
⸻
🟩 📌 Short Description
A clean and reliable swing high / swing low detector based on the classic 3-candle (5-bar) fractal pivot. Automatically marks SH/SL and triggers alerts when a swing is confirmed. No repainting after confirmation.
⸻
🟧 📌 Full Description (for TradingView Publishing)
🔶 Swing High / Swing Low – 3-Candle Fractal (5-Bar Pivot)
This indicator identifies Swing Highs (SH) and Swing Lows (SL) using the classic 3-candle fractal pattern, also known as the 5-bar pivot.
It marks swing points only after full confirmation, making it highly reliable and suitable for structure-based trading.
⸻
🔶 📍 How It Works
A swing is confirmed when the center candle is higher (or lower) than the two candles on each side:
Swing High (SH)
high > high , high , high
Swing Low (SL)
low < low , low , low
The confirmation occurs after 2 right candles close, so the indicator does not repaint once a swing is identified.
⸻
🔶 📍 Key Features
• Detects clean and accurate swings
• Uses pure price action — no indicators, no lag
• Marks swing high (SH) and swing low (SL) directly on the chart
• Non-repainting after confirmation
• Works on all timeframes and all markets
• Extremely lightweight and fast
• Includes alert conditions for both SH and SL
Perfect for traders using:
• Market Structure (BOS / CHoCH)
• Order Blocks (OB)
• Smart Money Concepts (SMC)
• Liquidity hunts
• Wyckoff
• Support/Resistance
• Price Action entries
⸻
🔶 📍 Why This Indicator Is Useful
Swing points are the foundation of market structure.
Accurately detecting them helps traders:
• Identify trend shifts
• Spot BOS / CHoCH correctly
• Find key zones (OB, liquidity levels, supply/demand)
• Time entries more precisely
• Avoid fake structure breaks
This indicator ensures swings are plotted only when fully confirmed, reducing noise and confusion.
⸻
🔶 📍 Alerts
You can create alerts for both conditions:
• Swing High Confirmed
• Swing Low Confirmed
Recommended settings:
• Once per bar close
• Open-ended alert
With alerts enabled, TradingView will automatically notify you every time a new swing forms.
⸻
🔶 📍 No Repainting
Once a swing is confirmed and plotted, it will not change or disappear.
This makes the indicator reliable for real-time alerts and backtesting.
⸻
🔶 📍 Pine Script (v5)
Paste your indicator code here if you want it visible.
Or leave the code hidden if you are publishing as protected.
⸻
🔶 📍 Final Notes
• This indicator focuses on confirmation, not prediction
• It is designed for clean structure reading
• All markets supported: Forex, Crypto, Stocks, Indexes, Commodities
• Suitable for scalping, intraday, swing, and even higher-timeframe trading
If you find this tool helpful, feel free to give it a like and add it to your favorites ❤️
Your support helps me share more tools with the community!
Hardwaybets' Protected Highs / Protected Lows TradingProtected Highs & Lows – Multi-Condition Structural Marker
This indicator identifies specific candle formations where price breaks a previous candle’s high or low, fails to maintain that break, and confirms the rejection with an additional condition involving prior candles. These marked locations offer a visual reference for areas where price attempted directional expansion but did not sustain it. All levels remain visible until later invalidated by price movement.
Protected High – Detection Logic
A Protected High is marked only when all three of the following conditions occur:
1. Break of Previous High
The current candle trades above the prior candle’s high.
2. Close Back Inside Range
The current candle closes within the high-to-low range of the previous candle, indicating the upward expansion was not sustained.
3. Reversal Through Prior Bullish Structure
After forming the high, price closes below the opening price of one or more bullish candles that were part of the upward movement into that high.
This reflects a shift away from the prior upward structure.
When all three conditions are met, the high of the candle that created the event is marked on the chart.
Protected Low – Detection Logic
A Protected Low is marked only when all three of the following conditions occur:
1. Break of Previous Low
The current candle trades below the prior candle’s low.
2. Close Back Inside Range
The current candle closes within the high-to-low range of the previous candle, indicating the downward expansion was not sustained.
3. Reversal Through Prior Bearish Structure
After forming the low, price closes above the opening price of one or more bearish candles that were part of the downward movement into that low.
This reflects a shift away from the prior downward structure.
When all three conditions are met, the low of the candle that created the event is marked on the chart.
Level Management
* Marked highs and lows remain active as long as price does not trade beyond them.
* If price moves past a marked level, that level is removed.
* Only active, unviolated structural reference points remain displayed.
Market Structure Context (Strictly Non-Signaling)
Protected highs and lows can help traders observe areas where:
* Price briefly exceeded a previous high or low
* That expansion was not maintained
* Price then moved back through recent candles associated with the prior direction
These observations can be used by traders to understand how price interacts with nearby structural reference points.
The indicator itself does not provide trade entries, exits, or directional guidance.
Customization Options
The indicator provides adjustable settings for:
* Marker style (labels or shapes)
* Shape type (circle, square, diamond, etc.)
* Colors for highs and lows
* Vertical spacing between markers and candles
These options help maintain clarity on different chart types and timeframes.
Intended Use
The indicator does not generate forecasts or trading signals.
Its purpose is to visually highlight multi-condition candle formations where price briefly exceeded a prior high or low, failed to sustain that expansion, and later reversed through nearby structural points.
Compatibility
Suitable for all assets and timeframes.
Oracle Pivot Engine (OPE) — @darshaksscThe Oracle Pivot Engine (OPE) is a market-structure visualization tool that derives all its levels exclusively from historical price data — specifically, the previous day’s high, low, and mid-range.
It does not provide signals, alerts, entries, exits, predictions, or trade recommendations.
Instead, it creates a non-repainting reference framework that helps users observe how the current session interacts with the prior session’s completed price structure.
All calculations are analytical, static, and based on fully closed candles.
🧠 How It Works (Core Logic Explained)
OPE computes the following values from the completed prior daily candle:
Prior-Day High
Prior-Day Low
Prior-Day Midpoint
Displacement Range = High − Low
This displacement range is used to generate symmetrical upward and downward reference zones.
These levels do not update during the session.
They refresh only once per day when a new daily candle closes.
This ensures the indicator remains fully non-repainting and stable on every intraday chart.
📐 Reference Levels Generated
Using the fixed prior-day displacement range, OPE plots:
1. BUY-Side Reference Map (Upward Bias)
BUY Reference Entry
BUY Reference Stop
BUY T1
BUY T2
BUY T3
BUY T4
BUY T5
BUY T6
These are not trade signals — they are mathematical extensions above the prior-day midpoint for structural interpretation only.
2. SELL-Side Reference Map (Downward Bias)
SELL Reference Entry
SELL Reference Stop
SELL T1
SELL T2
SELL T3
SELL T4
SELL T5
SELL T6
Again, these levels are not directives.
They are mirrored displacement extensions below the prior-day midpoint.
📊 Pivot Zone & Bands
The indicator includes optional visual layers derived from the same prior-day pivots:
Pivot High–Low Zone Shading → shows the prior-day full range
Pivot Midline → prior-day mid-price
Outer Displacement Bands → extended contextual boundaries
These are purely visual boundaries meant to improve market context.
🧾 Dashboard / HUD Explanation
A compact on-chart HUD summarizes all values.
It displays:
Section | Information (All Historical)
Prior-Day Pivots | High, Low, Mid, Range
BUY Map | Entry, Stop, T1–T6
SELL Map | Entry, Stop, T1–T6
The HUD allows you to quickly review:
Where the current price is relative to the previous day’s structure
How far price is from each level
Whether the session is operating inside or outside the prior-day displacement zones
Everything shown is static, non-repainting , and for reference only .
📊 How to Analyze It
✔ 1. Contextual Awareness
OPE helps users visually compare current intraday price to prior daily structure.
You can observe whether price is:
Inside yesterday’s high/low zone
Above the prior-day displacement
Below the prior-day displacement
This offers a clearer understanding of daily context and volatility.
✔ 2. Structural Symmetry
The BUY-side and SELL-side maps extend from the same pivot logic.
This can help visualize:
Expansion away from the prior-day midpoint
Compression within the prior-day range
Symmetrical displacement around key reference levels
Again — these are observational insights , not signals.
✔ 3. Range Interaction
As the session unfolds, users often study:
How price reacts around prior-day midpoint
Whether price is gravitating toward or away from the displacement levels
How intraday swings behave within these historical boundaries
This type of analysis is contextual , not predictive.
⚠️ Important Disclosures
This script does NOT generate trading signals.
It does NOT predict future price movement.
It does NOT contain advice, instructions, recommendations, or strategies.
All levels are derived exclusively from historical daily candle data .
This is strictly an informational visualization tool meant to support chart analysis.
Past price levels do not guarantee any future price behavior.
🛑 Disclaimer
This indicator is provided solely for educational and informational purposes.
It should not be interpreted as financial advice or a call to action of any kind.
Users should apply independent judgment and discretion when analyzing markets.
Day-Type Detector — Rejection / FNL / Outside / StopRun (Clean)Day-Type Detector — Rejection / FNL / Outside / Stop-Run (Clean Version)
This indicator identifies four high-impact candlestick day-types commonly used in professional price-action and auction-market trading: Rejection Days, Failed New Low (FNL) Days, Outside Days, and Stop-Run Days. These patterns often precede major directional moves, reversals, and absorption events, making them particularly valuable for swing traders, positional traders, and short-term discretionary traders.
The script is designed to work across all timeframes and is built around volatility-adjusted measurements using Average Daily Range (ADR) for accuracy and consistency.
What This Indicator Detects
1. Rejection Day (Bullish & Bearish)
A Rejection Day is a wide-range bar that rejects a previous extreme.
The indicator identifies rejection based on:
Range > ADR × threshold
Long lower wick (for bullish) or long upper wick (for bearish)
Close located in the strong zone of the day’s range
These conditions highlight areas where aggressive counter-orderflow entered the market.
2. Failed New Low (FNL) / Failed New High
An FNL day traps traders who attempted breakout selling or buying.
The indicator checks for:
A break beyond the previous session’s low or high
Immediate rejection back inside
Midpoint recapture conditions
ADR-normalized range requirements
These days often trigger powerful directional reversals.
3. Outside Day (Bullish & Bearish)
An Outside Day is a statistically significant expansion day that breaks both the previous high and low.
The script validates:
High > previous high and low < previous low
Range > ADR threshold
Close beyond prior session extreme to complete the rejection sequence
Outside Days often represent stop runs, shakeouts, or trend accelerations.
4. Stop-Run Day (Bullish & Bearish)
Stop-Run Days are aggressive volatility expansions and tend to be the largest ranges within short windows.
This detector identifies them using:
Range > ADR × multiplier
Close located near the extreme of the day (top for bullish, bottom for bearish)
Strong body relative to total range
Break above/below previous session extreme
These patterns indicate capitulation or forced liquidation and are often followed by continuation or sharp counter-rotation.
Key Features
✔ Historical Pattern Marking
All qualifying bars are marked on the chart using plotshape() in global scope, ensuring full historical visibility.
✔ Event Logging & Table Display
A table (top-right of the chart) displays the most recent pattern detections, including:
Timestamp
Pattern type
Bar index
This allows users to monitor and study past pattern occurrences without scanning the chart manually.
✔ ADR-Adjusted Detection
Volatility uncertainty is removed by anchoring all thresholds to ADR.
This ensures consistency across:
Different symbols
Different timeframes
Different market regimes
✔ Alerts Included
Alerts are preconfigured for:
Rejection Day Bull / Bear
FNL Bull / Bear
Outside Day Bull / Bear
Stop-Run Bull / Bear
This allows the user to receive real-time notifications when major day-type structures develop.
How to Use
Add the indicator to any timeframe chart.
Enable or disable:
Historical markers
History table
ADR diagnostics
Watch for shape markers or use alerts for real-time signals.
Use the history table to review recent occurrences.
Combine these day-types with:
Market structure levels
High/low volume nodes (LVNs)
Support/resistance zones
Trend context
These day-types are most effective when they occur near meaningful structural levels because they show where strong order-flow entered the market.
Best Practices
Use higher timeframes (1H–1D) for swing entries.
Confirm signals with market structure or volume profile.
Treat these day-types as context, not standalone signals.
Observe follow-through behavior in the next 1–3 bars after detection.
Credits
This script is based on concepts commonly seen in auction-market theory and professional price-action frameworks, such as Rejection Days, Failed New Lows, Outside Days, and Stop-Run behaviors.
All calculations and logic have been rebuilt from scratch to ensure clean, reliable, and optimized Pine Script v6 execution.
Forever ModelForever Model is a comprehensive trading framework that visualizes market structure through Fair Value Gaps (FVGs), Smart Money Technique (SMT) divergences, and order block confirmations. The indicator identifies potential price rotations by tracking internal liquidity zones, correlation breaks between assets, and confirmation signals across multiple timeframes.
Designed for clarity and repeatability, the model presents a structured visual logic that supports manual analysis while maintaining flexibility across different assets and timeframes. All components are non-repainting, ensuring historical accuracy and reliable backtesting.
Description
The model operates through a three-part sequence that forms the visual foundation for identifying potential market rotations:
Fair Value Gaps (FVGs)
FVGs are price imbalances detected on higher timeframes—areas where price moved rapidly between candles, leaving an inefficiency that may be revisited. The indicator identifies both bullish and bearish FVGs, displaying them with color-coded levels that extend until mitigated.
: Chart showing FVG detection with colored lines indicating bullish (green) and bearish (red) gaps
Smart Money Technique (SMT)
SMT detects divergence between the current chart asset and a correlated pair. When one asset makes a higher high while the other forms a lower high (or vice versa), it indicates a potential shift in delivery. The indicator draws visual lines connecting these divergence points and can filter SMTs to only display those occurring within FVG ranges.
: Chart showing SMT divergence lines between two correlated assets with labels indicating the pair name]
Order Block Confirmations (OB)
When price confirms a signal by crossing a pivot level, an Order Block is created. The confirmation line extends from the pivot point, labeled as "OB+" for bullish signals or "OB-" for bearish signals. The latest OB extends to the current bar, while previous OBs remain fixed at their confirmation points.
: Chart showing OB confirmation lines with OB+ and OB- labels at confirmation points]
Key Features
Higher Timeframe (HTF) Detection
FVGs are detected on a higher timeframe than the current chart, with automatic HTF selection based on the current timeframe or manual override options. This ensures that internal liquidity zones are identified from the appropriate structural context.
External Range Liquidity (ERL)
Tracks the latest higher timeframe pivot highs and lows, marking external liquidity levels that may be revisited. ERL levels are displayed as horizontal lines with optional labels, providing context for potential continuation targets.
: Chart showing ERL lines at recent HTF pivot points
Signal Creation and Confirmation System
The model creates pending signals when FVG levels are mitigated. Signals confirm when price closes beyond a pivot level, creating the OB confirmation line. Stop levels are automatically calculated from the maximum (bearish) or minimum (bullish) price between signal creation and confirmation.
SMT Filtering Options
Display all SMTs or only those within FVG ranges
Require SMT for signal confirmation (optional filter)
Automatic or manual SMT pair selection
Support for both correlated and inverse correlated pairs
Directional Bias Filter
Filter FVG detection to show only bullish bias, bearish bias, or both. This allows analysts to align with higher timeframe structure or focus on unidirectional setups.
Confirmation Line Management
Toggle to extend only the latest confirmation line or all confirmation lines
Transparent label backgrounds with colored text (red for bearish, green for bullish)
Automatic cleanup of old confirmation lines (keeps last 50)
Labels positioned at line end (latest) or middle (older lines)
Position Sizing Calculator
Optional position sizing based on account balance, risk percentage or fixed amount, and instrument-specific contract sizes. Supports prop firm calculations and can display position size, entry, and stop levels in the dashboard.
Information Dashboard
A customizable floating table displays:
Current timeframe and HTF
Remaining time in current bar
Current bias direction
Latest confirmed signal details (type, size, entry, stop)
Pending signal status
The dashboard can be repositioned, resized, and styled to match your preferences.
Special Range Creation
When signals confirm, the model can automatically create special range levels from stop prices. These levels persist on the chart as important reference points, even after mitigation, serving as potential reversal zones for future signals.
Label and Visualization Controls
Toggle FVG labels on/off
Toggle confirmation lines on/off
Customizable colors for bullish and bearish FVGs
ERL color customization
SMT line width adjustment
Order Flow Integration (Optional)
The indicator includes optional Open Interest (OI) based special range detection, allowing integration with order flow analysis for enhanced context.
Technical Notes
All components are non-repainting—once formed, they remain on the chart
FVGs cannot be mitigated on their creation bar
Signal-based special ranges persist even after mitigation (important stop levels)
SMT detection supports both HTF and chart timeframe modes
Maximum 50 confirmation lines are maintained for performance
The model is designed to work across all asset classes and timeframes, providing a consistent framework for identifying potential market rotations through the interaction of internal liquidity, correlation breaks, and confirmation signals, this does not constitute as trading advice, past performance is no indication of future performance , this is entirely done for entertainment and educational purposes
ZigZagZigZag Indicator – Overview
This ZigZag indicator highlights the most important swing highs and swing lows on the chart, helping traders see market structure more clearly by filtering out minor price movements. It connects significant turning points with straight lines, creating a clean visual representation of trend direction and major reversals.
How It Works
Price constantly moves up and down, but not every movement is meaningful. The ZigZag indicator waits for price to make a move large enough to be considered a true swing point. Once such a movement occurs, the indicator identifies it as either a swing high or a swing low and draws a line connecting it to the previous swing.
This produces a simplified outline of market structure, making it easier to recognize trends, corrections, and major turning points.
Settings
ZigZag Length
Controls the sensitivity of the indicator.
Lower values produce more frequent swing points.
Higher values show only major swings and reduce noise.
Show ZigZag
Enables or disables the visual lines. When disabled, the indicator continues tracking swing points internally.
What You See on the Chart
Every time the market creates a confirmed swing high or swing low, the indicator draws a line to the previous swing in the opposite direction.
After a major low is confirmed, a line is drawn to the most recent high.
After a major high is confirmed, a line is drawn to the most recent low.
This creates a clear, continuous zigzag that outlines the dominant movements of the market without reacting to every small fluctuation.
Why This ZigZag Is Useful
It does not repaint once a swing is confirmed.
It provides a clean and simplified view of price structure.
It helps identify trend direction, structure breaks, impulses, and corrections.
It is useful for traders who follow price action, smart money concepts, and swing-based strategies.
Recommended Use Cases
This ZigZag indicator is suited for traders who rely on market structure analysis, including:
Swing trading
Smart Money Concepts (BOS/CHOCH detection)
Identifying impulses and pullbacks
Finding strong highs and lows
Studying overall trend direction
Range Oscillator Strategy + Stoch Confirm🔹 Short summary
This is a free, educational long-only strategy built on top of the public “Range Oscillator” by Zeiierman (used under CC BY-NC-SA 4.0), combined with a Stochastic timing filter, an EMA-based exit filter and an optional risk-management layer (SL/TP and R-multiple exits). It is NOT financial advice and it is NOT a magic money machine. It’s a structured framework to study how range-expansion + momentum + trend slope can be combined into one rule-based system, often with intentionally RARE trades.
────────────────────────
0. Legal / risk disclaimer
────────────────────────
• This script is FREE and public. I do not charge any fee for it.
• It is for EDUCATIONAL PURPOSES ONLY.
• It is NOT financial advice and does NOT guarantee profits.
• Backtest results can be very different from live results.
• Markets change over time; past performance is NOT indicative of future performance.
• You are fully responsible for your own trades and risk.
Please DO NOT use this script with money you cannot afford to lose. Always start in a demo / paper trading environment and make sure you understand what the logic does before you risk any capital.
────────────────────────
1. About default settings and risk (very important)
────────────────────────
The script is configured with the following defaults in the `strategy()` declaration:
• `initial_capital = 10000`
→ This is only an EXAMPLE account size.
• `default_qty_type = strategy.percent_of_equity`
• `default_qty_value = 100`
→ This means 100% of equity per trade in the default properties.
→ This is AGGRESSIVE and should be treated as a STRESS TEST of the logic, not as a realistic way to trade.
TradingView’s House Rules recommend risking only a small part of equity per trade (often 1–2%, max 5–10% in most cases). To align with these recommendations and to get more realistic backtest results, I STRONGLY RECOMMEND you to:
1. Open **Strategy Settings → Properties**.
2. Set:
• Order size: **Percent of equity**
• Order size (percent): e.g. **1–2%** per trade
3. Make sure **commission** and **slippage** match your own broker conditions.
• By default this script uses `commission_value = 0.1` (0.1%) and `slippage = 3`, which are reasonable example values for many crypto markets.
If you choose to run the strategy with 100% of equity per trade, please treat it ONLY as a stress-test of the logic. It is NOT a sustainable risk model for live trading.
────────────────────────
2. What this strategy tries to do (conceptual overview)
────────────────────────
This is a LONG-ONLY strategy designed to explore the combination of:
1. **Range Oscillator (Zeiierman-based)**
- Measures how far price has moved away from an adaptive mean.
- Uses an ATR-based range to normalize deviation.
- High positive oscillator values indicate strong price expansion away from the mean in a bullish direction.
2. **Stochastic as a timing filter**
- A classic Stochastic (%K and %D) is used.
- The logic requires %K to be below a user-defined level and then crossing above %D.
- This is intended to catch moments when momentum turns up again, rather than chasing every extreme.
3. **EMA Exit Filter (trend slope)**
- An EMA with configurable length (default 70) is calculated.
- The slope of the EMA is monitored: when the slope turns negative while in a long position, and the filter is enabled, it triggers an exit condition.
- This acts as a trend-protection exit: if the medium-term trend starts to weaken, the strategy exits even if the oscillator has not yet fully reverted.
4. **Optional risk-management layer**
- Percentage-based Stop Loss and Take Profit (SL/TP).
- Risk/Reward (R-multiple) exit based on the distance from entry to SL.
- Implemented as OCO orders that work *on top* of the logical exits.
The goal is not to create a “holy grail” system but to serve as a transparent, configurable framework for studying how these concepts behave together on different markets and timeframes.
────────────────────────
3. Components and how they work together
────────────────────────
(1) Range Oscillator (based on “Range Oscillator (Zeiierman)”)
• The script computes a weighted mean price and then measures how far price deviates from that mean.
• Deviation is normalized by an ATR-based range and expressed as an oscillator.
• When the oscillator is above the **entry threshold** (default 100), it signals a strong move away from the mean in the bullish direction.
• When it later drops below the **exit threshold** (default 30), it can trigger an exit (if enabled).
(2) Stochastic confirmation
• Classic Stochastic (%K and %D) is calculated.
• An entry requires:
- %K to be below a user-defined “Cross Level”, and
- then %K to cross above %D.
• This is a momentum confirmation: the strategy tries to enter when momentum turns up from a pullback rather than at any random point.
(3) EMA Exit Filter
• The EMA length is configurable via `emaLength` (default 70).
• The script monitors the EMA slope: it computes the relative change between the current EMA and the previous EMA.
• If the slope turns negative while the strategy holds a long position and the filter is enabled, it triggers an exit condition.
• This is meant to help protect profits or cut losses when the medium-term trend starts to roll over, even if the oscillator conditions are not (yet) signalling exit.
(4) Risk management (optional)
• Stop Loss (SL) and Take Profit (TP):
- Defined as percentages relative to average entry price.
- Both are disabled by default, but you can enable them in the Inputs.
• Risk/Reward Exit:
- Uses the distance from entry to SL to project a profit target at a configurable R-multiple.
- Also optional and disabled by default.
These exits are implemented as `strategy.exit()` OCO orders and can close trades independently of oscillator/EMA conditions if hit first.
────────────────────────
4. Entry & Exit logic (high level)
────────────────────────
A) Time filter
• You can choose a **Start Year** in the Inputs.
• Only candles between the selected start date and 31 Dec 2069 are used for backtesting (`timeCondition`).
• This prevents accidental use of tiny cherry-picked windows and makes tests more honest.
B) Entry condition (long-only)
A long entry is allowed when ALL the following are true:
1. `timeCondition` is true (inside the backtest window).
2. If `useOscEntry` is true:
- Range Oscillator value must be above `entryLevel`.
3. If `useStochEntry` is true:
- Stochastic condition (`stochCondition`) must be true:
- %K < `crossLevel`, then %K crosses above %D.
If these filters agree, the strategy calls `strategy.entry("Long", strategy.long)`.
C) Exit condition (logical exits)
A position can be closed when:
1. `timeCondition` is true AND a long position is open, AND
2. At least one of the following is true:
- If `useOscExit` is true: Oscillator is below `exitLevel`.
- If `useMagicExit` (EMA Exit Filter) is true: EMA slope is negative (`isDown = true`).
In that case, `strategy.close("Long")` is called.
D) Risk-management exits
While a position is open:
• If SL or TP is enabled:
- `strategy.exit("Long Risk", ...)` places an OCO stop/limit order based on the SL/TP percentages.
• If Risk/Reward exit is enabled:
- `strategy.exit("RR Exit", ...)` places an OCO order using a projected R-multiple (`rrMult`) of the SL distance.
These risk-based exits can trigger before the logical oscillator/EMA exits if price hits those levels.
────────────────────────
5. Recommended backtest configuration (to avoid misleading results)
────────────────────────
To align with TradingView House Rules and avoid misleading backtests:
1. **Initial capital**
- 10 000 (or any value you personally want to work with).
2. **Order size**
- Type: **Percent of equity**
- Size: **1–2%** per trade is a reasonable starting point.
- Avoid risking more than 5–10% per trade if you want results that could be sustainable in practice.
3. **Commission & slippage**
- Commission: around 0.1% if that matches your broker.
- Slippage: a few ticks (e.g. 3) to account for real fills.
4. **Timeframe & markets**
- Volatile symbols (e.g. crypto like BTCUSDT, or major indices).
- Timeframes: 1H / 4H / **1D (Daily)** are typical starting points.
- I strongly recommend trying the strategy on **different timeframes**, for example 1D, to see how the behaviour changes between intraday and higher timeframes.
5. **No “caution warning”**
- Make sure your chosen symbol + timeframe + settings do not trigger TradingView’s caution messages.
- If you see warnings (e.g. “too few trades”), adjust timeframe/symbol or the backtest period.
────────────────────────
5a. About low trade count and rare signals
────────────────────────
This strategy is intentionally designed to trade RARELY:
• It is **long-only**.
• It uses strict filters (Range Oscillator threshold + Stochastic confirmation + optional EMA Exit Filter).
• On higher timeframes (especially **1D / Daily**) this can result in a **low total number of trades**, sometimes WELL BELOW 100 trades over the whole backtest.
TradingView’s House Rules mention 100+ trades as a guideline for more robust statistics. In this specific case:
• The **low trade count is a conscious design choice**, not an attempt to cherry-pick a tiny, ultra-profitable window.
• The goal is to study a **small number of high-conviction long entries** on higher timeframes, not to generate frequent intraday signals.
• Because of the low trade count, results should NOT be interpreted as statistically strong or “proven” – they are only one sample of how this logic would have behaved on past data.
Please keep this in mind when you look at the equity curve and performance metrics. A beautiful curve with only a handful of trades is still just a small sample.
────────────────────────
6. How to use this strategy (step-by-step)
────────────────────────
1. Add the script to your chart.
2. Open the **Inputs** tab:
- Set the backtest start year.
- Decide whether to use Oscillator-based entry/exit, Stochastic confirmation, and EMA Exit Filter.
- Optionally enable SL, TP, and Risk/Reward exits.
3. Open the **Properties** tab:
- Set a realistic account size if you want.
- Set order size to a realistic % of equity (e.g. 1–2%).
- Confirm that commission and slippage are realistic for your broker.
4. Run the backtest:
- Look at Net Profit, Max Drawdown, number of trades, and equity curve.
- Remember that a low trade count means the statistics are not very strong.
5. Experiment:
- Tweak thresholds (`entryLevel`, `exitLevel`), Stochastic settings, EMA length, and risk params.
- See how the metrics and trade frequency change.
6. Forward-test:
- Before using any idea in live trading, forward-test on a demo account and observe behaviour in real time.
────────────────────────
7. Originality and usefulness (why this is more than a mashup)
────────────────────────
This script is not intended to be a random visual mashup of indicators. It is designed as a coherent, testable strategy with clear roles for each component:
• Range Oscillator:
- Handles mean vs. range-expansion states via an adaptive, ATR-normalized metric.
• Stochastic:
- Acts as a timing filter to avoid entering purely on extremes and instead waits for momentum to turn.
• EMA Exit Filter:
- Trend-slope-based safety net to exit when the medium-term direction changes against the position.
• Risk module:
- Provides practical, rule-based exits: SL, TP, and R-multiple exit, which are useful for structuring risk even if you modify the core logic.
It aims to give traders a ready-made **framework to study and modify**, not a black box or “signals” product.
────────────────────────
8. Limitations and good practices
────────────────────────
• No single strategy works on all markets or in all regimes.
• This script is long-only; it does not short the market.
• Performance can degrade when market structure changes.
• Overfitting (curve fitting) is a real risk if you endlessly tweak parameters to maximise historical profit.
Good practices:
- Test on multiple symbols and timeframes.
- Focus on stability and drawdown, not only on how high the profit line goes.
- View this as a learning tool and a basis for your own research.
────────────────────────
9. Licensing and credits
────────────────────────
• Core oscillator idea & base code:
- “Range Oscillator (Zeiierman)”
- © Zeiierman, licensed under CC BY-NC-SA 4.0.
• Strategy logic, Stochastic confirmation, EMA Exit Filter, and risk-management layer:
- Modifications by jokiniemi.
Please respect both the original license and TradingView House Rules if you fork or republish any part of this script.
────────────────────────
10. No payments / no vendor pitch
────────────────────────
• This script is completely FREE to use on TradingView.
• There is no paid subscription, no external payment link, and no private signals group attached to it.
• If you have questions, please use TradingView’s comment system or private messages instead of expecting financial advice.
Use this script as a tool to learn, experiment, and build your own understanding of markets.
────────────────────────
11. Example backtest settings used in screenshots
────────────────────────
To avoid any confusion about how the results shown in screenshots were produced, here is one concrete example configuration:
• Symbol: BTCUSDT (or similar major BTC pair)
• Timeframe: 1D (Daily)
• Backtest period: from 2018 to the most recent data
• Initial capital: 10 000
• Order size type: Percent of equity
• Order size: 2% per trade
• Commission: 0.1%
• Slippage: 3 ticks
• Risk settings: Stop Loss and Take Profit disabled by default, Risk/Reward exit disabled by default
• Filters: Range Oscillator entry/exit enabled, Stochastic confirmation enabled, EMA Exit Filter enabled
If you change any of these settings (symbol, timeframe, risk per trade, commission, slippage, filters, etc.), your results will look different. Please always adapt the configuration to your own risk tolerance, market, and trading style.
Smarter Money Volume Rejection Blocks [PhenLabs]📊 Smarter Money Volume Rejection Blocks – Institutional Rejection Zone Detection
The Smarter Money Volume Rejection Blocks indicator combines high-volume analysis with statistical confidence intervals to identify where institutional traders are actively defending price levels through volume spikes and rejection patterns.
🔥 Core Methodology
Volume Spike Detection analyzes when current volume exceeds moving average by configurable multipliers (1.0-5.0x) to identify institutional activity
Rejection Candle Analysis uses dual-ratio system measuring wick percentage (30-90%) and maximum body ratio (10-60%) to confirm genuine rejections
Statistical Confidence Channels create three-level zones (upper, center, lower) based on ATR or Standard Deviation calculations
Smart Invalidation Logic automatically clears zones when price significantly breaches confidence levels to maintain relevance
Dynamic Channel Projection extends confidence intervals forward up to 200 bars with customizable length
Support Zone Identification detects bullish rejections where smart money absorbs selling pressure with high volume and strong lower wicks
Resistance Zone Mapping identifies bearish rejections where institutions defend price levels with volume spikes and pronounced upper wicks
Visual Information Dashboard displays real-time status table showing volume spike conditions and active support/resistance zones
⚙️ Technical Configuration
Dual Confidence Interval Methods: Choose between ATR-Based for trend-following environments or StdDev-Based for range-bound statistical precision
Volume Moving Average: Configurable period (default 20) for baseline volume comparison calculations
Volume Spike Multiplier: Adjustable threshold from 1.0 to 5.0 times average volume to filter institutional activity
Rejection Wick Percentage: Set minimum wick size from 30% to 90% of candle range for valid rejection detection
Maximum Body Ratio: Configure body-to-range ratio from 10% to 60% to ensure genuine rejection structures
Confidence Multiplier: Statistical multiplier (default 1.96) for 95% confidence interval calculations
Channel Projection Length: Extend confidence zones forward from 10 to 200 bars for anticipatory analysis
ATR Period: Customize Average True Range lookback from 5 to 50 bars for volatility-based calculations
StdDev Period: Adjust Standard Deviation period from 10 to 100 bars for statistical precision
🎯 Real-World Trading Applications
Identify high-probability support zones where institutional buyers have historically defended price with significant volume
Map resistance levels where smart money sellers consistently reject higher prices with volume confirmation
Combine with price action analysis to confirm breakout validity when price approaches confidence channel boundaries
Use invalidation signals to exit positions when smart money zones are definitively breached
Monitor the real-time dashboard to quickly assess current market structure and active rejection zones
Adapt strategy based on calculation method: ATR for trending markets, StdDev for ranging conditions
Set alerts on confidence level breaches to catch potential trend reversals or continuation patterns
📈 Visual Interpretation Guide
Green Zones indicate bullish rejection blocks where buyers defended with high volume and lower wicks
Red Zones indicate bearish rejection blocks where sellers defended with high volume and upper wicks
Solid Center Lines represent the core rejection price level where maximum volume activity occurred
Dashed Confidence Boundaries show upper and lower statistical limits based on volatility calculations
Zone Opacity decreases as channels extend forward to indicate decreasing confidence over time
Dashboard Color Coding provides instant visual feedback on active volume spike and zone conditions
⚠️ Important Considerations
Volume-based indicators identify historical rejection zones but cannot predict future price action with certainty
Market conditions change rapidly and institutional activity patterns evolve continuously
High volume does not guarantee level defense as market structure can shift without warning
Confidence intervals represent statistical probabilities, not guaranteed price boundaries
LibPvotLibrary "LibPvot"
This is a library for advanced technical analysis, specializing
in two core areas: the detection of price-oscillator
divergences and the analysis of market structure. It provides
a back-end engine for signal detection and a toolkit for
indicator plotting.
Key Features:
1. **Complete Divergence Suite (Class A, B, C):** The engine detects
all three major types of divergences, providing a full spectrum of
analytical signals:
- **Regular (A):** For potential trend reversals.
- **Hidden (B):** For potential trend continuations.
- **Exaggerated (C):** For identifying weakness at double tops/bottoms.
2. **Advanced Signal Filtering:** The detection logic uses a
percentage-based price tolerance (`prcTol`). This feature
enables the practical detection of Exaggerated divergences
(which rarely occur at the exact same price) and creates a
"dead zone" to filter insignificant noise from triggering
Regular divergences.
3. **Pivot Synchronization:** A bar tolerance (`barTol`) is used
to reliably match price and oscillator pivots that do not
align perfectly on the same bar, preventing missed signals.
4. **Signal Invalidation Logic:** Features two built-in invalidation
rules:
- An optional `invalidate` parameter automatically terminates
active divergences if the price or the oscillator breaks
the level of the confirming pivot.
- The engine also discards 'half-pivots' (e.g., a price pivot)
if a corresponding oscillator pivot does not appear within
the `barTol` window.
5. **Stateful Plotting Helpers:** Provides helper functions
(`bullDivPos` and `bearDivPos`) that abstract away the
state management issues of visualizing persistent signals.
They generate gap-free, accurately anchored data series
ready to be used in `plotshape` functions, simplifying
indicator-side code.
6. **Rich Data Output:** The core detection functions (`bullDiv`, `bearDiv`)
return a comprehensive 9-field data tuple. This includes the
boolean flags for each divergence type and the precise
coordinates (price, oscillator value, bar index) of both the
starting and the confirming pivots.
7. **Market Structure & Trend Analysis:** Includes a
`marketStructure` function to automatically identify pivot
highs/lows, classify their relationship (HH, LH, LL, HL),
detect structure breaks, and determine the current trend
state (Up, Down, Neutral) based on pivot sequences.
---
**DISCLAIMER**
This library is provided "AS IS" and for informational and
educational purposes only. It does not constitute financial,
investment, or trading advice.
The author assumes no liability for any errors, inaccuracies,
or omissions in the code. Using this library to build
trading indicators or strategies is entirely at your own risk.
As a developer using this library, you are solely responsible
for the rigorous testing, validation, and performance of any
scripts you create based on these functions. The author shall
not be held liable for any financial losses incurred directly
or indirectly from the use of this library or any scripts
derived from it.
bullDiv(priceSrc, oscSrc, leftLen, rightLen, depth, barTol, prcTol, persist, invalidate)
Detects bullish divergences (Regular, Hidden, Exaggerated) based on pivot lows.
Parameters:
priceSrc (float) : series float Price series to check for pivots (e.g., `low`).
oscSrc (float) : series float Oscillator series to check for pivots.
leftLen (int) : series int Number of bars to the left of a pivot (default 5).
rightLen (int) : series int Number of bars to the right of a pivot (default 5).
depth (int) : series int Maximum number of stored pivot pairs to check against (default 2).
barTol (int) : series int Maximum bar distance allowed between the price pivot and the oscillator pivot (default 3).
prcTol (float) : series float The percentage tolerance for comparing pivot prices. Used to detect Exaggerated
divergences and filter out market noise (default 0.05%).
persist (bool) : series bool If `true` (default), the divergence flag stays active for the entire duration of the signal.
If `false`, it returns a single-bar pulse on detection.
invalidate (bool) : series bool If `true` (default), terminates an active divergence if price or oscillator break
below the confirming pivot low.
Returns: A tuple containing comprehensive data for a detected bullish divergence.
regBull series bool `true` if a Regular bullish divergence (Class A) is active.
hidBull series bool `true` if a Hidden bullish divergence (Class B) is active.
exgBull series bool `true` if an Exaggerated bullish divergence (Class C) is active.
initPivotPrc series float Price value of the initial (older) pivot low.
initPivotOsz series float Oscillator value of the initial pivot low.
initPivotBar series int Bar index of the initial pivot low.
lastPivotPrc series float Price value of the last (confirming) pivot low.
lastPivotOsz series float Oscillator value of the last pivot low.
lastPivotBar series int Bar index of the last pivot low.
bearDiv(priceSrc, oscSrc, leftLen, rightLen, depth, barTol, prcTol, persist, invalidate)
Detects bearish divergences (Regular, Hidden, Exaggerated) based on pivot highs.
Parameters:
priceSrc (float) : series float Price series to check for pivots (e.g., `high`).
oscSrc (float) : series float Oscillator series to check for pivots.
leftLen (int) : series int Number of bars to the left of a pivot (default 5).
rightLen (int) : series int Number of bars to the right of a pivot (default 5).
depth (int) : series int Maximum number of stored pivot pairs to check against (default 2).
barTol (int) : series int Maximum bar distance allowed between the price pivot and the oscillator pivot (default 3).
prcTol (float) : series float The percentage tolerance for comparing pivot prices. Used to detect Exaggerated
divergences and filter out market noise (default 0.05%).
persist (bool) : series bool If `true` (default), the divergence flag stays active for the entire duration of the signal.
If `false`, it returns a single-bar pulse on detection.
invalidate (bool) : series bool If `true` (default), terminates an active divergence if price or oscillator break
above the confirming pivot high.
Returns: A tuple containing comprehensive data for a detected bearish divergence.
regBear series bool `true` if a Regular bearish divergence (Class A) is active.
hidBear series bool `true` if a Hidden bearish divergence (Class B) is active.
exgBear series bool `true` if an Exaggerated bearish divergence (Class C) is active.
initPivotPrc series float Price value of the initial (older) pivot high.
initPivotOsz series float Oscillator value of the initial pivot high.
initPivotBar series int Bar index of the initial pivot high.
lastPivotPrc series float Price value of the last (confirming) pivot high.
lastPivotOsz series float Oscillator value of the last pivot high.
lastPivotBar series int Bar index of the last pivot high.
bullDivPos(regBull, hidBull, exgBull, rightLen, yPos)
Calculates the plottable data series for bullish divergences. It manages
the complex state of a persistent signal's plotting window to ensure
gap-free and accurately anchored visualization.
Parameters:
regBull (bool) : series bool The regular bullish divergence flag from `bullDiv`.
hidBull (bool) : series bool The hidden bullish divergence flag from `bullDiv`.
exgBull (bool) : series bool The exaggerated bullish divergence flag from `bullDiv`.
rightLen (int) : series int The same `rightLen` value used in `bullDiv` for correct timing.
yPos (float) : series float The series providing the base Y-coordinate for the shapes (e.g., `low`).
Returns: A tuple of three `series float` for plotting bullish divergences.
regBullPosY series float Contains the static anchor Y-value for Regular divergences where a shape should be plotted; `na` otherwise.
hidBullPosY series float Contains the static anchor Y-value for Hidden divergences where a shape should be plotted; `na` otherwise.
exgBullPosY series float Contains the static anchor Y-value for Exaggerated divergences where a shape should be plotted; `na` otherwise.
bearDivPos(regBear, hidBear, exgBear, rightLen, yPos)
Calculates the plottable data series for bearish divergences. It manages
the complex state of a persistent signal's plotting window to ensure
gap-free and accurately anchored visualization.
Parameters:
regBear (bool) : series bool The regular bearish divergence flag from `bearDiv`.
hidBear (bool) : series bool The hidden bearish divergence flag from `bearDiv`.
exgBear (bool) : series bool The exaggerated bearish divergence flag from `bearDiv`.
rightLen (int) : series int The same `rightLen` value used in `bearDiv` for correct timing.
yPos (float) : series float The series providing the base Y-coordinate for the shapes (e.g., `high`).
Returns: A tuple of three `series float` for plotting bearish divergences.
regBearPosY series float Contains the static anchor Y-value for Regular divergences where a shape should be plotted; `na` otherwise.
hidBearPosY series float Contains the static anchor Y-value for Hidden divergences where a shape should be plotted; `na` otherwise.
exgBearPosY series float Contains the static anchor Y-value for Exaggerated divergences where a shape should be plotted; `na` otherwise.
marketStructure(highSrc, lowSrc, leftLen, rightLen, srcTol)
Analyzes the market structure by identifying pivot points, classifying
their sequence (e.g., Higher Highs, Lower Lows), and determining the
prevailing trend state.
Parameters:
highSrc (float) : series float Price series for pivot high detection (e.g., `high`).
lowSrc (float) : series float Price series for pivot low detection (e.g., `low`).
leftLen (int) : series int Number of bars to the left of a pivot (default 5).
rightLen (int) : series int Number of bars to the right of a pivot (default 5).
srcTol (float) : series float Percentage tolerance to consider two pivots as 'equal' (default 0.05%).
Returns: A tuple containing detailed market structure information.
pivType series PivType The type of the most recently formed pivot (e.g., `hh`, `ll`).
lastPivHi series float The price level of the last confirmed pivot high.
lastPivLo series float The price level of the last confirmed pivot low.
lastPiv series float The price level of the last confirmed pivot (either high or low).
pivHiBroken series bool `true` if the price has broken above the last pivot high.
pivLoBroken series bool `true` if the price has broken below the last pivot low.
trendState series TrendState The current trend state (`up`, `down`, or `neutral`).
Daily Levels: PD / PM / OR (RTH/Pre)# Daily Levels: PD / PM / OR (RTH/Pre)
## Overview
This indicator displays key intraday support and resistance levels for US equity markets, specifically designed for traders who use Previous Day, Pre-Market, and Opening Range levels in their trading strategy.
## Key Features
**Seven Critical Levels Displayed:**
- **PDH (Previous Day High)** - Blue line: The highest price from yesterday's regular trading hours (9:30 AM - 4:00 PM ET)
- **PDL (Previous Day Low)** - Blue line: The lowest price from yesterday's regular trading hours
- **PDC (Previous Day Close)** - Orange line: The closing price from yesterday's regular trading hours
- **PMH (Pre-Market High)** - Yellow line: The highest price during today's pre-market session (4:00 AM - 9:30 AM ET)
- **PML (Pre-Market Low)** - Yellow line: The lowest price during today's pre-market session
- **ORH (Opening Range High)** - Red line: The highest price during the first 30 minutes of trading (9:30 AM - 10:00 AM ET)
- **ORL (Opening Range Low)** - Red line: The lowest price during the first 30 minutes of trading
## How It Works
**At 9:30 AM ET (Market Open):**
- PDH, PDL, PDC levels appear (from previous day's RTH)
- PMH, PML levels appear (from today's pre-market session)
- All lines begin at the 9:30 AM bar and extend right
**At 10:00 AM ET (Opening Range Close):**
- ORH, ORL levels appear (from today's first 30 minutes)
- Lines begin at the 9:30 AM bar and extend right
**Level Persistence:**
- All levels remain visible until the next trading day at 9:30 AM ET
- Levels reset daily for the new trading session
## Use Cases
**Day Trading:**
- Identify key support and resistance zones before placing trades
- Use PDH/PDL as potential profit targets or stop loss areas
- Monitor price reaction at pre-market levels for early trading signals
- Trade breakouts or rejections at opening range levels
**Swing Trading:**
- Assess daily momentum by observing breaks above/below previous day levels
- Use multiple timeframes while maintaining consistent reference points
**Market Structure:**
- Quickly identify if the market is trading above or below key levels
- Recognize accumulation/distribution patterns around these zones
## Technical Details
- **Timezone:** All times referenced are US Eastern Time (America/New_York)
- **Session Windows:**
- Pre-Market: 4:00 AM - 9:30 AM ET
- Regular Trading Hours: 9:30 AM - 4:00 PM ET
- Opening Range: 9:30 AM - 10:00 AM ET
- **Timeframe Agnostic:** Works on any chart timeframe
- **Visual Clarity:** Color-coded lines and labels for easy identification
## Color Scheme
- **Blue:** Previous Day levels (PDH, PDL)
- **Orange:** Previous Day Close (PDC)
- **Yellow:** Pre-Market levels (PMH, PML)
- **Red:** Opening Range levels (ORH, ORL)
## Best Practices
1. Use on US equity indices (SPY, QQQ, ES, NQ) and liquid US stocks
2. Combine with volume analysis for confirmation
3. Pay attention to how price reacts at these levels (bounce vs. break)
4. Most effective during the first 2 hours of trading when volatility is highest
5. Consider the market context (trending vs. ranging) when interpreting these levels
## Note
This indicator is specifically designed for US market hours. Results may vary when applied to international markets or instruments with different trading sessions.
Enhanced Holt-Winters RSI [BOSWaves]Enhanced Holt-Winters RSI – Next-Level Momentum Smoothing & Signal Precision
Overview
The Enhanced Holt-Winters RSI transforms the classic Relative Strength Index into a robust, lag-minimized momentum oscillator through Holt-Winters triple exponential smoothing. By modeling the level, trend, and cyclical behavior of the RSI series, this indicator delivers smoother, more responsive signals that highlight overbought/oversold conditions, momentum shifts, and high-conviction trading setups without cluttering the chart with noise.
Unlike traditional RSI, which reacts to historical data and produces frequent whipsaws, the Enhanced Holt-Winters RSI filters transient price fluctuations, enabling traders to detect emerging momentum and potential reversal zones earlier.
Theoretical Foundation
The traditional RSI measures relative strength by comparing average gains and losses, but suffers from:
Lag in trend recognition : Signals often arrive after momentum has shifted.
Noise sensitivity : High-frequency price movements generate unreliable crossovers.
Limited insight into structural market shifts : Standard RSI cannot contextualize cyclical or momentum patterns.
The Enhanced Holt-Winters RSI addresses these limitations by applying triple exponential smoothing directly to the RSI series. This decomposes the series into:
Level (Lₜ) : Represents the smoothed central tendency of RSI.
Trend (Tₜ) : Captures rate-of-change in smoothed momentum.
Seasonal Component (Sₜ) : Models short-term cyclical deviations in momentum.
By incorporating these elements, the oscillator produces smoothed RSI values that react faster to emerging trends while suppressing erratic noise. Its internal forecast is mathematical, influencing the smoothed RSI output and signals, rather than being directly plotted.
How It Works
The Enhanced Holt-Winters RSI builds its signal framework through several layers:
1. Base RSI Calculation
Computes standard RSI over the selected period as the primary momentum input.
2. Triple Exponential Smoothing (Holt-Winters)
The RSI is smoothed recursively to extract underlying momentum structure:
Level, trend, and seasonal components are combined to produce a smoothed RSI.
This internal smoothing reduces lag and enhances signal reliability.
3. Momentum Analysis
Short-term momentum shifts are tracked via a moving average of the smoothed RSI, highlighting acceleration or deceleration in directional strength.
4. Volume Confirmation (Optional)
Buy/sell signals can be filtered through a configurable volume threshold, ensuring only high-conviction moves trigger alerts.
5. Visual Output
Colored Candles : Represent overbought (red), oversold (green), or neutral (yellow) conditions.
Oscillator Panel : Plots the smoothed RSI with dynamic color coding for immediate trend context.
Signals : Triangular markers indicate bullish or bearish setups, with stronger signals flagged in extreme zones.
Interpretation
The Enhanced Holt-Winters RSI provides a multi-dimensional perspective on price action:
Trend Strength : Smoothed RSI slope and color coding reflect the direction and momentum intensity.
Momentum Shifts : Rapid changes in the smoothed RSI indicate emerging strength or weakness.
Overbought/Oversold Zones : Highlight areas where price is stretched relative to recent momentum.
High-Conviction Signals : Combined with volume filtering, markers indicate optimal entries/exits.
Cycle Awareness : Smoothing reveals structural patterns, helping traders avoid reacting to noise.
By combining these elements, traders gain early insight into market structure and momentum without relying on raw, lag-prone RSI data.
Strategy Integration
The Enhanced Holt-Winters RSI can be applied across trading styles:
Trend Following
Enter when RSI is aligned with price momentum and color-coded signals confirm trend direction.
Strong slope in the smoothed RSI signals trend continuation.
Reversal Trading
Look for RSI extremes with momentum shifts and strong signal markers.
Compression in oscillator values often precedes reversal setups.
Breakout Detection
Oscillator flattening in neutral zones followed by directional expansion indicates potential breakout conditions.
Multi-Timeframe Confluence
Higher timeframes provide directional bias; lower timeframes refine entry timing using smoothed RSI dynamics.
Technical Implementation Details
Input Source : Close, open, high, low, or price.
Smoothing : Holt-Winters triple exponential smoothing applied to RSI.
Parameters :
Level (α) : Controls smoothing of RSI.
Trend (β) : Adjusts responsiveness to momentum changes.
Seasonal Length : Defines cycles for short-term adjustments.
Delta Smoothing : Reduces choppiness in smoothed RSI difference.
Outputs :
Smoothed RSI
Colored candles and oscillator panel
Buy/Sell signal markers (with optional strength filtering)
Volume Filtering : Optional threshold to confirm signals.
Optimal Application Parameters
Asset-Specific Guidance:
Forex : Use moderate smoothing (α, β) to capture medium-term momentum swings while filtering minor price noise. Works best when combined with volume or volatility filters.
Equities : Balance responsiveness and smoothness to identify sustained sector momentum or rotational shifts; ideal for capturing clean directional transitions.
Cryptocurrency : Increase smoothing parameters slightly to stabilize RSI during extreme volatility; optional volume confirmation can help filter false signals.
Futures/Indices : Lower smoothing sensitivity emphasizes macro momentum and structural trend durability over short-term fluctuations.
Timeframe Optimization:
Scalping (1-5m) : Use higher sensitivity (lower smoothing factors) to react quickly to micro-momentum reversals.
Intraday (15m-1h) : Balance smoothing and responsiveness for detecting short-term acceleration and exhaustion zones.
Swing (4h-Daily) : Apply moderate smoothing to reveal underlying directional persistence and cyclical reversals.
Position (Daily-Weekly) : Use stronger smoothing to isolate dominant momentum trends and filter temporary pullbacks.
Integration Guidelines
Combine with trend filters (EMAs, SuperSmoother MA, ATR-based tools) for confirmation.
Use volume and signal strength markers to filter low-conviction trades.
Slope, color, and signal alignment can guide entry, stop placement, and scaling.
Disclaimer
The Enhanced Holt-Winters RSI is a technical analysis tool, not a guaranteed profit system. Effectiveness depends on proper settings, market structure, and disciplined risk management. Always backtest before live trading.






















