CVD OscillatorCVD Delta Oscillator
A momentum oscillator that measures buying and selling pressure through volume analysis, based on the principle that volume precedes price (cause and effect).
How It Works
Volume Analysis
Measures the force of buying and selling by analyzing how volume interacts with price movement within each bar
When price closes higher in a bar's range with strong volume, this indicates stronger buying pressure
When price closes lower in a bar's range with strong volume, this indicates stronger selling pressure
Momentum Measurement
Uses two EMAs (fast and slow) to smooth the volume delta
The difference between these EMAs creates an oscillator that shows:
Rising values = Buying pressure increasing
Falling values = Selling pressure increasing
Zero line crossovers = Potential shift in control between buyers and sellers
Signal Generation
Divergences
Bullish: Price falls to new lows while buying pressure increases (potential reversal up)
Bearish: Price rises to new highs while selling pressure increases (potential reversal down)
Zero-Line Crossovers
Bullish: Buying pressure overtakes selling pressure
Bearish: Selling pressure overtakes buying pressure
Practical Application
Reading the Indicator
Green columns above zero = Net buying pressure
Red columns below zero = Net selling pressure
Larger columns = Stronger pressure
Divergences and crossovers = Potential turning points
Trading Context
Helps identify when price movement has strong or weak volume support
Shows potential exhaustion points through divergences
Confirms trend changes through zero-line crossovers
Customization
Adjustable EMA periods for different trading styles
Toggle-able visual signals
Automatic alerts for all signals
在腳本中搜尋"BULL"
Dynamic TestingInput Parameters
`lookbackPeriod` : Number of candles to check for determining the highest high (resistance) and lowest low (support) levels.
`atrPeriod` : The period for calculating the Average True Range (ATR), a measure of market volatility.
`atrMultiplierSL` : Multiplier to calculate the stop-loss distance relative to the ATR.
`atrMultiplierTP1` and `atrMultiplierTP2` : Multipliers to calculate two take-profit levels relative to ATR.
`rewardToRisk` : The ratio between reward (profit) and risk (stop loss) for trade management.
---
Core Calculations
ATR (Average True Range)
atr = ta.atr(atrPeriod)
ATR is computed using the specified period to gauge price volatility.
Volume SMA
volumeSMA = ta.sma(volume, atrPeriod)
The script calculates the simple moving average of volume over the same period as ATR. This is used as a threshold for validating high-volume scenarios.
---
Support and Resistance Levels
`support` : Lowest price over the last `lookbackPeriod` candles.
`resistance` : Highest price over the same period.
`supportBuffer` and `resistanceBuffer` : These are "buffered" zones around support and resistance, calculated using half of the ATR to prevent false breakouts.
---
Entry Scenarios
Bullish Entry (`isBullishEntry`)
The close is above the buffered support level.
The low of the current candle touches or breaks below the support level.
The trading volume is greater than the `volumeSMA`.
Bearish Entry (`isBearishEntry`)
The close is below the buffered resistance level.
The high of the current candle touches or exceeds the resistance level.
The trading volume is greater than the `volumeSMA`.
---
Box Visualization
Bullish and Bearish Boxes
Bullish Box (`bullishBox`):
- A green, semi-transparent rectangle around the support level to highlight the bullish entry zone.
- Dynamically updates based on recent price action.
Bearish Box (`bearishBox`):
- A red, semi-transparent rectangle around the resistance level to highlight the bearish entry zone.
- Adjusts similarly as price evolves.
---
Stop Loss and Take Profit Calculations
Bullish Trades
Stop Loss (`bullishSL`): Calculated as support - atrMultiplierSL * ATR .
Take Profit 1 (`bullishTP1`): support + rewardToRisk * atrMultiplierTP1 * ATR .
Take Profit 2 (`bullishTP2`): support + rewardToRisk * atrMultiplierTP2 * ATR .
Bearish Trades
Stop Loss (`bearishSL`): resistance + atrMultiplierSL * ATR .
Take Profit 1 (`bearishTP1`): resistance - rewardToRisk * atrMultiplierTP1 * ATR .
Take Profit 2 (`bearishTP2`): resistance - rewardToRisk * atrMultiplierTP2 * ATR .
---
Visualization for Key Levels
Bullish Scenario
Green lines represent `bullishTP1` and `bullishTP2` for profit targets.
A red line indicates the `bullishSL` .
Labels like "TP1," "TP2," and "SL" dynamically appear at respective levels to make the targets and risk visually clear.
Bearish Scenario
Red lines represent `bearishTP1` and `bearishTP2` .
A green line marks the `bearishSL` .
Similar dynamic labeling for `TP1` , `TP2` , and `SL` at corresponding bearish levels.
---
Dynamic Updates
Both the entry boxes and key level visualizations (lines and labels) adjust dynamically based on real-time price and volume data.
---
Purpose
Identify high-probability bullish and bearish trade setups.
Define clear entry zones (using boxes) and exit levels (TP1, TP2, SL).
Incorporate volatility (via ATR) and volume into decision-making.
---
Technical Summary
Dynamically visualize support/resistance levels.
Set risk-managed trades using ATR-based stop-loss and profit levels.
Automate visual trade zones for enhanced chart clarity.
---
Custom V2 KillZone US / FVG / EMAThis indicator is designed for traders looking to analyze liquidity levels, opportunity zones, and the underlying trend across different trading sessions. Inspired by the ICT methodology, this tool combines analysis of Exponential Moving Averages (EMA), session management, and Fair Value Gap (FVG) detection to provide a structured and disciplined approach to trading effectively.
Indicator Features
Identifying the Underlying Trend with Two EMAs
The indicator uses two EMAs on different, customizable timeframes to define the underlying trend:
EMA1 (default set to a daily timeframe): Represents the primary underlying trend.
EMA2 (default set to a 4-hour timeframe): Helps identify secondary corrections or impulses within the main trend.
These two EMAs allow traders to stay aligned with the market trend by prioritizing trades in the direction of the moving averages. For example, if prices are above both EMAs, the trend is bullish, and long trades are favored.
Analysis of Market Sessions
The indicator divides the day into key trading sessions:
Asian Session
London Session
US Pre-Open Session
Liquidity Kill Session
US Kill Zone Session
Each session is represented by high and low zones as well as mid-lines, allowing traders to visualize liquidity levels reached during these periods. Tracking the price levels in different sessions helps determine whether liquidity levels have been "swept" (taken) or not, which is essential for ICT methodology.
Liquidity Signal ("OK" or "STOP")
A specific signal appears at the end of the "Liquidity Kill" session (just before the "US Kill Zone" session):
"OK" Signal: Indicates that liquidity conditions are favorable for trading the "US Kill Zone" session. This means that liquidity levels have been swept in previous sessions (Asian, London, US Pre-Open), and the market is ready for an opportunity.
"STOP" Signal: Indicates that it is not favorable to trade the "US Kill Zone" session, as certain liquidity conditions have not been met.
The "OK" or "STOP" signal is based on an analysis of the high and low levels from previous sessions, allowing traders to ensure that significant liquidity zones have been reached before considering positions in the "Kill Zone".
Detection of Fair Value Gaps (FVG) in the US Kill Zone Session
When an "OK" signal is displayed, the indicator identifies Fair Value Gaps (FVG) during the "US Kill Zone" session. These FVGs are areas where price may return to fill an "imbalance" in the market, making them potential entry points.
Bullish FVG: Detected when there is a bullish imbalance, providing a buying opportunity if conditions align with the underlying trend.
Bearish FVG: Detected when there is a bearish imbalance, providing a selling opportunity in the trend direction.
FVG detection aligns with the ICT Silver Bullet methodology, where these imbalance zones serve as probable entry points during the "US Kill Zone".
How to Use This Indicator
Check the Underlying Trend
Before trading, observe the two EMAs (daily and 4-hour) to understand the general market trend. Trades will be prioritized in the direction indicated by these EMAs.
Monitor Liquidity Signals After the Asian, London, and US Pre-Open Sessions
The high and low levels of each session help determine if liquidity has already been swept in these areas. At the end of the "Liquidity Kill" session, an "OK" or "STOP" label will appear:
"OK" means you can look for trading opportunities in the "US Kill Zone" session.
"STOP" means it is preferable not to take trades in the "US Kill Zone" session.
Look for Opportunities in the US Kill Zone if the Signal is "OK"
When the "OK" label is present, focus on the "US Kill Zone" session. Use the Fair Value Gaps (FVG) as potential entry points for trades based on the ICT methodology. The identified FVGs will appear as colored boxes (bullish or bearish) during this session.
Use ICT Methodology to Manage Your Trades
Follow the FVGs as potential reversal zones in the direction of the trend, and manage your positions according to your personal strategy and the rules of the ICT Silver Bullet method.
Customizable Settings
The indicator includes several customization options to suit the trader's preferences:
EMA: Length, source (close, open, etc.), and timeframe.
Market Sessions: Ability to enable or disable each session, with color and line width settings.
Liquidity Signals: Customization of colors for the "OK" and "STOP" labels.
FVG: Option to display FVGs or not, with customizable colors for bullish and bearish FVGs, and the number of bars for FVG extension.
-------------------------------------------------------------------------------------------------------------
Cet indicateur est conçu pour les traders souhaitant analyser les niveaux de liquidité, les zones d’opportunité, et la tendance de fond à travers différentes sessions de trading. Inspiré de la méthodologie ICT, cet outil combine l'analyse des moyennes mobiles exponentielles (EMA), la gestion des sessions de marché, et la détection des Fair Value Gaps (FVG), afin de fournir une approche structurée et disciplinée pour trader efficacement.
Exposure Oscillator (Cumulative 0 to ±100%)
Exposure Oscillator (Cumulative 0 to ±100%)
This Pine Script indicator plots an "Exposure Oscillator" on the chart, which tracks the cumulative market exposure from a range of technical buy and sell signals. The exposure is measured on a scale from -100% (maximum short exposure) to +100% (maximum long exposure), helping traders assess the strength of their position in the market. It provides an intuitive visual cue to aid decision-making for trend-following strategies.
Buy Signals (Increase Exposure Score by +10%)
Buy Signal 1 (Cross Above 21 EMA):
This signal is triggered when the price crosses above the 21-period Exponential Moving Average (EMA), where the current bar closes above the EMA21, and the previous bar closed below the EMA21. This indicates a potential upward price movement as the market shifts into a bullish trend.
buySignal1 = ta.crossover(close, ema21)
Buy Signal 2 (Trending Above 21 EMA):
This signal is triggered when the price closes above the 21-period EMA for each of the last 5 bars, indicating a sustained bullish trend. It confirms that the price is consistently above the EMA21 for a significant period.
buySignal2 = ta.barssince(close <= ema21) > 5
Buy Signal 3 (Living Above 21 EMA):
This signal is triggered when the price has closed above the 21-period EMA for each of the last 15 bars, demonstrating a strong, prolonged uptrend.
buySignal3 = ta.barssince(close <= ema21) > 15
Buy Signal 4 (Cross Above 50 SMA):
This signal is triggered when the price crosses above the 50-period Simple Moving Average (SMA), where the current bar closes above the 50 SMA, and the previous bar closed below it. It indicates a shift toward bullish momentum.
buySignal4 = ta.crossover(close, sma50)
Buy Signal 5 (Cross Above 200 SMA):
This signal is triggered when the price crosses above the 200-period Simple Moving Average (SMA), where the current bar closes above the 200 SMA, and the previous bar closed below it. This suggests a long-term bullish trend.
buySignal5 = ta.crossover(close, sma200)
Buy Signal 6 (Low Above 50 SMA):
This signal is true when the lowest price of the current bar is above the 50-period SMA, indicating strong bullish pressure as the price maintains itself above the moving average.
buySignal6 = low > sma50
Buy Signal 7 (Accumulation Day):
An accumulation day occurs when the closing price is in the upper half of the daily range (greater than 50%) and the volume is larger than the previous bar's volume, suggesting buying pressure and accumulation.
buySignal7 = (close - low) / (high - low) > 0.5 and volume > volume
Buy Signal 8 (Higher High):
This signal occurs when the current bar’s high exceeds the highest high of the previous 14 bars, indicating a breakout or strong upward momentum.
buySignal8 = high > ta.highest(high, 14)
Buy Signal 9 (Key Reversal Bar):
This signal is generated when the stock opens below the low of the previous bar but rallies to close above the previous bar’s high, signaling a potential reversal from bearish to bullish.
buySignal9 = open < low and close > high
Buy Signal 10 (Distribution Day Fall Off):
This signal is triggered when a distribution day (a day with high volume and a close near the low of the range) "falls off" the rolling 25-bar period, indicating the end of a bearish trend or selling pressure.
buySignal10 = ta.barssince(close < sma50 and close < sma50) > 25
Sell Signals (Decrease Exposure Score by -10%)
Sell Signal 1 (Cross Below 21 EMA):
This signal is triggered when the price crosses below the 21-period Exponential Moving Average (EMA), where the current bar closes below the EMA21, and the previous bar closed above it. It suggests that the market may be shifting from a bullish trend to a bearish trend.
sellSignal1 = ta.crossunder(close, ema21)
Sell Signal 2 (Trending Below 21 EMA):
This signal is triggered when the price closes below the 21-period EMA for each of the last 5 bars, indicating a sustained bearish trend.
sellSignal2 = ta.barssince(close >= ema21) > 5
Sell Signal 3 (Living Below 21 EMA):
This signal is triggered when the price has closed below the 21-period EMA for each of the last 15 bars, suggesting a strong downtrend.
sellSignal3 = ta.barssince(close >= ema21) > 15
Sell Signal 4 (Cross Below 50 SMA):
This signal is triggered when the price crosses below the 50-period Simple Moving Average (SMA), where the current bar closes below the 50 SMA, and the previous bar closed above it. It indicates the start of a bearish trend.
sellSignal4 = ta.crossunder(close, sma50)
Sell Signal 5 (Cross Below 200 SMA):
This signal is triggered when the price crosses below the 200-period Simple Moving Average (SMA), where the current bar closes below the 200 SMA, and the previous bar closed above it. It indicates a long-term bearish trend.
sellSignal5 = ta.crossunder(close, sma200)
Sell Signal 6 (High Below 50 SMA):
This signal is true when the highest price of the current bar is below the 50-period SMA, indicating weak bullishness or a potential bearish reversal.
sellSignal6 = high < sma50
Sell Signal 7 (Distribution Day):
A distribution day is identified when the closing range of a bar is less than 50% and the volume is larger than the previous bar's volume, suggesting that selling pressure is increasing.
sellSignal7 = (close - low) / (high - low) < 0.5 and volume > volume
Sell Signal 8 (Lower Low):
This signal occurs when the current bar's low is less than the lowest low of the previous 14 bars, indicating a breakdown or strong downward momentum.
sellSignal8 = low < ta.lowest(low, 14)
Sell Signal 9 (Downside Reversal Bar):
A downside reversal bar occurs when the stock opens above the previous bar's high but falls to close below the previous bar’s low, signaling a reversal from bullish to bearish.
sellSignal9 = open > high and close < low
Sell Signal 10 (Distribution Cluster):
This signal is triggered when a distribution day occurs three times in the rolling 7-bar period, indicating significant selling pressure.
sellSignal10 = ta.valuewhen((close < low) and volume > volume , 1, 7) >= 3
Theme Mode:
Users can select the theme mode (Auto, Dark, or Light) to match the chart's background or to manually choose a light or dark theme for the oscillator's appearance.
Exposure Score Calculation: The script calculates a cumulative exposure score based on a series of buy and sell signals.
Buy signals increase the exposure score, while sell signals decrease it. Each signal impacts the score by ±10%.
Signal Conditions: The buy and sell signals are derived from multiple conditions, including crossovers with moving averages (EMA21, SMA50, SMA200), trend behavior, and price/volume analysis.
Oscillator Visualization: The exposure score is visualized as a line on the chart, changing color based on whether the exposure is positive (long position) or negative (short position). It is limited to the range of -100% to +100%.
Position Type: The indicator also indicates the position type based on the exposure score, labeling it as "Long," "Short," or "Neutral."
Horizontal Lines: Reference lines at 0%, 100%, and -100% visually mark neutral, increasing long, and increasing short exposure levels.
Exposure Table: A table displays the current exposure level (in percentage) and position type ("Long," "Short," or "Neutral"), updated dynamically based on the oscillator’s value.
Inputs:
Theme Mode: Choose "Auto" to use the default chart theme, or manually select "Dark" or "Light."
Usage:
This oscillator is designed to help traders track market sentiment, gauge exposure levels, and manage risk. It can be used for long-term trend-following strategies or short-term trades based on moving average crossovers and volume analysis.
The oscillator operates in conjunction with the chart’s price action and provides a visual representation of the market’s current trend strength and exposure.
Important Considerations:
Risk Management: While the exposure score provides valuable insight, it should be combined with other risk management tools and analysis for optimal trading decisions.
Signal Sensitivity: The accuracy and effectiveness of the signals depend on market conditions and may require adjustments based on the user’s trading strategy or timeframe.
Disclaimer:
This script is for educational purposes only. Trading involves significant risk, and users should carefully evaluate all market conditions and apply appropriate risk management strategies before using this tool in live trading environments.
EMA Ribbon + ADX MomentumHere's a description for your TradingView indicator publication:
The EMA Ribbon + ADX Momentum indicator combines exponential moving averages (EMA) with the Average Directional Index (ADX) to identify strong trends and potential trading opportunities. This powerful tool offers:
🎯 Key Features:
EMA Ribbon (10, 21, 34, 55) for trend direction
ADX integration for trend strength confirmation
Clear visual signals with color-coded backgrounds
Real-time trend status display
Strength metrics with exact percentage values
📊 How It Works:
EMA Ribbon: Four EMAs form a ribbon pattern that shows trend direction through their stacking order
ADX Integration: Confirms trend strength when above the threshold (default 25)
Visual Signals:
Green background: Strong bullish trend
Red background: Strong bearish trend
Gray background: Neutral or weak trend
📈 Trading Signals:
STRONG BULL: EMAs properly stacked bullish + high ADX + DI+ > DI-
STRONG BEAR: EMAs properly stacked bearish + high ADX + DI- > DI+
BULL/BEAR TREND: Shows regular trend conditions without strength confirmation
NEUTRAL: No clear trend structure
🔧 Customizable Parameters:
ADX Length: Adjust trend calculation period
ADX Threshold: Modify strength confirmation level
ADX Panel Toggle: Show/hide the ADX indicator panel
💡 Best Uses:
Trend following strategies
Entry/exit timing
Trade confirmation
Market structure analysis
Risk management tool
This indicator helps traders identify not just trend direction, but also trend strength, making it particularly useful for both position entry timing and risk management. The clear visual signals and real-time metrics make it suitable for traders of all experience levels.
Note: As with all technical indicators, best results are achieved when used in conjunction with other forms of analysis and proper risk management.
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!
XAUUSD Multi-Timeframe Trend AnalyzerOverview
The "XAUUSD Multi-Timeframe Trend Analyzer" is an advanced script designed to provide a comprehensive analysis of the XAUUSD (Gold/US Dollar) trend across multiple timeframes simultaneously. By combining several key technical indicators, this tool helps traders quickly assess the market direction and trend strength for M15, M30, H1, H4, and D1 timeframes.
Multi-Timeframe Analysis: Displays the trend direction and strength across M15, M30, H1, H4, and D1 timeframes, allowing for a complete overview in a single glance.
Comprehensive Indicator Blend: Utilizes six popular technical indicators to determine the trend—Moving Averages, RSI, MACD, Bollinger Bands, DMI, and Parabolic SAR.
Trend Strength Scoring: Provides a numerical trend strength score (from -6 to 6) based on the alignment of the indicators, with positive values indicating uptrends and negative values for downtrends.
Visual Table Display: Displays results in a color-coded table (green for uptrend, red for downtrend, yellow for neutral) with a strength score for each timeframe, helping traders quickly assess market conditions.
How It Works
This script calculates the overall trend and its strength for each selected timeframe by analyzing six widely-used technical indicators:
Moving Averages (MA): The script uses a Fast and a Slow Moving Average. When the Fast MA crosses above the Slow MA, it indicates an uptrend. When the Fast MA crosses below, it signals a downtrend.
Relative Strength Index (RSI): The RSI is used to assess momentum. An RSI value above 50 suggests bullish momentum, while a value below 50 suggests bearish momentum.
Moving Average Convergence Divergence (MACD): MACD measures momentum and trend direction. When the MACD line crosses above the signal line, it signals bullish momentum; when it crosses below, it signals bearish momentum.
Bollinger Bands: These measure price volatility. When the price is above the middle Bollinger Band, the script considers the trend to be bullish, and when it's below, bearish.
Directional Movement Index (DMI): The DMI compares positive directional movement (DI+) and negative directional movement (DI-). A stronger DI+ over DI- signals an uptrend and vice versa.
Parabolic SAR: This indicator is used for determining potential trend reversals and setting stop-loss levels. If the price is above the Parabolic SAR, it indicates an uptrend, and if below, a downtrend.
Trend Strength Calculation
The script calculates a trend strength score for each timeframe:
Each indicator adds or subtracts 1 to the score based on whether it aligns with an uptrend or a downtrend.
A score of 6 indicates a Strong Uptrend, with all indicators aligned bullishly.
A score of -6 indicates a Strong Downtrend, with all indicators aligned bearishly.
Intermediate scores (e.g., 2 or -2) indicate Weak Uptrend or Weak Downtrend, suggesting that not all indicators are in agreement.
A score between 1 and -1 indicates a Neutral trend, suggesting uncertainty in the market.
How to Use
Assess Trend Direction and Strength: The table provides an easy-to-read summary of the trend and its strength on different timeframes. Look for timeframes where the strength is high (either 6 for a strong uptrend or -6 for a strong downtrend) to confirm the market’s overall direction.
Use in Conjunction with Other Strategies: This indicator is designed to provide a comprehensive view of the market. Traders should combine it with other strategies, such as price action analysis or candlestick patterns, to further confirm their trades.
Trend Reversal or Continuation: A weak trend (e.g., a strength of 2 or -2) could signal a possible reversal or a trend that has lost momentum. Strong trends (with a strength of 6 or -6) indicate higher confidence in trend continuation.
Multiple Timeframe Confirmation: Look for alignment across multiple timeframes to confirm the strength and direction of the trend before entering trades. For example, if M15, M30, and H1 are all showing a strong uptrend, it suggests a higher probability of the trend continuing.
Customization Options
- Adjustable Indicators: Users can modify the length and parameters of the Moving Averages, RSI, MACD, Bollinger Bands, DMI, and Parabolic SAR to suit their trading style.
- Flexible Timeframes: You can toggle between different timeframes (M15, M30, H1, H4, D1) to focus on the intervals most relevant to your strategy.
Ideal For
- Traders looking for a detailed, multi-timeframe trend analysis tool for XAUUSD.
- Traders who rely on trend-following strategies and need confirmation across multiple timeframes.
- Those who prefer a multi-indicator approach to avoid false signals and improve the accuracy of their trades.
Disclaimer
This indicator is for informational and educational purposes only. It is recommended to combine this with proper risk management strategies and your own analysis. Past performance does not guarantee future results. Always perform your own due diligence before making trading decisions.
LiquidityFlow Dominance+Alerts (btc.d, T3, Stables)LiquidityFlow Dominance+Alerts: Overview & Usage Guide
Overview
The LiquidityFlow Dominance+Alerts indicator provides a dynamic view of liquidity flow across Bitcoin, Altcoins, and Stablecoins, helping track liquidity shifts and identify market sentiment. By integrating moving averages, custom alerts, and thresholds for extreme outliers, this indicator helps to anticipate bullish and bearish shifts in liquidity and alert market tops and bottoms.
Key features include:
1. Liquidity Flow Monitoring : Track liquidity flow across Bitcoin (BTC), Altcoins (TOTAL3), and Stablecoins (USDT, USDC, DAI).
2. Custom Alerts : Set alerts for key liquidity shifts and extreme conditions in Stablecoin dominance, both with static and moving average (MA)-based calculations.
3. Moving Averages : Use Simple, Exponential, or Weighted Moving Averages to smooth out market data for more reliable signals.
4. Outlier Detection : Identify potential tops and bottoms using thresholds for Stablecoin dominance, with alerts for extreme movements.
Functionality
Data Inputs and Key Metrics
- Symbols Monitored:
- Bitcoin Dominance (BTC.D)
- Altcoin Market Cap (TOTAL3)
- Stablecoins (USDT.D, USDC.D, DAI.D)
- Liquidity Flow Conditions:
- Track percentage changes in dominance across sectors to detect liquidity flow into Bitcoin, Altcoins, or Stablecoins.
- Custom Metrics:
- Liquidity Flow Index: BTC Dominance minus Stablecoin Dominance.
- Liquidity Flow Ratio: BTC Dominance divided by the combined dominance of Stablecoins and Altcoins.
Moving Average Integration
- Select from SMA, EMA, or WMA to apply moving averages to the dominance metrics. Moving averages help smooth out short-term volatility and provide more consistent signals.
- Moving averages are applied to each sector (BTC, Altcoins, and Stablecoins) and compared to their previous period values to determine shifts in liquidity.
Alerts and Thresholds
- % Change Lookback Period: Adjust the lookback period to align with the timeframe of your chart. Shorter timeframes may require a lower lookback period, while higher timeframes may benefit from longer periods.
- Stables Bull/Bear % for Alerts: Set a threshold for when Stablecoin dominance becomes a bullish or bearish signal relative to BTC and Altcoins. A higher threshold may be used in volatile markets to filter out noise.
- Extreme Outliers Detection: Use the **Stables Up/Down Extreme Threshold** to identify potential market tops or bottoms when Stablecoin dominance deviates significantly from historical trends. The **Extreme Lookback Period** controls the time window for detecting these anomalies.
How to Use the Indicator
Adjusting the % Change Lookback Period
- The `% Change Lookback Period` should be adjusted based on your chart’s timeframe. For example, a shorter period (e.g., 7) works well for intraday charts, while longer periods (e.g., 14) might be more suitable for daily or weekly charts.
Setting Thresholds for Alerts
- Stables Bull/Bear % for Alerts: Adjust this setting to define when Stablecoin dominance triggers bullish or bearish alerts. A value like 1% could be a good starting point for most market conditions but can be fine-tuned based on volatility.
- Extreme Lookback Period: Define the lookback period for detecting extreme moves in Stablecoin dominance. This will help identify major tops and bottoms in the market. For shorter-term trades, consider using a shorter extreme lookback (e.g., 7-10 periods).
Alerts for Liquidity Shifts
- The indicator supports alerts for key liquidity shifts, which are useful for staying ahead of market movements. Alerts can be set to notify you when liquidity moves into:
- Bitcoin: Indicating a potential bullish trend for Bitcoin.
- Altcoins: Signaling altcoins are bullish.
- Stablecoins: Suggesting a risk-off environment or market correction.
Extreme Alerts for Stables
- Extreme Up/Down Alerts: These are triggered when Stablecoin dominance crosses extreme thresholds. For example, if Stablecoin dominance rises more than 14% over a set period, it could signal a market top, while a significant drop could indicate a market bottom.
Moving Average Calculations
- In addition to static percentage changes, moving averages can be applied to smooth out dominance values. The type and length of the moving average can be customized:
- SMA (Simple Moving Average): Best for smoothing out volatility in a linear way.
- EMA (Exponential Moving Average): More responsive to recent data, making it useful in faster markets.
- WMA (Weighted Moving Average): Emphasizes more recent data, but less reactive than the EMA.
Additional Usage Tips:
- Background Colors: The indicator visually highlights the dominant liquidity flow:
- Orange: Liquidity is shifting toward Bitcoin.
- Aqua: Liquidity is flowing into Altcoins.
- Red: Liquidity is moving into Stablecoins.
TPS Short Strategy by Larry ConnersThe TPS Short strategy aims to capitalize on extreme overbought conditions in an ETF by employing a scaling-in approach when certain technical indicators signal potential reversals. The strategy is designed to short the ETF when it is deemed overextended, based on the Relative Strength Index (RSI) and moving averages.
Components:
200-Day Simple Moving Average (SMA):
Purpose: Acts as a long-term trend filter. The ETF must be below its 200-day SMA to be eligible for shorting.
Rationale: The 200-day SMA is widely used to gauge the long-term trend of a security. When the price is below this moving average, it is often considered to be in a downtrend (Tushar S. Chande & Stanley Kroll, "The New Technical Trader: Boost Your Profit by Plugging Into the Latest Indicators").
2-Period RSI:
Purpose: Measures the speed and change of price movements to identify overbought conditions.
Criteria: Short 10% of the position when the 2-period RSI is above 75 for two consecutive days.
Rationale: A high RSI value (above 75) indicates that the ETF may be overbought, which could precede a price reversal (J. Welles Wilder, "New Concepts in Technical Trading Systems").
Scaling-In Mechanism:
Purpose: Gradually increase the short position as the ETF price rises beyond previous entry points.
Scaling Strategy:
20% more when the price is higher than the first entry.
30% more when the price is higher than the second entry.
40% more when the price is higher than the third entry.
Rationale: This incremental approach allows for an increased position size in a worsening trend, potentially increasing profitability if the trend continues to align with the strategy’s premise (Marty Schwartz, "Pit Bull: Lessons from Wall Street's Champion Day Trader").
Exit Conditions:
Criteria: Close all positions when the 2-period RSI drops below 30 or the 10-day SMA crosses above the 30-day SMA.
Rationale: A low RSI value (below 30) suggests that the ETF may be oversold and could be poised for a rebound, while the SMA crossover indicates a potential change in the trend (Martin J. Pring, "Technical Analysis Explained").
Risks and Considerations:
Market Risk:
The strategy assumes that the ETF will continue to decline once shorted. However, markets can be unpredictable, and price movements might not align with the strategy's expectations, especially in a volatile market (Nassim Nicholas Taleb, "The Black Swan: The Impact of the Highly Improbable").
Scaling Risks:
Scaling into a position as the price increases may increase exposure to adverse price movements. This method can amplify losses if the market moves against the position significantly before any reversal occurs.
Liquidity Risk:
Depending on the ETF’s liquidity, executing large trades in increments might affect the price and increase trading costs. It is crucial to ensure that the ETF has sufficient liquidity to handle large trades without significant slippage (James Altucher, "Trade Like a Hedge Fund").
Execution Risk:
The strategy relies on timely execution of trades based on specific conditions. Delays or errors in order execution can impact performance, especially in fast-moving markets.
Technical Indicator Limitations:
Technical indicators like RSI and SMA are based on historical data and may not always predict future price movements accurately. They can sometimes produce false signals, leading to potential losses if used in isolation (John Murphy, "Technical Analysis of the Financial Markets").
Conclusion
The TPS Short strategy utilizes a combination of long-term trend filtering, overbought conditions, and incremental shorting to potentially profit from price reversals. While the strategy has a structured approach and leverages well-known technical indicators, it is essential to be aware of the inherent risks, including market volatility, liquidity issues, and potential limitations of technical indicators. As with any trading strategy, thorough backtesting and risk management are crucial to its successful implementation.
Custom Date CVDThis indicator allows setting a custom date for the beginning of cumulative volume delta calculations.
Why is it important? CVD shows aggressiveness of buyers and sellers. And in order for a bull run to sustain you need aggressive buyers hitting the ask. If the price goes up, but CVD goes down - unlikely this bull trend will last long.
You might want to choose a recent top or bottom as the start point and check whether the aggressiveness of market participants corresponds to the price movement since that peak. For example on the chart above we can see that the price was going up and down, but the aggressiveness clearly points down. Does it mean that we will have a long bear market? No. It means that until the aggressiveness starts pointing up we should not expect a bull market. It might happen tomorrow, or might happen in a month. Nobody knows. But until it starts happening - don't expect the real bull.
Additionally, candles where the aggressiveness went the opposite direction from the price are marked with a blue dot above them.
Note: the smaller the custom time frame of the indicator - the more correct the results are. However, the drawback is that shorter the lookback period will be. The actual length will depend on your subscription level and the number of subcandles of the selected instrument.
ICT Intraday Timeline [neo.|]ICT Intraday Timeline is a script that aims to cleanly display key times that the "Inner Circle Trader" often refers to during the day on a separate pane in your Tradingview chart. While using it, you can clearly see the time it is currently in New York time, as well as your own through Tradingview as usual, as well as relevant times such as the lunch times, Silver Bullet times, and Asian range time.
By using this indicator it is simpler to consider what every time is doing and the effect it has on your current bias, for example: you may want to look at the 8:30 am open which is where news usually comes out, if not you can use 9:30 am for formulating trades. The AM SB is a time for when the "Silver Bullet (ICT)" setup can be found and executed, as it refines a specific range and targets inefficiencies and allows liquidity to form for which it comes back for, meaning it may be a better time for you to enter a trade, these are just examples of what you can look for, and how considering time can help you come up with and refine trade ideas.
Other times which are included are the:
Asia Range: You can mark out the highs and lows which occur during this time to use as liquidity later.
Midnight Open: On equities price will often interact with the midnight opening price, meaning it is an important time to consider.
London Open SB and Premarket SB: As mentioned previously you can find the "Silver Bullet" setup in here.
NY Lunch & London Lunch: Lunch times usually mean less volume therefore you may see less probable trades at this time.
AM SB and PM SB: Once again, times where you can potentially find more probable trades.
You can also easily customize any of the colors such as the SB (Silver Bullet) times, London lunch and NY Lunch times, or the Asia range or line colors to your preference and individual chart style.
Uptrick: RSI Histogram
1. **Introduction to the RSI and Moving Averages**
2. **Detailed Breakdown of the Uptrick: RSI Histogram**
3. **Calculation and Formula**
4. **Visual Representation**
5. **Customization and User Settings**
6. **Trading Strategies and Applications**
7. **Risk Management**
8. **Case Studies and Examples**
9. **Comparison with Other Indicators**
10. **Advanced Usage and Tips**
---
## 1. Introduction to the RSI and Moving Averages
### **1.1 Relative Strength Index (RSI)**
The Relative Strength Index (RSI) is a momentum oscillator developed by J. Welles Wilder and introduced in his 1978 book "New Concepts in Technical Trading Systems." It is widely used in technical analysis to measure the speed and change of price movements.
**Purpose of RSI:**
- **Identify Overbought/Oversold Conditions:** RSI values range from 0 to 100. Traditionally, values above 70 are considered overbought, while values below 30 are considered oversold. These thresholds help traders identify potential reversal points in the market.
- **Trend Strength Measurement:** RSI also indicates the strength of a trend. High RSI values suggest strong bullish momentum, while low values indicate bearish momentum.
**Calculation of RSI:**
1. **Calculate the Average Gain and Loss:** Over a specified period (e.g., 14 days), calculate the average gain and loss.
2. **Compute the Relative Strength (RS):** RS is the ratio of average gain to average loss.
3. **RSI Formula:** RSI = 100 - (100 / (1 + RS))
### **1.2 Moving Averages (MA)**
Moving Averages are used to smooth out price data and identify trends by filtering out short-term fluctuations. Two common types are:
**Simple Moving Average (SMA):** The average of prices over a specified number of periods.
**Exponential Moving Average (EMA):** A type of moving average that gives more weight to recent prices, making it more responsive to recent price changes.
**Smoothed Moving Average (SMA):** Used to reduce the impact of volatility and provide a clearer view of the underlying trend. The RMA, or Running Moving Average, used in the USH script is similar to an EMA but based on the average of RSI values.
## 2. Detailed Breakdown of the Uptrick: RSI Histogram
### **2.1 Indicator Overview**
The Uptrick: RSI Histogram (USH) is a technical analysis tool that combines the RSI with a moving average to create a histogram that reflects momentum and trend strength.
**Key Components:**
- **RSI Calculation:** Determines the relative strength of price movements.
- **Moving Average Application:** Smooths the RSI values to provide a clearer trend indication.
- **Histogram Plotting:** Visualizes the deviation of the smoothed RSI from a neutral level.
### **2.2 Indicator Purpose**
The primary purpose of the USH is to provide a clear visual representation of the market's momentum and trend strength. It helps traders identify:
- **Bullish and Bearish Trends:** By showing how far the smoothed RSI is from the neutral 50 level.
- **Potential Reversal Points:** By highlighting changes in momentum.
### **2.3 Indicator Design**
**RSI Moving Average (RSI MA):** The RSI MA is a smoothed version of the RSI, calculated using a running moving average. This smooths out short-term fluctuations and provides a clearer indication of the underlying trend.
**Histogram Calculation:**
- **Neutral Level:** The histogram is plotted relative to the neutral level of 50. This level represents a balanced market where neither bulls nor bears have dominance.
- **Histogram Values:** The histogram bars show the difference between the RSI MA and the neutral level. Positive values indicate bullish momentum, while negative values indicate bearish momentum.
## 3. Calculation and Formula
### **3.1 RSI Calculation**
The RSI calculation involves:
1. **Average Gain and Loss:** Calculated over the specified length (e.g., 14 periods).
2. **Relative Strength (RS):** RS = Average Gain / Average Loss.
3. **RSI Formula:** RSI = 100 - (100 / (1 + RS)).
### **3.2 Moving Average Calculation**
For the USH indicator, the RSI is smoothed using a running moving average (RMA). The RMA formula is similar to that of the EMA but is based on averaging RSI values over the specified length.
### **3.3 Histogram Calculation**
The histogram value is calculated as:
- **Histogram Value = RSI MA - 50**
**Plotting the Histogram:**
- **Positive Histogram Values:** Indicate that the RSI MA is above the neutral level, suggesting bullish momentum.
- **Negative Histogram Values:** Indicate that the RSI MA is below the neutral level, suggesting bearish momentum.
## 4. Visual Representation
### **4.1 Histogram Bars**
The histogram is plotted as bars on the chart:
- **Bullish Bars:** Colored green when the RSI MA is above 50.
- **Bearish Bars:** Colored red when the RSI MA is below 50.
### **4.2 Customization Options**
Traders can customize:
- **RSI Length:** Adjust the length of the RSI calculation to match their trading style.
- **Bull and Bear Colors:** Choose colors for histogram bars to enhance visual clarity.
### **4.3 Interpretation**
**Bullish Signal:** A histogram bar that moves from red to green indicates a potential shift to a bullish trend.
**Bearish Signal:** A histogram bar that moves from green to red indicates a potential shift to a bearish trend.
## 5. Customization and User Settings
### **5.1 Adjusting RSI Length**
The length parameter determines the number of periods over which the RSI is calculated and smoothed. Shorter lengths make the RSI more sensitive to price changes, while longer lengths provide a smoother view of trends.
### **5.2 Color Settings**
Traders can adjust:
- **Bull Color:** Color of histogram bars indicating bullish momentum.
- **Bear Color:** Color of histogram bars indicating bearish momentum.
**Customization Benefits:**
- **Visual Clarity:** Traders can choose colors that stand out against their chart’s background.
- **Personal Preference:** Adjust settings to match individual trading styles and preferences.
## 6. Trading Strategies and Applications
### **6.1 Trend Following**
**Identifying Entry Points:**
- **Bullish Entry:** When the histogram changes from red to green, it signals a potential entry point for long positions.
- **Bearish Entry:** When the histogram changes from green to red, it signals a potential entry point for short positions.
**Trend Confirmation:** The histogram helps confirm the strength of a trend. Strong, consistent green bars indicate robust bullish momentum, while strong, consistent red bars indicate robust bearish momentum.
### **6.2 Swing Trading**
**Momentum Analysis:**
- **Entry Signals:** Look for significant shifts in the histogram to time entries. A shift from bearish to bullish (red to green) indicates potential for upward movement.
- **Exit Signals:** A shift from bullish to bearish (green to red) suggests a potential weakening of the trend, signaling an exit or reversal point.
### **6.3 Range Trading**
**Market Conditions:**
- **Consolidation:** The histogram close to zero suggests a range-bound market. Traders can use this information to identify support and resistance levels.
- **Breakout Potential:** A significant move away from the neutral level may indicate a potential breakout from the range.
### **6.4 Risk Management**
**Stop-Loss Placement:**
- **Bullish Positions:** Place stop-loss orders below recent support levels when the histogram is green.
- **Bearish Positions:** Place stop-loss orders above recent resistance levels when the histogram is red.
**Position Sizing:** Adjust position sizes based on the strength of the histogram signals. Strong trends (indicated by larger histogram bars) may warrant larger positions, while weaker signals suggest smaller positions.
## 7. Risk Management
### **7.1 Importance of Risk Management**
Effective risk management is crucial for long-term trading success. It involves protecting capital, managing losses, and optimizing trade setups.
### **7.2 Using USH for Risk Management**
**Stop-Loss and Take-Profit Levels:**
- **Stop-Loss Orders:** Use the histogram to set stop-loss levels based on trend strength. For instance, place stops below support levels in bullish trends and above resistance levels in bearish trends.
- **Take-Profit Targets:** Adjust take-profit levels based on histogram changes. For example, lock in profits as the histogram starts to shift from green to red.
**Position Sizing:**
- **Trend Strength:** Scale position sizes based on the strength of histogram signals. Larger histogram bars indicate stronger trends, which may justify larger positions.
- **Volatility:** Consider market volatility and adjust position sizes to mitigate risk.
## 8. Case Studies and Examples
### **8.1 Example 1: Bullish Trend**
**Scenario:** A trader notices a transition from red to green histogram bars.
**Analysis:**
- **Entry Point:** The transition indicates a potential bullish trend. The trader decides to enter a long position.
- **Stop-Loss:** Set stop-loss below recent support levels.
- **Take-Profit:** Consider taking profits as the histogram moves back towards zero or turns red.
**Outcome:** The bullish trend continues, and the histogram remains green, providing a profitable trade setup.
### **8.2 Example 2: Bearish Trend**
**Scenario:** A trader observes a transition from green to red histogram bars.
**Analysis:**
- **Entry Point:** The transition suggests a potential
bearish trend. The trader decides to enter a short position.
- **Stop-Loss:** Set stop-loss above recent resistance levels.
- **Take-Profit:** Consider taking profits as the histogram approaches zero or shifts to green.
**Outcome:** The bearish trend continues, and the histogram remains red, resulting in a successful trade.
## 9. Comparison with Other Indicators
### **9.1 RSI vs. USH**
**RSI:** Measures momentum and identifies overbought/oversold conditions.
**USH:** Builds on RSI by incorporating a moving average and histogram to provide a clearer view of trend strength and momentum.
### **9.2 RSI vs. MACD**
**MACD (Moving Average Convergence Divergence):** A trend-following momentum indicator that uses moving averages to identify changes in trend direction.
**Comparison:**
- **USH:** Provides a smoothed RSI perspective and visual histogram for trend strength.
- **MACD:** Offers signals based on the convergence and divergence of moving averages.
### **9.3 RSI vs. Stochastic Oscillator**
**Stochastic Oscillator:** Measures the level of the closing price relative to the high-low range over a specified period.
**Comparison:**
- **USH:** Focuses on smoothed RSI values and histogram representation.
- **Stochastic Oscillator:** Provides overbought/oversold signals and potential reversals based on price levels.
## 10. Advanced Usage and Tips
### **10.1 Combining Indicators**
**Multi-Indicator Strategies:** Combine the USH with other technical indicators (e.g., Moving Averages, Bollinger Bands) for a comprehensive trading strategy.
**Confirmation Signals:** Use the USH to confirm signals from other indicators. For instance, a bullish histogram combined with a moving average crossover may provide a stronger buy signal.
### **10.2 Customization Tips**
**Adjust RSI Length:** Experiment with different RSI lengths to match various market conditions and trading styles.
**Color Preferences:** Choose histogram colors that enhance visibility and align with personal preferences.
### **10.3 Continuous Learning**
**Backtesting:** Regularly backtest the USH with historical data to refine strategies and improve accuracy.
**Education:** Stay updated with trading education and adapt strategies based on market changes and personal experiences.
Uptrick: FVG Market Zones**Uptrick: FVG Market Zones**
---
### Introduction
**Uptrick: FVG Market Zones** is a cutting-edge technical analysis tool designed to identify and visualize Fair Value Gaps (FVGs) within financial markets. This indicator focuses on pinpointing critical price levels where significant gaps occur, which can act as potential support and resistance zones. By integrating advanced volatility analysis and user-configurable parameters, the **Uptrick: FVG Market Zones** provides traders with a robust framework for understanding market dynamics and making informed trading decisions.
### Purpose and Functionality
The primary purpose of the **Uptrick: FVG Market Zones** indicator is to detect and highlight Fair Value Gaps, which are areas on a price chart where there is a significant price movement without any trading activity in between. These gaps can provide critical insights into market behavior, as they often indicate areas where the market has not fully accounted for the supply and demand dynamics. Traders use these zones to anticipate potential reversals, breakouts, or consolidations, making this tool highly valuable for both short-term and long-term trading strategies.
### Unique Features and Originality
The **Uptrick: FVG Market Zones** indicator is distinguished by its focus on FVGs and its ability to integrate this concept into a broader market analysis framework. Unlike other indicators that may offer generalized support and resistance levels, this tool specifically identifies and visualizes gaps based on volatility-adjusted criteria. This precision allows traders to focus on the most relevant market zones, improving their ability to anticipate market movements.
One of the standout features of this indicator is its user-configurable settings, which provide a high degree of customization. This flexibility ensures that traders can tailor the indicator to suit their specific trading style and the particular market they are analyzing. Additionally, the indicator's visualization capabilities are enhanced with customizable colors and gap-filling options, making it easier for traders to interpret and act on the information presented.
### Inputs and Configurations
**Uptrick: FVG Market Zones** comes with several user inputs that allow traders to customize the indicator's behavior and appearance. Each input plays a crucial role in determining how the indicator identifies and visualizes FVGs on the chart. Here’s a detailed breakdown of each input:
1. **FVG Analysis Period (fvgPeriod):**
- **Description:** This input determines the period over which the indicator analyzes the chart for identifying FVGs. By adjusting this value, traders can control how far back in time the indicator looks to detect significant gaps.
- **Default Value:** 25
- **Purpose:** A shorter period may focus on more recent market activity, making the indicator more sensitive to recent price movements. In contrast, a longer period allows the indicator to identify gaps that have remained unfilled for an extended time, potentially acting as stronger support or resistance levels.
2. **Analysis Mode (mode):**
- **Description:** The Analysis Mode input allows traders to choose between different methods of analyzing the chart for FVGs.
- **Options:** "Recent Gaps" and "Extended View"
- **Default Option:** "Recent Gaps"
- **Purpose:**
- **Recent Gaps:** Focuses on the latest significant gaps, providing traders with up-to-date information on the most relevant market zones.
- **Extended View:** Considers a broader range of gap patterns, which can be useful in markets where historical gaps may still influence current price action.
3. **Volatility Sensitivity (volatilityFactor):**
- **Description:** This input adjusts the sensitivity of the indicator to market volatility. It is used in calculating the threshold for identifying FVGs.
- **Default Value:** 0.3
- **Step Size:** 0.1
- **Purpose:** A higher sensitivity will cause the indicator to detect smaller gaps, which might be more frequent but less significant. Lower sensitivity focuses on larger, more impactful gaps, which are less frequent but potentially more powerful in predicting market behavior.
4. **Highlight Market Gaps (showGaps):**
- **Description:** A boolean input that determines whether the identified FVGs should be highlighted on the chart.
- **Default Value:** True
- **Purpose:** This input allows traders to toggle the visualization of FVGs. When enabled, the indicator highlights gaps using colored boxes, making them visually prominent on the chart.
5. **Bullish Highlight Color (bullColor):**
- **Description:** Sets the color used to highlight bullish FVGs (gaps that may indicate support).
- **Default Value:** #00FF7F (a shade of green)
- **Purpose:** The color choice is crucial for quickly distinguishing bullish zones from bearish ones. Green is typically associated with upward price movement, making it intuitive for traders to identify potential support areas.
6. **Bearish Highlight Color (bearColor):**
- **Description:** Sets the color used to highlight bearish FVGs (gaps that may indicate resistance).
- **Default Value:** #FF4500 (a shade of red)
- **Purpose:** Red is commonly associated with downward price movement, making it easy for traders to identify potential resistance areas. This color coding helps in quickly assessing the chart.
7. **Fill Gap Areas (fillGaps):**
- **Description:** A boolean input that determines whether the FVGs should be filled with a color on the chart.
- **Default Value:** True
- **Purpose:** Filling the gap areas provides a more solid visual cue for traders. It enhances the visibility of the gaps, making it easier to spot these zones during fast-paced trading sessions.
8. **Hidden Color (hidden):**
- **Description:** A color input that is used when certain elements should be hidden from the chart.
- **Default Value:** color.rgb(0,0,0,100) (a semi-transparent black)
- **Purpose:** This input is useful for controlling the visibility of certain plots or elements on the chart, ensuring that the indicator remains clean and uncluttered.
### Market Gap Detection
The core functionality of the **Uptrick: FVG Market Zones** indicator lies in its ability to detect Fair Value Gaps. These gaps occur when the price makes a significant jump from one level to another without any trading activity in between. The indicator uses a combination of price action analysis and volatility thresholds to identify these gaps.
- **Volatility Measurement:** The indicator begins by measuring market volatility using the Average True Range (ATR). This volatility measurement is then adjusted by the user-defined sensitivity factor, which determines the threshold for identifying significant gaps.
- **Gap Identification:** The indicator checks for instances where the current low is higher than the high two bars ago (bullish gap) or where the current high is lower than the low two bars ago (bearish gap). These conditions signify a potential FVG.
- **Gap Storage and Management:** Once a gap is identified, it is stored in an array. The indicator also manages the size of these arrays based on the selected analysis mode, ensuring that only the most relevant gaps are considered in the analysis.
### Visualization
Visualization is a key component of the **Uptrick: FVG Market Zones** indicator. By providing clear and customizable visual cues, the indicator ensures that traders can quickly and easily interpret the information it provides.
- **Gap Highlighting:** When enabled, the indicator highlights the identified FVGs on the chart using colored boxes. Bullish gaps are highlighted in green, while bearish gaps are highlighted in red. This color coding helps traders instantly recognize potential support and resistance zones.
- **Gap Filling:** The indicator can also fill the identified gaps with a semi-transparent color. This option enhances the visibility of the gaps, making them more prominent on the chart. Filled gaps are particularly useful for traders who want to keep track of these zones over multiple trading sessions.
- **Gap Averages:** The indicator calculates the average level of the identified gaps and plots these averages as lines on the chart. These lines represent the general area of support or resistance based on the detected gaps, providing traders with a reference point for setting their stop losses or profit targets.
- **Text Labels:** The indicator also labels each FVG with the text "FVG" inside the highlighted area. This feature ensures that traders can easily identify these zones even in charts with dense price action.
### Practical Applications
The **Uptrick: FVG Market Zones** indicator is versatile and can be applied to a wide range of trading strategies across different markets and timeframes. Here are a few examples of how this indicator can be used in practice:
1. **Support and Resistance Trading:**
- Traders can use the identified FVGs as dynamic support and resistance levels. By placing their trades based on these levels, they can take advantage of potential reversals or continuations at key market zones.
2. **Gap Filling Strategy:**
- Some traders focus on the concept of gap filling, where the market eventually returns to "fill" the gap created by rapid price movements. The **Uptrick: FVG Market Zones** indicator can
help identify such gaps and anticipate when the market might return to these levels.
3. **Breakout Trading:**
- The indicator can be used to identify breakouts from significant gaps. When the price moves beyond the identified FVGs, it may signal a strong trend continuation, providing an opportunity for breakout traders.
4. **Reversal Trading:**
- By monitoring the signals generated by the indicator, traders can identify potential market reversals. A sell signal after a prolonged uptrend or a buy signal after a downtrend may indicate a reversal, allowing traders to position themselves accordingly.
5. **Risk Management:**
- The average levels of the FVGs can be used to set stop-loss and take-profit levels. By aligning these levels with the FVG zones, traders can improve their risk management practices and enhance their trading discipline.
### Customization and Flexibility
One of the standout features of the **Uptrick: FVG Market Zones** indicator is its high level of customization. Traders can adjust various parameters to tailor the indicator to their specific needs and preferences.
- **Customizable Colors:** The indicator allows traders to choose their preferred colors for highlighting bullish and bearish gaps. This flexibility ensures that the indicator can be integrated seamlessly into any trading setup, regardless of the trader's color scheme preferences.
- **Adjustable Periods and Sensitivity:** By allowing traders to adjust the analysis period and volatility sensitivity, the indicator can be fine-tuned to suit different market conditions. For example, a trader might use a shorter analysis period and higher sensitivity in a volatile market, while opting for a longer period and lower sensitivity in a more stable market.
- **Toggling Visual Elements:** Traders can choose to enable or disable various visual elements of the indicator, such as gap highlighting, gap filling, and text labels. This level of control allows traders to declutter their charts and focus on the information that is most relevant to their trading strategy.
### Advantages and Benefits
The **Uptrick: FVG Market Zones** indicator offers several key advantages that make it a valuable tool for traders:
1. **Precision:** By focusing on Fair Value Gaps, the indicator provides highly precise levels of support and resistance, which are often more reliable than traditional horizontal levels.
2. **Clarity:** The clear visual representation of FVGs, along with the text labels and color coding, ensures that traders can quickly interpret the indicator's signals and incorporate them into their trading decisions.
3. **Adaptability:** The indicator's customizable settings allow it to be adapted to different markets, timeframes, and trading styles. Whether you are a day trader, swing trader, or long-term investor, this indicator can be tailored to meet your needs.
4. **Enhanced Decision-Making:** The trading signals generated by the indicator provide actionable insights that can help traders make more informed decisions. By aligning their trades with the identified FVG zones, traders can improve their chances of success.
5. **Risk Management:** The use of FVG zones as reference points for stop-loss and take-profit levels enhances risk management practices, helping traders protect their capital while maximizing their profit potential.
### Conclusion
The **Uptrick: FVG Market Zones** indicator is a powerful and versatile tool for traders seeking to enhance their market analysis and improve their trading outcomes. By focusing on Fair Value Gaps and providing a high level of customization, this indicator offers a unique blend of precision, clarity, and adaptability. Whether you are looking to identify key market zones, generate trading signals, or improve your risk management practices, the **Uptrick: FVG Market Zones** indicator is a valuable addition to any trader's toolkit.
With its innovative approach to market analysis and user-friendly design, **Uptrick: FVG Market Zones** stands out as an essential tool for traders who want to stay ahead of the market and make more informed trading decisions. Whether you are trading stocks, forex, commodities, or cryptocurrencies, this indicator provides the insights you need to navigate the markets with confidence and success.
Uptrick: Imbalance MA Trailing System
### **Overview**
The "Uptrick: Imbalance MA Trailing System" is a complex trading indicator designed to help traders identify potential bullish and bearish imbalances in the market, coupled with a trailing stop mechanism to manage trades. The indicator uses a combination of moving averages, Average True Range (ATR), and custom logic to detect trading signals and plot various levels on the chart to assist traders in making informed decisions.
### **Key Components and Functionality**
#### 1. **Inputs and Configuration**
- **Imbalance Filter (`imbalanceFilter`)**: This input sets the filter for detecting imbalances based on the difference between two price points. The value is a float and can be adjusted to fine-tune the sensitivity of imbalance detection. The default value is `0.0`, with a step size of `0.1`.
- **Moving Average Settings (`maLength1`, `maLength2`, `maColor1`, `maColor2`)**:
- `maLength1` and `maLength2` define the lengths of the two moving averages used in the indicator. By default, they are set to `50` and `200` periods, respectively.
- `maColor1` and `maColor2` specify the colors of these moving averages on the chart. The first MA is colored blue, and the second is red.
- **Take Profit and Stop Loss Settings (`displayTP`, `tpMultiplier`, `tpColor`, `displaySL`, `slMultiplier`, `slColor`)**:
- `displayTP` and `displaySL` are boolean inputs that control whether the TP and SL areas are displayed on the chart.
- `tpMultiplier` and `slMultiplier` are multipliers used to calculate the TP and SL levels relative to the detected imbalance level using the ATR value.
- `tpColor` and `slColor` define the colors of these areas. The TP area is green (with a transparency of 50), and the SL area is red (with a transparency of 50).
- **Trailing Stop Settings (`trailMultiplier`)**: This setting determines the multiplier used to calculate the trailing stop level based on the ATR value. The default multiplier is `2.5`.
- **Style Settings (`bullishColor`, `bearishColor`)**:
- `bullishColor` and `bearishColor` set the colors for bullish and bearish zones created when an imbalance is detected. The bullish zone is green, and the bearish zone is red.
- **Signal Label Size (`labelSizeOption`)**: The size of the signal labels displayed on the chart can be adjusted. The options include `Tiny`, `Small`, `Normal`, `Large`, and `Huge`. The selected size affects the visual prominence of the labels.
#### 2. **ATR Calculation (`atrValue`)**
- The ATR value is calculated using a period of 14, which is a standard setting for measuring market volatility. This value is used extensively throughout the indicator to calculate TP, SL, and trailing stop levels.
#### 3. **Imbalance Detection and Zone Creation**
- The indicator detects potential imbalances in the market by comparing certain price points, using a custom function (`imbalanceCondition`).
- **Bullish Imbalance Detection (`bullishSignal`)**:
- A bullish imbalance is detected when the low of three bars ago is higher than the high of one bar ago, and the current close is above the low of three bars ago.
- Additional conditions include checking that the current close is above the calculated average of the two moving averages (`ma1` and `ma2`), and that the imbalance exceeds the threshold set by the `imbalanceFilter`.
- **Bearish Imbalance Detection (`bearishSignal`)**:
- A bearish imbalance is detected under conditions where the low of one bar ago is higher than the high of three bars ago, and the current close is below the high of three bars ago.
- Like the bullish signal, the close must also be below the average of the two moving averages, and the imbalance must exceed the `imbalanceFilter` threshold.
- Upon detection of an imbalance (either bullish or bearish), the indicator creates a zone using `box.new` that highlights the price range of the imbalance. The box color corresponds to the bullish or bearish nature of the signal.
- The center of the imbalance range is marked with a dashed line, and a corresponding label (`🔴` for bearish and `🟢` for bullish) is placed on the chart to indicate the detected signal.
#### 4. **Take Profit and Stop Loss Calculation (`calculateTPSL`)**
- When an imbalance is detected, the indicator calculates potential TP and SL levels based on the ATR value and the respective multipliers.
- If the TP or SL areas are enabled, the indicator plots these areas as colored boxes on the chart.
- The function also tracks whether these levels are hit by subsequent price action, updating the status (`reached`) as appropriate.
#### 5. **Trailing Stop Logic (`applyTrailingStop`)**
- The trailing stop feature is a dynamic mechanism that adjusts the stop level as the price moves in the trader's favor.
- The trailing stop is calculated using the ATR value multiplied by the `trailMultiplier`.
- If the trailing stop is triggered (i.e., the price crosses the trailing stop level), the indicator marks the trade as stopped out.
#### 6. **Plotting and Visualization**
- The indicator plots the two moving averages on the chart with the specified colors and line width.
- If a trailing stop is active, it plots the trailing stop level on the chart, updating as the stop moves.
- The bar color changes based on the status of the current signal and whether the trailing stop or TP/SL levels have been hit.
### **Detailed Execution Flow**
1. **Initialization**: The indicator initializes several variables, including lines, boxes, and the current signal state. This setup ensures that the script can dynamically update these elements as new price data comes in.
2. **Moving Average Calculation**: The moving averages (`ma1` and `ma2`) are calculated using simple moving average (SMA) functions, which are foundational for many of the indicator's conditions.
3. **Imbalance Detection**: The script evaluates price action to detect potential bullish or bearish imbalances, applying filters based on the user-defined `imbalanceFilter`.
4. **Zone Creation and Labeling**: Upon detecting an imbalance, the script creates visual zones on the chart using the `box.new` function and labels the zones for easy identification.
5. **Take Profit and Stop Loss Logic**: The TP and SL areas are calculated and plotted if the relevant settings are enabled. The script continuously checks if these levels are reached as new bars form.
6. **Trailing Stop Calculation**: The script dynamically adjusts the trailing stop level based on the price movement and ATR value. The trailing stop helps lock in profits as the trade progresses.
7. **Plotting**: The moving averages, trailing stop levels, and bar colors are plotted on the chart, providing a visual representation of the indicator's signals and trade management levels.
8. **Final Checks and Updates**: The script concludes each bar's processing by updating the status of various elements, such as whether levels have been reached or if the trailing stop has been triggered.
### **Conclusion**
The "Uptrick: Imbalance MA Trailing System" is a highly versatile indicator designed for traders who want to identify market imbalances and manage their trades effectively using a combination of moving averages, ATR-based calculations, and custom logic. The indicator offers a wide range of customization options, allowing traders to adjust the sensitivity of imbalance detection, the size of the signal labels, and the visibility of various trade management levels (TP, SL, and trailing stop).
The combination of these features makes it a powerful tool for both novice and experienced traders, providing clear visual cues and robust trade management capabilities directly on the chart.
Three Anchored Moving Averages (VWAP / SMA / EMA)
This indicator allows users to anchor three types of moving averages (Simple Moving Average (SMA), Exponential Moving Average (EMA), and Volume Weighted Average Price (VWAP)) to specific points in time (anchor points)
Key Features:
Select from three Moving Average Types:
Simple Moving Average (SMA): Averages the closing prices over a specified period.
Exponential Moving Average (EMA): Gives more weight to recent prices, making it more responsive to new information.
Volume Weighted Average Price (VWAP): Averages the price weighted by volume, useful for understanding the average price at which the asset has traded over a period.
Up to Three Anchor Points:
Users can set up to three different anchor points to calculate the moving averages from specific dates and times. This allows for analysis of price action starting from significant points or specific events. For example, you can anchor to the low and high of a move to identify key levels or to points where the price takes off from a previous anchored MA.
Customisable Sentiment Options:
Each anchor point can be associated with a sentiment input (Auto, Bull, Bear, None), which influences if the MAs are displayed as lines or zones/bands:
Auto: Automatically determines the sentiment based on whether anchor points are on pivot highs and lows. If anchored to a pivot high, the system will assume a bearish sentiment and display a red band or zone between the MA OHLC4 and High. Anchoring to a pivot low will display a green band (OHLC4 - Low).
Bull: Forces a bullish sentiment (Green Band - OHLC4 to Low)
Bear: Forces a bearish sentiment (Red Band - OHLC4 to High)
None: Ignores sentiment and displays a single line (OHLC4)
Chart Matching:
The indicator includes an option to display the moving averages only if the chart symbol matches a specified ticker. This feature ensures that the indicator is relevant to the specific asset being analysed.
How to Use the Indicator:
1. Set Anchor Points: When added to your chart, select three anchor points by point and click. If you only wish to anchor to a single point, click on that point three times and disable the other two in settings once the indicator is applied.
2. Select Moving Average Type: Choose between SMA, EMA, or VWAP using the dropdown menu. EMAs are the most responsive.
3. Enable/Disable Anchor Points: Use the checkboxes to enable or disable each anchor point.
4. Select Sentiment Type: Choose between Auto, Bull, Bear, or None.
5. Chart Matching: Optionally, specify a chart symbol to restrict the indicator's display to that particular asset.
6. Interpret the Plots: The indicator plots the high, mid, and low values of the selected moving average type from each anchor point. The fills between these plots help identify potential support and resistance zones. These should be used as points of interest for pullback reversals or potential continuation if the price breaks through.
Practical Applications:
Trend Analysis: Identify the overall trend direction from specific historical points.
Support and Resistance: Determine key dynamic support and resistance levels based on anchored moving averages.
Event-Based Analysis: Anchor the moving averages to significant events (e.g., earnings releases, economic data) to study their impact on price trends.
Multi Timeframe Analysis: Higher Timeframe Anchors can be used to identify longer term trend analysis. Switching to a lower timeframe for execution triggers at these points wont distort the MA levels as they are anchored to a specific point in time
Intraday or Swing Trading: trend analysis using anchor points can be used for any style of trading (Intraday / Swing / Invest). Use anchored levels as points of interest and wait for hints in price action to try and catch the next move.
Smart Money Concepts by WeloTradesThe "Smart Money Concepts by WeloTrades" indicator is designed to offer traders a comprehensive tool that integrates multiple advanced features to aid in market analysis. By combining order blocks, liquidity levels, fair value gaps, trendlines, and market structure analysis, the indicator provides a holistic approach to understanding market dynamics and making informed trading decisions.
Components and Their Integration:
Order Blocks and Breaker Blocks Detection
Functionality: Order blocks represent areas where significant buying or selling occurred, creating potential support or resistance zones. Breaker blocks signal potential reversals.
Integration: By detecting and visualizing these blocks, the indicator helps traders identify key levels where price might react, aiding in entry and exit decisions. The customizable settings allow traders to adjust the visibility and parameters to suit their specific trading strategy.
Liquidity Levels Analysis
Functionality: Liquidity levels indicate zones where significant price movements can occur due to the presence of large orders. These are areas where smart money might be executing trades.
Integration: By tracking these high-probability liquidity areas, traders can anticipate potential price movements. Customizable display limits and mitigation strategies ensure that the information is tailored to the trader’s needs, providing precise and actionable insights.
Fair Value Gaps (FVG)
Functionality: Fair value gaps highlight areas where there is an imbalance between buyers and sellers. These gaps often represent potential trading opportunities.
Integration: The ability to identify and analyze FVGs helps traders spot potential entries based on market inefficiencies. The touch and break detection functionalities provide further refinement, enhancing the precision of trading signals.
Trendlines
Functionality: Trendlines help in identifying the direction of the market and potential reversal points. The additional trendline adds a layer of confirmation for breaks or retests.
Integration: Automatically drawn trendlines assist traders in visualizing market trends and making decisions about potential entries and exits. The additional trendline for stronger confirmation reduces the risk of false signals, providing more reliable trading opportunities.
Market Structure Analysis
Functionality: Understanding market structure is crucial for identifying key support and resistance levels and overall market dynamics. This component displays internal, external, and composite market structures.
Integration: By automatically highlighting shifts in market structure, the indicator helps traders recognize important levels and potential changes in market direction. This analysis is critical for strategic planning and execution in trading.
Customizable Alerts
Functionality: Alerts ensure that traders do not miss significant market events, such as the formation or breach of order blocks, liquidity levels, and trendline interactions.
Integration: Customizable alerts enhance the user experience by providing timely notifications of key events. This feature ensures that traders can act quickly and efficiently, leveraging the insights provided by the indicator.
Interactive Visualization
Functionality: Customizable visual aspects of the indicator allow traders to tailor the display to their preferences and trading style.
Integration: This feature enhances user engagement and usability, making it easier for traders to interpret the data and make informed decisions. Personalization options like colors, styles, and display formats improve the overall effectiveness of the indicator.
How Components Work Together
Comprehensive Market Analysis
Each component of the indicator addresses a different aspect of market analysis. Order blocks and liquidity levels highlight potential support and resistance zones, while fair value gaps and trendlines provide additional context for potential entries and exits. Market structure analysis ties everything together by offering a broad view of market dynamics.
Synergistic Insights
The integration of multiple features allows for cross-validation of trading signals. For instance, an order block coinciding with a high-probability liquidity level and a fair value gap can provide a stronger signal than any of these features alone. This synergy enhances the reliability of the insights and trading signals generated by the indicator.
Enhanced Decision Making
By combining these advanced features into a single tool, traders are equipped with a powerful resource for making informed decisions. The customizable alerts and interactive visualization further support this by ensuring that traders can act quickly on the insights provided.
Order Blocks ( OB) & Breaker Blocks (BB) Visuals:
📝 OB Input Settings
📊 Timeframe #1
TF #1🕑: Enable or disable Timeframe 1.
What it is: A boolean input to toggle the use of the first timeframe.
What it does: Enables or disables Timeframe 1 for the OB settings.
How to use it: Check or uncheck the box to enable or disable.
📊 Timeframe 1 Selection
Timeframe #1🕑: Select the timeframe for Timeframe 1.
What it is: A dropdown to select the desired timeframe.
What it does: Sets the timeframe for Timeframe 1.
How to use it: Choose a timeframe from the dropdown list.
📊 Timeframe #2
TF #2🕑: Enable or disable Timeframe 2.
What it is: A boolean input to toggle the use of the second timeframe.
What it does: Enables or disables Timeframe 2 for the OB settings.
How to use it: Check or uncheck the box to enable or disable.
📊 Timeframe 2 Selection
Timeframe #2🕑: Select the timeframe for Timeframe 2.
What it is: A dropdown to select the desired timeframe.
What it does: Sets the timeframe for Timeframe 2.
How to use it: Choose a timeframe from the dropdown list.
Additional Info: Higher TF Chart & Lower TF Setting / Lower TF Chart & Higher TF Setting.
📏 Show OBs
OB (Length)📏: Toggle the display of Order Blocks.
What it is: A boolean input to enable or disable the display of Order Blocks.
What it does: Shows or hides Order Blocks based on the selected swing length.
How to use it: Check or uncheck the box to enable or disable.
📏 Swing Length Option
Swing Length Option: Select the swing length option.
What it is: A dropdown to choose between SHORT, MID, LONG, or CUSTOM.
What it does: Sets the length of swings for Order Blocks.
How to use it: Choose an option from the dropdown.
Additional Info: Default lengths are SHORT=10, MID=28, LONG=50.
🔧 Custom Swing Length
🔧custom: Specify a custom swing length.
What it is: An integer input for setting a custom swing length.
What it does: Overrides the default swing lengths if set to CUSTOM.
How to use it: Enter a custom integer value (only shown when CUSTOM is selected).
📛 Show BBs
BB (Method)📛: Toggle the display of Breaker Blocks.
What it is: A boolean input to enable or disable the display of Breaker Blocks.
What it does: Shows or hides Breaker Blocks.
How to use it: Check or uncheck the box to enable or disable.
📛 OB End Method
OB End Method: Select the method for determining the end of a Breaker Block.
What it is: A dropdown to choose between Wick and Close.
What it does: Sets the criteria for when a Breaker Block is considered mitigated.
How to use it: Choose an option from the dropdown.
Additional Info: Wicks: OB is mitigated when the price wicks through the OB Level. Close: OB is mitigated when the closing price is within the OB Level.
🔍 Max Bullish Zones
🔍Max Bullish: Set the maximum number of Bullish Order Blocks to display.
What it is: A dropdown to select the maximum number of Bullish Order Blocks.
What it does: Limits the number of Bullish Order Blocks shown on the chart.
How to use it: Choose a value from the dropdown (1-10).
🔍 Max Bearish Zones
🔍Max Bearish: Set the maximum number of Bearish Order Blocks to display.
What it is: A dropdown to select the maximum number of Bearish Order Blocks.
What it does: Limits the number of Bearish Order Blocks shown on the chart.
How to use it: Choose a value from the dropdown (1-10).
🟩 Bullish OB Color
Bullish OB Color: Set the color for Bullish Order Blocks.
What it is: A color picker to set the color of Bullish Order Blocks.
What it does: Changes the color of Bullish Order Blocks on the chart.
How to use it: Select a color from the color picker.
🟥 Bearish OB Color
Bearish OB Color: Set the color for Bearish Order Blocks.
What it is: A color picker to set the color of Bearish Order Blocks.
What it does: Changes the color of Bearish Order Blocks on the chart.
How to use it: Select a color from the color picker.
🔧 OB & BB Range
↔ OB & BB Range: Select the range option for OB and BB.
What it is: A dropdown to choose between RANGE and CUSTOM.
What it does: Sets how far the OB or BB should extend.
How to use it: Choose an option from the dropdown.
Additional Info: RANGE = Current price, CUSTOM = Adjustable Range.
🔧 Custom OB & BB Range
🔧Custom: Specify a custom range for OB and BB.
What it is: An integer input for setting a custom range.
What it does: Defines how far the OB or BB should go, based on a custom value.
How to use it: Enter a custom integer value (range: 1000-500000).
💬 Text Options
💬Text Options: Set text size and color for OB and BB.
What it is: A dropdown to select text size and a color picker to choose text color.
What it does: Changes the size and color of the text displayed for OB and BB.
How to use it: Select a size from the dropdown and a color from the color picker.
💬 Show Timeframe OB
Text: Toggle to display the timeframe of OB.
What it is: A boolean input to show or hide the timeframe text for OB.
What it does: Displays the timeframe information for Order Blocks on the chart.
How to use it: Check or uncheck the box to enable or disable.
💬 Show Volume
Volume: Toggle to display the volume of OB.
What it is: A boolean input to show or hide the volume information for Order Blocks.
What it does: Displays the volume information for Order Blocks on the chart.
How to use it: Check or uncheck the box to enable or disable.
Additional Info:
What it represents: The volume displayed represents the total trading volume that occurred during the formation of the Order Block. This can indicate the level of participation or interest in that price level.
How it's calculated: The volume is the sum of all traded volumes within the candles that form the Order Block.
What it means: Higher volume at an Order Block level may suggest stronger support or resistance. It shows the amount of trading activity and can be an indicator of the potential strength or validity of the Order Block.
Why it's shown: To give traders an idea of the market participation and to help assess the strength of the Order Block.
💬 Show Percentage
%: Toggle to display the percentage of OB.
What it is: A boolean input to show or hide the percentage information for Order Blocks.
What it does: Displays the percentage information for Order Blocks on the chart.
How to use it: Check or uncheck the box to enable or disable.
Additional Info:
What it represents: The percentage displayed usually represents the proportion of price movement relative to the Order Block.
How it's calculated: This can be the percentage move from the start to the end of the Order Block or the retracement level that price has reached relative to the Order Block's range.
What it means: It helps traders understand the extent of price movement within the Order Block and can indicate the significance of the price level.
Why it's shown: To provide a clearer understanding of the price dynamics and the importance of the Order Block within the overall price movement.
Additional Information
Volume Example: If an Order Block forms over three candles with volumes of 100, 150, and 200, the total volume displayed for that Order Block would be 450.
Percentage Example: If the price moves from 100 to 110 within an Order Block, and the total range of the Order Block is from 100 to 120, the percentage shown might be 50% (since the price has moved halfway through the Order Block's range).
Liquidity Levels visuals:
📊 Liquidity Levels Input Settings
📊 Current Timeframe
TF #1🕑: Enable or disable the current timeframe.
What it is: A boolean input to toggle the use of the current timeframe.
What it does: Enables or disables the display of liquidity levels for the current timeframe.
How to use it: Check or uncheck the box to enable or disable.
📊 Higher Timeframe
Higher Timeframe: Select the higher timeframe for liquidity levels.
What it is: A dropdown to select the desired higher timeframe.
What it does: Sets the higher timeframe for liquidity levels.
How to use it: Choose a timeframe from the dropdown list.
📏 Liquidity Length Option
📏Liquidity Length: Select the length for liquidity levels.
What it is: A dropdown to choose between SHORT, MID, LONG, or CUSTOM.
What it does: Sets the length of swings for liquidity levels.
How to use it: Choose an option from the dropdown.
Additional Info: Default lengths are SHORT=10, MID=28, LONG=50.
🔧 Custom Liquidity Length
🔧custom: Specify a custom length for liquidity levels.
What it is: An integer input for setting a custom swing length.
What it does: Overrides the default liquidity lengths if set to CUSTOM.
How to use it: Enter a custom integer value (only shown when CUSTOM is selected).
📛 Mitigation Method
📛Mitigation (Method): Select the method for determining the mitigation of liquidity levels.
What it is: A dropdown to choose between Close and Wick.
What it does: Sets the criteria for when a liquidity level is considered mitigated.
How to use it: Choose an option from the dropdown.
Additional Info:
Wick: Level is mitigated when the price wicks through the level.
Close: Level is mitigated when the closing price is within the level.
📛 Display Mitigated Levels
-: Select to display or hide mitigated levels.
What it is: A dropdown to choose between Remove and Show.
What it does: Displays or hides mitigated liquidity levels.
How to use it: Choose an option from the dropdown.
Additional Info:
Remove: Hide mitigated levels.
Show: Display mitigated levels.
🔍 Max Buy Side Liquidity
🔍Max Buy Side Liquidity: Set the maximum number of Buy Side Liquidity Levels to display.
What it is: An integer input to set the maximum number of Buy Side Liquidity Levels.
What it does: Limits the number of Buy Side Liquidity Levels shown on the chart.
How to use it: Enter a value between 0 and 50.
🟦 Buy Side Liquidity Color
Buy Side Liquidity Color: Set the color for Buy Side Liquidity Levels.
What it is: A color picker to set the color of Buy Side Liquidity Levels.
What it does: Changes the color of Buy Side Liquidity Levels on the chart.
How to use it: Select a color from the color picker.
Additional Info:
Tooltip: Set the maximum number of Buy Side Liquidity Levels to display. Default: 5, Min: 1, Max: 50.
If liquidity levels are not displayed as expected, try increasing the max count.
🔍 Max Sell Side Liquidity
🔍Max Sell Side Liquidity: Set the maximum number of Sell Side Liquidity Levels to display.
What it is: An integer input to set the maximum number of Sell Side Liquidity Levels.
What it does: Limits the number of Sell Side Liquidity Levels shown on the chart.
How to use it: Enter a value between 0 and 50.
🟥 Sell Side Liquidity Color
Sell Side Liquidity Color: Set the color for Sell Side Liquidity Levels.
What it is: A color picker to set the color of Sell Side Liquidity Levels.
What it does: Changes the color of Sell Side Liquidity Levels on the chart.
How to use it: Select a color from the color picker.
Additional Info:
Tooltip: Set the maximum number of Sell Side Liquidity Levels to display. Default: 5, Min: 1, Max: 50.
If liquidity levels are not displayed as expected, try increasing the max count.
✂ Box Style (Height)
✂ Box Style (↕): Set the box height style for liquidity levels.
What it is: A float input to set the height of the boxes.
What it does: Adjusts the height of the boxes displaying liquidity levels.
How to use it: Enter a value between -50 and 50.
Additional Info: Default value is -5.
📏 Box Length
b: Set the box length of liquidity levels.
What it is: An integer input to set the length of the boxes.
What it does: Adjusts the length of the boxes displaying liquidity levels.
How to use it: Enter a value between 0 and 500.
Additional Info: Default value is 20.
⏭ Extend Liquidity Levels
Extend ⏭: Toggle to extend liquidity levels beyond the current range.
What it is: A boolean input to enable or disable the extension of liquidity levels.
What it does: Extends liquidity levels beyond their default range.
How to use it: Check or uncheck the box to enable or disable.
Additional Info: Extend liquidity levels beyond the current range.
💬 Text Options
💬 Text Options: Set text size and color for liquidity levels.
What it is: A dropdown to select text size and a color picker to choose text color.
What it does: Changes the size and color of the text displayed for liquidity levels.
How to use it: Select a size from the dropdown and a color from the color picker.
💬 Show Text
Text: Toggle to display text for liquidity levels.
What it is: A boolean input to show or hide the text for liquidity levels.
What it does: Displays the text information for liquidity levels on the chart.
How to use it: Check or uncheck the box to enable or disable.
💬 Show Volume
Volume: Toggle to display the volume of liquidity levels.
What it is: A boolean input to show or hide the volume information for liquidity levels.
What it does: Displays the volume information for liquidity levels on the chart.
How to use it: Check or uncheck the box to enable or disable.
Additional Info:
What it represents: The volume displayed represents the total trading volume that occurred during the formation of the liquidity level. This can indicate the level of participation or interest in that price level.
How it's calculated: The volume is the sum of all traded volumes within the candles that form the liquidity level.
What it means: Higher volume at a liquidity level may suggest stronger support or resistance. It shows the amount of trading activity and can be an indicator of the potential strength or validity of the liquidity level.
Why it's shown: To give traders an idea of the market participation and to help assess the strength of the liquidity level.
💬 Show Percentage
%: Toggle to display the percentage of liquidity levels.
What it is: A boolean input to show or hide the percentage information for liquidity levels.
What it does: Displays the percentage information for liquidity levels on the chart.
How to use it: Check or uncheck the box to enable or disable.
Additional Info:
What it represents: The percentage displayed usually represents the proportion of price movement relative to the liquidity level.
How it's calculated: This can be the percentage move from the start to the end of the liquidity level or the retracement level that price has reached relative to the liquidity level's range.
What it means: It helps traders understand the extent of price movement within the liquidity level and can indicate the significance of the price level.
Why it's shown: To provide a clearer understanding of the price dynamics and the importance of the liquidity level within the overall price movement.
Fair Value Gaps visuals:
📊 Fair Value Gaps Input Settings
📊 Show FVG
TF #1🕑: Enable or disable Fair Value Gaps for Timeframe 1.
What it is: A boolean input to toggle the display of Fair Value Gaps.
What it does: Shows or hides Fair Value Gaps on the chart.
How to use it: Check or uncheck the box to enable or disable.
📊 Select Timeframe
Timeframe: Select the timeframe for Fair Value Gaps.
What it is: A dropdown to select the desired timeframe.
What it does: Sets the timeframe for Fair Value Gaps.
How to use it: Choose a timeframe from the dropdown list.
Additional Info: Higher TF Chart & Lower TF Setting or Lower TF Chart & Higher TF Setting.
📛 FVG Break Method
📛FVG Break (Method): Select the method for determining when an FVG is mitigated.
What it is: A dropdown to choose between Touch, Wicks, Close, or Average.
What it does: Sets the criteria for when a Fair Value Gap is considered mitigated.
How to use it: Choose an option from the dropdown.
Additional Info:
Touch: FVG is mitigated when the price touches the gap.
Wicks: FVG is mitigated when the price wicks through the gap.
Close: FVG is mitigated when the closing price is within the gap.
Average: FVG is mitigated when the average price (average of high and low) is within the gap.
📛 Show Mitigated FVG
show: Toggle to display mitigated FVGs.
What it is: A boolean input to show or hide mitigated Fair Value Gaps.
What it does: Displays or hides mitigated Fair Value Gaps.
How to use it: Check or uncheck the box to enable or disable.
📛 Fill FVG
Fill: Toggle to fill Fair Value Gaps.
What it is: A boolean input to fill the Fair Value Gaps with color.
What it does: Adds a color fill to the Fair Value Gaps.
How to use it: Check or uncheck the box to enable or disable.
📛 Shade FVG
Shade: Toggle to shade Fair Value Gaps.
What it is: A boolean input to shade the Fair Value Gaps.
What it does: Adds a shade effect to the Fair Value Gaps.
How to use it: Check or uncheck the box to enable or disable.
Additional Info: Select the method to break FVGs and toggle the visibility of FVG Breaks (fill FVG and/or shade FVG).
🔍 Max Bullish FVG
🔍Max Bullish FVG: Set the maximum number of Bullish Fair Value Gaps to display.
What it is: An integer input to set the maximum number of Bullish Fair Value Gaps.
What it does: Limits the number of Bullish Fair Value Gaps shown on the chart.
How to use it: Enter a value between 0 and 50.
🔍 Max Bearish FVG
🔍Max Bearish FVG: Set the maximum number of Bearish Fair Value Gaps to display.
What it is: An integer input to set the maximum number of Bearish Fair Value Gaps.
What it does: Limits the number of Bearish Fair Value Gaps shown on the chart.
How to use it: Enter a value between 0 and 50.
🟥 Bearish FVG Color
Bearish FVG Color: Set the color for Bearish Fair Value Gaps.
What it is: A color picker to set the color of Bearish Fair Value Gaps.
What it does: Changes the color of Bearish Fair Value Gaps on the chart.
How to use it: Select a color from the color picker.
Additional Info:
Tooltip: Set the maximum number of Bearish Fair Value Gaps to display. Default: 5, Min: 1, Max: 50.
If Fair Value Gaps are not displayed as expected, try increasing the max count.
🟦 Bullish FVG Color
Bullish FVG Color: Set the color for Bullish Fair Value Gaps.
What it is: A color picker to set the color of Bullish Fair Value Gaps.
What it does: Changes the color of Bullish Fair Value Gaps on the chart.
How to use it: Select a color from the color picker.
Additional Info:
Tooltip: Set the maximum number of Bullish Fair Value Gaps to display. Default: 5, Min: 1, Max: 50.
If Fair Value Gaps are not displayed as expected, try increasing the max count.
📏 FVG Range
↔ FVG Range: Set the range for Fair Value Gaps.
What it is: An integer input to set the range of the Fair Value Gaps.
What it does: Adjusts the range of the Fair Value Gaps displayed.
How to use it: Enter a value between 0 and 100.
Additional Info: Adjustable length only works when both RANGE & EXTEND display OFF. Range=current price, Extend=Full Range.
⏭ Extend FVG
Extend⏭: Toggle to extend Fair Value Gaps beyond the current range.
What it is: A boolean input to enable or disable the extension of Fair Value Gaps.
What it does: Extends Fair Value Gaps beyond their default range.
How to use it: Check or uncheck the box to enable or disable.
⏯ FVG Range
Range⏯: Toggle the range of Fair Value Gaps.
What it is: A boolean input to enable or disable the range display for Fair Value Gaps.
What it does: Sets the range of Fair Value Gaps displayed.
How to use it: Check or uncheck the box to enable or disable.
↕ Max Width
↕ Max Width: Set the maximum width of Fair Value Gaps.
What it is: A float input to set the maximum width of Fair Value Gaps.
What it does: Limits the width of Fair Value Gaps as a percentage of the price range.
How to use it: Enter a value between 0 and 5.0.
Additional Info: FVGs wider than this value will be ignored.
♻ Filter FVG
Filter FVG ♻: Toggle to filter out small Fair Value Gaps.
What it is: A boolean input to filter out small Fair Value Gaps.
What it does: Ignores Fair Value Gaps smaller than the specified max width.
How to use it: Check or uncheck the box to enable or disable.
➖ Mid Line Style
➖Mid Line Style: Select the style of the mid line for Fair Value Gaps.
What it is: A dropdown to choose between Solid, Dashed, or Dotted.
What it does: Sets the style of the mid line within Fair Value Gaps.
How to use it: Choose an option from the dropdown.
🎨 Mid Line Color
Mid Line Color: Set the color for the mid line within Fair Value Gaps.
What it is: A color picker to set the color of the mid line.
What it does: Changes the color of the mid line within Fair Value Gaps.
How to use it: Select a color from the color picker.
Additional Information
Mitigation Methods: Each method (Touch, Wicks, Close, Average) provides different criteria for when a Fair Value Gap is considered mitigated, helping traders to understand the dynamics of price movements within gaps.
Volume and Percentage: Displaying volume and percentage information for Fair Value Gaps helps traders gauge the strength and significance of these gaps in relation to trading activity and price movements.
Trendlines visuals:
📊 Trendlines Input Settings
📊 Show Trendlines
Trendlines & Trendlines Difference(%) ↕: Enable or disable trendlines and set the percentage difference from the first trendline.
What it is: A boolean input to toggle the display of trendlines.
What it does: Shows or hides trendlines on the chart and allows setting a percentage difference from the first trendline.
How to use it: Check or uncheck the box to enable or disable.
Additional Info: The percentage difference determines the distance of the second trendline from the first one.
📏 Trendline Length Option
📏Trendline Length: Select the length for trendlines.
What it is: A dropdown to choose between SHORT, MID, LONG, or CUSTOM.
What it does: Sets the length of trendlines.
How to use it: Choose an option from the dropdown.
Additional Info: Default lengths are SHORT=50, MID=100, LONG=200.
🔧 Custom Trendline Length
🔧custom: Specify a custom length for trendlines.
What it is: An integer input for setting a custom trendline length.
What it does: Overrides the default trendline lengths if set to CUSTOM.
How to use it: Enter a custom integer value (only shown when CUSTOM is selected).
🔍 Max Bearish Trendlines
🔍Max Trendlines Bearish: Set the maximum number of bearish trendlines to display.
What it is: A dropdown to select the maximum number of bearish trendlines.
What it does: Limits the number of bearish trendlines shown on the chart.
How to use it: Choose a value from the dropdown (2-20).
🟩 Bearish Trendline Color
Bearish Trendline Color: Set the color for bearish trendlines.
What it is: A color picker to set the color of bearish trendlines.
What it does: Changes the color of bearish trendlines on the chart.
How to use it: Select a color from the color picker.
Additional Info: Adjust to control how many bearish trendlines are displayed.
🔍 Max Bullish Trendlines
🔍Max Trendlines Bullish: Set the maximum number of bullish trendlines to display.
What it is: A dropdown to select the maximum number of bullish trendlines.
What it does: Limits the number of bullish trendlines shown on the chart.
How to use it: Choose a value from the dropdown (2-20).
🟥 Bullish Trendline Color
Bullish Trendline Color: Set the color for bullish trendlines.
What it is: A color picker to set the color of bullish trendlines.
What it does: Changes the color of bullish trendlines on the chart.
How to use it: Select a color from the color picker.
Additional Info: Adjust to control how many bullish trendlines are displayed.
📐 Degrees Text
📐Degrees ° (💬 Size): Enable or disable degrees text and set its size and color.
What it is: A boolean input to show or hide the degrees text for trendlines.
What it does: Displays the degrees text for trendlines.
How to use it: Check or uncheck the box to enable or disable.
📏 Text Size for Degrees
Text Size: Set the text size for degrees on trendlines.
What it is: A dropdown to select the size of the degrees text.
What it does: Changes the size of the degrees text displayed for trendlines.
How to use it: Choose a size from the dropdown (XS, S, M, L, XL).
🎨 Degrees Text Color
Degrees Text Color: Set the color for the degrees text on trendlines.
What it is: A color picker to set the color of the degrees text.
What it does: Changes the color of the degrees text on the chart.
How to use it: Select a color from the color picker.
♻ Filter Degrees
♻ Filter Degrees °: Enable or disable angle filtering and set the angle range.
What it is: A boolean input to filter trendlines by their angle.
What it does: Shows only trendlines within a specified angle range.
How to use it: Check or uncheck the box to enable or disable.
Additional Info: Angles outside this range will be filtered out.
🔢 Angle Range
Angle Range: Set the angle range for filtering trendlines.
What it is: Two float inputs to set the minimum and maximum angle for trendlines.
What it does: Defines the range of angles for which trendlines will be shown.
How to use it: Enter values for the minimum and maximum angles.
➖ Line Style
➖Style #1 & #2: Select the style of the primary and secondary trendlines.
What it is: Two dropdowns to choose between Solid, Dashed, or Dotted for the trendlines.
What it does: Sets the style of the primary and secondary trendlines.
How to use it: Choose a style from each dropdown.
📏 Line Thickness
: Set the thickness for the trendlines.
What it is: An integer input to set the thickness of the trendlines.
What it does: Adjusts the thickness of the trendlines displayed on the chart.
How to use it: Enter a value between 1 and 5.
Additional Information
Trendline Percentage Difference: Setting a percentage difference helps in analyzing the relative position and angle of trendlines.
Filtering by Angle: This feature allows focusing on trendlines within a specific angle range, enhancing the clarity of trend analysis.
BOS & CHOCH Market Structure visuals:
📊 BOS & CHOCH Market Structure Input Settings
📏 Market Structure Length Option
📏Market Structure: Select the market structure length option.
What it is: A dropdown to choose between INTERNAL, EXTERNAL, ALL, CUSTOM, or NONE.
What it does: Sets the type of market structure to be displayed.
How to use it: Choose an option from the dropdown.
Additional Info:
INTERNAL: Only internal structure.
EXTERNAL: Only external structure.
ALL: Both internal and external structures.
CUSTOM: Custom lengths.
NONE: No structure.
🔧 Custom Internal Length
🔧Custom Internal: Specify a custom length for internal market structure.
What it is: An integer input for setting a custom internal length.
What it does: Defines the length of internal market structures if CUSTOM is selected.
How to use it: Enter a custom integer value (only shown when CUSTOM is selected).
💬 Internal Label Size
💬Internal Label Size: Set the label size for internal market structures.
What it is: A dropdown to select the size of the labels.
What it does: Changes the size of the labels for internal market structures.
How to use it: Choose a size from the dropdown (XS, S, M, L, XL).
🟩 Internal Bullish Color
Internal Bullish Color: Set the color for bullish internal market structures.
What it is: A color picker to set the color of bullish internal market structures.
What it does: Changes the color of bullish internal market structures on the chart.
How to use it: Select a color from the color picker.
🟥 Internal Bearish Color
Internal Bearish Color: Set the color for bearish internal market structures.
What it is: A color picker to set the color of bearish internal market structures.
What it does: Changes the color of bearish internal market structures on the chart.
How to use it: Select a color from the color picker.
🔧 Custom External Length
🔧Custom External: Specify a custom length for external market structure.
What it is: An integer input for setting a custom external length.
What it does: Defines the length of external market structures if CUSTOM is selected.
How to use it: Enter a custom integer value (only shown when CUSTOM is selected).
💬 External Label Size
💬External Label Size: Set the label size for external market structures.
What it is: A dropdown to select the size of the labels.
What it does: Changes the size of the labels for external market structures.
How to use it: Choose a size from the dropdown (XS, S, M, L, XL).
🟩 External Bullish Color
External Bullish Color: Set the color for bullish external market structures.
What it is: A color picker to set the color of bullish external market structures.
What it does: Changes the color of bullish external market structures on the chart.
How to use it: Select a color from the color picker.
🟥 External Bearish Color
External Bearish Color: Set the color for bearish external market structures.
What it is: A color picker to set the color of bearish external market structures.
What it does: Changes the color of bearish external market structures on the chart.
How to use it: Select a color from the color picker.
📐 Show Equal Highs and Lows
EQL & EQH📐: Toggle visibility for equal highs and lows.
What it is: A boolean input to show or hide equal highs and lows.
What it does: Displays or hides equal highs and lows on the chart.
How to use it: Check or uncheck the box to enable or disable.
📏 Equal Highs and Lows Threshold
Equal Highs and Lows Threshold: Set the threshold for equal highs and lows.
What it is: A float input to set the threshold for equal highs and lows.
What it does: Defines the range within which highs and lows are considered equal.
How to use it: Enter a value between 0 and 10.
💬 Label Size for Equal Highs and Lows
💬Label Size for Equal Highs and Lows: Set the label size for equal highs and lows.
What it is: A dropdown to select the size of the labels.
What it does: Changes the size of the labels for equal highs and lows.
How to use it: Choose a size from the dropdown (XS, S, M, L, XL).
🟩 Bullish Color for Equal Highs and Lows
Bullish Color for Equal Highs and Lows: Set the color for bullish equal highs and lows.
What it is: A color picker to set the color of bullish equal highs and lows.
What it does: Changes the color of bullish equal highs and lows on the chart.
How to use it: Select a color from the color picker.
🟥 Bearish Color for Equal Highs and Lows
Bearish Color for Equal Highs and Lows: Set the color for bearish equal highs and lows.
What it is: A color picker to set the color of bearish equal highs and lows.
What it does: Changes the color of bearish equal highs and lows on the chart.
How to use it: Select a color from the color picker.
📏 Show Swing Points
Swing Points📏: Toggle visibility for swing points.
What it is: A boolean input to show or hide swing points.
What it does: Displays or hides swing points on the chart.
How to use it: Check or uncheck the box to enable or disable.
📏 Swing Points Length Option
Swing Points Length Option: Select the length for swing points.
What it is: A dropdown to choose between SHORT, MID, LONG, or CUSTOM.
What it does: Sets the length of swing points.
How to use it: Choose an option from the dropdown.
Additional Info: Default lengths are SHORT=10, MID=28, LONG=50.
💬 Swing Points Label Size
💬Swing Points Label Size: Set the label size for swing points.
What it is: A dropdown to select the size of the labels.
What it does: Changes the size of the labels for swing points.
How to use it: Choose a size from the dropdown (XS, S, M, L, XL).
🎨 Swing Points Color
Swing Points Color: Set the color for swing points.
What it is: A color picker to set the color of swing points.
What it does: Changes the color of swing points on the chart.
How to use it: Select a color from the color picker.
🔧 Custom Swing Points Length
🔧Custom Swings: Specify a custom length for swing points.
What it is: An integer input for setting a custom length for swing points.
What it does: Defines the length of swing points if CUSTOM is selected.
How to use it: Enter a custom integer value (only shown when CUSTOM is selected).
Additional Information
Market Structure Types: Understanding internal and external structures helps in analyzing different market behaviors.
Equal Highs and Lows: This feature identifies areas where price action is balanced, which can be significant for trading strategies.
Swing Points: Highlighting swing points aids in recognizing significant market reversals or continuations.
Benefits
Enhance your trading strategy by visualizing smart money's influence on price movements.
Make informed decisions with real-time data on significant market structures.
Reduce manual analysis with automated detection of key trading signals.
Ideal For
Traders looking for an edge in forex, equities, and cryptocurrency markets by understanding the underlying forces driving market dynamics.
Acknowledgements
Special thanks to these amazing creators for inspiration and their creations:
I want to thank these amazing creators for creating there amazing indicators , that inspired me and also gave me a head start by making this indicator! Without their amazing indicators it wouldn't be possible!
Flux Charts: Volumized Order Blocks
LuxAlgo: Trend Lines
UAlgo: Fair Value Gaps (FVG)
By Leviathan: Market Structure
Sonarlab: Liquidity Levels
Note
Remember to always backtest the indicator first before integrating it into your strategy! For any questions about the indicator, please feel free to ask for assistance.
FVG (ICT) with Swing LevelsThis indicator, called "Fair Value Gaps (ICT) with Swing Levels", overlays on the main chart and does the following:
Initial Setup:
It defines user-adjustable parameters:
lookback: Lookback period to keep FVGs visible.
swingPeriod: Period for calculating swing highs and lows.
bullColor and bearColor: Colors for bullish and bearish FVGs.
Fair Value Gaps (FVGs) Detection:
Uses a function to identify FVGs by comparing candle high and low prices.
A bullish FVG forms when the low of two candles ago is higher than the high of the current candle.
A bearish FVG forms when the high of two candles ago is lower than the low of the current candle.
Swing Levels Calculation:
Calculates swing highs and lows over the specified period.
These swing levels define the current market range.
Current Range Verification:
Implements a function to check if an FVG is within the range defined by swing levels.
This ensures only the most relevant FVGs for the current market situation are displayed.
FVG Drawing:
When it detects an FVG (bullish or bearish) within the current range, it draws a box on the chart.
Boxes extend from the bar where the FVG formed to the current bar.
Bullish FVGs are drawn in green and bearish in red (colors are customizable).
Old FVGs Management:
On each new bar, the indicator checks all existing FVG boxes.
It removes boxes that are outside the specified lookback period.
It also removes boxes that are no longer within the current range of swing levels.
Swing Levels Visualization:
Draws lines on the chart to show swing highs (in blue) and swing lows (in purple).
These lines help visualize the current market range.
Continuous Update:
The indicator updates on each new candle, constantly refreshing FVGs and swing levels.
In summary, this indicator identifies and visualizes Fair Value Gaps according to the ICT methodology, filtering them based on higher timeframe swing levels. This helps traders focus on the most significant FVGs within the current market context, reducing visual noise and potentially improving trading decision-making.
Market Structure Targets Model [LuxAlgo]The Market Structure Targets Model indicator provides an algorithmic approach to setting targets from market structure shifts (MSS) and market structure breaks (MSB), two popular Smart Money Concept (SMC) concepts. Depending on the target % settings, they can be used as take profit, confirmation levels, or potential reversal points.
🔶 USAGE
Our Market Structure Targets Model scripts provide automated and customizable targets from MSS and MSB. Each displayed target can be used in several ways described in the sub-sections below:
🔹 Take Profit
The targets can be used as take profit levels, where the target distance can be set separately for bullish/bearish MSS/MSB respectively.
🔹 Confirmation Levels
Alternatively, targets can be used as an additional confirmation level of a trend reversal when set at a lower percentage, filtering out fake signals that might be given from market structures. In this way, targets can be used as potential entry levels.
🔹 Potential Reversal Points
In some circumstances, targets being reached can be indicative of trend reversals. The percentage of the targets would be typically set higher to allow for trend exhaustion.
The above examples highlight this usage for bearish reversal scenarios, while the image below highlights it for bullish reversal scenarios.
🔹 Support/Resistance Levels
The targets, being horizontal levels, can also serve as potential support/resistances, with breakouts potentially confirming new trends. It is important to remain observant of the market structure. An MSS or MSB in the opposite direction provides essential information to be included in future decisions.
Using multiple timeframes can help detect longer-term trends. Depending on the user's preference, they can choose the appropriate timeframe for their needs.
Note that Target lines will only be drawn when the Target Level exceeds the close value when it is drawn.
🔹 Maximum Target Duration
The Maximum Target Duration setting removes unreached target levels when the amount of bars since the associated market structure of that target exceeds the user set limit. This effectively allows the removal of any target that might no longer be relevant to newer trends.
🔹 Type: Switch/Hold
This setting is another way to control unreached target levels.
Switch: When a new MSS/MSB is found, the previous target level associated with a market structure with the same direction (bullish/bearish) is deleted if it hasn't been reached.
Hold: Target levels are retained and continuously evaluated when a new MSS/MSB is formed.
The target level will be removed in both cases when the Maximum Target Duration condition is applied.
The above example shows the case when the Type setting is set to Switch , while in the example below, it is set to Hold .
🔶 DETAILS
🔹 Market Structure
Market structures are commonly classified as follows:
Market Structure Shift (MSS), also referred to as Change of Character (CHoCH)
Market Structure Break (MSB), also referred to as Break of Structure (BOS)
MSS indicates a shift in the market trend, confirming trend reversals. Conversely, MSB occurs once a trend is already determined, confirming new higher highs/lower lows.
🔹 Targets
A: Highest/lowest between the extremities of the MSS/MSB line
B: Price value of the MSS/MSB line
The distance between A and B is projected on the opposite side of the MSS/MSB line, adjusted with a percentage that can be set by the user. The above example used 100% of the distance between A and B.
The Target Percentage of MSS and MSB can be set separately for bullish or bearish market structures.
🔶 SETTINGS
Swings: Period used for the swing detection, with higher values returning longer-term Swing Levels.
Type: the Switch/Hold setting controls unattained target levels
Maximum Target Duration: removes the target lines when the amount of bars since the drawing of the target exceeds the limit and the target has not been reached
🔹 Market Structure Shift (MSS)
Bullish: Toggle, color setting, % Target
Bearish: Toggle, color setting, % Target
🔹 Market Structure Break (MSB)
Bullish: Toggle, color setting, % Target
Bearish: Toggle, color setting, % Target
Breakouts with Tests & Retests [LuxAlgo]The Breakouts Tests & Retests indicator highlights tests and retests of levels constructed from detected swing points. A swing area of interest switches colors when a breakout occurs.
Users can control the sensitivity of the swing point detection and the width of the swing areas.
🔶 USAGE
When a Swing point is detected, an area of interest is drawn, colored green for a bullish swing and red when bearish.
A test is confirmed when the opening price is situated in the area of interest, and the closing price is above or below the area, depending on whether it is a bullish or bearish swing. Tests are highlighted with a solid-colored triangle.
A breakout is confirmed when the price closes in the opposite position, below or above the area, in which case the area will switch colors.
If the opening price is located within the area and the closing price closes outside the area, in the same direction as the breakout, this is considered a retest . Retests are highlighted with a hollow-colored triangle.
Note that tests/retests do not act on wicks. The main factor is that the opening price is in the area of interest, while the closing price is outside.
🔹 Area Of Interest Width
The user can adjust the width of the swing areas. Changing the " Width " is a fast and easy way to find different areas of interest.
A higher "Multiple" setting would return a wider area, allowing price to develop within it for a longer period of time and potentially provide later test signals.
When a swing area is broken, a higher "Width" setting can make it more complicated for the price to break it again, allowing a swing area to remain valid for a longer period of time thus potentially providing more retest signals.
🔶 DETAILS
Generally, only one bullish/bearish pattern can be active at a time. This means that no more than 1 bullish or bearish area will be active.
The " Display " settings, however, can help control how areas of different types are displayed.
Bullish AND Bearish: Both, bullish and bearish patterns can be drawn at the same time
Bullish OR Bearish: Only 1 bullish or 1 bearish pattern is drawn at a time
Bullish: Only bullish patterns
Bearish: Only bearish patterns
🔹 Test/Retest Labels
The user can adjust the settings so only the latest test/retest label is shown or set a minimum number of bars until the next test/retest can be drawn.
🔹 Maximum Bars
Users can set a limit of bars for when there is no test/retest in that period; the area of interest won't be updated anymore and will be available and ready for the next Swing.
An option for pulling the area back to the last retest is included.
🔶 SETTINGS
Display: Determines which swing areas are displayed by the indicator. See the "DETAILS" section for more information
Multiple: Adjusts the width of the areas of interest
Maximum Bars: Limit of bars for when there is no test/retest
Display Test/Retest Labels: Show all labels or just the last test/retest label associated with a swing area
Minimum Bars: Minimum bars required for a subsequent test/retest label are allowed to be displayed
Set Back To Last Retest: When after "Maximum Bars" no test/retest is found, place the right side of the area at the last test/retest
🔹 Swings
Left: x amount of wicks on the left of a potential Swing need to be higher/lower for a Swing to be confirmed.
Right: The number of wicks on the right of a potential swing needs to be higher/lower for a Swing to be confirmed.
🔹 Style
Bullish: color for test period (before a breakout) / retest period (after a breakout)
Bearish: color for test period (before a breakout) / retest period (after a breakout)
Label Size
VolumeSpreadAnalysisLibrary "VolumeSpreadAnalysis"
A library for Volume Spread Analysis (VSA).
spread(_barIndex)
Calculates the spread of a bar.
Parameters:
_barIndex (int) : (int) The index of the bar.
Returns: (float) The spread of the bar.
volume(_barIndex)
Retrieves the volume of a bar.
Parameters:
_barIndex (int) : (int) The index of the bar.
Returns: (float) The volume of the bar.
body(_barIndex)
Calculates the body of a bar.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (float) The body size of the bar.
wickUpper(_barIndex)
Calculates the upper wick of a bar (upper shadow).
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (float) The upper wick size of the bar.
wickLower(_barIndex)
Calculates the lower wick of a bar (lower shadow).
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (float) The lower wick size of the bar.
calcForecastedSMA(_source, _length, _forecastedLevel)
Calculates the forecasted Simple Moving Average (SMA).
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the SMA.
_forecastedLevel (float) : (float) The forecasted level to include in the calculation.
Returns: (float) The forecasted SMA value.
calcForecastedEMA(_source, _length, _forecastedLevel)
Calculates the forecasted Exponential Moving Average (EMA).
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the EMA.
_forecastedLevel (float) : (float) The forecasted level to include in the calculation.
Returns: (float) The forecasted EMA value.
calcForecastedRMA(_source, _length, _forecastedLevel)
Calculates the forecasted Relative Moving Average (RMA).
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the RMA.
_forecastedLevel (float) : (float) The forecasted level to include in the calculation.
Returns: (float) The forecasted RMA value.
calcForecastedWMA(_source, _length, _forecastedLevel)
Calculates the forecasted Weighted Moving Average (WMA).
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the WMA.
_forecastedLevel (float) : (float) The forecasted level to include in the calculation.
Returns: (float) The forecasted WMA value.
calcElapsedTimePercent()
Calculates the elapsed time percent of the current bar.
Returns: (float) The elapsed time percent.
calcForecastedSpread(multiplierAtMidpoints, multiplierAtPeaks)
Calculates the forecasted spread using elapsed time and dynamic multipliers, handling spread's non-linear nature.
Parameters:
multiplierAtMidpoints (float) : (float) The multiplier value at midpoints.
multiplierAtPeaks (float) : (float) The multiplier value at peaks.
Returns: (float) The forecasted spread value.
calcForecastedVolume()
Calculates the forecasted volume using elapsed time, satisfying volume's linear nature.
Returns: (float) The forecasted volume value.
calcForecastedMA(_source, _length, _forecastedSource, _type)
Calculates the forecasted Moving Average (MA) based on the specified type.
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the MA.
_forecastedSource (float) : (float) The forecasted level to include in the calculation.
_type (simple string) : (string) The type of the MA ("SMA", "EMA", "SMMA (RMA)", "WMA").
Returns: (float) The forecasted MA value.
calcMA(_source, _length, _type)
Calculates the Moving Average (MA) based on the specified type.
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the MA.
_type (simple string) : (string) The type of the MA ("SMA", "EMA", "SMMA (RMA)", "WMA").
Returns: (float) The MA value.
bullBar(_barIndex)
Determines if the bar is bullish.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (bool) True if the bar is bullish, otherwise false.
bearBar(_barIndex)
Determines if the bar is bearish.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (bool) True if the bar is bearish, otherwise false.
breakout(_barIndex)
Determines if there is a breakout above the previous bar.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (bool) True if there is a breakout, otherwise false.
breakdown(_barIndex)
Determines if there is a breakdown below the previous bar.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (bool) True if there is a breakdown, otherwise false.
rejectionWickUpper(_rejectionWick)
Determines if the upper wick is a rejection wick.
Parameters:
_rejectionWick (simple float) : (float) The rejection wick percentage.
Returns: (bool) True if the upper wick is a rejection wick, otherwise false.
rejectionWickLower(_rejectionWick)
Determines if the lower wick is a rejection wick.
Parameters:
_rejectionWick (simple float) : (float) The rejection wick percentage.
Returns: (bool) True if the lower wick is a rejection wick, otherwise false.
setupDataVolume(_data, _mult_Low, _mult_High, _mult_Ultra, _maLengthVolume, _maTypeVolume)
Sets up data for volume levels.
Parameters:
_data (map) : (map) The map to store the levels.
_mult_Low (simple float) : (float) The multiplier for low level.
_mult_High (simple float) : (float) The multiplier for high level.
_mult_Ultra (simple float) : (float) The multiplier for ultra level.
_maLengthVolume (simple int) : (int) The length for MA.
_maTypeVolume (simple string) : (string) The type for MA.
Returns: (void) Nothing.
setupDataSpread(_data, _mult_Low, _mult_High, _mult_Ultra, _maLengthSpread, _maTypeSpread)
Sets up data for spread levels.
Parameters:
_data (map) : (map) The map to store the levels.
_mult_Low (simple float) : (float) The multiplier for low level.
_mult_High (simple float) : (float) The multiplier for high level.
_mult_Ultra (simple float) : (float) The multiplier for ultra level.
_maLengthSpread (simple int) : (int) The length for MA.
_maTypeSpread (simple string) : (string) The type for MA.
Returns: (void) Nothing.
setupDataForecastVolume(_dataForecast, _mult_Low, _mult_High, _mult_Ultra, _maLengthVolume, _predictedLevelVolume, _maTypeVolume)
Sets up data for volume and spread levels for forecast.
Parameters:
_dataForecast (map)
_mult_Low (simple float) : (float) The multiplier for low level.
_mult_High (simple float) : (float) The multiplier for high level.
_mult_Ultra (simple float) : (float) The multiplier for ultra level.
_maLengthVolume (simple int) : (int) The length for MA.
_predictedLevelVolume (float) : (float) The predicted level for MA.
_maTypeVolume (simple string) : (string) The type for MA.
Returns: (void) Nothing.
setupDataForecastSpread(_dataForecast, _mult_Low, _mult_High, _mult_Ultra, _maLengthSpread, _predictedLevelSpread, _maTypeSpread)
Sets up data for spread levels for forecast.
Parameters:
_dataForecast (map)
_mult_Low (simple float) : (float) The multiplier for low level.
_mult_High (simple float) : (float) The multiplier for high level.
_mult_Ultra (simple float) : (float) The multiplier for ultra level.
_maLengthSpread (simple int) : (int) The length for MA.
_predictedLevelSpread (float) : (float) The predicted level for MA.
_maTypeSpread (simple string) : (string) The type for MA.
Returns: (void) Nothing.
isVolumeLow(_data, _barIndex)
Determines if the volume is low.
Parameters:
_data (map) : (map) The data map with volume levels.
_barIndex (int)
Returns: (bool) True if the volume is low, otherwise false.
isVolumeNormal(_data, _barIndex)
Determines if the volume is normal.
Parameters:
_data (map) : (map) The data map with volume levels.
_barIndex (int)
Returns: (bool) True if the volume is normal, otherwise false.
isVolumeHigh(_data, _barIndex)
Determines if the volume is high.
Parameters:
_data (map) : (map) The data map with volume levels.
_barIndex (int)
Returns: (bool) True if the volume is high, otherwise false.
isVolumeUltra(_data, _barIndex)
Determines if the volume is ultra.
Parameters:
_data (map) : (map) The data map with volume levels.
_barIndex (int)
Returns: (bool) True if the volume is ultra, otherwise false.
isSpreadLow(_data, _barIndex)
Determines if the spread is low.
Parameters:
_data (map) : (map) The data map with spread levels.
_barIndex (int)
Returns: (bool) True if the spread is low, otherwise false.
isSpreadNormal(_data, _barIndex)
Determines if the spread is normal.
Parameters:
_data (map) : (map) The data map with spread levels.
_barIndex (int)
Returns: (bool) True if the spread is normal, otherwise false.
isSpreadHigh(_data, _barIndex)
Determines if the spread is high.
Parameters:
_data (map) : (map) The data map with spread levels.
_barIndex (int)
Returns: (bool) True if the spread is high, otherwise false.
isSpreadUltra(_data, _barIndex)
Determines if the spread is ultra.
Parameters:
_data (map) : (map) The data map with spread levels.
_barIndex (int)
Returns: (bool) True if the spread is ultra, otherwise false.
isVolumeText(_data)
Determines text string representing the volume area level.
Parameters:
_data (map) : (map) The data map with volume levels.
Returns: (string) Text string of Low, Normal, High, or Ultra.
isSpreadText(_data)
Determines text string representing the spread area level.
Parameters:
_data (map) : (map) The data map with spread levels.
Returns: (string) Text string of Low, Normal, High, or Ultra.
calcBarColor(_value, _level)
Calculates the color based level.
Parameters:
_value (float) : (float) The value to check.
_level (float) : (float) The value level for comparison.
Returns: (color) The color for the bar.
bullPinBar(_maxBodyPercent, _minWickPercent)
Determines if the bar is a bull pin bar.
Parameters:
_maxBodyPercent (simple float) : (float) The maximum body percentage.
_minWickPercent (simple float) : (float) The minimum wick percentage.
Returns: (bool) True if the bar is a bull pin bar, otherwise false.
bearPinBar(_maxBodyPercent, _minWickPercent)
Determines if the bar is a bear pin bar.
Parameters:
_maxBodyPercent (simple float) : (float) The maximum body percentage.
_minWickPercent (simple float) : (float) The minimum wick percentage.
Returns: (bool) True if the bar is a bear pin bar, otherwise false.
dojiBar(_maxBodyPercent)
Determines if the bar is a doji.
Parameters:
_maxBodyPercent (simple float) : (float) The maximum body percentage.
Returns: (bool) True if the bar is a doji, otherwise false.
spinningTopBar(_minWicksPercent, _emaLength)
Determines if the bar is a spinning top.
Parameters:
_minWicksPercent (simple float) : (float) The minimum wicks percentage.
_emaLength (simple int) : (int) The length for EMA calculation.
Returns: (bool) True if the bar is a spinning top, otherwise false.
highWaveBar(_minBodyPercent, _minWickPercent, _bars)
Determines if the bar is a high wave bar.
Parameters:
_minBodyPercent (simple float) : (float) The minimum body percentage.
_minWickPercent (simple float) : (float) The minimum wick percentage.
_bars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if the bar is a high wave bar, otherwise false.
consolidationBar(_data, _spread, _bars)
Determines if the bars are in consolidation.
Parameters:
_data (map) : (map) The data map with spread levels.
_spread (simple float) : (float) The spread percentage for comparison.
_bars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if the bars are in consolidation, otherwise false.
S_DownThrust(_data, _bullPinBarMaxBody, _bullPinBarMinWick)
Determines if there is a sign of strength (DownThrust).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_bullPinBarMaxBody (simple float) : (float) The maximum body percentage for bull pin bar.
_bullPinBarMinWick (simple float) : (float) The minimum wick percentage for bull pin bar.
Returns: (bool) True if there is a sign of strength (DownThrust), otherwise false.
S_SellingClimax(_data, _rejectionWick)
Determines if there is a sign of strength (Selling Climax).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_rejectionWick (simple float) : (float) The rejection wick percentage.
Returns: (bool) True if there is a sign of strength (Selling Climax), otherwise false.
S_NoEffortBearishResult()
Determines if there is a sign of strength (No Effort Bearish Result).
Returns: (bool) True if there is a sign of strength (No Effort Bearish Result), otherwise false.
S_BearishEffortNoResult()
Determines if there is a sign of strength (Bearish Effort No Result).
Returns: (bool) True if there is a sign of strength (Bearish Effort No Result), otherwise false.
S_InverseDownThrust(_data, _bearPinBarMaxBody, _bearPinBarMinWick)
Determines if there is a sign of strength (Inverse DownThrust).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_bearPinBarMaxBody (simple float) : (float) The maximum body percentage for bear pin bar.
_bearPinBarMinWick (simple float) : (float) The minimum wick percentage for bear pin bar.
Returns: (bool) True if there is a sign of strength (Inverse DownThrust), otherwise false.
S_FailedSellingClimax()
Determines if there is a sign of strength (Failed Selling Climax).
Returns: (bool) True if there is a sign of strength (Failed Selling Climax), otherwise false.
S_BullOutsideReversal(_data)
Determines if there is a sign of strength (Bull Outside Reversal).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
Returns: (bool) True if there is a sign of strength (Bull Outside Reversal), otherwise false.
S_EndOfFallingMarket(_data)
Determines if there is a sign of strength (End of Falling Market).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
Returns: (bool) True if there is a sign of strength (End of Falling Market), otherwise false.
S_PseudoDownThrust(_bullPinBarMaxBody, _bullPinBarMinWick)
Determines if there is a sign of strength (Pseudo DownThrust).
Parameters:
_bullPinBarMaxBody (simple float) : (float) The maximum body percentage for bull pin bar.
_bullPinBarMinWick (simple float) : (float) The minimum wick percentage for bull pin bar.
Returns: (bool) True if there is a sign of strength (Pseudo DownThrust), otherwise false.
S_NoSupply(_bullPinBarMaxBody, _bullPinBarMinWick)
Determines if there is a sign of strength (No Supply).
Parameters:
_bullPinBarMaxBody (simple float) : (float) The maximum body percentage for bull pin bar.
_bullPinBarMinWick (simple float) : (float) The minimum wick percentage for bull pin bar.
Returns: (bool) True if there is a sign of strength (No Supply), otherwise false.
W_UpThrust(_data, _bearPinBarMaxBody, _bearPinBarMinWick)
Determines if there is a sign of weakness (UpThrust).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_bearPinBarMaxBody (simple float) : (float) The maximum body percentage for bear pin bar.
_bearPinBarMinWick (simple float) : (float) The minimum wick percentage for bear pin bar.
Returns: (bool) True if there is a sign of weakness (UpThrust), otherwise false.
W_BuyingClimax(_data, _rejectionWick)
Determines if there is a sign of weakness (Buying Climax).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_rejectionWick (simple float) : (float) The rejection wick percentage.
Returns: (bool) True if there is a sign of weakness (Buying Climax), otherwise false.
W_NoEffortBullishResult()
Determines if there is a sign of weakness (No Effort Bullish Result).
Returns: (bool) True if there is a sign of weakness (No Effort Bullish Result), otherwise false.
W_BullishEffortNoResult()
Determines if there is a sign of weakness (Bullish Effort No Result).
Returns: (bool) True if there is a sign of weakness (Bullish Effort No Result), otherwise false.
W_InverseUpThrust(_data, _bullPinBarMaxBody, _bullPinBarMinWick)
Determines if there is a sign of weakness (Inverse UpThrust).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_bullPinBarMaxBody (simple float) : (float) The maximum body percentage for bull pin bar.
_bullPinBarMinWick (simple float) : (float) The minimum wick percentage for bull pin bar.
Returns: (bool) True if there is a sign of weakness (Inverse UpThrust), otherwise false.
W_FailedBuyingClimax()
Determines if there is a sign of weakness (Failed Buying Climax).
Returns: (bool) True if there is a sign of weakness (Failed Buying Climax), otherwise false.
W_BearOutsideReversal(_data)
Determines if there is a sign of weakness (Bear Outside Reversal).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
Returns: (bool) True if there is a sign of weakness (Bear Outside Reversal), otherwise false.
W_EndOfRisingMarket(_data)
Determines if there is a sign of weakness (End of Rising Market).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
Returns: (bool) True if there is a sign of weakness (End of Rising Market), otherwise false.
W_PseudoUpThrust(_bearPinBarMaxBody, _bearPinBarMinWick)
Determines if there is a sign of weakness (Pseudo UpThrust).
Parameters:
_bearPinBarMaxBody (simple float) : (float) The maximum body percentage for bear pin bar.
_bearPinBarMinWick (simple float) : (float) The minimum wick percentage for bear pin bar.
Returns: (bool) True if there is a sign of weakness (Pseudo UpThrust), otherwise false.
W_NoDemand(_bearPinBarMaxBody, _bearPinBarMinWick)
Determines if there is a sign of weakness (No Demand).
Parameters:
_bearPinBarMaxBody (simple float) : (float) The maximum body percentage for bear pin bar.
_bearPinBarMinWick (simple float) : (float) The minimum wick percentage for bear pin bar.
Returns: (bool) True if there is a sign of weakness (No Demand), otherwise false.
N_QuietDoji(_dojiBarMaxBody)
Determines if there is a neutral signal (Quiet Doji).
Parameters:
_dojiBarMaxBody (simple float) : (float) The maximum body percentage for doji bar.
Returns: (bool) True if there is a neutral signal (Quiet Doji), otherwise false.
N_BalancedDoji(_data, _dojiBarMaxBody)
Determines if there is a neutral signal (Balanced Doji).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_dojiBarMaxBody (simple float) : (float) The maximum body percentage for doji bar.
Returns: (bool) True if there is a neutral signal (Balanced Doji), otherwise false.
N_StrongDoji(_dojiBarMaxBody)
Determines if there is a neutral signal (Strong Doji).
Parameters:
_dojiBarMaxBody (simple float) : (float) The maximum body percentage for doji bar.
Returns: (bool) True if there is a neutral signal (Strong Doji), otherwise false.
N_QuietSpinningTop(_spinningTopBarMinWicks, _spinningTopBarEmaLength)
Determines if there is a neutral signal (Quiet Spinning Top).
Parameters:
_spinningTopBarMinWicks (simple float) : (float) The minimum wicks percentage for spinning top bar.
_spinningTopBarEmaLength (simple int) : (int) The length for EMA calculation.
Returns: (bool) True if there is a neutral signal (Quiet Spinning Top), otherwise false.
N_BalancedSpinningTop(_data, _spinningTopBarMinWicks, _spinningTopBarEmaLength)
Determines if there is a neutral signal (Balanced Spinning Top).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_spinningTopBarMinWicks (simple float) : (float) The minimum wicks percentage for spinning top bar.
_spinningTopBarEmaLength (simple int) : (int) The length for EMA calculation.
Returns: (bool) True if there is a neutral signal (Balanced Spinning Top), otherwise false.
N_StrongSpinningTop(_spinningTopBarMinWicks, _spinningTopBarEmaLength)
Determines if there is a neutral signal (Strong Spinning Top).
Parameters:
_spinningTopBarMinWicks (simple float) : (float) The minimum wicks percentage for spinning top bar.
_spinningTopBarEmaLength (simple int) : (int) The length for EMA calculation.
Returns: (bool) True if there is a neutral signal (Strong Spinning Top), otherwise false.
N_QuietHighWave(_highWaveBarMinBody, _highWaveBarMinWick, _highWaveBarBars)
Determines if there is a neutral signal (Quiet High Wave).
Parameters:
_highWaveBarMinBody (simple float) : (float) The minimum body percentage for high wave bar.
_highWaveBarMinWick (simple float) : (float) The minimum wick percentage for high wave bar.
_highWaveBarBars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if there is a neutral signal (Quiet High Wave), otherwise false.
N_BalancedHighWave(_data, _highWaveBarMinBody, _highWaveBarMinWick, _highWaveBarBars)
Determines if there is a neutral signal (Balanced High Wave).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_highWaveBarMinBody (simple float) : (float) The minimum body percentage for high wave bar.
_highWaveBarMinWick (simple float) : (float) The minimum wick percentage for high wave bar.
_highWaveBarBars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if there is a neutral signal (Balanced High Wave), otherwise false.
N_StrongHighWave(_highWaveBarMinBody, _highWaveBarMinWick, _highWaveBarBars)
Determines if there is a neutral signal (Strong High Wave).
Parameters:
_highWaveBarMinBody (simple float) : (float) The minimum body percentage for high wave bar.
_highWaveBarMinWick (simple float) : (float) The minimum wick percentage for high wave bar.
_highWaveBarBars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if there is a neutral signal (Strong High Wave), otherwise false.
N_Consolidation(_data, _consolidationBarSpread, _consolidationBarBars)
Determines if there is a neutral signal (Consolidation).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_consolidationBarSpread (simple float) : (float) The spread percentage for consolidation bar.
_consolidationBarBars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if there is a neutral signal (Consolidation), otherwise false.
ICT Unicorn Model [LuxAlgo]The ICT Unicorn Model indicator highlights the presence of "unicorn" patterns on the user's chart which is derived from the lectures of "The Inner Circle Trader" (ICT) .
Detected patterns are followed by targets with a distance controlled by the user.
🔶 USAGE
At its core, the ICT Unicorn Model relies on two popular concepts, Fair Value Gaps and Breaker Blocks. This combination highlights a future area of support/resistance.
A Bullish Unicorn Pattern consists out of:
A Lower Low (LL), followed by a Higher High (HH)
A Fair Value Gap (FVG), overlapping the established Breaker Block
A successful re-test of the FVG which confirms the pattern.
A Bearish Unicorn Pattern consists of:
A Higher High (HH), followed by a Lower Low (LL)
A Fair Value Gap (FVG), overlapping the established Breaker Block
A successful re-test of the FVG which confirms the pattern
The pattern detection depends on detected swings, which can be controlled by the Swing setting. Using higher values of this setting will return longer-term breaker blocks.
🔹 Using Risk/Reward Targets
A confirmed Unicorn pattern will show a blue ( Target ) / grey ( Stop Loss) "Risk/Reward" areas (RR).
When the Stop Loss or Target is hit, a white line is shown on the concerned side.
The Risk/Reward ratio can be adjusted in the "Targets" settings.
🔹 Trailing Stop
As seen in the previous snapshots, besides the RR areas, this indicator also includes an optional Trailing Stop .
This can be helpful to lower your risk, by exiting earlier than if you would wait until the Stop Loss is hit.
This example shows a successful bullish and bearish Unicorn Pattern . In this scenario, the Trailing Stop could be used for partial Take Profit.
The goal of this publication is to show confirmed Unicorn Patterns . To increase the chance of success, it is important to evaluate the bigger picture & use this in confluence with your price action analysis. For example, look for potential areas of liquidity, consider this pattern only during certain market sessions, avoid trading during heavy impact news, &/or incorporate other aspects of technical analysis rather than just following this pattern blindly.
🔶 DETAILS
🔹 Combine
When disabled, all potential Unicorn Patterns will delete previous unconfirmed patterns:
Enabling Combine ensures the last Unicorn Patterns in the opposite direction will remain.
While the latter bullish pattern became invalid, another one formed.
The combination of the previous bearish pattern, and looking at the big picture, the bullish pattern did not have much chance to be successful.
While disabling 'combine' helps minimize clutter, enabling this feature can give a pattern more chance to hit the SL/Target level.
🔹 Mitigated FVG
Users can determine if a pattern becomes invalid due to a mitigated FVG, causing the pattern to be deleted.
🔹 New pattern detected
When a new pattern is detected, the previous unconfirmed pattern in the same direction (bullish - bullish or bearish - bearish) will be deleted. This will always be the case, whether "Combine' is enabled or disabled.
When the previous pattern was confirmed but no SL or Target level was hit, this pattern will stop updating.
🔶 SETTINGS
🔹 Unicorn
Swings: This sets the length of swings, used for the underlying ZigZag and Unicorn Patterns detection.
Bull: Enable/disable Bullish patterns, and set the color of FVG box and Trailing Stop .
Bear: Enable/disable Bearish patterns, and set the color of FVG box and Trailing Stop .
Combine: When enabled, patterns in opposite directions (bullish/bearish) can exist at the same time. disabling this feature tends to give less clutter. See the "Usage" section for more information.
🔹 Targets
Risk/Reward: Sets the Risk/Reward ratio.
Trailing Stop: Set the length of small swings, which is used for the Trailing Stop .
Algoflow's Levels PlotterAlgoflow's Levels Plotter - Indicator
Release Date: Jan. 15, 2024
Release version: v3 r1
Release notes date: Jan. 15, 2024
Overview
Parses user's input of levels to be plotted and labeled on the chart for NQ & ES futures
Features
Quick plotting of predetermined price levels.
- Type or copy from another source of values in a predetermined output format.
Supports separate line plotting for Weekly, OVN and RTH values
- Plot only Weekly, OVN or RTH levels, or all
- Configure colors separately for Inflection Points, Weekly, OVN & RTH levels
- Shift/place price labels separately to easily identify levels
User Impacts of Changes
Requires users to remove previous version and re-add indicator "Algoflow's Levels Plotter", then re-add values. Colors and shift values will need to be re-entered and/or reconfigured
Support
Questions, feedbacks, and requests are welcomed. Please feel free to use Comments or direct private message via TradingView.
Quick usage notes:
The indicator allows you to enter data for both ES & NQ at the same time. This is useful in single chart window/layout situations, like viewing on the phone. When you switch between futures, the data is already there.
If you leave the entries blank, nothing will be plotted. This is useful if you want to have separate charts for ES & NQ. So you can just enter only the relevant data of either.
As an indicator, input values are saved within it, until it is removed from the chart. Input for one chart will not update other charts of the same ticker, even in the same layout.
The easiest and quickest way to share the inputs across all charts and layouts is to use the Indicator Templates feature.
- After input values are entered (for both ES & NQ futures) via the indicator's Settings, select ""Save as Default"".
- Click on ""Indicator Templates"" (4 squares icon), and click on ""Save Indicator template...""
- Remove the previous version of the indicator in other charts.
- Click on ""Indicator Templates"" icon, and select the newly created template. Repeat this for other charts of the same futures ticker
The labels can be disabled in settings > Style tab. Use the Inputs tab to configure orientation (left or right of current bar on chart), and how much spacing from the current (in distance of bars)
Format example:
Primary directional inflection point: 1234
For Bulls: 1244.25, 1254, 1264.50
For Bears: 1224, 1214, 1204
Changes
v3 r1 - Fixed erroneous default values in Weekly input sections. Added options to en/disable display of each set (session) of levels. Default label text size to normal, from small.
- Jan 15, 2024
v2 r9 - Added support for USTEC & US500.
- Dec. 10, 2023
v2 r8 - Added configuration features for users to modify the labels' text colors and size. Simplified code further by moving inputs processing modules into a single user function.
- Oct. 31, 2023
v2 r7 - Added support for the micro NQ & ES. Modified to ignore string case in inputs
- Oct 18, 2023
v2 r4 - Added support of weekly lines and labels features. Began the process of optimizing/simplifying code
- Oct. 15, 2023
v2 r3 - Made Inflection Point levels' colors configurable
- Oct. 04, 2023
v2 r2 - Removed comments & debug codes from development build revision #518
- Oct. 04, 2023
v2 r1 - Released from development revision #518. Major rewrite to fix previous and overlapping plots of lines and labels.
- Oct. 04, 2023
v1 r2 - First release of indicator
- Oct. 02, 2023
Smart Money Oscillator [ChartPrime]The "Smart Money Oscillator " is a premium and discount zone oscillator with BOS and CHoCH built in for further analysis of price action. This indicator works by first determining the the premium and discount zones by using pivot points and high/lows. The top of this oscillator represents the current premium zone while the bottom half of this oscillator represents the discount zone. This oscillator functionally works like a stochastic oscillator with more sophisticated upper and lower bounds generated using smart money concept theories. We have included a moving average to allow the user to visualize the currant momentum in the oscillator. Another key feature we have included lagging divergences to help traders visualize potential reversal conditions.
Understanding the concepts of Premium and Discount zones, as well as Break of Structure (BoS) and Change of Character (CHoCH), is crucial for traders using the Smart Money Oscillator. These concepts are rooted in market structure analysis, which involves studying price levels and movements.
Premium Zone is where the price is considered to be relatively high or 'overbought'. In this zone, prices have risen significantly and may indicate that the asset is becoming overvalued, potentially leading to a reversal or slowdown in the upward trend.
The Discount Zone represents a 'discount' or 'oversold' area. Here, prices have fallen substantially, suggesting that the asset might be undervalued. This could be an indicator of a potential upward reversal or a pause in the downward trend.
Break of Structure (BoS) is about the continuation of a trend. In a bullish trend, a BoS is identified by the break of a recent higher high. In a bearish trend, it's the break of a recent Lower Low. BoS indicates that the trend is strong and likely to continue in its current direction. It's a sign of strength in the prevailing trend, whether up or down.
Change of Character (CHoCH) is an indication of a potential end to a trend. It occurs when there's a significant change in the market's behavior, contradicting the current trend. For example, in an uptrend characterized by higher highs and higher lows, a CHoCH may occur if a new high is formed but then is followed by an impulsive move downwards. This suggests that the bullish trend may be weakening and a bearish reversal could be imminent. CHoCH is essentially a sign of trend exhaustion and potential reversal.
With each consecutive BoS, the signal line of the oscillator will deepen in color. This allows you to visually see the strength of the current trend. The maximum strength of the trend is found by keeping track of the maximum number of consecutive BoS's within a window of 10. This calculation excludes periods without any BoS's to allow for a more stable max.
Quick Update is a feature that implements a more aggressive algorithm to update the highs and lows. Instead of updating the pivot points exclusively to update the range levels, it will attempt to use the current historical highs/lows to update the bounds. This results in a more responsive range at the cost of stability. There are pros and cons for both settings. With Quick Update disabled, the indicator will allow for strong reversals to register without the indicator maxing out. With Quick Update enabled, the indicator will show shorter term extremes with the risk of the signal being pinned to the extremities during strong trends or large movements. With Quick Update disabled, the oscillator prioritizes stability, using a more historical perspective to set its bounds. When Quick Update is enabled, the oscillator becomes more responsive, adjusting its bounds rapidly to reflect the latest market movements.
The Scale Offset feature allows the indicator to break the boundaries of the oscillator. This can be useful when the market is breaking highs or lows allowing the user to identify extremities in price. With Scale Offset disabled the oscillator will always remain inside of the boundaries because the extremities will be updated instantly. When this feature is enabled it will update the boundaries one step behind instead of updating it instantly. This allows the user to more easily see overbought and oversold conditions at the cost of incurring a single bar lag to the boundaries. Generally this is a good idea as this behavior makes the oscillator more sensitive to recent price spikes or drops, reflecting sudden market movements more accurately. It accentuates the extremities of the market conditions, potentially offering a more aggressive analysis. The main trade-off with the Scale Offset feature is between sensitivity and potential overreaction. It offers a more immediate and exaggerated reflection of market conditions but might also lead to misinterpretations in certain scenarios, especially in highly volatile markets.
Divergence is used to predict potential trend reversals. It occurs when the price of an asset and the reading of an oscillator move in opposite directions. This discrepancy can signal a weakening of the current trend and possibly indicate a potential reversal.
Divergence doesn't always lead to a trend reversal, but it's a warning sign that the current trend might be weakening. Divergence can sometimes give false signals, particularly in strongly trending markets where the oscillator may remain in overbought or oversold conditions for extended periods. The lagging nature of using pivot points to calculate divergences means that all divergences are limited by the pivot look forward input. The upside of using a longer look forward is that the divergences will be more accurate. The obvious con here is that it will be more delayed and might be useless by the time it appears. Its recommended to use the built in divergences as a way to learn how these are formed so you can make your own in real time.
By default, the oscillator uses a smoothing of 3 to allow for a more price like behavior while still being rather smooth compared to raw price data. Conversely, you can increase this value to make this indicator behave smoother. Something to keep in mind is that the amount of delay from real time is equal to half of the smoothing period.
We have included a verity of alerts in this indicator. Here is a list of all of the available alerts: Bullish BOS, Bearish BOS, Bullish CHoCH, Bearish CHoCH, Bullish Divergence, Hidden Bullish Divergence, Bearish Divergence, Hidden Bearish Divergence, Cross Over Average, Cross Under Average.
Below are all of the inputs and their tooltips to get you started:
Settings:
Smoothing: Specifies the degree of smoothing applied to the oscillator. Higher values result in smoother but potentially less responsive signals.
Average Length: Sets the length of the moving average applied to the oscillator, affecting its sensitivity and smoothness.
Pivot Length: Specifies the forward-looking length for pivot points, affecting how the oscillator anticipates future price movements. This directly impacts the delay in finding a pivot.
Max Length: Sets the maximum length to consider for calculating the highest values in the oscillator.
Min Length: Defines the minimum length for calculating the lowest values in the oscillator.
Quick Update: Activates a faster update mode for the oscillator's extremities, which may result in less stable range boundaries.
Scale Offset: When enabled, delays updating minimum and maximum values to enhance signal directionality, allowing the signal to occasionally exceed normal bounds.
Candle Color: Enables coloring of candles based on the current directional signal of the oscillator.
Labels:
Enable BOS/CHoCH Labels: Activates the display of BOS (Break of Structure) and CHoCH (Change of Character) labels on the chart.
Visual Padding: Turns on additional visual padding at the top and bottom of the chart to accommodate labels. Determines the amount of visual padding added to the chart for label display.
Divergence:
Divergence Pivot: Defines the number of bars to the right of the pivot in divergence calculations, influencing the oscillator's responsiveness.
Divergence Pivot Forward: Directly impacts latency. Longer periods results in more accurate results at the sacrifice of delay.
Upper Range: Sets the upper range limit for divergence calculations, influencing the oscillator's sensitivity to larger trends.
Lower Range: Determines the lower range limit for divergence calculations, affecting the oscillator's sensitivity to shorter trends.
Symbol: Allows selection of the label style for divergence indicators, with options for text or symbolic representation.
Regular Bullish: Activates the detection and marking of regular bullish divergences in the oscillator.
Hidden Bullish: Enables the identification and display of hidden bullish divergences.
Regular Bearish: Turns on the feature to detect and highlight regular bearish divergences.
Hidden Bearish: Activates the functionality for detecting and displaying hidden bearish divergences.
Color:
Bullish: Determines the minimum/maximum color gradient for bullish signals, impacting the chart's visual appearance.
Bearish: Defines the minimum/maximum color gradient for bearish signals, affecting their visual representation.
Average: Specifies the color for the average line of the oscillator, enhancing chart readability.
CHoCH: Sets the color for bullish/bearish CHoCH (Change of Character) signals.
Premium/Discount: Determines the color for the premium/discount zone in the oscillator's visual representation.
Text Color: Sets the color for the text in BoS/CHoCH labels.
Regular Bullish: Defines the color used to represent regular bullish divergences.
Hidden Bullish: Specifies the color for hidden bullish divergences.
Regular Bearish: Determines the color for hidden bearish divergences.
Divergence Text Color: Specifies the color for the text in divergence labels.






















