[laoowai]BNB_USDT_3m_3Commas_Bollinger_MACD_RSI_StrategyBNB_USDT _3m
Release Notes:
Time: 3min
Pair: BNB_USDT
Use: {{strategy.order.alert_message}}
What's the difference with 3Commas Bollinger Strategy by tedwardd:
1. Initial capital: 1210 USDT (10$ Base order / 400$*3 Safety order), if you will change, please change JUST safety order volume or number of safety orders 2-3
2. Using just 2(3) safety order (original script 4)
3. More high-performance strategy for BNB_USDT
4. Using MACD to sell order (original script take profit by scale), thanks Drun30 .
5. Using RSI to analyze the market conditions.
Need to change:
bot_id = input(title="3Commas Bot ID", defval=" YOUR DATA ")
email_token = input(title="Bot Email Token", defval=" YOUR DATA ")
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
FAQ copy from tedwardd
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
This strategy is intended for use as a way of backtesting various parameters available on 3commas.
The primary inputs for the strategy are:
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
// USER INPUTS
Short MA Window - The length of the Short moving average
Long MA Window - The length of the Long moving average
Upper Band Offset - The offset to use for the upper bollinger offset
Lower Band Offset - The offset to use for the lower bollinger offset
Long Stop Loss % - The stop loss percentage to test
Long Take Profit % - The Take profit percentage to test
Initial SO Deviation % - The price deviation percentage required to place to first safety order
Safety Order Vol Step % - The volume scale to test
3Commas Bot ID - (self-explanatory)
Bot Email Token - Found in the deal start message for your bot (see link in the previous section for details)
3Commas Bot Trading Pair - The pair to include for composite bot start deals (should match the format of 3commas, not TradingView IE. USDT_BTC not BTCUSDT )
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Start Date, Month, Year and End Date, Month, and Year all apply to the backtesting window. By default, it will use as much data as it can give the current period select (there is less historical data available for periods below 1H) back as far as 2016 (there appears to be no historical data on Trading view much before this). If you would like to test a different period of time, just change these values accordingly.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Composite bot using a Bollinger band type trading strategy. While its primary intention is to provide users a way of backtesting bot parameters, it can also be used to trigger a deal start by either using the {{strategy.order.alert_message}} field in your alert and providing the bot details in the configuration screen for the strategy or by including the usual deal start message provided by 3commas.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Original script:
1. 3Commas Bollinger Strategy by tedwardd
2. Momentum Strategy ( BTC /USDT; 1h) - MACD (with source code) by Drun30
ค้นหาในสคริปต์สำหรับ "backtesting"
3Commas Bollinger StrategyThis strategy is intended for use as a way of backtesting various parameters available on 3commas.io composite bot using a bollinger band type trading strategy. While it's primary intention is to provide users a way of backtesting bot parameters, it can also be used to trigger a deal start by either using the {{strategy.open.alert_message}} field in your alert and providing the bot details in the configuration screen for the strategy or by including the usual deal start message provided by 3commas. You can find more information about how to do this from help.3commas.io
The primary inputs for the strategy are:
// USER INPUTS
Short MA Window - The length of the Short moving average
Long MA Window - The length of the Long moving average
Upper Band Offset - The offset to use for the upper bollinger offset
Lower Band Offset - The offset to use for the lower bollinger offset
Long Stop Loss % - The stop loss percentage to test
Long Take Profit % - The Take profit percentage to test
Initial SO Deviation % - The price deviation percentage required to place to first safety order
Safety Order Vol Step % - The volume scale to test
3Commas Bot ID - (self explanatory)
Bot Email Token - Found in the deal start message for your bot (see link in previous section for details)
3Commas Bot Trading Pair - The pair to include for composite bot start deals (should match format of 3commas, not TradingView IE. USDT_BTC not BTCUSDT)
Start Date, Month, Year and End Date, Month and Year all apply to the backtesting window. By default it will use as much data as it can given the current period select (there is less historical data available for periods below 1H) back as far as 2016 (there appears to be no historical data on Trading view much before this). If you would like to test a different period of time, just change these values accordingly.
Known Issues
Currently there are a couple of issues with this strategy that you should be aware of. I may fix them at some point in the future but they don't really bug me so this is more for informational purposes than a promise that they may one day be fixed.
Does not test trailing take profit
Number of safety orders and Safety Order Step Scale are currently not user configurable (must edit source code)
Using the user configuration to generate deal start message assumes you are triggering a composite bot, not a simple bot.
Efficient Work [LucF]█ OVERVIEW
Efficient Work measures the ratio of price movement from close to close ( resulting work ) over the distance traveled to the high and low before settling down at the close ( total work ). The closer the two values are, the more Efficient Work approaches its maximum value of +1 for an up move or -1 for a down move. When price does not change, Efficient Work is zero.
Higher values of Efficient Work indicate more efficient price travel between the close of two successive bars, which I interpret to be more significant, regardless of the move's amplitude. Because it measures the direction and strength of price changes rather than their amplitude, Efficient Work may be thought of as a sentiment indicator.
█ CONCEPTS
This oscillator's design stems from a few key concepts.
Relative Levels
Other than the centerline, relative rather than absolute levels are used to identify levels of interest. Accordingly, no fixed levels correspond to overbought/oversold conditions. Relative levels of interest are identified using:
• A Donchian channel (historical highs/lows).
• The oscillator's position relative to higher timeframe values.
• Oscillator levels following points in time where a divergence is identified.
Higher timeframes
Two progressively higher timeframes are used to calculate larger-context values for the oscillator. The rationale underlying the use of timeframes higher than the chart's is that, while they change less frequently than the values calculated at the chart's resolution, they are more meaningful because more work (trader activity) is required to calculate them. Combining the immediacy of values calculated at the chart's resolution to higher timeframe values achieves a compromise between responsiveness and reliability.
Divergences as points of interest rather than directional clues
A very simple interpretation of what constitutes a divergence is used. A divergence is defined as a discrepancy between any bar's direction and the direction of the signal line on that same bar. No attempt is made to attribute a directional bias to divergences when they occur. Instead, the oscillator's level is saved and subsequent movement of the oscillator relative to the saved level is what determines the bullish/bearish state of the oscillator.
Conservative coloring scheme
Several additive coloring conditions allow the bull/bear coloring of the oscillator's main line to be restricted to specific areas meeting all the selected conditions. The concept is built on the premise that most of the time, an oscillator's value should be viewed as mere noise, and that somewhat like price, it only occasionally conveys actionable information.
█ FEATURES
Plots
• Three lines can be plotted. They are named Main line , Line 2 and Line 3 . You decide which calculation to use for each line:
• The oscillator's value at the chart's resolution.
• The oscillator's value at a medium timeframe higher than the chart's resolution.
• The oscillator's value at the highest timeframe.
• An aggregate line calculated using a weighed average of the three previous lines (see the Aggregate Weights section of Inputs to configure the weights).
• The coloring conditions, divergence levels and the Hi/Lo channel always apply to the Main line, whichever calculation you decide to use for it.
• The color of lines 2 and 3 are fixed but can be set in the "Colors" section of Inputs.
• You can change the thickness of each line.
• When the aggregate line is displayed, higher timeframe values are only used in its calculation when they become available in the chart's history,
otherwise the aggregate line would appear much later on the chart. To indicate when each higher timeframe value becomes available,
a small label appears near the centerline.
• Divergences can be shown as small dots on the centerline.
• Divergence levels can be shown. The level and fill are determined by the oscillator's position relative to the last saved divergence level.
• Bull/bear markers can be displayed. They occur whenever a new bull/bear state is determined by the "Main Line Coloring Conditions".
• The Hi/Lo (Donchian) channel can be displayed, and its period defined.
• The background can display the state of any one of 11 different conditions.
• The resolutions used for the higher timeframes can be displayed to the right of the last bar's value.
• Four key values are always displayed in the Data Window (fourth icon down to the right of your chart):
oscillator values for the chart, medium and highest timeframes, and the oscillator's instant value before it is averaged.
Main Line Coloring Conditions
• Nine different conditions can be selected to determine the bull/bear coloring of the main line. All conditions set to "ON" must be met to determine the bull/bear state.
• A volatility state can also be used to filter the conditions.
• When the coloring conditions and the filter do not allow for a bull/bear state to be determined, the neutral color is used.
Signal
• Seven different averages can be used to calculate the average of the oscillator's value.
• The average's period can be set. A period of one will show the instant value of the oscillator,
provided you don't use linear regression or the Hull MA as they do not work with a period of one.
• An external signal can be used as the oscillator's instant value. If an already averaged external value is used, set the period to one in this indicator.
• For the cases where an external signal is used, a centerline value can be set.
Higher Timeframes
• The two higher timeframes are named Medium timeframe and Highest timeframe . They can be determined using one of three methods:
• Auto-steps: the higher timeframes are determined using the chart's resolution. If the chart uses a seconds resolution, for example,
the medium and highest resolutions will be 15 and 60 minutes.
• Multiples: the timeframes are calculated using a multiple of the chart's resolution, which you can set.
• Fixed: the set timeframes do not change with the chart's resolution.
Repainting
• Repainting can be controlled separately for the chart's value and the higher timeframe values.
• The default is a repainting chart value and non-repainting higher timeframe values. The Aggregate line will thus repaint by default,
as it uses the chart's value along with the higher timeframes values.
Aggregate Weights
• The weight of each component of the Aggregate line can be set.
• The default is equal weights for the three components, meaning that the chart's value accounts for one third of the weight in the Aggregate.
High Volatility
• This provides control over the volatility filter used in the Main line's coloring conditions and the background display.
• Volatility is determined to be high when the short-term ATR is greater than the long-term ATR.
Colors
• You can define your own colors for all of the oscillator's plots.
• The default colors will perform well on both white and black chart backgrounds.
Alerts
• An alert can be defined for the script. The alert will trigger whenever a bull/bear marker appears in the indicator's display.
The particular combination of coloring conditions and the display of bull/bear markers when you create the alert will thus determine when the alert triggers.
Once the alerts are created, subsequent changes to the conditions controlling the display of markers will not affect the existing alert(s).
• You can create multiple alerts from this script, each triggering on different conditions.
Backtesting & Trading Engine Signal Line
• An invisible plot named "BTE Signal" is provided. It can be used as an entry signal when connected to the PineCoders Backtesting & Trading Engine as an external input.
It will generate an entry whenever a marker is displayed.
█ NOTES
• I do not know for sure if the calculations in Efficient Work are original. I apologize if they are not.
• Because this version of Efficient Work only has access to OHLC information, it cannot measure the total distance traveled through all of a bar's ticks, but the indicator nonetheless behaves in a manner consistent with the intentions underlying its design.
For Pine coders
This code was written using the following standards:
• The PineCoders Coding Conventions for Pine .
• A modified version of the PineCoders MTF Oscillator Framework and MTF Selection Framework .
MTF Oscillator Framework [PineCoders]This framework allows Pine coders to quickly build a complete multi-timeframe oscillator from any calculation producing values around a centerline, whether the values are bounded or not. Insert your calculation in the script and you have a ready-to-publish MTF Oscillator offering a plethora of presentation options and features.
█ HOW TO USE THE FRAMEWORK
1 — Insert your calculation in the `f_signal()` function at the top of the "Helper Functions" section of the script.
2 — Change the script's name in the `study()` declaration statement and the `alertcondition()` text in the last part of the "Plots" section.
3 — Adapt the default value used to initialize the CENTERLINE constant in the script's "Constants" section.
4 — If you want to publish the script, copy/paste the following description in your new publication's description and replace the "OVERVIEW" section with a description of your calculations.
5 — Voilà!
═════════════════════════════════════════════════════════════════════════
█ OVERVIEW
This oscillator calculates a directional value of True Range. When a bar is up, the positive value of True Range is used. A negative value is used when the bar is down. When there is no movement during the bar, a zero value is generated, even if True Range is different than zero. Because the unit of measure of True Range is price, the oscillator is unbounded (it does not have fixed upper/lower bounds).
True Range can be used as a metric for volatility, but by using a signed value, this oscillator will show the directional bias of progressively increasing/decreasing volatility, which can make it more useful than an always positive value of True Range.
The True Range calculation appeared for the first time in J. Welles Wilder's New Concepts in Technical Trading Systems book published in 1978. Wilder's objective was to provide a reliable measure of the effective movement—or range—between two bars, to measure volatility. True Range is also the building block used to calculate ATR (Average True Range), which calculates the average of True Range values over a given period using the `rma` averaging method—the same used in the calculation of another of Wilder's remarkable creations: RSI.
█ CONCEPTS
This oscillator's design stems from a few key concepts.
Relative Levels
Other than the centerline, relative rather than absolute levels are used to identify levels of interest. Accordingly, no fixed levels correspond to overbought/oversold conditions. Relative levels of interest are identified using:
• A Donchian channel (historical highs/lows).
• The oscillator's position relative to higher timeframe values.
• Oscillator levels following points in time where a divergence is identified.
Higher timeframes
Two progressively higher timeframes are used to calculate larger-context values for the oscillator. The rationale underlying the use of timeframes higher than the chart's is that, while they change less frequently than the values calculated at the chart's resolution, they are more meaningful because more work (trader activity) is required to calculate them. Combining the immediacy of values calculated at the chart's resolution to higher timeframe values achieves a compromise between responsiveness and reliability.
Divergences as points of interest rather than directional clues
A very simple interpretation of what constitutes a divergence is used. A divergence is defined as a discrepancy between any bar's direction and the direction of the signal line on that same bar. No attempt is made to attribute a directional bias to divergences when they occur. Instead, the oscillator's level is saved and subsequent movement of the oscillator relative to the saved level is what determines the bullish/bearish state of the oscillator.
Conservative coloring scheme
Several additive coloring conditions allow the bull/bear coloring of the oscillator's main line to be restricted to specific areas meeting all the selected conditions. The concept is built on the premise that most of the time, an oscillator's value should be viewed as mere noise, and that somewhat like price, it only occasionally conveys actionable information.
█ FEATURES
Plots
• Three lines can be plotted. They are named Main line , Line 2 and Line 3 . You decide which calculation to use for each line:
• The oscillator's value at the chart's resolution.
• The oscillator's value at a medium timeframe higher than the chart's resolution.
• The oscillator's value at the highest timeframe.
• An aggregate line calculated using a weighed average of the three previous lines (see the Aggregate Weights section of Inputs to configure the weights).
• The coloring conditions, divergence levels and the Hi/Lo channel always apply to the Main line, whichever calculation you decide to use for it.
• The color of lines 2 and 3 are fixed but can be set in the "Colors" section of Inputs.
• You can change the thickness of each line.
• When the aggregate line is displayed, higher timeframe values are only used in its calculation when they become available in the chart's history,
otherwise the aggregate line would appear much later on the chart. To indicate when each higher timeframe value becomes available,
a small label appears near the centerline.
• Divergences can be shown as small dots on the centerline.
• Divergence levels can be shown. The level and fill are determined by the oscillator's position relative to the last saved divergence level.
• Bull/bear markers can be displayed. They occur whenever a new bull/bear state is determined by the "Main Line Coloring Conditions".
• The Hi/Lo (Donchian) channel can be displayed, and its period defined.
• The background can display the state of any one of 11 different conditions.
• The resolutions used for the higher timeframes can be displayed to the right of the last bar's value.
• Four key values are always displayed in the Data Window (fourth icon down to the right of your chart):
oscillator values for the chart, medium and highest timeframes, and the oscillator's instant value before it is averaged.
Main Line Coloring Conditions
• Nine different conditions can be selected to determine the bull/bear coloring of the main line. All conditions set to "ON" must be met to determine the bull/bear state.
• A volatility state can also be used to filter the conditions.
• When the coloring conditions and the filter do not allow for a bull/bear state to be determined, the neutral color is used.
Signal
• Seven different averages can be used to calculate the average of the oscillator's value.
• The average's period can be set. A period of one will show the instant value of the oscillator,
provided you don't use linear regression or the Hull MA as they do not work with a period of one.
• An external signal can be used as the oscillator's instant value. If an already averaged external value is used, set the period to one in this indicator.
• For the cases where an external signal is used, a centerline value can be set.
Higher Timeframes
• The two higher timeframes are named Medium timeframe and Highest timeframe . They can be determined using one of three methods:
• Auto-steps: the higher timeframes are determined using the chart's resolution. If the chart uses a seconds resolution, for example,
the medium and highest resolutions will be 15 and 60 minutes.
• Multiples: the timeframes are calculated using a multiple of the chart's resolution, which you can set.
• Fixed: the set timeframes do not change with the chart's resolution.
Repainting
• Repainting can be controlled separately for the chart's value and the higher timeframe values.
• The default is a repainting chart value and non-repainting higher timeframe values. The Aggregate line will thus repaint by default,
as it uses the chart's value along with the higher timeframes values.
Aggregate Weights
• The weight of each component of the Aggregate line can be set.
• The default is equal weights for the three components, meaning that the chart's value accounts for one third of the weight in the Aggregate.
High Volatility
• This provides control over the volatility filter used in the Main line's coloring conditions and the background display.
• Volatility is determined to be high when the short-term ATR is greater than the long-term ATR.
Colors
• You can define your own colors for all of the oscillator's plots.
• The default colors will perform well on both white and black chart backgrounds.
Alerts
• An alert can be defined for the script. The alert will trigger whenever a bull/bear marker appears in the indicator's display.
The particular combination of coloring conditions and the display of bull/bear markers when you create the alert will thus determine when the alert triggers.
Once the alerts are created, subsequent changes to the conditions controlling the display of markers will not affect the existing alert(s).
• You can create multiple alerts from this script, each triggering on different conditions.
Backtesting & Trading Engine Signal Line
• An invisible plot named "BTE Signal" is provided. It can be used as an entry signal when connected to the PineCoders Backtesting & Trading Engine as an external input.
It will generate an entry whenever a marker is displayed.
Look first. Then leap.
VMDM - Volume, Momentum & Divergence Master [BullByte]VMDM - Volume, Momentum and Divergence Master
Educational Multi-Layer Market Structure Analysis System
Multi-factor divergence engine that scores RSI momentum, volume pressure, and institutional footprints into one non-repainting confluence rating (0-100).
WHAT THIS INDICATOR IS
VMDM is an educational indicator designed to teach traders how to recognize high-probability reversal and continuation patterns by analyzing four independent market dimensions simultaneously. Instead of relying on a single indicator that may produce frequent false signals, VMDM creates a confluence-based scoring system that weights multiple confirmation factors, helping you understand which setups have stronger technical backing and which are lower quality.
This is NOT a trading system or signal generator. It is a learning tool that visualizes complex market structure concepts in an accessible format for both coders and non-coders.
THE PROBLEM IT SOLVES
Most traders face these common challenges:
Challenge 1 - Indicator Overload: Running RSI, volume analysis, and divergence detection separately creates chart clutter and conflicting signals. You waste time cross-referencing multiple windows trying to determine if all factors align.
Challenge 2 - False Divergences: Standard divergence indicators trigger on every minor pivot, creating noise. Many divergences fail because they lack supporting evidence from volume or market structure.
Challenge 3 - Missed Context: A bullish RSI divergence means nothing if it occurs during weak volume or in the middle of strong distribution. Context determines quality.
Challenge 4 - Repainting Confusion: Many divergence scripts repaint, showing perfect historical signals that never actually triggered in real-time, leading to false confidence.
Challenge 5 - Institutional Pattern Recognition: Absorption zones, stop hunts, and exhaustion patterns are taught in trading education but difficult to identify systematically without manual analysis.
VMDM addresses all five challenges by combining complementary analytical layers into one transparent, non-repainting, confluence-weighted system with visual clarity.
WHY THIS SPECIFIC COMBINATION - MASHUP JUSTIFICATION
This indicator is NOT a random mashup of popular indicators. Each of the four layers serves a specific analytical purpose and together they create a complete market structure assessment framework.
THE FOUR ANALYTICAL LAYERS
LAYER 1 - RSI MOMENTUM DIVERGENCE (Trend Exhaustion Detection)
Purpose: Identifies when price momentum is weakening before price itself reverses.
Why RSI: The Relative Strength Index measures momentum on a bounded 0-100 scale, making divergence detection mathematically consistent across all assets and timeframes. Unlike raw price oscillators, RSI normalizes momentum regardless of volatility regime.
How It Contributes: Divergence between price pivots and RSI pivots reveals early momentum exhaustion. A lower price low with a higher RSI low (bullish regular divergence) signals sellers are losing strength even as price makes new lows. This is the PRIMARY signal generator in VMDM.
Limitation If Used Alone: RSI divergence by itself produces many false signals because momentum can remain weak during continued trends. It needs confirmation from volume and structural evidence.
LAYER 2 - VOLUME PRESSURE ANALYSIS (Buying vs Selling Intensity)
Purpose: Quantifies whether the current bar's volume reflects buying pressure or selling pressure based on where price closed within the bar's range.
Methodology: Instead of just measuring volume size, VMDM calculates WHERE in the bar range the close occurred. A close near the high on high volume indicates strong buying absorption. A close near the low indicates selling pressure. The calculation accounts for wick size (wicks reduce pressure quality) and uses percentile ranking over a lookback period to normalize pressure strength on a 0-100 scale.
Formula Concept:
Buy Pressure = Volume × (Close - Low) / (High - Low) × Wick Quality Factor
Sell Pressure = Volume × (High - Close) / (High - Low) × Wick Quality Factor
Net Pressure = Buy Pressure - Sell Pressure
Pressure Strength = Percentile Rank of Net Pressure over lookback period
Why Percentile Ranking: Absolute volume varies by asset and session. Percentile ranking makes 85th percentile pressure on low-volume crypto comparable to 85th percentile pressure on high-volume forex.
How It Contributes: When a bullish divergence occurs at a pivot low AND pressure strength is above 60 (strong buying), this adds 25 confluence points. It confirms that the divergence is occurring during actual accumulation, not just weak selling.
Limitation If Used Alone: Pressure analysis shows current bar intensity but cannot identify trend exhaustion or reversal timing. High buying pressure can exist during a strong uptrend with no reversal imminent.
LAYER 3 - BEHAVIORAL FOOTPRINT PATTERNS (Volume Anomaly Detection)
CRITICAL DISCLAIMER: The terms "institutional footprint," "absorption," "stop hunt," and "exhaustion" used in this indicator are EDUCATIONAL LABELS for specific price and volume behavioral patterns. These patterns are detected through technical analysis of publicly available price, volume, and bar structure data. This indicator does NOT have access to actual institutional order flow, market maker data, broker stop-loss locations, or any non-public data source. These pattern names are used because they are common terminology in trading education to describe these technical behaviors. The analysis is interpretive and based on observable price action, not privileged information.
Purpose: Detect volume anomalies and price patterns that historically correlate with potential reversal zones or trend continuation failure.
Pattern Type 1 - Absorption (Labeled as "ACCUMULATION" or "DISTRIBUTION")
Detection Criteria: Volume is more than 2x the moving average AND bar range is less than 50 percent of the average bar range.
Interpretation: High volume compressed into a tight range suggests large participants are absorbing supply (accumulation) or distribution (distribution) without allowing price to move significantly. This often precedes directional moves once absorption completes.
Visual: Colored box zone highlighting the absorption area.
Pattern Type 2 - Stop Hunt (Labeled as "BULL HUNT" or "BEAR HUNT")
Detection Criteria: Price penetrates a recent 10-bar high or low by a small margin (0.2 percent), then closes back inside the range on above-average volume (1.5x+).
Interpretation: Price briefly spikes beyond recent structure (likely triggering stop losses placed just beyond obvious levels) then reverses. This is a classic false breakout pattern often seen before reversals.
Visual: Label at the wick extreme showing hunt direction.
Pattern Type 3 - Exhaustion (Labeled as "SELL EXHAUST" or "BUY EXHAUST")
Detection Criteria: Lower wick is more than 2.5x the body size with volume above 1.8x average and RSI below 35 (sell exhaustion), OR upper wick more than 2.5x body size with volume above 1.8x average and RSI above 65 (buy exhaustion).
Interpretation: Large wicks with high volume and extreme RSI suggest aggressive buying or selling was met with equally aggressive rejection. This exhaustion often marks short-term extremes.
Visual: Label showing exhaustion type.
How These Contribute: When a divergence forms at a pivot AND one of these behavioral patterns is active, the confluence score increases by 20 points. This confirms the divergence is occurring during structural anomaly activity, not just normal price flow.
Limitation If Used Alone: These patterns can occur mid-trend and do not indicate direction without momentum context. Absorption in a strong uptrend may just be continuation accumulation.
LAYER 4 - CONFLUENCE SCORING MATRIX (Quality Weighting System)
Purpose: Translate all detected conditions into a single 0-100 quality score so you can objectively compare setups.
Scoring Breakdown:
Divergence Present: +30 points (primary signal)
Pressure Confirmation: +25 points (volume supports direction)
Behavioral Footprint Active: +20 points (structural anomaly present)
RSI Extreme: +15 points (RSI below 30 or above 70 at pivot)
Volume Spike: +10 points (current volume above 1.5x average)
Maximum Possible Score: 100 points
Why These Weights: The weights reflect reliability hierarchy based on backtesting observation. Divergence is the core signal (30 points), but without volume confirmation (25 points) many fail. Behavioral patterns add meaningful context (20 points). RSI extremes and volume spikes are secondary confirmations (15 and 10 points).
Quality Tiers:
90-100: TEXTBOOK (all factors aligned)
75-89: HIGH QUALITY (strong confluence)
60-74: VALID (meets minimum threshold)
Below 60: DEVELOPING (not displayed unless threshold lowered)
How It Contributes: The confluence score allows you to filter noise. You can set your minimum quality threshold in settings. Higher thresholds (75+) show fewer but higher-quality patterns. Lower thresholds (50-60) show more patterns but include lower-confidence setups. This teaches you to distinguish strong setups from weak ones.
Limitation: Confluence scoring is historical observation-based, not predictive guarantee. A 95-point setup can still fail. The score represents technical alignment, not future certainty.
WHY THIS COMBINATION WORKS TOGETHER
Each layer addresses a limitation in the others:
RSI Divergence identifies WHEN momentum is exhausting (timing)
Volume Pressure confirms WHETHER the exhaustion is accompanied by opposite-side accumulation (confirmation)
Behavioral Footprint shows IF structural anomalies support the reversal hypothesis (context)
Confluence Scoring weights ALL factors into an objective quality metric (filtering)
Using only RSI divergence gives you timing without confirmation. Using only volume pressure gives you intensity without directional context. Using only pattern detection gives you anomalies without trend exhaustion context. Using all four together creates a complete analytical framework where each layer compensates for the others' weaknesses.
This is not a mashup for the sake of combining indicators. It is a structured analytical system where each component has a defined role in a multi-dimensional market assessment process.
HOW TO READ THE INDICATOR - VISUAL ELEMENTS GUIDE
VMDM displays up to five visual layer types. You can enable or disable each layer independently in settings under "Visual Layers."
VISUAL LAYER 1 - MARKET STRUCTURE (Pivot Points and Lines)
What You See:
Small labels at swing highs and lows marked "PH" (Pivot High) and "PL" (Pivot Low) with horizontal dashed lines extending right from each pivot.
What It Means:
These are CONFIRMED pivots, not real-time. A pivot low appears AFTER the required right-side confirmation bars pass (default 3 bars). This creates a delay but prevents repainting. The pivot only appears once it is mathematically confirmed.
The horizontal lines represent support (from pivot lows) and resistance (from pivot highs) levels where price previously found significant rejection.
Color Coding:
Green label and line: Pivot Low (potential support)
Red label and line: Pivot High (potential resistance)
How To Use:
These pivots are the foundation for divergence detection. Divergence is only calculated between confirmed pivots, ensuring all signals are non-repainting. The lines help you see historical structure levels.
VISUAL LAYER 2 - PRESSURE ZONES (Background Color)
What You See:
Subtle background color shading on bars - light green or light red tint.
What It Means:
This visualizes volume pressure strength in real-time.
Color Coding:
Light Green Background: Pressure Strength above 70 (strong buying pressure - price closing near highs on volume)
Light Red Background: Pressure Strength below 30 (strong selling pressure - price closing near lows on volume)
No Color: Neutral pressure (pressure between 30-70)
How To Use:
When a bullish divergence pattern appears during green pressure zones, it suggests the divergence is forming during accumulation. When a bearish divergence appears during red zones, distribution is occurring. Pressure zones help you filter divergences - those forming in supportive pressure environments have higher probability.
VISUAL LAYER 3 - DIVERGENCE LINES (Dotted Connectors)
What You See:
Dotted lines connecting two pivot points (either two pivot lows or two pivot highs).
What It Means:
A divergence has been detected between those two pivots. The line connects the price pivots where RSI showed opposite behavior.
Color Coding:
Bright Green Line: Bullish divergence (regular or hidden)
Bright Red Line: Bearish divergence (regular or hidden)
How To Use:
The divergence line appears ONLY after the second pivot is confirmed (delayed by right-side confirmation bars). This is intentional to prevent repainting. When you see the line appear, it means:
For Bullish Regular Divergence:
Price made a lower low (second pivot lower than first)
RSI made a higher low (RSI at second pivot higher than first)
Interpretation: Downtrend losing momentum
For Bullish Hidden Divergence:
Price made a higher low (second pivot higher than first)
RSI made a lower low (RSI at second pivot lower than first)
Interpretation: Uptrend continuation likely (pullback within uptrend)
For Bearish Regular Divergence:
Price made a higher high (second pivot higher than first)
RSI made a lower high (RSI at second pivot lower than first)
Interpretation: Uptrend losing momentum
For Bearish Hidden Divergence:
Price made a lower high (second pivot lower than first)
RSI made a higher high (RSI at second pivot higher than first)
Interpretation: Downtrend continuation likely (bounce within downtrend)
If "Show Consolidated Analysis Label" is disabled, a small label will appear on the divergence line showing the divergence type abbreviation.
VISUAL LAYER 4 - BEHAVIORAL FOOTPRINT MARKERS
What You See:
Boxes, labels, and markers at specific bars showing pattern detection.
ABSORPTION ZONES (Boxes):
Colored rectangular boxes spanning one or more bars.
Purple Box: Accumulation absorption zone (high volume, tight range, bullish close)
Red Box: Distribution absorption zone (high volume, tight range, bearish close)
If absorption continues for multiple consecutive bars, the box extends and a counter appears in the label showing how many bars the absorption lasted.
What It Means: Large volume is being absorbed without significant price movement. This often precedes directional breakouts once the absorption phase completes.
STOP HUNT MARKERS (Labels):
Small labels below or above wicks labeled "BULL HUNT" or "BEAR HUNT" (may show bar count if consecutive).
What It Means:
BULL HUNT : Price spiked below recent lows then reversed back up on volume - likely triggered sell stops before reversing
BEAR HUNT : Price spiked above recent highs then reversed back down on volume - likely triggered buy stops before reversing
EXHAUSTION MARKERS (Labels):
Labels showing "SELL EXHAUST" or "BUY EXHAUST."
What It Means:
SELL EXHAUST : Large lower wick with high volume and low RSI - aggressive selling met with strong rejection
BUY EXHAUST : Large upper wick with high volume and high RSI - aggressive buying met with strong rejection
How To Use:
These markers help you identify WHERE structural anomalies occurred. When a divergence signal appears AT THE SAME TIME as one of these patterns, the confluence score increases. You are looking for alignment - divergence + behavioral pattern + pressure confirmation = high-quality setup.
VISUAL LAYER 5 - CONSOLIDATED ANALYSIS LABEL (Main Pattern Signal)
What You See:
A large label appearing at pivot points (or in real-time mode, at current bar) containing full pattern analysis.
Label Appearance:
Depending on your "Use Compact Label Format" setting:
COMPACT MODE (Single Line):
Example: "BULLISH REGULAR | Q:HIGH QUALITY C:82"
Breakdown:
BULLISH REGULAR: Divergence type detected
Q:HIGH QUALITY: Pattern quality tier
C:82: Confluence score (82 out of 100)
FULL MODE (Multi-Line Detailed):
Example:
PATTERN DETECTED
-------------------
BULLISH REGULAR
Quality: HIGH QUALITY
Price: Lower Low
Momentum: Higher Low
Signal: Weakening Downtrend
CONFLUENCE: 82/100
-------------------
Divergence: 30
Pressure: 25
Institutional: 20
RSI Extreme: 0
Volume: 10
Breakdown:
Top section: Pattern type and quality
Middle section: Divergence explanation (what price did vs what RSI did)
Bottom section: Confluence score with itemized breakdown showing which factors contributed
Label Position:
In Confirmed modes: Label appears AT the pivot point (delayed by confirmation bars)
In Real-time mode: Label appears at current bar as conditions develop
Label Color:
Gold: Textbook quality (90+ confluence)
Green: High quality (75-89 confluence)
Blue: Valid quality (60-74 confluence)
How To Use:
This is your primary decision-making label. When it appears:
Check the divergence type (regular divergences are reversal signals, hidden divergences are continuation signals)
Review the quality tier (textbook and high quality have better historical win rates)
Examine the confluence breakdown to see which factors are present and which are missing
Look at the chart context (trend, support/resistance, timeframe)
Use this information to assess whether the setup aligns with your strategy
The label does NOT tell you to buy or sell. It tells you a technical pattern has formed and provides the quality assessment. Your trading decision must incorporate risk management, market context, and your strategy rules.
UNDERSTANDING THE THREE DETECTION MODES
VMDM offers three signal detection modes in settings to accommodate different trading styles and learning objectives.
MODE 1: "Confluence Only (Real-Time)"
How It Works: Displays signals AS THEY DEVELOP on the current bar without waiting for pivot confirmation. The system calculates confluence score from pressure, volume, RSI extremes, and behavioral patterns. Divergence signals are NOT required in this mode.
Delay: ZERO - signals appear immediately.
Use Case: Real-time scanning for high-confluence zones without divergence requirement. Useful for intraday traders who want immediate alerts when multiple factors align.
Tradeoff: More frequent signals but includes setups without confirmed divergence. Higher false signal rate. Signals can change as the bar develops (not repainting in historical bars, but current bar updates).
Visual Behavior: Labels appear at the current bar. No divergence lines unless divergence happens to be present.
MODE 2: "Divergence + Confluence (Confirmed)" - DEFAULT RECOMMENDED
How It Works: Full system engagement. Signals appear ONLY when:
A pivot is confirmed (requires right-side confirmation bars to pass)
Divergence is detected between current pivot and previous pivot
Total confluence score meets or exceeds your minimum threshold
Delay: Equal to your "Pivot Right Bars" setting (default 3 bars). This means signals appear 3 bars AFTER the actual pivot formed.
Use Case: Highest-quality, non-repainting signals for swing traders and learners who want to study confirmed pattern completion.
Tradeoff: Delayed signals. You will not receive the signal until confirmation occurs. In fast-moving markets, price may have already moved significantly by the time the signal appears.
Visual Behavior: Labels appear at the historical pivot location (in the past). Divergence lines connect the two pivots. This is the most educational mode because it shows completed, confirmed patterns.
Non-Repainting Guarantee: Yes. Once a signal appears, it never disappears or changes.
MODE 3: "Divergence + Confluence (Relaxed)"
How It Works: Same as Confirmed mode but with adaptive thresholds. If confluence is very high (10 points above threshold), the signal may appear even if some factors are weak. If divergence is present but confluence is slightly below threshold (within 10 points), it may still appear.
Delay: Same as Confirmed mode (right-side confirmation bars).
Use Case: Slightly more signals than Confirmed mode for traders willing to accept near-threshold setups.
Tradeoff: More signals but lower average quality than Confirmed mode.
Visual Behavior: Same as Confirmed mode.
DASHBOARD GUIDE - READING THE METRICS
The dashboard appears in the corner of your chart (position selectable in settings) and provides real-time market state analysis.
You can choose between four dashboard detail levels in settings: Off, Compact, Optimized (default), Full.
DASHBOARD ROW EXPLANATIONS
ROW 1 - Header Information
Left: Current symbol and timeframe
Center: "VMDM "
Right: Version number
ROW 2 - Mode and Delay
Shows which detection mode you are using and the signal delay.
Example: "CONFIRMED | Delay: 3 bars"
This reminds you that signals in confirmed mode appear 3 bars after the pivot forms.
ROW 3 - Market Regime
Format: "TREND UP HV" or "RANGING NV"
First Part - Trend State:
TREND UP: 20 EMA above 50 EMA with strong separation
TREND DOWN: 20 EMA below 50 EMA with strong separation
RANGING: EMAs close together, low trend strength
TRANSITION: Between trending and ranging states
Second Part - Volatility State:
HV: High Volatility (current ATR more than 1.3x the 50-bar average ATR)
NV: Normal Volatility (current ATR between 0.7x and 1.3x average)
LV: Low Volatility (current ATR less than 0.7x average)
Third Column: Volatility ratio (example: "1.45x" means current ATR is 1.45 times normal)
How To Use: Regime context helps you interpret signals. Reversal divergences are more reliable in ranging or transitional regimes. Continuation divergences (hidden) are more reliable in trending regimes. High volatility means wider stops may be needed.
ROW 4 - Pressure
Shows current volume pressure state.
Format: "BUYING | ██████████░░░░░░░░░"
States:
BUYING : Pressure strength above 60 (closes near highs)
SELLING : Pressure strength below 40 (closes near lows)
NEUTRAL : Pressure strength between 40-60
Bar Visualization: Each block represents 10 percentile points. A full bar (10 filled blocks) = 100th percentile pressure.
Color: Green for buying, red for selling, gray for neutral.
How To Use: When pressure aligns with divergence direction (bullish divergence during buying pressure), confluence is stronger.
ROW 5 - Volume and RSI
Format: "1.8x | RSI 68 | OB"
First Value: Current volume ratio (1.8x = volume is 1.8 times the moving average)
Second Value: Current RSI reading
Third Value: RSI state
OB: Overbought (RSI above 70)
OS: Oversold (RSI below 30)
Blank: Neutral RSI
How To Use: Volume spikes (above 1.5x) during divergence formation add confluence. RSI extremes at pivots add confluence.
ROW 6 - Behavioral Footprint
Format: "BULL HUNT | 2 bars"
Shows the most recent behavioral pattern detected and how long ago.
States:
ACCUMULATION / DISTRIBUTION: Absorption detected
BULL HUNT / BEAR HUNT: Stop hunt detected
SELL EXHAUST / BUY EXHAUST: Exhaustion detected
SCANNING: No recent pattern
NOW: Pattern is active on current bar
How To Use: When footprint activity is recent (within 50 bars) or active now, it adds context to divergence signals forming in that area.
ROW 7 - Current Pattern
Shows the divergence type currently detected (if any).
Examples: "BULLISH REGULAR", "BEARISH HIDDEN", "Scanning..."
Quality: Shows pattern quality (TEXTBOOK, HIGH QUALITY, VALID)
How To Use: This tells you what type of signal is active. Regular divergences are reversal setups. Hidden divergences are continuation setups.
ROW 8 - Session Summary
Format: "14 events | A3 H8 E3"
First Value: Total institutional events this session
Breakdown:
A: Absorption events
H: Stop hunt events
E: Exhaustion events
How To Use: High event counts suggest an active, volatile session with frequent structural anomalies. Low counts suggest quiet, orderly price action.
ROW 9 - Confluence Score (Optimized/Full mode only)
Format: "78/100 | ████████░░"
Shows current real-time confluence score even if no pattern is confirmed yet.
How To Use: Watch this in real-time to see how close you are to pattern formation. When it exceeds your threshold and divergence forms, a signal will appear (after confirmation delay).
ROW 10 - Patterns Studied (Optimized/Full mode only)
Format: "47 patterns | 12 bars ago"
First Value: Total confirmed patterns detected since chart loaded
Second Value: How many bars since the last confirmed pattern appeared
How To Use: Helps you understand pattern frequency on your selected symbol and timeframe. If many bars have passed since last pattern, market may be trending without reversal opportunities.
ROW 11 - Bull/Bear Ratio (Optimized/Full mode only)
Format: "28:19 | BULL"
Shows count of bullish vs bearish patterns detected.
Balance:
BULL: More bullish patterns detected (suggests market has had more bullish reversals/continuations)
BEAR: More bearish patterns detected
BAL: Equal counts
How To Use: Extreme imbalances can indicate directional bias in the studied period. A heavily bullish ratio in a downtrend might suggest frequent failed rallies (bearish continuation). Context matters.
ROW 12 - Volume Ratio Detail (Optimized/Full mode only)
Shows current volume vs average volume in absolute terms.
Example: "1.4x | 45230 / 32300"
How To Use: Confirms whether current activity is above or below normal.
ROW 13 - Last Institutional Event (Full mode only)
Shows the most recent institutional pattern type and how many bars ago it occurred.
Example: "DISTRIBUTION | 23 bars"
How To Use: Tracks recency of last anomaly for context.
SETTINGS GUIDE - EVERY PARAMETER EXPLAINED
PERFORMANCE SECTION
Enable All Visuals (Master Toggle)
Default: ON
What It Does: Master kill switch for ALL visual elements (labels, lines, boxes, background colors, dashboard). When OFF, only plot outputs remain (invisible unless you open data window).
When To Change: Turn OFF on mobile devices, 1-second charts, or slow computers to improve performance. You can still receive alerts even with visuals disabled.
Impact: Dramatic performance improvement when OFF, but you lose all visual feedback.
Maximum Object History
Default: 50 | Range: 10-100
What It Does: Limits how many of each object type (labels, lines, boxes) are kept in memory. Older objects beyond this limit are deleted.
When To Change: Lower to 20-30 on fast timeframes (1-minute charts) to prevent slowdown. Increase to 100 on daily charts if you want more historical pattern visibility.
Impact: Lower values = better performance but less historical visibility. Higher values = more history visible but potential slowdown on fast timeframes.
Alert Cooldown (Bars)
Default: 5 | Range: 1-50
What It Does: Minimum number of bars that must pass before another alert of the same type can fire. Prevents alert spam when multiple patterns form in quick succession.
When To Change: Increase to 20+ on 1-minute charts to reduce noise. Decrease to 1-2 on daily charts if you want every pattern alerted.
Impact: Higher cooldown = fewer alerts. Lower cooldown = more alerts.
USER EXPERIENCE SECTION
Show Enhanced Tooltips
Default: ON
What It Does: Enables detailed hover-over tooltips on labels and visual elements.
When To Change: Turn OFF if you encounter Pine Script compilation errors related to tooltip arguments (rare, platform-specific issue).
Impact: Minimal. Just adds helpful hover text.
MARKET STRUCTURE DETECTION SECTION
Pivot Left Bars
Default: 3 | Range: 2-10
What It Does: Number of bars to the LEFT of the center bar that must be higher (for pivot low) or lower (for pivot high) than the center bar for a pivot to be valid.
Example: With value 3, a pivot low requires the center bar's low to be lower than the 3 bars to its left.
When To Change:
Increase to 5-7 on noisy timeframes (1-minute charts) to filter insignificant pivots
Decrease to 2 on slow timeframes (daily charts) to catch more pivots
Impact: Higher values = fewer, more significant pivots = fewer signals. Lower values = more frequent pivots = more signals but more noise.
Pivot Right Bars
Default: 3 | Range: 2-10
What It Does: Number of bars to the RIGHT of the center bar that must pass for confirmation. This creates the non-repainting delay.
Example: With value 3, a pivot is confirmed 3 bars AFTER it forms.
When To Change:
Increase to 5-7 for slower, more confirmed signals (better for swing trading)
Decrease to 2 for faster signals (better for intraday, but still non-repainting)
Impact: Higher values = longer delay but more reliable confirmation. Lower values = faster signals but less confirmation. This setting directly controls your signal delay in Confirmed and Relaxed modes.
Minimum Confluence Score
Default: 60 | Range: 40-95
What It Does: The threshold score required for a pattern to be displayed. Patterns with confluence scores below this threshold are not shown.
When To Change:
Increase to 75+ if you only want high-quality textbook setups (fewer signals)
Decrease to 50-55 if you want to see more developing patterns (more signals, lower average quality)
Impact: This is your primary signal filter. Higher threshold = fewer, higher-quality signals. Lower threshold = more signals but includes weaker setups. Recommended starting point is 60-65.
TECHNICAL PERIODS SECTION
RSI Period
Default: 14 | Range: 5-50
What It Does: Lookback period for RSI calculation.
When To Change:
Decrease to 9-10 for faster, more sensitive RSI that detects shorter-term momentum changes
Increase to 21-28 for slower, smoother RSI that filters noise
Impact: Lower values make RSI more volatile (more frequent extremes and divergences). Higher values make RSI smoother (fewer but more significant divergences). 14 is industry standard.
Volume Moving Average Period
Default: 20 | Range: 10-200
What It Does: Lookback period for calculating average volume. Current volume is compared to this average to determine volume ratio.
When To Change:
Decrease to 10-14 for shorter-term volume comparison (more sensitive to recent volume changes)
Increase to 50-100 for longer-term volume comparison (smoother, less sensitive)
Impact: Lower values make volume ratio more volatile. Higher values make it more stable. 20 is standard.
ATR Period
Default: 14 | Range: 5-100
What It Does: Lookback period for Average True Range calculation used for volatility measurement and label positioning.
When To Change: Rarely needs adjustment. Use 7-10 for faster volatility response, 21-28 for slower.
Impact: Affects volatility ratio calculation and visual label spacing. Minimal impact on signals.
Pressure Percentile Lookback
Default: 50 | Range: 10-300
What It Does: Lookback period for calculating volume pressure percentile ranking. Your current pressure is ranked against the pressure of the last X bars.
When To Change:
Decrease to 20-30 for shorter-term pressure context (more responsive to recent changes)
Increase to 100-200 for longer-term pressure context (smoother rankings)
Impact: Lower values make pressure strength more sensitive to recent bars. Higher values provide more stable, long-term pressure assessment. Capped at 300 for performance reasons.
SIGNAL DETECTION SECTION
Signal Detection Mode
Default: "Divergence + Confluence (Confirmed)"
Options:
Confluence Only (Real-time)
Divergence + Confluence (Confirmed)
Divergence + Confluence (Relaxed)
What It Does: Selects which detection logic mode to use (see "Understanding The Three Detection Modes" section above).
When To Change: Use Confirmed for learning and non-repainting signals. Use Real-time for live scanning without divergence requirement. Use Relaxed for slightly more signals than Confirmed.
Impact: Fundamentally changes when and how signals appear.
VISUAL LAYERS SECTION
All toggles default to ON. Each controls visibility of one visual layer:
Show Market Structure: Pivot markers and support/resistance lines
Show Pressure Zones: Background color shading
Show Divergence Lines: Dotted lines connecting pivots
Show Institutional Footprint Markers: Absorption boxes, hunt labels, exhaustion labels
Show Consolidated Analysis Label: Main pattern detection label
Use Compact Label Format
Default: OFF
What It Does: Switches consolidated label between single-line compact format and multi-line detailed format.
When To Change: Turn ON if you find full labels too large or distracting.
Impact: Visual clarity vs. information density tradeoff.
DASHBOARD SECTION
Dashboard Mode
Default: "Optimized"
Options: Off, Compact, Optimized, Full
What It Does: Controls how much information the dashboard displays.
Off: No dashboard
Compact: 8 rows (essential metrics only)
Optimized: 12 rows (recommended balance)
Full: 13 rows (every available metric)
Dashboard Position
Default: "Top Right"
Options: Top Right, Top Left, Bottom Right, Bottom Left
What It Does: Screen corner where dashboard appears.
HOW TO USE VMDM - PRACTICAL WORKFLOW
STEP 1 - INITIAL SETUP
Add VMDM to your chart
Select your detection mode (Confirmed recommended for learning)
Set your minimum confluence score (start with 60-65)
Adjust pivot parameters if needed (default 3/3 is good for most timeframes)
Enable the visual layers you want to see
STEP 2 - CHART ANALYSIS
Let the indicator load and analyze historical data
Review the patterns that appear historically
Examine the confluence scores - notice which patterns had higher scores
Observe which patterns occurred during supportive pressure zones
Notice the divergence line connections - understand what price vs RSI did
STEP 3 - PATTERN RECOGNITION LEARNING
When a consolidated analysis label appears:
Read the divergence type (regular or hidden, bullish or bearish)
Check the quality tier (textbook, high quality, or valid)
Review the confluence breakdown - which factors contributed
Look at the chart context - where is price relative to structure, trend, etc.
Observe the behavioral footprint markers nearby - do they support the pattern
STEP 4 - REAL-TIME MONITORING
Watch the dashboard for real-time regime and pressure state
Monitor the current confluence score in the dashboard
When it approaches your threshold, be alert for potential pattern formation
When a new pattern appears (after confirmation delay), evaluate it using the workflow above
Use your trading strategy rules to decide if the setup aligns with your criteria
STEP 5 - POST-PATTERN OBSERVATION
After a pattern appears:
Mark the level on your chart
Observe what price does after the pattern completes
Did price respect the reversal/continuation signal
What was the confluence score of patterns that worked vs. those that failed
Learn which quality tiers and confluence levels produce better results on your specific symbol and timeframe
RECOMMENDED TIMEFRAMES AND ASSET CLASSES
VMDM is timeframe-agnostic and works on any asset with volume data. However, optimal performance varies:
BEST TIMEFRAMES
15-Minute to 1-Hour: Ideal balance of signal frequency and reliability. Pivot confirmation delay is acceptable. Sufficient volume data for pressure analysis.
4-Hour to Daily: Excellent for swing trading. Very high-quality signals. Lower frequency but higher significance. Recommended for learning because patterns are clearer.
1-Minute to 5-Minute: Works but requires adjustment. Increase pivot bars to 5-7 for filtering. Decrease max object history to 30 for performance. Expect more noise.
Weekly/Monthly: Works but very infrequent signals. Increase confluence threshold to 70+ to ensure only major patterns appear.
BEST ASSET CLASSES
Forex Majors: Excellent volume data and clear trends. Pressure analysis works well.
Crypto (Major Pairs): Good volume data. High volatility makes divergences more pronounced. Works very well.
Stock Indices (SPY, QQQ, etc.): Excellent. Clean price action and reliable volume.
Individual Stocks: Works well on high-volume stocks. Low-volume stocks may produce unreliable pressure readings.
Commodities (Gold, Oil, etc.): Works well. Clear trends and reactions.
WHAT THIS INDICATOR CANNOT DO - LIMITATIONS
LIMITATION 1 - It Does Not Predict The Future
VMDM identifies when technical conditions align historically associated with potential reversals or continuations. It does not predict what will happen next. A textbook 95-confluence pattern can still fail if fundamental events, news, or larger timeframe structure override the setup.
LIMITATION 2 - Confirmation Delay Means You Miss Early Entry
In Confirmed and Relaxed modes, the non-repainting design means you receive signals AFTER the pivot is confirmed. Price may have already moved significantly by the time you receive the signal. This is the tradeoff for non-repainting reliability. You can use Real-time mode for faster signals but sacrifice divergence confirmation.
LIMITATION 3 - It Does Not Tell You Position Sizing or Risk Management
VMDM provides technical pattern analysis. It does not calculate stop loss levels, take profit targets, or position sizing. You must apply your own risk management rules. Never risk more than you can afford to lose based on a technical signal.
LIMITATION 4 - Volume Pressure Analysis Requires Reliable Volume Data
On assets with thin volume or unreliable volume reporting, pressure analysis may be inaccurate. Stick to major liquid assets with consistent volume data.
LIMITATION 5 - It Cannot Detect Fundamental Events
VMDM is purely technical. It cannot predict earnings reports, central bank decisions, geopolitical events, or other fundamental catalysts that can override technical patterns.
LIMITATION 6 - Divergence Requires Two Pivots
The indicator cannot detect divergence until at least two pivots of the same type have formed. In strong trends without pullbacks, you may go long periods without signals.
LIMITATION 7 - Institutional Pattern Names Are Interpretive
The behavioral footprint patterns are named using common trading education terminology, but they are detected through technical analysis, not actual institutional data access. The patterns are interpretations based on price and volume behavior.
CONCEPT FOUNDATION - WHY THIS APPROACH WORKS
MARKET PRINCIPLE 1 - Momentum Divergence Precedes Price Reversal
Price is the final output of market forces, but momentum (the rate of change in those forces) shifts first. When price makes a new low but the momentum behind that move is weaker (higher RSI low), it signals that sellers are losing strength even though they temporarily pushed price lower. This precedes reversal. This is a fundamental principle in technical analysis taught by Charles Dow, widely observed in market behavior.
MARKET PRINCIPLE 2 - Volume Reveals Conviction
Price can move on low volume (low conviction) or high volume (high conviction). When price makes a new low on declining volume while RSI shows improving momentum, it suggests the new low is not confirmed by participant conviction. Adding volume pressure analysis to momentum divergence adds a confirmation layer that filters false divergences.
MARKET PRINCIPLE 3 - Anomalies Mark Structural Extremes
When volume spikes significantly but range contracts (absorption), or when price spikes beyond structure then reverses (stop hunt), or when aggressive moves are met with large-wick rejection (exhaustion), these anomalies often mark short-term extremes. Combining these structural observations with momentum analysis creates context.
MARKET PRINCIPLE 4 - Confluence Improves Probability
No single technical factor is reliable in isolation. RSI divergence alone fails frequently. Volume analysis alone cannot time entries. Combining multiple independent factors into a weighted system increases the probability that observed patterns have structural significance rather than random noise.
THE EDUCATIONAL VALUE
By visualizing all four layers simultaneously and breaking down the confluence scoring transparently, VMDM teaches you to think in terms of multi-dimensional analysis rather than single-indicator reliance. Over time, you will learn to recognize these patterns manually and understand which combinations produce better results on your traded assets.
INSTITUTIONAL TERMINOLOGY - IMPORTANT CLARIFICATION
This indicator uses the following terms that are common in trading education:
Institutional Footprint
Absorption (Accumulation / Distribution)
Stop Hunt
Exhaustion
CRITICAL DISCLAIMER:
These terms are EDUCATIONAL LABELS for specific price action and volume behavior patterns detected through technical analysis of publicly available chart data (open, high, low, close, volume). This indicator does NOT have access to:
Actual institutional order flow or order book data
Market maker positions or intentions
Broker stop-loss databases
Non-public trading data
Proprietary institutional information
The patterns labeled as "institutional footprint" are interpretations based on observable price and volume behavior that educational trading literature often associates with potential large-participant activity. The detection is algorithmic pattern recognition, not privileged data access.
When this indicator identifies "absorption," it means it detected high volume within a small range - a condition that MAY indicate large orders being filled but is not confirmation of actual institutional participation.
When it identifies a "stop hunt," it means price briefly penetrated a structural level then reversed - a pattern that MAY have triggered stop losses but is not confirmation that stops were specifically targeted.
When it identifies "exhaustion," it means high volume with large rejection wicks - a pattern that MAY indicate aggressive participation meeting strong opposition but is not confirmation of institutional involvement.
These are technical analysis interpretations, not factual statements about market participant identity or intent.
DISCLAIMER AND RISK WARNING
EDUCATIONAL PURPOSE ONLY
This indicator is designed as an educational tool to help traders learn to recognize technical patterns, understand multi-factor analysis, and practice systematic market observation. It is NOT a trading system, signal service, or financial advice.
NO PERFORMANCE GUARANTEE
Past pattern behavior does not guarantee future results. A pattern that historically preceded price movement in one direction may fail in the future due to changing market conditions, fundamental events, or random variance. Confluence scores reflect historical technical alignment, not future certainty.
TRADING INVOLVES SUBSTANTIAL RISK
Trading financial instruments involves substantial risk of loss. You can lose more than your initial investment. Never trade with money you cannot afford to lose. Always use proper risk management including stop losses, position sizing, and portfolio diversification.
NO PREDICTIVE CLAIMS
This indicator does NOT predict future price movement. It identifies when technical conditions align in patterns that historically have been associated with potential reversals or continuations. Market behavior is probabilistic, not deterministic.
BACKTESTING LIMITATIONS
If you backtest trading strategies using this indicator, ensure you account for:
Realistic commission costs
Realistic slippage (difference between signal price and actual fill price)
Sufficient sample size (minimum 100 trades for statistical relevance)
Reasonable position sizing (risking no more than 1-2 percent of account per trade)
The confirmation delay inherent in the indicator (you cannot enter at the exact pivot in Confirmed mode)
Backtests that do not account for these factors will produce unrealistic results.
AUTHOR LIABILITY
The author (BullByte) is not responsible for any trading losses incurred using this indicator. By using this indicator, you acknowledge that all trading decisions are your sole responsibility and that you understand the risks involved.
NOT FINANCIAL ADVICE
Nothing in this indicator, its code, its description, or its visual outputs constitutes financial, investment, or trading advice. Consult a licensed financial advisor before making investment decisions.
FREQUENTLY ASKED QUESTIONS
Q: Why do signals appear in the past, not at the current bar
A: In Confirmed and Relaxed modes, signals appear at confirmed pivots, which requires waiting for right-side confirmation bars (default 3). This creates a delay but prevents repainting. Use Real-time mode if you want current-bar signals without pivot confirmation.
Q: Can I use this for automated trading
A: You can create alert-based automation, but understand that Confirmed mode signals appear AFTER the pivot with delay, so your entry will not be at the pivot price. Real-time mode signals can change as the current bar develops. Automation requires careful consideration of these factors.
Q: How do I know which confluence score to use
A: Start with 60. Observe which patterns work on your symbol/timeframe. If too many false signals, increase to 70-75. If too few signals, decrease to 55. Quality vs. quantity tradeoff.
Q: Do regular divergences mean I should enter a reversal trade immediately
A: No. Regular divergences indicate momentum exhaustion, which is a WARNING sign that trend may reverse, not a confirmation that it will. Use confluence score, market context, support/resistance, and your strategy rules to make entry decisions. Many divergences fail.
Q: What's the difference between regular and hidden divergence
A: Regular divergence = price and momentum move in opposite directions at extremes = potential reversal signal. Hidden divergence = price and momentum move in opposite directions during pullbacks = potential continuation signal. Hidden divergence suggests the pullback is just a correction within the larger trend.
Q: Why does the pressure zone color sometimes conflict with the divergence direction
A: Pressure is real-time current bar analysis. Divergence is confirmed pivot analysis from the past. They measure different things at different times. A bullish divergence confirmed 3 bars ago might appear during current selling pressure. This is normal.
Q: Can I use this on stocks without volume data
A: No. Volume is required for pressure analysis and behavioral pattern detection. Use only on assets with reliable volume reporting.
Q: How often should I expect signals
A: Depends on timeframe and settings. Daily charts might produce 5-10 signals per month. 1-hour charts might produce 20-30. 15-minute charts might produce 50-100. Adjust confluence threshold to control frequency.
Q: Can I modify the code
A: Yes, this is open source. You can modify for personal use. If you publish a modified version, please credit the original and ensure your publication meets TradingView guidelines.
Q: What if I disagree with a pattern's confluence score
A: The scoring weights are based on general observations and may not suit your specific strategy or asset. You can modify the code to adjust weights if you have data-driven reasons to do so.
Final Notes
VMDM - Volume, Momentum and Divergence Master is an educational multi-layer market analysis system designed to teach systematic pattern recognition through transparent, confluence-weighted signal detection. By combining RSI momentum divergence, volume pressure quantification, behavioral footprint pattern recognition, and quality scoring into a unified framework, it provides a comprehensive learning environment for understanding market structure.
Use this tool to develop your analytical skills, understand how multiple technical factors interact, and learn to distinguish high-quality setups from noise. Remember that technical analysis is probabilistic, not predictive. No indicator replaces proper education, risk management, and trading discipline.
Trade responsibly. Learn continuously. Risk only what you can afford to lose.
-BullByte
Super-AO with Risk Management Alerts Template - 11-29-25Super-AO with Risk Management: ALERTS & AUTOMATION Edition
Signal Lynx | Free Scripts supporting Automation for the Night-Shift Nation 🌙
1. Overview
This is the Indicator / Alerts companion to the Super-AO Strategy.
While the Strategy version is built for backtesting (verifying profitability and checking historical performance), this Indicator version is built for Live Execution.
We understand the frustration of finding a great strategy, only to realize you can't easily hook it up to your trading bot. This script solves that. It contains the exact same "Super-AO" logic and "Risk Management Engine" as the strategy version, but it is optimized to send signals to automation platforms like Signal Lynx, 3Commas, or any Webhook listener.
2. Quick Action Guide (TL;DR)
Purpose: Live Signal Generation & Automation.
Workflow:
Use the Strategy Version to find profitable settings.
Copy those settings into this Indicator Version.
Set a TradingView Alert using the "Any Alert() function call" condition.
Best Timeframe: 4 Hours (H4) and above.
Compatibility: Works with any webhook-based automation service.
3. Why Two Scripts?
Pine Script operates in two distinct modes:
Strategy Mode: Calculates equity, drawdowns, and simulates orders. Great for research, but sometimes complex to automate.
Indicator Mode: Plots visual data on the chart. This is the preferred method for setting up robust alerts because it is lighter weight and plots specific values that automation services can read easily.
The Golden Rule: Always backtest on the Strategy, but trade on the Indicator. This ensures that what you see in your history matches what you execute in real-time.
4. How to Automate This Script
This script uses a "Visual Spike" method to trigger alerts. Instead of drawing equity curves, it plots numerical values at the bottom of your chart when a trade event occurs.
The Signal Map:
Blue Spike (2 / -2): Entry Signal (Long / Short).
Yellow Spike (1 / -1): Risk Management Close (Stop Loss / Trend Reversal).
Green Spikes (1, 2, 3): Take Profit Levels 1, 2, and 3.
Setup Instructions:
Add this indicator to your chart.
Open your TradingView "Alerts" tab.
Create a new Alert.
Condition: Select SAO - RM Alerts Template.
Trigger: Select Any Alert() function call.
Message: Paste your JSON webhook message (provided by your bot service).
5. The Logic Under the Hood
Just like the Strategy version, this indicator utilizes:
SuperTrend + Awesome Oscillator: High-probability swing trading logic.
Non-Repainting Engine: Calculates signals based on confirmed candle closes to ensure the alert you get matches the chart reality.
Advanced Adaptive Trailing Stop (AATS): Internally calculates volatility to determine when to send a "Close" signal.
6. About Signal Lynx
Automation for the Night-Shift Nation 🌙
We are providing this code open source to help traders bridge the gap between manual backtesting and live automation. This code has been in action since 2022.
If you are looking to automate your strategies, please take a look at Signal Lynx in your search.
License: Mozilla Public License 2.0 (Open Source). If you make beneficial modifications, please release them back to the community!
Daily % Change TableDaily % Change Table — Indicator Summary
This indicator provides a compact performance summary for daily candles, designed for backtesting and daily-session analysis. It displays a table in the top-right corner of the chart showing three key percentage-change statistics based on the current candle:
1. Prior Change
Percentage move from the close two days ago to the prior day’s close.
Useful for understanding momentum and context heading into the current session.
2. Change
Percentage move from the prior day's close to the current candle’s close.
Shows today’s full-session change.
3. Premarket
Percentage move from the prior day's close to the current day’s open.
Helps quantify overnight sentiment and gap activity.
Features
Clean, unobtrusive table display
Automatically updates on the most recent bar
Designed for use on Daily timeframe
Useful for gap analysis, backtesting, and volatility/momentum studies
LETHINH-Swing pa,smc🟦 📌 Title (English)
Swing High / Swing Low – 3-Candle Fractal (5-Bar Pivot) | Auto Alerts
⸻
🟩 📌 Short Description
A clean and reliable swing high / swing low detector based on the classic 3-candle (5-bar) fractal pivot. Automatically marks SH/SL and triggers alerts when a swing is confirmed. No repainting after confirmation.
⸻
🟧 📌 Full Description (for TradingView Publishing)
🔶 Swing High / Swing Low – 3-Candle Fractal (5-Bar Pivot)
This indicator identifies Swing Highs (SH) and Swing Lows (SL) using the classic 3-candle fractal pattern, also known as the 5-bar pivot.
It marks swing points only after full confirmation, making it highly reliable and suitable for structure-based trading.
⸻
🔶 📍 How It Works
A swing is confirmed when the center candle is higher (or lower) than the two candles on each side:
Swing High (SH)
high > high , high , high
Swing Low (SL)
low < low , low , low
The confirmation occurs after 2 right candles close, so the indicator does not repaint once a swing is identified.
⸻
🔶 📍 Key Features
• Detects clean and accurate swings
• Uses pure price action — no indicators, no lag
• Marks swing high (SH) and swing low (SL) directly on the chart
• Non-repainting after confirmation
• Works on all timeframes and all markets
• Extremely lightweight and fast
• Includes alert conditions for both SH and SL
Perfect for traders using:
• Market Structure (BOS / CHoCH)
• Order Blocks (OB)
• Smart Money Concepts (SMC)
• Liquidity hunts
• Wyckoff
• Support/Resistance
• Price Action entries
⸻
🔶 📍 Why This Indicator Is Useful
Swing points are the foundation of market structure.
Accurately detecting them helps traders:
• Identify trend shifts
• Spot BOS / CHoCH correctly
• Find key zones (OB, liquidity levels, supply/demand)
• Time entries more precisely
• Avoid fake structure breaks
This indicator ensures swings are plotted only when fully confirmed, reducing noise and confusion.
⸻
🔶 📍 Alerts
You can create alerts for both conditions:
• Swing High Confirmed
• Swing Low Confirmed
Recommended settings:
• Once per bar close
• Open-ended alert
With alerts enabled, TradingView will automatically notify you every time a new swing forms.
⸻
🔶 📍 No Repainting
Once a swing is confirmed and plotted, it will not change or disappear.
This makes the indicator reliable for real-time alerts and backtesting.
⸻
🔶 📍 Pine Script (v5)
Paste your indicator code here if you want it visible.
Or leave the code hidden if you are publishing as protected.
⸻
🔶 📍 Final Notes
• This indicator focuses on confirmation, not prediction
• It is designed for clean structure reading
• All markets supported: Forex, Crypto, Stocks, Indexes, Commodities
• Suitable for scalping, intraday, swing, and even higher-timeframe trading
If you find this tool helpful, feel free to give it a like and add it to your favorites ❤️
Your support helps me share more tools with the community!
able MACD Overview
Purpose: The indicator combines the traditional MACD (Moving Average Convergence Divergence) with a short-term “forecast” (projection) of MACD/histogram values to give early warning of momentum changes.
Typical outputs:
MACD line (fastEMA − slowEMA)
Signal line (EMA of MACD)
Histogram (MACD − signal)
Forecasted MACD or histogram projected N bars ahead
Optional buy/sell markers and alert conditions
Add the indicator to TradingView (Installation)
Open TradingView and the chart you want to apply the indicator to.
Click “Pine Editor” at the bottom of the chart.
Copy the contents of able_macd_forecast.pine into the Pine Editor window.
Click “Add to chart” (or Save then Add to chart). If it’s a study, it will appear on the chart below price.
If you plan to re-use the script, click Save and give it a meaningful name.
Inputs / Parameters (typical) Note: exact input names may differ in your script. Replace the names below with the script’s input labels when you inspect it.
Source: price source for calculations (close, hl2, etc.).
Fast Length: length for the fast EMA (commonly 12).
Slow Length: length for the slow EMA (commonly 26).
Signal Length: length for the MACD signal EMA (commonly 9).
Forecast Length / Horizon: how many bars ahead the script projects the MACD/histogram (e.g., 1–5).
Forecast Method / Smoothing: choice of projection method (linear regression, EMA extrapolation, simple slope * N, etc.) if available.
Histogram Thresholds: numeric thresholds to emphasize significant momentum (optional).
Show Forecast: toggle on/off the forecast plot.
Alerts On/Off toggles: enable or disable alert conditions baked into the indicator.
Visual / Style settings: colors, plot thickness, histogram style (columns/areas), show labels, show buy/sell arrows.
How the indicator is typically calculated (summary)
MACD line = EMA(source, fast) − EMA(source, slow)
Signal line = EMA(MACD line, signal length)
Histogram = MACD − Signal
Forecast = method-specific short-term projection of MACD or histogram (for example: extend the last slope forward, apply linear regression to MACD values and extrapolate N bars, or apply an additional smoothing and extend that value) Note: For exact math, I need to inspect the script; this is the typical approach.
How to read the indicator (signals & interpretation)
Bullish signal:
MACD line crossing above the signal line (MACD cross up).
Histogram turns positive (cross above zero).
Forecast shows MACD/histogram moving higher in the next N bars (if forecast is positive or trending up).
Bearish signal:
MACD line crossing below the signal line (MACD cross down).
Histogram turns negative (cross below zero).
Forecast shows MACD/histogram moving lower ahead.
Confirmations:
Use price action (higher highs/lows for bullish, lower highs/lows for bearish).
Volume or other momentum/confluence indicators (RSI, ADX).
Divergences:
Bullish divergence: price makes lower low while MACD histogram makes higher low.
Bearish divergence: price makes higher high while MACD histogram makes lower high.
Forecast behavior:
If the forecast leads the MACD cross (forecast crosses before the current MACD does), it’s an early warning.
Use caution: forecasts are prone to false signals; always confirm.
Common trading setups using this indicator
Conservative:
Wait for MACD to cross signal + histogram above zero + forecast already trending same direction.
Use stop below recent swing low (for long) or above recent swing high (for short).
Aggressive (early entry):
Enter when forecast turns positive while MACD still below signal (anticipating cross).
Use tighter stops and smaller position sizes.
Exit rules:
Opposite MACD cross, histogram flipping sign, or a target based on risk-reward.
Use trailing stop based on ATR or structure.
Example settings for different timeframes (starting points)
Scalping / 5–15 min:
Fast 8, Slow 21, Signal 5, Forecast 1–2
Intraday / 1H:
Fast 12, Slow 26, Signal 9, Forecast 2–3
Swing / 4H–Daily:
Fast 12, Slow 26, Signal 9, Forecast 3–5 Adjust based on the asset volatility and backtests.
Adding alerts (TradingView)
Click the “Alerts” button (clock icon) or press Alt + A.
In the Condition dropdown, select the indicator name (able_macd_forecast) and choose a plotted series or built-in alert condition (if the script uses alertcondition).
Common alert types:
MACD crosses Signal (Crossing)
Histogram crosses 0 (Crossing)
Forecast crosses 0 or Forecast trend change (if provided)
Message templates:
“{{ticker}}: MACD crossed above signal on {{interval}}”
“{{ticker}} Forecast positive: MACD forecast shows upward momentum”
Customize the message for your trade automation or notifications.
Configure frequency (Only once, Once per bar, or Once per bar close) — for signals like crossovers, “Once per bar close” is usually safer to avoid repainting issues. Note: If the script includes alertcondition() calls with explicit IDs/messages, use those directly — they are the most reliable for automation.
Backtesting / Strategy conversion
If this script is a study (indicator), you can:
Convert it to a strategy by adding strategy.* order calls (strategy.entry, strategy.close) using the entry/exit logic you prefer, or
Use TradingView’s “Bar Replay” to manually test signals across different markets/timeframes.
If you want, I can help convert or write a strategy wrapper that uses the indicator’s signals to place backtest trades (I’ll need the code).
Practical tips & best practices
Use higher timeframe confirmation for lower-timeframe entries (e.g., check daily MACD momentum before trading 15m signals).
Beware of choppy markets; MACD / forecast may produce whipsaws. Combine with trend filters (moving average direction, ADX).
If you rely on forecasted values, prefer alerts “on bar close” when possible to reduce false alerts from intra-bar noise.
Tune parameters for the specific asset (FX, crypto, stocks have different behavior).
Record each signal and outcome for a sample period (20–100 trades) to evaluate performance.
Troubleshooting
Indicator won’t add: verify Pine version in script header (//@version=4 or //@version=5). TradingView may reject scripts with unsupported version syntax.
Plots missing: check script inputs (Some scripts hide plots if toggles are off).
Alerts firing too often: change alert frequency to “Once per bar close” or adjust threshold values.
Forecast seems to repaint: some forecast methods can repaint (use “bar_index” or store values only on closed bars, or use non-repainting forecast methods). Ask me to inspect the script for repainting logic.
What I can do next (recommended)
If you paste the content of able_macd_forecast.pine here, I will:
Produce a precise, line-by-line usage guide mapping to the exact input names and default values.
Show the exact plotted series names and how to reference them for alerts.
Point out any repainting risks and suggest fixes.
Provide example alert messages that match the script’s alertcondition IDs (if any).
Optionally convert it into a strategy for backtesting, or add non-repainting forecast logic if needed.
Complete Harmonic PatternOverview:
The ultimate harmonic XABCD pattern identification, prediction, and backtesting system.
Harmonic patterns are among the most accurate of trading signals, yet they're widely underutilized because they can be difficult to spot and tedious to validate. If you've ever come across a pattern and struggled with questions like "are these retracement ratios close enough to the harmonic ratios?" or "what are the Potential Reversal levels and are they confluent with point D?", then this tool is your new best friend. Or, if you've never traded harmonic patterns before, maybe it's time to start. Put away your drawing tools and calculators, relax, and let this indicator do the heavy lifting for you.
- Identification -
An exhaustive search across multiple pivot lengths ensures that even the sneakiest harmonic patterns are identified. Each pattern is evaluated and assigned a score, making it easy to differentiate weak patterns from strong ones. Tooltips under the pattern labels show a detailed breakdown of the pattern's score and retracement ratios (see the Scoring section below for details).
- Prediction -
After a pattern is identified, paths to potential targets are drawn, and Potential Reversal Zone (PRZ) levels are plotted based on the retracement ratios of the harmonic pattern. Targets are customizable by pattern type (e.g. you can specify one set of targets for a Gartley and another for a Bat, etc).
- Backtesting -
A table shows the results of all the patterns found in the chart. Change your target, stop-loss, and % error inputs and observe how it affects your success rate.
//------------------------------------------------------
// Scoring
//------------------------------------------------------
A percentage-based score is calculated from four components:
(1) Retracement % Accuracy - this measures how closely the pattern's retracement ratios match the theoretical values (fibs) defined for a given harmonic pattern. You can change the "Allowed fib ratio error %" in Settings to be more or less inclusive.
(2) PRZ Level Confluence - Potential Reversal Zone levels are projected from retracements of the XA and BC legs. The PRZ Level Confluence component measures the closeness of the closest XA and BC retracement levels, relative to the total height of the PRZ.
(3) Point D / PRZ Confluence - this measures the closeness of point D to either of the closest two PRZ levels (identified in the PRZ Level Confluence component above), relative to the total height of the PRZ. In theory, the closer together these levels are, the higher the probability of a reversal.
(4) Leg Length Symmetry - this measures the ΔX symmetry of each leg. You can change the "Allowed leg length asymmetry %" in settings to be more or less inclusive.
So, a score of 100% would mean that (1) all leg retracements match the theoretical fib ratios exactly (to 16 decimal places), (2) the closest XA and BC PRZ levels are exactly the same, (3) point D is exactly at the confluent PRZ level, and (4) all legs are exactly the same number of bars. While this is theoretically possible, you have better odds of getting struck by lightning twice on a sunny day.
Calculation weights of all four components can be changed in Settings.
//------------------------------------------------------
// Targets
//------------------------------------------------------
A hard-coded set of targets are available to choose from, and can be applied to each pattern type individually:
(1) .618 XA = .618 retracement of leg XA, measured from point D
(2) 1.272 XA = 1.272 retracement of leg XA, measured from point D
(3) 1.618 XA = 1.618 retracement of leg XA, measured from point D
(4) .618 CD = .618 retracement of leg CD, measured from point D
(5) 1.272 CD = 1.272 retracement of leg CD, measured from point D
(6) 1.618 CD = 1.618 retracement of leg CD, measured from point D
(7) A = point A
(8) B = point B
(9) C = point C
Static K-means Clustering | InvestorUnknownStatic K-Means Clustering is a machine-learning-driven market regime classifier designed for traders who want a data-driven structure instead of subjective indicators or manually drawn zones.
This script performs offline (static) K-means training on your chosen historical window. Using four engineered features:
RSI (Momentum)
CCI (Price deviation / Mean reversion)
CMF (Money flow / Strength)
MACD Histogram (Trend acceleration)
It groups past market conditions into K distinct clusters (regimes). After training, every new bar is assigned to the nearest cluster via Euclidean distance in 4-dimensional standardized feature space.
This allows you to create models like:
Regime-based long/short filters
Volatility phase detectors
Trend vs. chop separation
Mean-reversion vs. breakout classification
Volume-enhanced money-flow regime shifts
Full machine-learning trading systems based solely on regimes
Note:
This script is not a universal ML strategy out of the box.
The user must engineer the feature set to match their trading style and target market.
K-means is a tool, not a ready made system, this script provides the framework.
Core Idea
K-means clustering takes raw, unlabeled market observations and attempts to discover structure by grouping similar bars together.
// STEP 1 — DATA POINTS ON A COORDINATE PLANE
// We start with raw, unlabeled data scattered in 2D space (x/y).
// At this point, nothing is grouped—these are just observations.
// K-means will try to discover structure by grouping nearby points.
//
// y ↑
// |
// 12 | •
// | •
// 10 | •
// | •
// 8 | • •
// |
// 6 | •
// |
// 4 | •
// |
// 2 |______________________________________________→ x
// 2 4 6 8 10 12 14
//
//
//
// STEP 2 — RANDOMLY PLACE INITIAL CENTROIDS
// The algorithm begins by placing K centroids at random positions.
// These centroids act as the temporary “representatives” of clusters.
// Their starting positions heavily influence the first assignment step.
//
// y ↑
// |
// 12 | •
// | •
// 10 | • C2 ×
// | •
// 8 | • •
// |
// 6 | C1 × •
// |
// 4 | •
// |
// 2 |______________________________________________→ x
// 2 4 6 8 10 12 14
//
//
//
// STEP 3 — ASSIGN POINTS TO NEAREST CENTROID
// Each point is compared to all centroids.
// Using simple Euclidean distance, each point joins the cluster
// of the centroid it is closest to.
// This creates a temporary grouping of the data.
//
// (Coloring concept shown using labels)
//
// - Points closer to C1 → Cluster 1
// - Points closer to C2 → Cluster 2
//
// y ↑
// |
// 12 | 2
// | 1
// 10 | 1 C2 ×
// | 2
// 8 | 1 2
// |
// 6 | C1 × 2
// |
// 4 | 1
// |
// 2 |______________________________________________→ x
// 2 4 6 8 10 12 14
//
// (1 = assigned to Cluster 1, 2 = assigned to Cluster 2)
// At this stage, clusters are formed purely by distance.
Your chosen historical window becomes the static training dataset , and after fitting, the centroids never change again.
This makes the model:
Predictable
Repeatable
Consistent across backtests
Fast for live use (no recalculation of centroids every bar)
Static Training Window
You select a period with:
Training Start
Training End
Only bars inside this range are used to fit the K-means model. This window defines:
the market regime examples
the statistical distributions (means/std) for each feature
how the centroids will be positioned post-trainin
Bars before training = fully transparent
Training bars = gray
Post-training bars = full colored regimes
Feature Engineering (4D Input Vector)
Every bar during training becomes a 4-dimensional point:
This combination balances: momentum, volatility, mean-reversion, trend acceleration giving the algorithm a richer "market fingerprint" per bar.
Standardization
To prevent any feature from dominating due to scale differences (e.g., CMF near zero vs CCI ±200), all features are standardized:
standardize(value, mean, std) =>
(value - mean) / std
Centroid Initialization
Centroids start at diverse coordinates using various curves:
linear
sinusoidal
sign-preserving quadratic
tanh compression
init_centroids() =>
// Spread centroids across using different shapes per feature
for c = 0 to k_clusters - 1
frac = k_clusters == 1 ? 0.0 : c / (k_clusters - 1.0) // 0 → 1
v = frac * 2 - 1 // -1 → +1
array.set(cent_rsi, c, v) // linear
array.set(cent_cci, c, math.sin(v)) // sinusoidal
array.set(cent_cmf, c, v * v * (v < 0 ? -1 : 1)) // quadratic sign-preserving
array.set(cent_mac, c, tanh(v)) // compressed
This makes initial cluster spread “random” even though true randomness is hardly achieved in pinescript.
K-Means Iterative Refinement
The algorithm repeats these steps:
(A) Assignment Step, Each bar is assigned to the nearest centroid via Euclidean distance in 4D:
distance = sqrt(dx² + dy² + dz² + dw²)
(B) Update Step, Centroids update to the mean of points assigned to them. This repeats iterations times (configurable).
LIVE REGIME CLASSIFICATION
After training, each new bar is:
Standardized using the training mean/std
Compared to all centroids
Assigned to the nearest cluster
Bar color updates based on cluster
No re-training occurs. This ensures:
No lookahead bias
Clean historical testing
Stable regimes over time
CLUSTER BEHAVIOR & TRADING LOGIC
Clusters (0, 1, 2, 3…) hold no inherent meaning. The user defines what each cluster does.
Example of custom actions:
Cluster 0 → Cash
Cluster 1 → Long
Cluster 2 → Short
Cluster 3+ → Cash (noise regime)
This flexibility means:
One trader might have cluster 0 as consolidation.
Another might repurpose it as a breakout-loading zone.
A third might ignore 3 clusters entirely.
Example on ETHUSD
Important Note:
Any change of parameters or chart timeframe or ticker can cause the “order” of clusters to change
The script does NOT assume any cluster equals any actionable bias, user decides.
PERFORMANCE METRICS & ROC TABLE
The indicator computes average 1-bar ROC for each cluster in:
Training set
Test (live) set
This helps measure:
Cluster profitability consistency
Regime forward predictability
Whether a regime is noise, trend, or reversion-biased
EQUITY SIMULATION & FEES
Designed for close-to-close realistic backtesting.
Position = cluster of previous bar
Fees applied only on regime switches. Meaning:
Staying long → no fee
Switching long→short → fee applied
Switching any→cash → fee applied
Fee input is percentage, but script already converts internally.
Disclaimers
⚠️ This indicator uses machine-learning but does not predict the future. It classifies similarity to past regimes, nothing more.
⚠️ Backtest results are not indicative of future performance.
⚠️ Clusters have no inherent “bullish” or “bearish” meaning. You must interpret them based on your testing and your own feature engineering.
ParabolicSAR+EMA[TS_Indie]🚀 EMA + Parabolic SAR Reversal Trading Strategy
This trading system effectively combines the use of Exponential Moving Averages (EMA) with the Parabolic SAR to identify both price trends and key reversal points. The EMA Fast is used to signal the primary short-term trend, while the EMA Slow acts as a filter for the long-term trend direction. The Parabolic SAR then helps to confirm the reversal signals.
🛠️ Tools Used
1. EMA Fast – Primary Short-Term Trend
2. EMA Slow – Long-Term Trend Filter
3. Parabolic SAR – Reversal Confirmation
🎯 Entry Rules
📈 Buy Setup
1. Trend Filter: EMA Fast > EMA Slow → Uptrend
2. Pullback: Price pulls back and closes below the EMA Fast line.
3. Reversal: Price reverses/pulls back up and closes above the EMA Fast line.
4. SAR Confirmation: The previous Parabolic SAR dot is above the high, and the dot in the current candle is below the low → Reversal signal confirmed.
5. Entry: Enter Buy immediately.
📉 Sell Setup
1. Trend Filter: EMA Fast < EMA Slow → Downtrend
2. Pullback: Price pulls back and closes above the EMA Fast line.
3. Reversal: Price reverses/pulls back down and closes below the EMA Fast line.
4. SAR Confirmation: The previous Parabolic SAR dot is below the low, and the dot in the current candle is above the high → Reversal signal confirmed.
5. Entry: Enter Sell immediately.
💰 Exit Management (Entry, Stop Loss, Take Profit)
1. Entry: Enter the order at the closing price of the signal candle.
2. Stop Loss (SL): Set the Stop Loss at the Parabolic SAR dot.
3. Take Profit (TP): Calculated from the Entry and Stop Loss points, multiplied by the Risk Reward Ratio.
⚙️ Optional Parameters
➭ Custom Risk/Reward Ratio for Take Profit.
➭ Option to add an ATR buffer to the Stop Loss.
➭ Adjustable EMA Fast period.
➭ Adjustable EMA Slow period.
➭ Adjustable Parabolic SAR parameters.
➭ Option to enable Long-only / Short-only positions.
➭ Customizable Backtest start and end date.
➭ Customizable trading session time.
🔔 Alert Function
Alerts display:
➭ Entry Price
➭ Stop Loss Price
➭ Take Profit Price
💡 This strategy allows for many parameter adjustments, such as the MA type, adding/subtracting from the Stop Loss using ATR, and selecting specific sessions for backtesting. If you find interesting or profitable results after adjusting the parameters, please share your comments with other traders!
⚠️ Disclaimer
This indicator is designed for educational and research purposes only. It does not guarantee profits and should not be considered financial advice. Trading in financial markets involves significant risk , including the potential loss of capital.
Mirror Blocks: StrategyMirror Blocks is an educational structural-wave model built around a unique concept:
the interaction of mirrored weighted moving averages (“blocks”) that reflect shifts in market structure as price transitions between layered symmetry zones.
Rather than attempting to “predict” markets, the Mirror Blocks framework visualizes how price behaves when it expands away from, contracts toward, or flips across stacked WMA structures. These mirrored layers form a wave-like block system that highlights transitional zones in a clean, mechanical way.
This strategy version allows you to study how these structural transitions behave in different environments and on different timeframes.
The goal is understanding wave structure, not generating signals.
How It Works
Mirror Blocks builds three mirrored layers:
Top Block (Structural High Symmetry)
Base Block (Neutral Wave)
Bottom Block (Structural Low Symmetry)
The relative position of these blocks — and how price interacts with them — helps visualize:
Compression and expansion
Reversal zones
Wave stability
Momentum transitions
Structure flips
A structure is considered bullish-stack aligned when:
Top > Base > Bottom
and bearish-stack aligned when:
Bottom > Base > Top
These formations create the core of the Mirror Blocks wave engine.
What the Strategy Version Adds
This version includes:
Long Only, Short Only, or Long & Short modes
Adjustable symmetry distance (Mirror Distance)
Configurable WMA smoothing length
Optional trend filter using fast/slow MA comparison
ENTER / EXIT / LONG / SHORT labels for structural transitions
Fixed stop-loss controls for research
A clean, transparent structure with no hidden components
It is optimized for educational chart study, not automated signals.
Intended Purpose
Mirror Blocks is meant to help traders:
Study structural transitions
Understand symmetry-based wave models
Explore how price interacts with mirrored layers
Examine reversals and expansions from a mechanical perspective
Conduct long and short backtesting for research
Develop a deeper sense of market rhythm
This is not a prediction model.
It is a visual and structural framework for understanding movement.
Backtesting Disclaimer
Backtest results can vary depending on:
Slippage settings
Commission settings
Timeframe
Asset volatility
Structural sensitivity parameters
Past performance does not guarantee future results.
Use this as a research tool only.
Warnings & Compliance
This script is educational.
It is not financial advice.
It does not provide signals.
It does not promise profitability.
The purpose is to help visualize structure, not predict price.
The strategy features are simply here to help users study how structural transitions behave under various conditions.
License
Released under the Michael Culpepper Gratitude License (2025).
Use and modify freely for education and research with attribution.
No resale.
No promises of profitability.
Purpose is understanding, not signals.
Forever ModelForever Model is a comprehensive trading framework that visualizes market structure through Fair Value Gaps (FVGs), Smart Money Technique (SMT) divergences, and order block confirmations. The indicator identifies potential price rotations by tracking internal liquidity zones, correlation breaks between assets, and confirmation signals across multiple timeframes.
Designed for clarity and repeatability, the model presents a structured visual logic that supports manual analysis while maintaining flexibility across different assets and timeframes. All components are non-repainting, ensuring historical accuracy and reliable backtesting.
Description
The model operates through a three-part sequence that forms the visual foundation for identifying potential market rotations:
Fair Value Gaps (FVGs)
FVGs are price imbalances detected on higher timeframes—areas where price moved rapidly between candles, leaving an inefficiency that may be revisited. The indicator identifies both bullish and bearish FVGs, displaying them with color-coded levels that extend until mitigated.
: Chart showing FVG detection with colored lines indicating bullish (green) and bearish (red) gaps
Smart Money Technique (SMT)
SMT detects divergence between the current chart asset and a correlated pair. When one asset makes a higher high while the other forms a lower high (or vice versa), it indicates a potential shift in delivery. The indicator draws visual lines connecting these divergence points and can filter SMTs to only display those occurring within FVG ranges.
: Chart showing SMT divergence lines between two correlated assets with labels indicating the pair name]
Order Block Confirmations (OB)
When price confirms a signal by crossing a pivot level, an Order Block is created. The confirmation line extends from the pivot point, labeled as "OB+" for bullish signals or "OB-" for bearish signals. The latest OB extends to the current bar, while previous OBs remain fixed at their confirmation points.
: Chart showing OB confirmation lines with OB+ and OB- labels at confirmation points]
Key Features
Higher Timeframe (HTF) Detection
FVGs are detected on a higher timeframe than the current chart, with automatic HTF selection based on the current timeframe or manual override options. This ensures that internal liquidity zones are identified from the appropriate structural context.
External Range Liquidity (ERL)
Tracks the latest higher timeframe pivot highs and lows, marking external liquidity levels that may be revisited. ERL levels are displayed as horizontal lines with optional labels, providing context for potential continuation targets.
: Chart showing ERL lines at recent HTF pivot points
Signal Creation and Confirmation System
The model creates pending signals when FVG levels are mitigated. Signals confirm when price closes beyond a pivot level, creating the OB confirmation line. Stop levels are automatically calculated from the maximum (bearish) or minimum (bullish) price between signal creation and confirmation.
SMT Filtering Options
Display all SMTs or only those within FVG ranges
Require SMT for signal confirmation (optional filter)
Automatic or manual SMT pair selection
Support for both correlated and inverse correlated pairs
Directional Bias Filter
Filter FVG detection to show only bullish bias, bearish bias, or both. This allows analysts to align with higher timeframe structure or focus on unidirectional setups.
Confirmation Line Management
Toggle to extend only the latest confirmation line or all confirmation lines
Transparent label backgrounds with colored text (red for bearish, green for bullish)
Automatic cleanup of old confirmation lines (keeps last 50)
Labels positioned at line end (latest) or middle (older lines)
Position Sizing Calculator
Optional position sizing based on account balance, risk percentage or fixed amount, and instrument-specific contract sizes. Supports prop firm calculations and can display position size, entry, and stop levels in the dashboard.
Information Dashboard
A customizable floating table displays:
Current timeframe and HTF
Remaining time in current bar
Current bias direction
Latest confirmed signal details (type, size, entry, stop)
Pending signal status
The dashboard can be repositioned, resized, and styled to match your preferences.
Special Range Creation
When signals confirm, the model can automatically create special range levels from stop prices. These levels persist on the chart as important reference points, even after mitigation, serving as potential reversal zones for future signals.
Label and Visualization Controls
Toggle FVG labels on/off
Toggle confirmation lines on/off
Customizable colors for bullish and bearish FVGs
ERL color customization
SMT line width adjustment
Order Flow Integration (Optional)
The indicator includes optional Open Interest (OI) based special range detection, allowing integration with order flow analysis for enhanced context.
Technical Notes
All components are non-repainting—once formed, they remain on the chart
FVGs cannot be mitigated on their creation bar
Signal-based special ranges persist even after mitigation (important stop levels)
SMT detection supports both HTF and chart timeframe modes
Maximum 50 confirmation lines are maintained for performance
The model is designed to work across all asset classes and timeframes, providing a consistent framework for identifying potential market rotations through the interaction of internal liquidity, correlation breaks, and confirmation signals, this does not constitute as trading advice, past performance is no indication of future performance , this is entirely done for entertainment and educational purposes
Time ColorsTime Colors – Custom Trading Sessions Visualizer
Time Colors is a simple visual helper for backtesting and intraday trading.
It lets you define up to 10 custom time blocks and highlights the chart background during those periods.
Use it to:
Mark the exact times when you are realistically able to trade
Visually separate different sessions (e.g. London, New York, Asia)
Filter out “dream trades” that happened while you were sleeping or at work
Features
Up to 10 fully customizable time blocks
Individual on/off toggle for each block
Custom color for every block
Works on any intraday timeframe
Session resolution input for flexible time handling
How to use
Add the Time Colors indicator to your chart.
Set each Time Block to your personal trading hours (based on your TradingView timezone).
Disable blocks you don’t need with “Enable Block X”.
When backtesting, only count trades that occur inside the colored areas – those are the times you could have actually taken trades.
LapseBacktestingTableLibrary "LapseBacktestingMetrics"
This library provides a robust set of quantitative backtesting and performance evaluation functions for Pine Script strategies. It’s designed to help traders, quants, and developers assess risk, return, and robustness through detailed statistical metrics — including Sharpe, Sortino, Omega, drawdowns, and trade efficiency.
Built to enhance any trading strategy’s evaluation framework, this library allows you to visualize performance with the quantlapseTable() function, producing an interactive on-chart performance table.
Credit to EliCobra and BikeLife76 for original concept inspiration.
curve(disp_ind)
Retrieves a selected performance curve of your strategy.
Parameters:
disp_ind (simple string): Type of curve to plot. Options include "Equity", "Open Profit", "Net Profit", "Gross Profit".
Returns: (float) Corresponding performance curve value.
cleaner(disp_ind, plot)
Filters and displays selected strategy plots for clean visualization.
Parameters:
disp_ind (simple string): Type of display.
plot (simple float): Strategy plot variable.
Returns: (float) Filtered plot value.
maxEquityDrawDown()
Calculates the maximum equity drawdown during the strategy’s lifecycle.
Returns: (float) Maximum equity drawdown percentage.
maxTradeDrawDown()
Computes the worst intra-trade drawdown among all closed trades.
Returns: (float) Maximum intra-trade drawdown percentage.
consecutive_wins()
Finds the highest number of consecutive winning trades.
Returns: (int) Maximum consecutive wins.
consecutive_losses()
Finds the highest number of consecutive losing trades.
Returns: (int) Maximum consecutive losses.
no_position()
Counts the maximum consecutive bars where no position was held.
Returns: (int) Maximum flat days count.
long_profit()
Calculates total profit generated by long positions as a percentage of initial capital.
Returns: (float) Total long profit %.
short_profit()
Calculates total profit generated by short positions as a percentage of initial capital.
Returns: (float) Total short profit %.
prev_month()
Measures the previous month’s profit or loss based on equity change.
Returns: (float) Monthly equity delta.
w_months()
Counts the number of profitable months in the backtest.
Returns: (int) Total winning months.
l_months()
Counts the number of losing months in the backtest.
Returns: (int) Total losing months.
checktf()
Returns the time-adjusted scaling factor used in Sharpe and Sortino ratio calculations based on chart timeframe.
Returns: (float) Annualization multiplier.
stat_calc()
Performs complete statistical computation including drawdowns, Sharpe, Sortino, Omega, trade stats, and profit ratios.
Returns: (array)
.
f_colors(x, nv)
Generates a color gradient for performance values, supporting dynamic table visualization.
Parameters:
x (simple string): Metric label name.
nv (simple float): Metric numerical value.
Returns: (color) Gradient color value for table background.
quantlapseTable(option, position)
Displays an interactive Performance Table summarizing all major backtesting metrics.
Includes Sharpe, Sortino, Omega, Profit Factor, drawdowns, profitability %, and trade statistics.
Parameters:
option (simple string): Table type — "Full", "Simple", or "None".
position (simple string): Table position — "Top Left", "Middle Right", "Bottom Left", etc.
Returns: (table) On-chart performance visualization table.
This library empowers advanced quantitative evaluation directly within Pine Script®, ideal for strategy developers seeking deeper performance diagnostics and intuitive on-chart metrics.
Complete DashboardPA+AI PRE/GO Trading Dashboard v0.1.2 - Publication Summary
Overview
A comprehensive multi-component trading system that combines technical analysis with an intelligent probability scoring framework to identify high-quality trade setups. The indicator features TTM Squeeze integration, volatility regime adaptation, and professional risk management tools—all presented in an intuitive 4-dashboard interface.
Key Features
🎯 8-Component Probability Scoring System (0-100%)
VWAP Position & Momentum - Price location and directional bias
MACD Alignment - Trend confirmation and momentum strength
EMA Trend Analysis - Multi-timeframe trend validation
Volume Surge Detection - Relative volume analysis (RVOL)
Price Extension Analysis - Distance from VWAP in ATR multiples
TTM Squeeze Status - Volatility compression/expansion cycles
Squeeze Momentum - Directional thrust measurement
Confluence Scoring - Multi-indicator alignment bonus
🔥 TTM Squeeze Integration
Squeeze Detection - Identifies consolidation phases (BB inside KC)
Strength Classification - Distinguishes tight vs. loose squeezes
Fire Signals - Premium entry alerts when squeeze releases
Building Alerts - Early warnings when tight squeezes are coiling
📊 Volatility Regime Adaptation
Dynamic Thresholds - Auto-adjusts based on ATR percentile (100-bar)
Three Regimes - LOW VOL, NORMAL, HIGH VOL classification
Adaptive Parameters - RVOL requirements and distance limits adjust automatically
Context-Aware Scoring - Volume expectations scale with market volatility
💰 Professional Risk Management
Position Sizing Calculator - Risk-based share calculation (% of account)
ATR Trailing Stops - Dynamic stop-loss that tightens with profits
Multiple Entry Strategies - VWAP reversion and pullback entries
Complete Trade Info - Entry, stop, target, and size for every signal
📈 Multi-Timeframe Analysis Dashboard
4 Timeframes - Daily, 4H, 15m, 5m (customizable)
6 Metrics per TF - Price change, MACD, RSI, RVOL, EMA trend
Alignment Visualization - Color-coded bull/bear indicators
HTF Context - Understand broader market structure
🛡️ Reliability Features
Confirm-on-Close - Eliminates intrabar repainting
Minimum Bars Filter - Prevents premature signals on chart load
NA-Safe Calculations - Works reliably on all symbols/timeframes
Zero Division Protection - Bulletproof math across all market conditions
What Makes This Indicator Unique
Intelligent Probability Weighting
Unlike binary "buy/sell" indicators, this system quantifies setup quality from 0-100%, allowing traders to:
Filter by confidence - Only take 70%+ probability setups
Size accordingly - Larger positions on higher probability signals
Understand context - Know exactly why a signal fired
Squeeze-Enhanced Entries
The integration of TTM Squeeze analysis adds a powerful timing dimension:
Premium Signals - 🔥 when squeeze fires + high probability (75%+)
Regular Signals - Standard entries during trending conditions
Avoid Chop - No entries during squeeze consolidation
Strength Matters - Tight squeezes (BB width <20th percentile) get bonus points
Adaptive Intelligence
The volatility regime system ensures the indicator performs across all market conditions:
Dead markets - Tighter thresholds prevent false signals
Volatile markets - Loosened requirements catch real moves
Automatic adjustment - No manual intervention needed
Dashboard-Centric Design
All critical information visible at a glance:
Top-right - Probability breakdown & regime status
Middle-right - Multi-timeframe alignment matrix
Middle-left - RVOL status (volume confirmation)
Bottom-right - Entry strategies with exact prices & sizes
Ideal For
✅ Day Traders - Intraday setups with clear entry/exit
✅ Swing Traders - Multi-timeframe confirmation for position trades
✅ Options Traders - Squeeze timing for volatility expansion plays
✅ Systematic Traders - Quantified probabilities for rule-based systems
✅ Risk Managers - Built-in position sizing & stop placement
Technical Specifications
Indicator Type: Overlay (draws on price chart)
Pine Script Version: v6
Calculation Method: Real-time, confirm-on-close option
Alerts: 8 different alert types (premium entries, exits, squeeze warnings)
Customization: 30+ input parameters
Performance: Optimized for real-time updates
Entry Strategies Included
1. VWAP Reversion
Enter when price bounces off VWAP ± 0.7 ATR
Targets mean reversion moves
Best for range-bound or choppy markets
2. Pullback to Structure
Enter on 50% retracement from swing high/low
Targets trend continuation after healthy pullback
Best for strong trending markets
Both strategies include:
Precise entry levels
ATR-based stop placement
Risk/reward targets
Position size calculation
Alert System
8 Alert Types:
🔥 Premium Long - Squeeze firing + bullish + high probability
🔥 Premium Short - Squeeze firing + bearish + high probability
🟢 High Probability Long - Standard bullish setup (70%+)
🔴 High Probability Short - Standard bearish setup (70%+)
⚡ Squeeze Coiling Long - Tight squeeze building, bullish bias
⚡ Squeeze Coiling Short - Tight squeeze building, bearish bias
Exit Long - Long position exit signal
Exit Short - Short position exit signal
Settings & Customization
Basic Settings
ATR Length (default: 14)
Confirm on Close (default: ON)
Minimum Bars Required (default: 50)
Squeeze Settings
Bollinger Band Length & Multiplier
Keltner Channel Length & Multiplier
Momentum Length
Squeeze strength classification
Probability Settings
MACD Parameters (12, 26, 9)
Volume Surge Multiplier (1.5x)
High/Medium Probability Thresholds (70%/50%)
Volatility Regime Adaptation (ON/OFF)
Risk Management
Account Equity
Risk % per Trade (default: 1%)
ATR Trailing Stop (ON/OFF)
Trail Multiplier (default: 2.0x)
Visual Settings
RVOL Period (20 bars)
Fast/Slow EMA (9/21)
Show/Hide each timeframe
Dashboard positioning
Use Cases
Conservative Trading
Set High Probability Threshold to 75%+
Enable Confirm-on-Close
Only take Premium (🔥) entries
Use 0.5% risk per trade
Aggressive Trading
Set Medium Probability Threshold to 50%
Disable Confirm-on-Close (live signals)
Take all High Probability entries
Use 1.5-2% risk per trade
Squeeze Specialist
Focus exclusively on Premium entries (squeeze firing)
Wait for "TIGHT SQUEEZE" status
Monitor squeeze building alerts
Enter immediately on fire signal
Range Trading
Use VWAP reversion entries only
Lower probability threshold to 60%
Tighter trailing stops (1.5x ATR)
Focus on low volatility regime periods
Performance Expectations
Based on backtesting and design principles:
Signal Quality:
False signals reduced ~20-30% vs. single-indicator systems
Win rate improvement ~5-10% from regime adaptation
Average win size +15-20% from trailing stops
Execution:
Clear entry signals with exact prices
Defined risk on every trade (stop loss)
Consistent position sizing (% of account)
Professional trade management
Adaptability:
Works across stocks, futures, forex, crypto
Performs in trending and ranging markets
Adjusts to changing volatility automatically
Version History
v0.1.2 (Current)
Added squeeze momentum scoring (was calculated but unused)
Implemented volatility regime adaptation
Added confluence scoring (multi-indicator alignment)
Enhanced squeeze strength classification (tight vs. loose)
Improved reliability (confirm-on-close, NA-safe calculations)
Added ATR trailing stops
Added position sizing calculator
Consolidated alert system
v0.1.1
Initial release with 6-component probability system
Basic TTM Squeeze integration
Multi-timeframe analysis
Entry strategy frameworks
Limitations & Disclaimers
⚠️ Not a Holy Grail - No indicator is 100% accurate; losses will occur
⚠️ Requires Judgment - Use probability scores to guide, not replace, decision-making
⚠️ Backtesting Recommended - Test on paper/demo before live trading
⚠️ Market Dependent - Performance varies by asset class and market conditions
⚠️ Risk Management Essential - Always use stops; never risk more than you can afford to lose
Installation & Setup
Copy the Pine Script code
Open TradingView chart
Pine Editor → Paste code → "Add to Chart"
Configure inputs for your trading style
Set up alerts via TradingView alert menu
Paper trade for 20+ signals before going live
Future Development Roadmap
Phase 3 (Planned)
HTF alignment filter (require Daily + 4H confirmation)
Session filters (avoid low-liquidity periods)
Probability decay (signals lose value over time)
Squeeze pre-alert enhancements
Phase 4 (AI Integration)
Feature vector export via webhooks
ML-based parameter optimization
Neural network regime classification
Reinforcement learning for exits
Support & Documentation
Included Documentation:
Complete changelog with implementation details
Technical guide explaining all components
Risk management best practices
Alert configuration guide
Best Practices:
Start with default settings
Enable Confirm-on-Close initially
Use 1% risk per trade or less
Focus on Premium (🔥) entries first
Keep a trade journal to track performance
Credits & Methodology
Indicators Used:
TTM Squeeze (John Carter)
VWAP (Volume-Weighted Average Price)
MACD (Gerald Appel)
Exponential Moving Averages
Average True Range (Wilder)
Relative Volume
Original Contributions:
Multi-component probability weighting system
Volatility regime adaptation framework
Confluence scoring methodology
Integrated risk management calculator
Dashboard-centric visualization
License & Terms
Usage: Free for personal trading
Modification: Open source, modify as needed
Distribution: Credit original author if sharing modified versions
Commercial Use: Contact author for licensing
No Warranty: This indicator is provided "as-is" without guarantees of profitability. Trading involves substantial risk. Past performance does not guarantee future results.
Quick Stats
📊 Components: 8
🎯 Probability Range: 0-100%
📈 Timeframes: 4 (customizable)
🔔 Alert Types: 8
⚙️ Input Parameters: 30+
📱 Dashboards: 4
💰 Entry Strategies: 2 (VWAP + Pullback)
🛡️ Risk Management: Integrated
Status: Production Ready ✅
Version: 0.1.2
Last Updated: November 2025
Pine Script: v6
File Name: PA_AI_PRE_GO_v0.1.2_FIXED.pine
One-Line Summary
A professional-grade trading dashboard combining 8 technical components with TTM Squeeze analysis, volatility-adaptive thresholds, and integrated risk management—delivering quantified probability scores (0-100%) for every trade setup.
Dual Harmonic-based AHR DCA (Default :BTC-ETH)A panel indicator designed for dual-asset BTC/ETH DCA (Dollar Cost Averaging) decisions.
It is inspired by the Chinese community indicator "AHR999" proposed by “Jiushen”.
How to use:
Lower HM-based AHR → cheaper (potential buy zone).
Higher HM-based AHR → more expensive (potential risk zone).
Higher than Risk Threshold → consider to sell, but not suitable for DCA.
When both AHR lines are below the Risk threshold → buy the cheaper one (or split if similar).
If one AHR is above Risk → buy the other asset.
If both are above Risk → simulation shows “STOP (both risk)”.
Not limited to BTC/ETH — you can freely change symbols in the input panel
to build any dual-asset DCA pair you want (e.g., BTC/BNB, ETH/SOL, etc.).
What you’ll see:
Two lines: AHR BTC (HM) and AHR ETH (HM)
Two dashed lines: OppThreshold (green) and RiskThreshold (red)
Colored fill showing which asset is cheaper (BTC or ETH)
Buy markers:
- B = Buy BTC
- E = Buy ETH
- D = Dual (split budget)
Top-right table: prices, AHRs, thresholds, qOpp/qRisk%, simulation, P&L
Labels showing last-bar AHR values
Core idea:
Use an AHR based on Harmonic Moving Average (HM) — a ratio that measures how “cheap or expensive” price is relative to both its short-term mean and long-term trend.
The original AHR999 used SMA and was designed for BTC only.
This indicator extends it with cross-exchange percentile mapping, allowing the empirical “opportunity/risk” zones of the AHR999 (on Bitstamp) to adapt automatically to the current market pair.
The indicator derives two adaptive thresholds:
OppThreshold – opportunity zone
RiskThreshold – risk zone
These thresholds are compared with the current HM-based AHR of BTC and ETH to decide which asset is cheaper, and whether it is good to DCA or not, or considering to sell(When it in risk area).
This version uses
Display base: Binance (default: perpetual) with HM-based AHR
Percentile base: Bitstamp spot SMA-AHR (complete, stable history)
Rolling window: 2920 daily bars (~8 years) for percentile tracking
Concept summary
AHR measures the ratio of price to its long-term regression and short-term mean.
HM replaces SMA to better reflect equal-fiat-cost DCA behavior.
Cross-exchange percentile mapping (Bitstamp → Binance) keeps thresholds consistent with the original AHR999 interpretation.
Recommended settings (1D):
DCA length (harmonic): 200
Log-regression lookback: 1825 (≈5 years)
Rolling window: 2920 (≈8 years)
Reference thresholds: 0.45 / 1.20 (AHR999 empirical priors)
Tie split tolerance (ΔAHR): 0.05
Daily budget: 15 USDT (simulation)
All display options can be toggled: table, markers, labels, etc.
Notes:
When the rolling window is filled (2920 bars by default), thresholds are first calculated and then visually backfilled as left-extended lines.
The “buy markers” and “decision table” are light simulations without fees or funding costs — for rhythm and relative analysis, not backtesting.
Crypto Futures Basis Tracker (Annualized)🧩 What is Basis Arbitrage
Basis arbitrage is a market-neutral trading strategy that exploits the price difference between a cryptocurrency’s spot and its futures markets.
When futures trade above spot (called contango), traders can buy spot and short futures, locking in a potential yield.
When futures trade below spot (backwardation), the reverse applies — short spot and go long futures.
The yield earned (or cost paid) by holding this position until expiry is called the basis. Expressing it as an annualized percentage allows comparison across different contract maturities.
⚙️ How the Indicator Works
This tool calculates the annualized basis for up to 10 cryptocurrency futures against a chosen spot price.
You select one spot symbol (e.g., BITSTAMP:BTCUSD) and up to 10 futures symbols (e.g., DERIBIT:BTCUSD07X2025, DERIBIT:BTCUSD14X2025, etc.).
The script automatically computes the days-to-expiry (DTE) and the annualized basis for each future.
A table displays for each contract: symbol, expiry date, DTE, last price, and annualized basis (%) — making it easy to compare the forward curve across maturities.
⚠️ Risks and Limitations
While basis arbitrage is often considered low-risk, it’s not risk-free:
Funding and financing costs can erode returns, especially when borrowing or using leverage.
Exchange or counterparty risk — if one leg of the trade fails (e.g., exchange default, margin liquidation), the hedge breaks.
Execution and timing risk — the basis can tighten or invert before both legs are opened.
Liquidity differences — thin futures may have large bid-ask spreads or slippage.
Use this indicator for analysis and monitoring, not as an automated trading signal.
Disclaimer: Please remember that past performance may not be indicative of future results. Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting. This post and the script don't provide any financial advice.
Pivots High Low Live DetectionPivots High Low Live Detection
Identifies and visualizes swing highs and lows on the chart in real time.
Helps to observe evolving market structure by connecting confirmed or developing pivot points with lines and labels.
Using a configurable lookback, minimum deviation, and confirmation bar system, the indicator highlights new Higher Highs (HH), Higher Lows (HL), Lower Highs (LH), and Lower Lows (LL) as they form.
When “Live (repainting)” mode is enabled, the current swing leg updates dynamically with each candle, giving immediate feedback as price develops.
When disabled, only confirmed pivots are plotted, ideal for historical validation and backtesting.
+ Key Features
Detects and labels major swing points (HH, HL, LH, LL).
Works in live or confirmed (non-repainting) mode.
Adjustable parameters for lookback, deviation (in ticks), and confirmation bars.
Lightweight and compatible with any timeframe or symbol.
Includes runtime alerts for new structural pivots and direction shifts.
+ How to Use
Adjust the inputs under the “Pivots” group to control sensitivity.
Enable “Live (repainting)” to see developing swing legs, or disable it for confirmed structure only.
Use alerts to track structural changes or potential trend reversals.
No-Trade Zones UTC+7This indicator helps you visualize and backtest your preferred trading hours. For example, if you have a 9-to-5 job, you obviously can’t trade during that time — and when backtesting, you should avoid those hours too. It also marks weekends if you prefer not to trade on those days.
By highlighting no-trade periods directly on the chart, you can easily see when you shouldn’t be taking trades, without constantly checking the time or date by hovering over the chart. It makes backtesting smoother and more realistic for your personal schedule.
Gap & Crap Detector V1Gap & Crap Detector (5% Gap Detector + % Labels)
This indicator automatically detects stocks that gap up ≥ 5% (adjustable) from the previous day’s close and tracks whether the move holds or fails over the next three candles.
🔍 How It Works
Yellow % Label → Appears on every candle that gaps up ≥ 5%, showing the exact percentage gap.
Gap & Go (Green Label) → Triggers when the next 3 candles close above the gap-day low, signaling momentum continuation.
Gap & Crap (Red Label) → Triggers immediately if any of the next 3 candles close below the gap-day low, signaling momentum failure.
⚙️ Inputs & Customization
Gap % Threshold – Default 5% (adjustable)
Label Size – Tiny / Small / Normal / Large / Huge
Opacity Controls – Independently set transparency for yellow, red, and green labels
Gap & Go Offset – Adjust how high above the candle the green label appears
🧠 Usage
Use this tool to identify breakout gaps and verify whether price action confirms (Gap & Go) or fails (Gap & Crap).
Ideal for momentum traders, swing traders, Ovtlyr Plan M, and gap strategy backtesting.
Luxy BIG beautiful Dynamic ORBThis is an advanced Opening Range Breakout (ORB) indicator that tracks price breakouts from the first 5, 15, 30, and 60 minutes of the trading session. It provides complete trade management including entry signals, stop-loss placement, take-profit targets, and position sizing calculations.
The ORB strategy is based on the concept that the opening range of a trading session often acts as support/resistance, and breakouts from this range tend to lead to significant moves.
What Makes This Different?
Most ORB indicators simply draw horizontal lines and leave you to figure out the rest. This indicator goes several steps further:
Multi-Stage Tracking
Instead of just one ORB timeframe, this tracks FOUR simultaneously (5min, 15min, 30min, 60min). Each stage builds on the previous one, giving you multiple trading opportunities throughout the session.
Active Trade Management
When a breakout occurs, the indicator automatically calculates and displays entry price, stop-loss, and multiple take-profit targets. These lines extend forward and update in real-time until the trade completes.
Cycle Detection
Unlike indicators that only show the first breakout, this tracks the complete cycle: Breakout → Retest → Re-breakout. You can see when price returns to test the ORB level after breaking out (potential re-entry).
Failed Breakout Warning
If price breaks out but quickly returns inside the range (within a few bars), the label changes to "FAILED BREAK" - warning you to exit or avoid the trade.
Position Sizing Calculator
Built-in risk management that tells you exactly how many shares to buy based on your account size and risk tolerance. No more guessing or manual calculations.
Advanced Filtering
Optional filters for volume confirmation, trend alignment, and Fair Value Gaps (FVG) to reduce false signals and improve win rate.
Core Features Explained
### 1. Multi-Stage ORB Levels
The indicator builds four separate Opening Range levels:
ORB 5 - First 5 minutes (fastest signals, most volatile)
ORB 15 - First 15 minutes (balanced, most popular)
ORB 30 - First 30 minutes (slower, more reliable)
ORB 60 - First 60 minutes (slowest, most confirmed)
Each level is drawn as a horizontal range on your chart. As time progresses, the ranges expand to include more price action. You can enable or disable any stage and assign custom colors to each.
How it works: During the opening minutes, the indicator tracks the highest high and lowest low. Once the time period completes, those levels become your ORB high and low for that stage.
### 2. Breakout Detection
When price closes outside the ORB range, a label appears:
BREAK UP (green label above price) - Price closed above ORB High
BREAK DOWN (red label below price) - Price closed below ORB Low
The label shows which ORB stage triggered (ORB5, ORB15, etc.) and the cycle number if tracking multiple breakouts.
Important: Signals appear on bar close only - no repainting. What you see is what you get.
### 3. Retest Detection
After price breaks out and moves away, if it returns to test the ORB level, a "RETEST" label appears (orange). This indicates:
The original breakout level is now acting as support/resistance
Potential re-entry opportunity if you missed the first breakout
Confirmation that the level is significant
The indicator requires price to move a minimum distance away before considering it a valid retest (configurable in settings).
### 4. Failed Breakout Detection
If price breaks out but returns inside the ORB range within a few bars (before the breakout is "committed"), the original label changes to "FAILED BREAK" in orange.
This warns you:
The breakout lacked conviction
Consider exiting if already in the trade
Wait for better setup
Committed Breakout: The indicator tracks how many bars price stays outside the range. Only after staying outside for the minimum number of bars does it become a committed breakout that can be retested.
### 5. TP/SL Lines (Trade Management)
When a breakout occurs, colored horizontal lines appear showing:
Entry Line (cyan for long, orange for short) - Your entry price (the ORB level)
Stop Loss Line (red) - Where to exit if trade goes against you
TP1, TP2, TP3 Lines (same color as entry) - Profit targets at 1R, 2R, 3R
These lines extend forward as new bars form, making it easy to track your trade. When a target is hit, the line turns green and the label shows a checkmark.
Lines freeze (stop updating) when:
Stop loss is hit
The final enabled take-profit is hit
End of trading session (optional setting)
### 6. Position Sizing Dashboard
The dashboard (bottom-left corner by default) shows real-time information:
Current ORB stage and range size
Breakout status (Inside Range / Break Up / Break Down)
Volume confirmation (if filter enabled)
Trend alignment (if filter enabled)
Entry and Stop Loss prices
All enabled Take Profit levels with percentages
Risk/Reward ratio
Position sizing: Max shares to buy and total risk amount
Position Sizing Example:
If your account is $25,000 and you risk 1% per trade ($250), and the distance from entry to stop loss is $0.50, the calculator shows you can buy 500 shares (250 / 0.50 = 500).
### 7. FVG Filter (Fair Value Gap)
Fair Value Gaps are price inefficiencies - gaps left by strong momentum where one candle's high doesn't overlap with a previous candle's low (or vice versa).
When enabled, this filter:
Detects bullish and bearish FVGs
Draws semi-transparent boxes around these gaps
Only allows breakout signals if there's an FVG near the breakout level
Why this helps: FVGs indicate institutional activity. Breakouts through FVGs tend to be stronger and more reliable.
Proximity setting: Controls how close the FVG must be to the ORB level. 2.0x means the breakout can be within 2 times the FVG size - a reasonable default.
### 8. Volume & Trend Filters
Volume Filter:
Requires current volume to be above average (customizable multiplier). High volume breakouts are more likely to sustain.
Set minimum multiplier (e.g., 1.5x = 50% above average)
Set "strong volume" multiplier (e.g., 2.5x) that bypasses other filters
Dashboard shows current volume ratio
Trend Filter:
Only shows breakouts aligned with a higher timeframe trend. Choose from:
VWAP - Price above/below volume-weighted average
EMA - Price above/below exponential moving average
SuperTrend - ATR-based trend indicator
Combined modes (VWAP+EMA, VWAP+SuperTrend) for stricter filtering
### 9. Pullback Filter (Advanced)
Purpose:
Waits for price to pull back slightly after initial breakout before confirming the signal.
This reduces false breakouts from immediate reversals.
How it works:
- After breakout is detected, indicator waits for a small pullback (default 2%)
- Once pullback occurs AND price breaks out again, signal is confirmed
- If no pullback within timeout period (5 bars), signal is issued anyway
Settings:
Enable Pullback Filter: Turn this filter on/off
Pullback %: How much price must pull back (2% is balanced)
Timeout (bars): Max bars to wait for pullback (5 is standard)
When to use:
- Choppy markets with many fake breakouts
- When you want higher quality signals
- Combine with Volume filter for maximum confirmation
Trade-off:
- Better signal quality
- May miss some valid fast moves
- Slight entry delay
How to Use This Indicator
### For Beginners - Simple Setup
Add the indicator to your chart (5-minute or 15-minute timeframe recommended)
Leave all default settings - they work well for most stocks
Watch for BREAK UP or BREAK DOWN labels to appear
Check the dashboard for entry, stop loss, and targets
Use the position sizing to determine how many shares to buy
Basic Trading Plan:
Wait for a clear breakout label
Enter at the ORB level (or next candle open if you're late)
Place stop loss where the red line indicates
Take profit at TP1 (50% of position) and TP2 (remaining 50%)
### For Advanced Traders - Customized Setup
Choose which ORB stages to track (you might only want ORB15 and ORB30)
Enable filters: Volume (stocks) or Trend (trending markets)
Enable FVG filter for institutional confirmation
Set "Track Cycles" mode to catch retests and re-breakouts
Customize stop loss method (ATR for volatile stocks, ORB% for stable ones)
Adjust risk per trade and account size for accurate position sizing
Advanced Strategy Example:
Enable ORB15 only (disable others for cleaner chart)
Turn on Volume filter at 1.5x with Strong at 2.5x
Enable Trend filter using VWAP
Set Signal Mode to "Track Cycles" with Max 3 cycles
Wait for aligned breakouts (Volume + Trend + Direction)
Enter on retest if you missed the initial break
### Timeframe Recommendations
5-minute chart: Scalping, very active trading, crypto
15-minute chart: Day trading, balanced approach (most popular)
30-minute chart: Swing entries, less screen time
60-minute chart: Position trading, longer holds
The indicator works on any intraday timeframe, but ORB is fundamentally a day trading strategy. Daily charts don't make sense for ORB.
DEFAULT CONFIGURATION
ON by Default:
• All 4 ORB stages (5/15/30/60)
• Breakout Detection
• Retest Labels
• All TP levels (1/1.5/2/3)
• TP/SL Lines (Detailed mode)
• Dashboard (Bottom Left, Dark theme)
• Position Size Calculator
OFF by Default (Optional Filters):
• FVG Filter
• Pullback Filter
• Volume Filter
• Trend Filter
• HTF Bias Check
• Alerts
Recommended for Beginners:
• Leave all defaults
• Session Mode: Auto-Detect
• Signal Mode: Track Cycles
• Stop Method: ATR
• Add Volume Filter if trading stocks
Recommended for Advanced:
• Enable ORB15 + ORB30 only (disable 5 & 60)
• Enable: Volume + Trend + FVG
• Signal Mode: Track Cycles, Max 3
• Stop Method: ATR or Safer
• Enable HTF Daily bias check
## Settings Guide
The settings are organized into logical groups. Here's what each section controls:
### ORB COLORS Section
Show Edge Labels: Display "ORB 5", "ORB 15" labels at the right edge of the levels
Background: Fill the area between ORB high/low with color
Transparency: How see-through the background is (95% is nearly invisible)
Enable ORB 5/15/30/60: Turn each stage on or off individually
Colors: Assign colors to each ORB stage for easy identification
### SESSION SETTINGS Section
Session Mode: Choose trading session (Auto-Detect works for most instruments)
Custom Session Hours: Define your own hours if needed (format: HHMM-HHMM)
Auto-Detect uses the instrument's natural hours (stocks use exchange hours, crypto uses 24/7).
### BREAKOUT DETECTION Section
Enable Breakout Detection: Master switch for signals
Show Retest Labels: Display retest signals
Label Size: Visual size for all labels (Small recommended)
Enable FVG Filter: Require Fair Value Gap confirmation
Show FVG Boxes: Display the gap boxes on chart
Signal Mode: "First Only" = one signal per direction per day, "Track Cycles" = multiple signals
Max Cycles: How many breakout-retest cycles to track (6 is balanced)
Breakout Buffer: Extra distance required beyond ORB level (0.1-0.2% recommended)
Min Distance for Retest: How far price must move away before retest is valid (2% recommended)
Min Bars Outside ORB: Bars price must stay outside for committed breakout (2 is balanced)
### TARGETS & RISK Section
Enable Targets & Stop-Loss: Calculate and show trade management
TP1/TP2/TP3 checkboxes: Select which profit targets to display
Stop Method: How to calculate stop loss placement
- ATR: Based on volatility (best for most cases)
- ORB %: Fixed % of ORB range
- Swing: Recent swing high/low
- Safer: Widest of all methods
ATR Length & Multiplier: Controls ATR stop distance (14 period, 1.5x is standard)
ORB Stop %: Percentage beyond ORB for stop (20% is balanced)
Swing Bars: Lookback period for swing high/low (3 is recent)
### TP/SL LINES Section
Show TP/SL Lines: Display horizontal lines on chart
Label Format: "Short" = minimal text, "Detailed" = shows prices
Freeze Lines at EOD: Stop extending lines at session close
### DASHBOARD Section
Show Info Panel: Display the metrics dashboard
Theme: Dark or Light colors
Position: Where to place dashboard on chart
Toggle rows: Show/hide specific information rows
Calculate Position Size: Enable the position sizing calculator
Risk Mode: Risk fixed $ amount or % of account
Account Size: Your total trading capital
Risk %: Percentage to risk per trade (0.5-1% recommended)
### VOLUME FILTER Section
Enable Volume Filter: Require volume confirmation
MA Length: Average period (20 is standard)
Min Volume: Required multiplier (1.5x = 50% above average)
Strong Volume: Multiplier that bypasses other filters (2.5x)
### TREND FILTER Section
Enable Trend Filter: Require trend alignment
Trend Mode: Method to determine trend (VWAP is simple and effective)
Custom EMA Length: If using EMA mode (50 for swing, 20 for day trading)
SuperTrend settings: Period and Multiplier if using SuperTrend mode
### HIGHER TIMEFRAME Section
Check Daily Trend: Display higher timeframe bias in dashboard
Timeframe: What TF to check (D = daily, recommended)
Method: Price vs MA (stable) or Candle Direction (reactive)
MA Period: EMA length for Price vs MA method (20 is balanced)
Min Strength %: Minimum strength threshold for HTF bias to be considered
- For "Price vs MA": Minimum distance (%) from moving average
- For "Candle Direction": Minimum candle body size (%)
- 0.5% is balanced - increase for stricter filtering
- Lower values = more signals, higher values = only strong trends
### ALERTS Section
Enable Alerts: Master switch (must be ON to use any alerts)
Breakout Alerts: Notify on ORB breakouts
Retest Alerts: Notify when price retests after breakout
Failed Break Alerts: Notify on failed breakouts
Stage Complete Alerts: Notify when each ORB stage finishes forming
After enabling desired alert types, click "Create Alert" button, select this indicator, choose "Any alert() function call".
## Tips & Best Practices
### General Trading Tips
ORB works best on liquid instruments (stocks with good volume, major crypto pairs)
First hour of the session is most important - that's when ORB is forming
Breakouts WITH the trend have higher success rates - use the trend filter
Failed breakouts are common - use the "Min Bars Outside" setting to filter weak moves
Not every day produces good ORB setups - be patient and selective
### Position Sizing Best Practices
Never risk more than 1-2% of your account on a single trade
Use the built-in calculator - don't guess your position size
Update your account size monthly as it grows
Smaller accounts: use $ Amount mode for simplicity
Larger accounts: use % of Account mode for scaling
### Take Profit Strategy
Most traders use: 50% at TP1, 50% at TP2
Aggressive: Hold through TP1 for TP2 or TP3
Conservative: Full exit at TP1 (1:1 risk/reward)
After TP1 hits, consider moving stop to breakeven
TP3 rarely hits - only on strong trending days
### Filter Combinations
Maximum Quality: Volume + Trend + FVG (fewest signals, highest quality)
Balanced: Volume + Trend (good quality, reasonable frequency)
Active Trading: No filters or Volume only (many signals, lower quality)
Trending Markets: Trend filter essential (indices, crypto)
Range-Bound: Volume + FVG (avoid trend filter)
### Common Mistakes to Avoid
Chasing breakouts - wait for the bar to close, don't FOMO into wicks
Ignoring the stop loss - always use it, move it manually if needed
Over-leveraging - the calculator shows MAX shares, you can buy less
Trading every signal - quality > quantity, use filters
Not tracking results - keep a journal to see what works for YOU
## Pros and Cons
### Advantages
Complete all-in-one solution - from signal to position sizing
Multiple timeframes tracked simultaneously
Visual clarity - easy to see what's happening
Cycle tracking catches opportunities others miss
Built-in risk management eliminates guesswork
Customizable filters for different trading styles
No repainting - what you see is locked in
Works across multiple markets (stocks, forex, crypto)
### Limitations
Intraday strategy only - doesn't work on daily charts
Requires active monitoring during first 1-2 hours of session
Not suitable for after-hours or extended sessions by default
Can produce many signals in choppy markets (use filters)
Dashboard can be overwhelming for complete beginners
Performance depends on market conditions (trends vs ranges)
Requires understanding of risk management concepts
### Best For
Day traders who can watch the first 1-2 hours of market open
Traders who want systematic entry/exit rules
Those learning proper position sizing and risk management
Active traders comfortable with multiple signals per day
Anyone trading liquid instruments with clear sessions
### Not Ideal For
Swing traders holding multi-day positions
Set-and-forget / passive investors
Traders who can't watch market open
Complete beginners unfamiliar with trading concepts
Low volume / illiquid instruments
## Frequently Asked Questions
Q: Why are no signals appearing?
A: Check that you're on an intraday timeframe (5min, 15min, etc.) and that the current time is within your session hours. Also verify that "Enable Breakout Detection" is ON and at least one ORB stage is enabled. If using filters, they might be blocking signals - try disabling them temporarily.
Q: What's the best ORB stage to use?
A: ORB15 (15 minutes) is most popular and balanced. ORB5 gives faster signals but more noise. ORB30 and ORB60 are slower but more reliable. Many traders use ORB15 + ORB30 together.
Q: Should I enable all the filters?
A: Start with no filters to see all signals. If too many false signals, add Volume filter first (stocks) or Trend filter (trending markets). FVG filter is most restrictive - use for maximum quality but fewer signals.
Q: How do I know which stop loss method to use?
A: ATR works for most cases - it adapts to volatility. Use ORB% if you want predictable stop placement. Swing is for respecting chart structure. Safer gives you the most room but largest risk.
Q: Can I use this for swing trading?
A: Not really - ORB is fundamentally an intraday strategy. The ranges reset each day. For swing trading, look at weekly support/resistance or moving averages instead.
Q: Why do TP/SL lines disappear sometimes?
A: Lines freeze (stop extending) when: stop loss is hit, the last enabled take-profit is hit, or end of session arrives (if "Freeze at EOD" is enabled). This is intentional - the trade is complete.
Q: What's the difference between "First Only" and "Track Cycles"?
A: "First Only" shows one breakout UP and one DOWN per day maximum - clean but might miss opportunities. "Track Cycles" shows breakout-retest-rebreak sequences - more signals but busier chart.
Q: Is position sizing accurate for options/forex?
A: The calculator is designed for shares (stocks). For options, ignore the share count and use the risk amount. For forex, you'll need to adapt the lot size calculation manually.
Q: How much capital do I need to use this?
A: The indicator works for any account size, but practical day trading typically requires $25,000 in the US due to Pattern Day Trader rules. Adjust the "Account Size" setting to match your capital.
Q: Can I backtest this strategy?
A: This is an indicator, not a strategy script, so it doesn't have built-in backtesting. You can visually review historical signals or code a strategy script using similar logic.
Q: Why does the dashboard show different entry price than the breakout label?
A: If you're looking at an old breakout, the ORB levels may have changed when the next stage completed. The dashboard always shows the CURRENT active range and trade setup.
Q: What's a good win rate to expect?
A: ORB strategies typically see 40-60% win rate depending on market conditions and filters used. The strategy relies on positive risk/reward ratios (2:1 or better) to be profitable even with moderate win rates.
Q: Does this work on crypto?
A: Yes, but crypto trades 24/7 so you need to define what "session start" means. Use Session Mode = Custom and set your preferred daily reset time (e.g., 0000-2359 UTC).
## Credits & Transparency
### Development
This indicator was developed with the assistance of AI technology to implement complex ORB trading logic.
The strategy concept, feature specifications, and trading logic were designed by the publisher. The implementation leverages modern development tools to ensure:
Clean, efficient, and maintainable code
Comprehensive error handling and input validation
Detailed documentation and user guidance
Performance optimization
### Trading Concepts
This indicator implements several public domain trading concepts:
Opening Range Breakout (ORB): Trading strategy popularized by Toby Crabel, Mark Fisher and many more talanted traders.
Fair Value Gap (FVG): Price imbalance concept from ICT methodology
SuperTrend: ATR-based trend indicator using public formula
Risk/Reward Ratio: Standard risk management principle
All mathematical formulas and technical concepts used are in the public domain.
### Pine Script
Uses standard TradingView built-in functions:
ta.ema(), ta.atr(), ta.vwap(), ta.highest(), ta.lowest(), request.security()
No external libraries or proprietary code from other authors.
## Disclaimer
This indicator is provided for educational and informational purposes only. It is not financial advice.
Trading involves substantial risk of loss and is not suitable for every investor. Past performance shown in examples is not indicative of future results.
The indicator provides signals and calculations, but trading decisions are solely your responsibility. Always:
Test strategies on paper before using real money
Never risk more than you can afford to lose
Understand that all trading involves risk
Consider seeking advice from a licensed financial advisor
The publisher makes no guarantees regarding accuracy, profitability, or performance. Use at your own risk.
---
Version: 3.0
Pine Script Version: v6
Last Updated: October 2024
For support, questions, or suggestions, please comment below or send a private message.
---
Happy trading, and remember: consistent risk management beats perfect entry timing every time.






















