HMA-Kahlman Trend, DifferenceFilter & TrendlinesThis update to the previous HMA-Kahlman Trend, Clipping & Trendlines script features the same structure with the three modules:
- Trendlines module,
- NEW Winsorizing submodule using difference-based filtering.
- HMA-Kahlman Trend module.
The Winsorizing submodule filters signals by a volume level, eliminating the ones with the volume below a threshold. This module substitutes the previous 'low-level' filtering implementation. This time it filters out based on difference between scaled volume and its moving average.
Tested with BTCUSD.
在腳本中搜尋"TRENDLINES"
HMA-Kahlman Trend & TrendlinesThis script utilizes two modules, Trendlines module (by Joris Duyck) and HMA-Kahlman Trend module. Trendlines module produces crossovers predictive of the next local trend.
Fibonacci TrendlinesCOINBASE:ETHUSD
This indicator is bested with the 4 hour time frame.
This indicator shows 4 EMA trendlines based on the Fibonacci Sequence (8, 13, 21, 55). If the 8, 13, 21 trendlines crosses above the 55 and the volume is high, this is an indication for a long position. If the 8, 13, 21 crosses below the 55 (volume doesn't matter), this is an indication to exit the long position or an indication for a short position.
SMC + FVG + EMA + TrendlinesSMC + FVG + EMA + Trendlines legRange = math.abs(structureHigh - structureLow) // <-- เปลี่ยนชื่อจาก range -> legRange
if showCurrentStruct and not na(structureHigh) and not na(structureLow)
if na(curHighLine) == false
line.delete(curHighLine)
if na(curLowLine) == false
line.delete(curLowLine)
curHighLine := line.new(sHighIdx, structureHigh, bar_index, structureHigh, xloc.bar_index, color=currentStructColor, style=currentStructStyle, width=currentStructWidth)
curLowLine := line.new(sLowIdx, structureLow, bar_index, structureLow, xloc.bar_index, color=currentStructColor, style=currentStructStyle, width=currentStructWidth)
// ---------- Fibonacci on current leg ----------
if showFibo and legRange > 0
for k = 0 to array.size(fLevels) - 1
lvl = array.get(fLevels, k)
price = sDir == 1 ? structureHigh - (legRange - legRange * lvl)
: structureLow + (legRange - legRange * lvl)
l = line.new(sDir == 1 ? sHighIdx : sLowIdx, price, bar_index, price, xloc.bar_index, color=fiboColorMain, style=fiboStyle, width=fiboWidth)
label.new(bar_index + 10, price, str.tostring(lvl) + " (" + str.tostring(price) + ")", style=label.style_none, textcolor=fiboColorMain)
RSI Trendlines with BreakoutsA pivot-based breakout indicator that attempts to provide traders with a visual aid for finding breakouts on the RSI. Similar to how we use trendlines on our charts, using them on the Relative Strength Index can also give us a sense of direction in the markets.
This script uses its own pivot-based system that checks for real-time swing levels and triggers a new pivot event after every dip and nth bars. The breakout alerts that are given were not designed to be taken as signals since their purpose is to provide an extra bit of confluence. Because of this, I added no other conditions that try to make the alerts "perfect", but instead, print every breakout that is detected. Despite stating this, I did happen to add a condition that checks the difference in RSI and the breakout value, but that's as far as it'll go.
There are alerts built-in to the script, along with adjustable repainting options.
🔳 Settings
Lookback Range: Lookback period to trigger a new pivot point when conditions are met.
RSI Difference: The difference between the current RSI value and the breakout value. How much higher in value should the current RSI be compared to the breakout value in order to detect a breakout?
RSI Settings
Styling Options
🔳 Repaint Options
On: Allows repainting
Off - Bar Confirmation: Prevents repainting and generates alerts when the bar closes. (1 candle later)
🔳 How it Works
Before a trendline is drawn, the script retrieves the slope between the previous pivot point and the current. Then it adds or subtracts the slope x amount of times (based on the lookback range) from the current pivot value until the current x-axis is reached. By doing this we can get a trendline that will detect a breakout accurately.
The result
When using the RSI Difference condition, the script will print breakouts whenever the condition is true, because of this dotted lines were added to track where the alert was triggered.
🔳 Alerts
Support & Resistance Trendlines with PP + Fib. Channel█ Support & Resistance Trendlines with Pivot Points + Fibonacci Channel
This script automatically draw support and resistance trend lines based on pivot points and add a fibonacci channel.
It will show potential patterns with the help of support and resistance lines as well as breakout target and pullback entry with the fibonacci extension and retracement levels.
It is based on atolelole's script, I only made it more configurable so please check out his script.
I added the possibility to change values and add additional retracement and extension levels.
I also made it customizable with the possibility to change lines color, width and style.
[PX] Level & TrendlinesThe indicator identifies the intermediate fractal pattern, where neighboring fractals are either higher or lower. It plots horizontal level and trendlines based on those fractals and comes with a variety of settings.
If you are looking for someone to develop your on indicator or trading strategy, don't hesitate to get in touch with me here on TradingView or below.
Contact:
www.pascal-simon.de
info@pascal-simon.de
Fibonacci Trendlines 8-200In my opinion best EMA Trendlines there is, simple yet very reliable on any time frame, i found the version that had 8-13-21-55, so i decided to add 100 and 200 for higher time frames enjoy please share and like
Soriano TrendLinesSoriano TrendLines is charting system where you can buy once candles goes green and sell or short ones candles are red.
Auto Bull/Bear TrendlinesAutomated trendlines for easily identifying market trend continuation or reversals
Trend Line Trendlines are easily recognizable lines that traders draw on charts to connect a series of prices together or show some data's best fit. The resulting line is then used to give the trader a good idea of the direction in which an investment's value might move.
A trendline is a line drawn over pivot highs or under pivot lows to show the prevailing direction of price. Trendlines are a visual representation of support and resistance in any time frame. They show direction and speed of price, and also describe patterns during periods of price contraction.
Key Takeaways
Trendlines indicate the best fit of some data using a single line.
A single trendline can be applied to a chart to give a clearer picture of the trend.
The time period being analyzed and the exact points used to create a trendline vary from trader to trader.
The trendline is among the most important tools used by technical analysts. Instead of looking at past business performance or other fundamentals, technical analysts look for trends in price action. A trendline helps technical analysts determine the current direction in market prices. Technical analysts believe the trend is your friend, and identifying this trend is the first step in the process of making a good trade.
To create a trendline, an analyst must have at least two points on a price chart. Some analysts like to use different time frames such as one minute or five minutes. Others look at daily charts or weekly charts. Some analysts put aside time altogether, choosing to view trends based on tick intervals rather than intervals of time. What makes trendlines so universal in usage and appeal is they can be used to help identify trends regardless of the time period, time frame or interval used.
Trendlines StrategyUsing the clever calculations and code by BacktestRookies, here is a strategy that buys
when the price breaks above the trend line and sells (or shorts) when it crosses below.
This logic can be reversed, which seems to work better with recent market conditions.
Kernel EnvelopeKernel Envelope is a non-repainting dynamic band system designed to identify price overextension, trend exhaustion, volatility expansion, and high-probability reversal points.
Using a kernel-based smoothing technique, the indicator builds adaptive upper and lower envelopes that respond fluidly to market structure while maintaining exceptional stability for systematic trading.
These envelopes form the core of the system and allow traders to:
Detect bullish rebounds from the lower band
Detect bearish rejections from the upper band
Filter trend-following entries using volatility context
Identify zones where price is statistically stretched
Highlight exhaustion points during impulsive moves
The indicator also includes an integrated pivot-based trendline engine, which draws dynamic support and resistance levels derived from structural highs and lows.
These lines auto-extend forward and include breakout alerts, making them ideal for breakout traders, liquidity hunters, and structure-based strategies.
Key Features
Fully non-repainting envelope calculation
Adaptive smoothing responsive to market volatility
Clean gold/silver visual theme for maximum clarity
Glow-style rendering for enhanced band visibility
Automatic trendline generation using pivot points
Breakout alerts for upper and lower trendlines
Rebound and rejection alerts on envelope interaction
Works on all markets and timeframes
Whether you trade reversals, breakouts, or trend continuation setups, Kernel Envelope provides a reliable, low-noise framework for identifying high-quality trade signals.
Acknowledgment
This indicator is inspired by the original Nadaraya-Watson Envelope by LuxAlgo, whose work served as the foundation for further research and development.
Follow Me on X
For more indicators, updates, automated strategies, and educational content, you can follow me here:
X (Twitter): x.com
Ultimate RSI [captainua]Ultimate RSI
Overview
This indicator combines multiple RSI calculations with volume analysis, divergence detection, and trend filtering to provide a comprehensive RSI-based trading system. The script calculates RSI using three different periods (6, 14, 24) and applies various smoothing methods to reduce noise while maintaining responsiveness. The combination of these features creates a multi-layered confirmation system that reduces false signals by requiring alignment across multiple indicators and timeframes.
The script includes optimized configuration presets for instant setup: Scalping, Day Trading, Swing Trading, and Position Trading. Simply select a preset to instantly configure all settings for your trading style, or use Custom mode for full manual control. All settings include automatic input validation to prevent configuration errors and ensure optimal performance.
Configuration Presets
The script includes preset configurations optimized for different trading styles, allowing you to instantly configure the indicator for your preferred trading approach. Simply select a preset from the "Configuration Preset" dropdown menu:
- Scalping: Optimized for fast-paced trading with shorter RSI periods (4, 7, 9) and minimal smoothing. Noise reduction is automatically disabled, and momentum confirmation is disabled to allow faster signal generation. Designed for quick entries and exits in volatile markets.
- Day Trading: Balanced configuration for intraday trading with moderate RSI periods (6, 9, 14) and light smoothing. Momentum confirmation is enabled for better signal quality. Ideal for day trading strategies requiring timely but accurate signals.
- Swing Trading: Configured for medium-term positions with standard RSI periods (14, 14, 21) and moderate smoothing. Provides smoother signals suitable for swing trading timeframes. All noise reduction features remain active.
- Position Trading: Optimized for longer-term trades with extended RSI periods (24, 21, 28) and heavier smoothing. Filters are configured for highest-quality signals. Best for position traders holding trades over multiple days or weeks.
- Custom: Full manual control over all settings. All input parameters are available for complete customization. This is the default mode and maintains full backward compatibility with previous versions.
When a preset is selected, it automatically adjusts RSI periods, smoothing lengths, and filter settings to match the trading style. The preset configurations ensure optimal settings are applied instantly, eliminating the need for manual configuration. All settings can still be manually overridden if needed, providing flexibility while maintaining ease of use.
Input Validation and Error Prevention
The script includes comprehensive input validation to prevent configuration errors:
- Cross-Input Validation: Smoothing lengths are automatically validated to ensure they are always less than their corresponding RSI period length. If you set a smoothing length greater than or equal to the RSI length, the script automatically adjusts it to (RSI Length - 1). This prevents logical errors and ensures valid configurations.
- Input Range Validation: All numeric inputs have minimum and maximum value constraints enforced by TradingView's input system, preventing invalid parameter values.
- Smart Defaults: Preset configurations use validated default values that are tested and optimized for each trading style. When switching between presets, all related settings are automatically updated to maintain consistency.
Core Calculations
Multi-Period RSI:
The script calculates RSI using the standard Wilder's RSI formula: RSI = 100 - (100 / (1 + RS)), where RS = Average Gain / Average Loss over the specified period. Three separate RSI calculations run simultaneously:
- RSI(6): Uses 6-period lookback for high sensitivity to recent price changes, useful for scalping and early signal detection
- RSI(14): Standard 14-period RSI for balanced analysis, the most commonly used RSI period
- RSI(24): Longer 24-period RSI for trend confirmation, provides smoother signals with less noise
Each RSI can be smoothed using EMA, SMA, RMA (Wilder's smoothing), WMA, or Zero-Lag smoothing. Zero-Lag smoothing uses the formula: ZL-RSI = RSI + (RSI - RSI ) to reduce lag while maintaining signal quality. You can apply individual smoothing lengths to each RSI period, or use global smoothing where all three RSIs share the same smoothing length.
Dynamic Overbought/Oversold Thresholds:
Static thresholds (default 70/30) are adjusted based on market volatility using ATR. The formula: Dynamic OB = Base OB + (ATR × Volatility Multiplier × Base Percentage / 100), Dynamic OS = Base OS - (ATR × Volatility Multiplier × Base Percentage / 100). This adapts to volatile markets where traditional 70/30 levels may be too restrictive. During high volatility, the dynamic thresholds widen, and during low volatility, they narrow. The thresholds are clamped between 0-100 to remain within RSI bounds. The ATR is cached for performance optimization, updating on confirmed bars and real-time bars.
Adaptive RSI Calculation:
An adaptive RSI adjusts the standard RSI(14) based on current volatility relative to average volatility. The calculation: Adaptive Factor = (Current ATR / SMA of ATR over 20 periods) × Volatility Multiplier. If SMA of ATR is zero (edge case), the adaptive factor defaults to 0. The adaptive RSI = Base RSI × (1 + Adaptive Factor), clamped to 0-100. This makes the indicator more responsive during high volatility periods when traditional RSI may lag. The adaptive RSI is used for signal generation (buy/sell signals) but is not plotted on the chart.
Overbought/Oversold Fill Zones:
The script provides visual fill zones between the RSI line and the threshold lines when RSI is in overbought or oversold territory. The fill logic uses inclusive conditions: fills are shown when RSI is currently in the zone OR was in the zone on the previous bar. This ensures complete coverage of entry and exit boundaries. A minimum gap of 0.1 RSI points is maintained between the RSI plot and threshold line to ensure reliable polygon rendering in TradingView. The fill uses invisible plots at the threshold levels and the RSI value, with the fill color applied between them. You can select which RSI (6, 14, or 24) to use for the fill zones.
Divergence Detection
Regular Divergence:
Bullish divergence: Price makes a lower low (current low < lowest low from previous lookback period) while RSI makes a higher low (current RSI > lowest RSI from previous lookback period). Bearish divergence: Price makes a higher high (current high > highest high from previous lookback period) while RSI makes a lower high (current RSI < highest RSI from previous lookback period). The script compares current price/RSI values to the lowest/highest values from the previous lookback period using ta.lowest() and ta.highest() functions with index to reference the previous period's extreme.
Pivot-Based Divergence:
An enhanced divergence detection method that uses actual pivot points instead of simple lowest/highest comparisons. This provides more accurate divergence detection by identifying significant pivot lows/highs in both price and RSI. The pivot-based method uses a tolerance-based approach with configurable constants: 1% tolerance for price comparisons (priceTolerancePercent = 0.01) and 1.0 RSI point absolute tolerance for RSI comparisons (pivotTolerance = 1.0). Minimum divergence threshold is 1.0 RSI point (minDivergenceThreshold = 1.0). It looks for two recent pivot points and compares them: for bullish divergence, price makes a lower low (at least 1% lower) while RSI makes a higher low (at least 1.0 point higher). This method reduces false divergences by requiring actual pivot points rather than just any low/high within a period. When enabled, pivot-based divergence replaces the traditional method for more accurate signal generation.
Strong Divergence:
Regular divergence is confirmed by an engulfing candle pattern. Bullish engulfing requires: (1) Previous candle is bearish (close < open ), (2) Current candle is bullish (close > open), (3) Current close > previous open, (4) Current open < previous close. Bearish engulfing is the inverse: previous bullish, current bearish, current close < previous open, current open > previous close. Strong divergence signals are marked with visual indicators (🐂 for bullish, 🐻 for bearish) and have separate alert conditions.
Hidden Divergence:
Continuation patterns that signal trend continuation rather than reversal. Bullish hidden divergence: Price makes a higher low (current low > lowest low from previous period) but RSI makes a lower low (current RSI < lowest RSI from previous period). Bearish hidden divergence: Price makes a lower high (current high < highest high from previous period) but RSI makes a higher high (current RSI > highest RSI from previous period). These patterns indicate the trend is likely to continue in the current direction.
Volume Confirmation System
Volume threshold filtering requires current volume to exceed the volume SMA multiplied by the threshold factor. The formula: Volume Confirmed = Volume > (Volume SMA × Threshold). If the threshold is set to 0.1 or lower, volume confirmation is effectively disabled (always returns true). This allows you to use the indicator without volume filtering if desired.
Volume Climax is detected when volume exceeds: Volume SMA + (Volume StdDev × Multiplier). This indicates potential capitulation moments where extreme volume accompanies price movements. Volume Dry-Up is detected when volume falls below: Volume SMA - (Volume StdDev × Multiplier), indicating low participation periods that may produce unreliable signals. The volume SMA is cached for performance, updating on confirmed and real-time bars.
Multi-RSI Synergy
The script generates signals when multiple RSI periods align in overbought or oversold zones. This creates a confirmation system that reduces false signals. In "ALL" mode, all three RSIs (6, 14, 24) must be simultaneously above the overbought threshold OR all three must be below the oversold threshold. In "2-of-3" mode, any two of the three RSIs must align in the same direction. The script counts how many RSIs are in each zone: twoOfThreeOB = ((rsi6OB ? 1 : 0) + (rsi14OB ? 1 : 0) + (rsi24OB ? 1 : 0)) >= 2.
Synergy signals require: (1) Multi-RSI alignment (ALL or 2-of-3), (2) Volume confirmation, (3) Reset condition satisfied (enough bars since last synergy signal), (4) Additional filters passed (RSI50, Trend, ADX, Volume Dry-Up avoidance). Separate reset conditions track buy and sell signals independently. The reset condition uses ta.barssince() to count bars since the last trigger, returning true if the condition never occurred (allowing first signal) or if enough bars have passed.
Regression Forecasting
The script uses historical RSI values to forecast future RSI direction using four methods. The forecast horizon is configurable (1-50 bars ahead). Historical data is collected into an array, and regression coefficients are calculated based on the selected method.
Linear Regression: Calculates the least-squares fit line (y = mx + b) through the last N RSI values. The calculation: meanX = sumX / horizon, meanY = sumY / horizon, denominator = sumX² - horizon × meanX², m = (sumXY - horizon × meanX × meanY) / denominator, b = meanY - m × meanX. The forecast projects this line forward: forecast = b + m × i for i = 1 to horizon.
Polynomial Regression: Fits a quadratic curve (y = ax² + bx + c) to capture non-linear trends. The system of equations is solved using Cramer's rule with a 3×3 determinant. If the determinant is too small (< 0.0001), the system falls back to linear regression. Coefficients are calculated by solving: n×c + sumX×b + sumX²×a = sumY, sumX×c + sumX²×b + sumX³×a = sumXY, sumX²×c + sumX³×b + sumX⁴×a = sumX²Y. Note: Due to the O(n³) computational complexity of polynomial regression, the forecast horizon is automatically limited to a maximum of 20 bars when using polynomial regression to maintain optimal performance. If you set a horizon greater than 20 bars with polynomial regression, it will be automatically capped at 20 bars.
Exponential Smoothing: Applies exponential smoothing with adaptive alpha = 2/(horizon+1). The smoothing iterates from oldest to newest value: smoothed = alpha × series + (1 - alpha) × smoothed. Trend is calculated by comparing current smoothed value to an earlier smoothed value (at 60% of horizon): trend = (smoothed - earlierSmoothed) / (horizon - earlierIdx). Forecast: forecast = base + trend × i.
Moving Average: Uses the difference between short MA (horizon/2) and long MA (horizon) to estimate trend direction. Trend = (maShort - maLong) / (longLen - shortLen). Forecast: forecast = maShort + trend × i.
Confidence bands are calculated using RMSE (Root Mean Squared Error) of historical forecast accuracy. The error calculation compares historical values with forecast values: RMSE = sqrt(sumSquaredError / count). If insufficient data exists, it falls back to calculating standard deviation of recent RSI values. Confidence bands = forecast ± (RMSE × confidenceLevel). All forecast values and confidence bands are clamped to 0-100 to remain within RSI bounds. The regression functions include comprehensive safety checks: horizon validation (must not exceed array size), empty array handling, edge case handling for horizon=1 scenarios, division-by-zero protection, and bounds checking for all array access operations to prevent runtime errors.
Strong Top/Bottom Detection
Strong buy signals require three conditions: (1) RSI is at its lowest point within the bottom period: rsiVal <= ta.lowest(rsiVal, bottomPeriod), (2) RSI is below the oversold threshold minus a buffer: rsiVal < (oversoldThreshold - rsiTopBottomBuffer), where rsiTopBottomBuffer = 2.0 RSI points, (3) The absolute difference between current RSI and the lowest RSI exceeds the threshold value: abs(rsiVal - ta.lowest(rsiVal, bottomPeriod)) > threshold. This indicates a bounce from extreme levels with sufficient distance from the absolute low.
Strong sell signals use the inverse logic: RSI at highest point, above overbought threshold + rsiTopBottomBuffer (2.0 RSI points), and difference from highest exceeds threshold. Both signals also require: volume confirmation, reset condition satisfied (separate reset for buy vs sell), and all additional filters passed (RSI50, Trend, ADX, Volume Dry-Up avoidance).
The reset condition uses separate logic for buy and sell: resetCondBuy checks bars since isRSIAtBottom, resetCondSell checks bars since isRSIAtTop. This ensures buy signals reset based on bottom conditions and sell signals reset based on top conditions, preventing incorrect signal blocking.
Filtering System
RSI(50) Filter: Only allows buy signals when RSI(14) > 50 (bullish momentum) and sell signals when RSI(14) < 50 (bearish momentum). This filter ensures you're buying in uptrends and selling in downtrends from a momentum perspective. The filter is optional and can be disabled. Recommended to enable for noise reduction.
Trend Filter: Uses a long-term EMA (default 200) to determine trend direction. Buy signals require price above EMA, sell signals require price below EMA. The EMA slope is calculated as: emaSlope = ema - ema . Optional EMA slope filter additionally requires the EMA to be rising (slope > 0) for buy signals or falling (slope < 0) for sell signals. This provides stronger trend confirmation by requiring both price position and EMA direction.
ADX Filter: Uses the Directional Movement Index (calculated via ta.dmi()) to measure trend strength. Signals only fire when ADX exceeds the threshold (default 20), indicating a strong trend rather than choppy markets. The ADX calculation uses separate length and smoothing parameters. This filter helps avoid signals during sideways/consolidation periods.
Volume Dry-Up Avoidance: Prevents signals during periods of extremely low volume relative to average. If volume dry-up is detected and the filter is enabled, signals are blocked. This helps avoid unreliable signals that occur during low participation periods.
RSI Momentum Confirmation: Requires RSI to be accelerating in the signal direction before confirming signals. For buy signals, RSI must be consistently rising (recovering from oversold) over the lookback period. For sell signals, RSI must be consistently falling (declining from overbought) over the lookback period. The momentum check verifies that all consecutive changes are in the correct direction AND the cumulative change is significant. This filter ensures signals only fire when RSI momentum aligns with the signal direction, reducing false signals from weak momentum.
Multi-Timeframe Confirmation: Requires higher timeframe RSI to align with the signal direction. For buy signals, current RSI must be below the higher timeframe RSI by at least the confirmation threshold. For sell signals, current RSI must be above the higher timeframe RSI by at least the confirmation threshold. This ensures signals align with the larger trend context, reducing counter-trend trades. The higher timeframe RSI is fetched using request.security() from the selected timeframe.
All filters use the pattern: filterResult = not filterEnabled OR conditionMet. This means if a filter is disabled, it always passes (returns true). Filters can be combined, and all must pass for a signal to fire.
RSI Centerline and Period Crossovers
RSI(50) Centerline Crossovers: Detects when the selected RSI source crosses above or below the 50 centerline. Bullish crossover: ta.crossover(rsiSource, 50), bearish crossover: ta.crossunder(rsiSource, 50). You can select which RSI (6, 14, or 24) to use for these crossovers. These signals indicate momentum shifts from bearish to bullish (above 50) or bullish to bearish (below 50).
RSI Period Crossovers: Detects when different RSI periods cross each other. Available pairs: RSI(6) × RSI(14), RSI(14) × RSI(24), or RSI(6) × RSI(24). Bullish crossover: fast RSI crosses above slow RSI (ta.crossover(rsiFast, rsiSlow)), indicating momentum acceleration. Bearish crossover: fast RSI crosses below slow RSI (ta.crossunder(rsiFast, rsiSlow)), indicating momentum deceleration. These crossovers can signal shifts in momentum before price moves.
StochRSI Calculation
Stochastic RSI applies the Stochastic oscillator formula to RSI values instead of price. The calculation: %K = ((RSI - Lowest RSI) / (Highest RSI - Lowest RSI)) × 100, where the lookback is the StochRSI length. If the range is zero, %K defaults to 50.0. %K is then smoothed using SMA with the %K smoothing length. %D is calculated as SMA of smoothed %K with the %D smoothing length. All values are clamped to 0-100. You can select which RSI (6, 14, or 24) to use as the source for StochRSI calculation.
RSI Bollinger Bands
Bollinger Bands are applied to RSI(14) instead of price. The calculation: Basis = SMA(RSI(14), BB Period), StdDev = stdev(RSI(14), BB Period), Upper = Basis + (StdDev × Deviation Multiplier), Lower = Basis - (StdDev × Deviation Multiplier). This creates dynamic zones around RSI that adapt to RSI volatility. When RSI touches or exceeds the bands, it indicates extreme conditions relative to recent RSI behavior.
Noise Reduction System
The script includes a comprehensive noise reduction system to filter false signals and improve accuracy. When enabled, signals must pass multiple quality checks:
Signal Strength Requirement: RSI must be at least X points away from the centerline (50). For buy signals, RSI must be at least X points below 50. For sell signals, RSI must be at least X points above 50. This ensures signals only trigger when RSI is significantly in oversold/overbought territory, not just near neutral.
Extreme Zone Requirement: RSI must be deep in the OB/OS zone. For buy signals, RSI must be at least X points below the oversold threshold. For sell signals, RSI must be at least X points above the overbought threshold. This ensures signals only fire in extreme conditions where reversals are more likely.
Consecutive Bar Confirmation: The signal condition must persist for N consecutive bars before triggering. This reduces false signals from single-bar spikes or noise. The confirmation checks that the signal condition was true for all bars in the lookback period.
Zone Persistence (Optional): Requires RSI to remain in the OB/OS zone for N consecutive bars, not just touch it. This ensures RSI is truly in an extreme state rather than just briefly touching the threshold. When enabled, this provides stricter filtering for higher-quality signals.
RSI Slope Confirmation (Optional): Requires RSI to be moving in the expected signal direction. For buy signals, RSI should be rising (recovering from oversold). For sell signals, RSI should be falling (declining from overbought). This ensures momentum is aligned with the signal direction. The slope is calculated by comparing current RSI to RSI N bars ago.
All noise reduction filters can be enabled/disabled independently, allowing you to customize the balance between signal frequency and accuracy. The default settings provide a good balance, but you can adjust them based on your trading style and market conditions.
Alert System
The script includes separate alert conditions for each signal type: buy/sell (adaptive RSI crossovers), divergence (regular, strong, hidden), crossovers (RSI50 centerline, RSI period crossovers), synergy signals, and trend breaks. Each alert type has its own alertcondition() declaration with a unique title and message.
An optional cooldown system prevents alert spam by requiring a minimum number of bars between alerts of the same type. The cooldown check: canAlert = na(lastAlertBar) OR (bar_index - lastAlertBar >= cooldownBars). If the last alert bar is na (first alert), it always allows the alert. Each alert type maintains its own lastAlertBar variable, so cooldowns are independent per signal type. The default cooldown is 10 bars, which is recommended for noise reduction.
Higher Timeframe RSI
The script can display RSI from a higher timeframe using request.security(). This allows you to see the RSI context from a larger timeframe (e.g., daily RSI on an hourly chart). The higher timeframe RSI uses RSI(14) calculation from the selected timeframe. This provides context for the current timeframe's RSI position relative to the larger trend.
RSI Pivot Trendlines
The script can draw trendlines connecting pivot highs and lows on RSI(6). This feature helps visualize RSI trends and identify potential trend breaks.
Pivot Detection: Pivots are detected using a configurable period. The script can require pivots to have minimum strength (RSI points difference from surrounding bars) to filter out weak pivots. Lower minPivotStrength values detect more pivots (more trendlines), while higher values detect only stronger pivots (fewer but more significant trendlines). Pivot confirmation is optional: when enabled, the script waits N bars to confirm the pivot remains the extreme, reducing repainting. Pivot confirmation functions (f_confirmPivotLow and f_confirmPivotHigh) are always called on every bar for consistency, as recommended by TradingView. When pivot bars are not available (na), safe default values are used, and the results are then used conditionally based on confirmation settings. This ensures consistent calculations and prevents calculation inconsistencies.
Trendline Drawing: Uptrend lines connect confirmed pivot lows (green), and downtrend lines connect confirmed pivot highs (red). By default, only the most recent trendline is shown (old trendlines are deleted when new pivots are confirmed). This keeps the chart clean and uncluttered. If "Keep Historical Trendlines" is enabled, the script preserves up to N historical trendlines (configurable via "Max Trendlines to Keep", default 5). When historical trendlines are enabled, old trendlines are saved to arrays instead of being deleted, allowing you to see multiple trendlines simultaneously for better trend analysis. The arrays are automatically limited to prevent memory accumulation.
Trend Break Detection: Signals are generated when RSI breaks above or below trendlines. Uptrend breaks (RSI crosses below uptrend line) generate buy signals. Downtrend breaks (RSI crosses above downtrend line) generate sell signals. Optional trend break confirmation requires the break to persist for N bars and optionally include volume confirmation. Trendline angle filtering can exclude flat/weak trendlines from generating signals (minTrendlineAngle > 0 filters out weak/flat trendlines).
How Components Work Together
The combination of multiple RSI periods provides confirmation across different timeframes, reducing false signals. RSI(6) catches early moves, RSI(14) provides balanced signals, and RSI(24) confirms longer-term trends. When all three align (synergy), it indicates strong consensus across timeframes.
Volume confirmation ensures signals occur with sufficient market participation, filtering out low-volume false breakouts. Volume climax detection identifies potential reversal points, while volume dry-up avoidance prevents signals during unreliable low-volume periods.
Trend filters align signals with the overall market direction. The EMA filter ensures you're trading with the trend, and the EMA slope filter adds an additional layer by requiring the trend to be strengthening (rising EMA for buys, falling EMA for sells).
ADX filter ensures signals only fire during strong trends, avoiding choppy/consolidation periods. RSI(50) filter ensures momentum alignment with the trade direction.
Momentum confirmation requires RSI to be accelerating in the signal direction, ensuring signals only fire when momentum is aligned. Multi-timeframe confirmation ensures signals align with higher timeframe trends, reducing counter-trend trades.
Divergence detection identifies potential reversals before they occur, providing early warning signals. Pivot-based divergence provides more accurate detection by using actual pivot points. Hidden divergence identifies continuation patterns, useful for trend-following strategies.
The noise reduction system combines multiple filters (signal strength, extreme zone, consecutive bars, zone persistence, RSI slope) to significantly reduce false signals. These filters work together to ensure only high-quality signals are generated.
The synergy system requires alignment across all RSI periods for highest-quality signals, significantly reducing false positives. Regression forecasting provides forward-looking context, helping anticipate potential RSI direction changes.
Pivot trendlines provide visual trend analysis and can generate signals when RSI breaks trendlines, indicating potential reversals or continuations.
Reset conditions prevent signal spam by requiring a minimum number of bars between signals. Separate reset conditions for buy and sell signals ensure proper signal management.
Usage Instructions
Configuration Presets (Recommended): The script includes optimized preset configurations for instant setup. Simply select your trading style from the "Configuration Preset" dropdown:
- Scalping Preset: RSI(4, 7, 9) with minimal smoothing. Noise reduction disabled, momentum confirmation disabled for fastest signals.
- Day Trading Preset: RSI(6, 9, 14) with light smoothing. Momentum confirmation enabled for better signal quality.
- Swing Trading Preset: RSI(14, 14, 21) with moderate smoothing. Balanced configuration for medium-term trades.
- Position Trading Preset: RSI(24, 21, 28) with heavier smoothing. Optimized for longer-term positions with all filters active.
- Custom Mode: Full manual control over all settings. Default behavior matches previous script versions.
Presets automatically configure RSI periods, smoothing lengths, and filter settings. You can still manually adjust any setting after selecting a preset if needed.
Getting Started: The easiest way to get started is to select a configuration preset matching your trading style (Scalping, Day Trading, Swing Trading, or Position Trading) from the "Configuration Preset" dropdown. This instantly configures all settings for optimal performance. Alternatively, use "Custom" mode for full manual control. The default configuration (Custom mode) shows RSI(6), RSI(14), and RSI(24) with their default smoothing. Overbought/oversold fill zones are enabled by default.
Customizing RSI Periods: Adjust the RSI lengths (6, 14, 24) based on your trading timeframe. Shorter periods (6) for scalping, standard (14) for day trading, longer (24) for swing trading. You can disable any RSI period you don't need.
Smoothing Selection: Choose smoothing method based on your needs. EMA provides balanced smoothing, RMA (Wilder's) is traditional, Zero-Lag reduces lag but may increase noise. Adjust smoothing lengths individually or use global smoothing for consistency. Note: Smoothing lengths are automatically validated to ensure they are always less than the corresponding RSI period length. If you set smoothing >= RSI length, it will be auto-adjusted to prevent invalid configurations.
Dynamic OB/OS: The dynamic thresholds automatically adapt to volatility. Adjust the volatility multiplier and base percentage to fine-tune sensitivity. Higher values create wider thresholds in volatile markets.
Volume Confirmation: Set volume threshold to 1.2 (default) for standard confirmation, higher for stricter filtering, or 0.1 to disable volume filtering entirely.
Multi-RSI Synergy: Use "ALL" mode for highest-quality signals (all 3 RSIs must align), or "2-of-3" mode for more frequent signals. Adjust the reset period to control signal frequency.
Filters: Enable filters gradually to find your preferred balance. Start with volume confirmation, then add trend filter, then ADX for strongest confirmation. RSI(50) filter is useful for momentum-based strategies and is recommended for noise reduction. Momentum confirmation and multi-timeframe confirmation add additional layers of accuracy but may reduce signal frequency.
Noise Reduction: The noise reduction system is enabled by default with balanced settings. Adjust minSignalStrength (default 3.0) to control how far RSI must be from centerline. Increase requireConsecutiveBars (default 1) to require signals to persist longer. Enable requireZonePersistence and requireRsiSlope for stricter filtering (higher quality but fewer signals). Start with defaults and adjust based on your needs.
Divergence: Enable divergence detection and adjust lookback periods. Strong divergence (with engulfing confirmation) provides higher-quality signals. Hidden divergence is useful for trend-following strategies. Enable pivot-based divergence for more accurate detection using actual pivot points instead of simple lowest/highest comparisons. Pivot-based divergence uses tolerance-based matching (1% for price, 1.0 RSI point for RSI) for better accuracy.
Forecasting: Enable regression forecasting to see potential RSI direction. Linear regression is simplest, polynomial captures curves, exponential smoothing adapts to trends. Adjust horizon based on your trading timeframe. Confidence bands show forecast uncertainty - wider bands indicate less reliable forecasts.
Pivot Trendlines: Enable pivot trendlines to visualize RSI trends and identify trend breaks. Adjust pivot detection period (default 5) - higher values detect fewer but stronger pivots. Enable pivot confirmation (default ON) to reduce repainting. Set minPivotStrength (default 1.0) to filter weak pivots - lower values detect more pivots (more trendlines), higher values detect only stronger pivots (fewer trendlines). Enable "Keep Historical Trendlines" to preserve multiple trendlines instead of just the most recent one. Set "Max Trendlines to Keep" (default 5) to control how many historical trendlines are preserved. Enable trend break confirmation for more reliable break signals. Adjust minTrendlineAngle (default 0.0) to filter flat trendlines - set to 0.1-0.5 to exclude weak trendlines.
Alerts: Set up alerts for your preferred signal types. Enable cooldown to prevent alert spam. Each signal type has its own alert condition, so you can be selective about which signals trigger alerts.
Visual Elements and Signal Markers
The script uses various visual markers to indicate signals and conditions:
- "sBottom" label (green): Strong bottom signal - RSI at extreme low with strong buy conditions
- "sTop" label (red): Strong top signal - RSI at extreme high with strong sell conditions
- "SyBuy" label (lime): Multi-RSI synergy buy signal - all RSIs aligned oversold
- "SySell" label (red): Multi-RSI synergy sell signal - all RSIs aligned overbought
- 🐂 emoji (green): Strong bullish divergence detected
- 🐻 emoji (red): Strong bearish divergence detected
- 🔆 emoji: Weak divergence signals (if enabled)
- "H-Bull" label: Hidden bullish divergence
- "H-Bear" label: Hidden bearish divergence
- ⚡ marker (top of pane): Volume climax detected (extreme volume) - positioned at top for visibility
- 💧 marker (top of pane): Volume dry-up detected (very low volume) - positioned at top for visibility
- ↑ triangle (lime): Uptrend break signal - RSI breaks below uptrend line
- ↓ triangle (red): Downtrend break signal - RSI breaks above downtrend line
- Triangle up (lime): RSI(50) bullish crossover
- Triangle down (red): RSI(50) bearish crossover
- Circle markers: RSI period crossovers
All markers are positioned at the RSI value where the signal occurs, using location.absolute for precise placement.
Signal Priority and Interpretation
Signals are generated independently and can occur simultaneously. Higher-priority signals generally indicate stronger setups:
1. Multi-RSI Synergy signals (SyBuy/SySell) - Highest priority: Requires alignment across all RSI periods plus volume and filter confirmation. These are the most reliable signals.
2. Strong Top/Bottom signals (sTop/sBottom) - High priority: Indicates extreme RSI levels with strong bounce conditions. Requires volume confirmation and all filters.
3. Divergence signals - Medium-High priority: Strong divergence (with engulfing) is more reliable than regular divergence. Hidden divergence indicates continuation rather than reversal.
4. Adaptive RSI crossovers - Medium priority: Buy when adaptive RSI crosses below dynamic oversold, sell when it crosses above dynamic overbought. These use volatility-adjusted RSI for more accurate signals.
5. RSI(50) centerline crossovers - Medium priority: Momentum shift signals. Less reliable alone but useful when combined with other confirmations.
6. RSI period crossovers - Lower priority: Early momentum shift indicators. Can provide early warning but may produce false signals in choppy markets.
Best practice: Wait for multiple confirmations. For example, a synergy signal combined with divergence and volume climax provides the strongest setup.
Chart Requirements
For proper script functionality and compliance with TradingView requirements, ensure your chart displays:
- Symbol name: The trading pair or instrument name should be visible
- Timeframe: The chart timeframe should be clearly displayed
- Script name: "Ultimate RSI " should be visible in the indicator title
These elements help traders understand what they're viewing and ensure proper script identification. The script automatically includes this information in the indicator title and chart labels.
Performance Considerations
The script is optimized for performance:
- ATR and Volume SMA are cached using var variables, updating only on confirmed and real-time bars to reduce redundant calculations
- Forecast line arrays are dynamically managed: lines are reused when possible, and unused lines are deleted to prevent memory accumulation
- Calculations use efficient Pine Script functions (ta.rsi, ta.ema, etc.) which are optimized by TradingView
- Array operations are minimized where possible, with direct calculations preferred
- Polynomial regression automatically caps the forecast horizon at 20 bars (POLYNOMIAL_MAX_HORIZON constant) to prevent performance degradation, as polynomial regression has O(n³) complexity. This safeguard ensures optimal performance even with large horizon settings
- Pivot detection includes edge case handling to ensure reliable calculations even on early bars with limited historical data. Regression forecasting functions include comprehensive safety checks: horizon validation (must not exceed array size), empty array handling, edge case handling for horizon=1 scenarios, and division-by-zero protection in all mathematical operations
The script should perform well on all timeframes. On very long historical data, forecast lines may accumulate if the horizon is large; consider reducing the forecast horizon if you experience performance issues. The polynomial regression performance safeguard automatically prevents performance issues for that specific regression type.
Known Limitations and Considerations
- Forecast lines are forward-looking projections and should not be used as definitive predictions. They provide context but are not guaranteed to be accurate.
- Dynamic OB/OS thresholds can exceed 100 or go below 0 in extreme volatility scenarios, but are clamped to 0-100 range. This means in very volatile markets, the dynamic thresholds may not widen as much as the raw calculation suggests.
- Volume confirmation requires sufficient historical volume data. On new instruments or very short timeframes, volume calculations may be less reliable.
- Higher timeframe RSI uses request.security() which may have slight delays on some data feeds.
- Regression forecasting requires at least N bars of history (where N = forecast horizon) before it can generate forecasts. Early bars will not show forecast lines.
- StochRSI calculation requires the selected RSI source to have sufficient history. Very short RSI periods on new charts may produce less reliable StochRSI values initially.
Practical Use Cases
The indicator can be configured for different trading styles and timeframes:
Swing Trading: Select the "Swing Trading" preset for instant optimal configuration. This preset uses RSI periods (14, 14, 21) with moderate smoothing. Alternatively, manually configure: Use RSI(24) with Multi-RSI Synergy in "ALL" mode, combined with trend filter (EMA 200) and ADX filter. This configuration provides high-probability setups with strong confirmation across multiple RSI periods.
Day Trading: Select the "Day Trading" preset for instant optimal configuration. This preset uses RSI periods (6, 9, 14) with light smoothing and momentum confirmation enabled. Alternatively, manually configure: Use RSI(6) with Zero-Lag smoothing for fast signal detection. Enable volume confirmation with threshold 1.2-1.5 for reliable entries. Combine with RSI(50) filter to ensure momentum alignment. Strong top/bottom signals work well for day trading reversals.
Trend Following: Enable trend filter (EMA) and EMA slope filter for strong trend confirmation. Use RSI(14) or RSI(24) with ADX filter to avoid choppy markets. Hidden divergence signals are useful for trend continuation entries.
Reversal Trading: Focus on divergence detection (regular and strong) combined with strong top/bottom signals. Enable volume climax detection to identify capitulation moments. Use RSI(6) for early reversal signals, confirmed by RSI(14) and RSI(24).
Forecasting and Planning: Enable regression forecasting with polynomial or exponential smoothing methods. Use forecast horizon of 10-20 bars for swing trading, 5-10 bars for day trading. Confidence bands help assess forecast reliability.
Multi-Timeframe Analysis: Enable higher timeframe RSI to see context from larger timeframes. For example, use daily RSI on hourly charts to understand the larger trend context. This helps avoid counter-trend trades.
Scalping: Select the "Scalping" preset for instant optimal configuration. This preset uses RSI periods (4, 7, 9) with minimal smoothing, disables noise reduction, and disables momentum confirmation for faster signals. Alternatively, manually configure: Use RSI(6) with minimal smoothing (or Zero-Lag) for ultra-fast signals. Disable most filters except volume confirmation. Use RSI period crossovers (RSI(6) × RSI(14)) for early momentum shifts. Set volume threshold to 1.0-1.2 for less restrictive filtering.
Position Trading: Select the "Position Trading" preset for instant optimal configuration. This preset uses extended RSI periods (24, 21, 28) with heavier smoothing, optimized for longer-term trades. Alternatively, manually configure: Use RSI(24) with all filters enabled (Trend, ADX, RSI(50), Volume Dry-Up avoidance). Multi-RSI Synergy in "ALL" mode provides highest-quality signals.
Practical Tips and Best Practices
Getting Started: The fastest way to get started is to select a configuration preset that matches your trading style. Simply choose "Scalping", "Day Trading", "Swing Trading", or "Position Trading" from the "Configuration Preset" dropdown to instantly configure all settings optimally. For advanced users, use "Custom" mode for full manual control. The default configuration (Custom mode) is balanced and works well across different markets. After observing behavior, customize settings to match your trading style.
Reducing Repainting: All signals are based on confirmed bars, minimizing repainting. The script uses confirmed bar data for all calculations to ensure backtesting accuracy.
Signal Quality: Multi-RSI Synergy signals in "ALL" mode provide the highest-quality signals because they require alignment across all three RSI periods. These signals have lower frequency but higher reliability. For more frequent signals, use "2-of-3" mode. The noise reduction system further improves signal quality by requiring multiple confirmations (signal strength, extreme zone, consecutive bars, optional zone persistence and RSI slope). Adjust noise reduction settings to balance signal frequency vs. accuracy.
Filter Combinations: Start with volume confirmation, then add trend filter for trend alignment, then ADX filter for trend strength. Combining all three filters significantly reduces false signals but also reduces signal frequency. Find your balance based on your risk tolerance.
Volume Filtering: Set volume threshold to 0.1 or lower to effectively disable volume filtering if you trade instruments with unreliable volume data or want to test without volume confirmation. Standard confirmation uses 1.2-1.5 threshold.
RSI Period Selection: RSI(6) is most sensitive and best for scalping or early signal detection. RSI(14) provides balanced signals suitable for day trading. RSI(24) is smoother and better for swing trading and trend confirmation. You can disable any RSI period you don't need to reduce visual clutter.
Smoothing Methods: EMA provides balanced smoothing with moderate lag. RMA (Wilder's smoothing) is traditional and works well for RSI. Zero-Lag reduces lag but may increase noise. WMA gives more weight to recent values. Choose based on your preference for responsiveness vs. smoothness.
Forecasting: Linear regression is simplest and works well for trending markets. Polynomial regression captures curves and works better in ranging markets. Exponential smoothing adapts to trends. Moving average method is most conservative. Use confidence bands to assess forecast reliability.
Divergence: Strong divergence (with engulfing confirmation) is more reliable than regular divergence. Hidden divergence indicates continuation rather than reversal, useful for trend-following strategies. Pivot-based divergence provides more accurate detection by using actual pivot points instead of simple lowest/highest comparisons. Adjust lookback periods based on your timeframe: shorter for day trading, longer for swing trading. Pivot divergence period (default 5) controls the sensitivity of pivot detection.
Dynamic Thresholds: Dynamic OB/OS thresholds automatically adapt to volatility. In volatile markets, thresholds widen; in calm markets, they narrow. Adjust the volatility multiplier and base percentage to fine-tune sensitivity. Higher values create wider thresholds in volatile markets.
Alert Management: Enable alert cooldown (default 10 bars, recommended) to prevent alert spam. Each alert type has its own cooldown, so you can set different cooldowns for different signal types. For example, use shorter cooldown for synergy signals (high quality) and longer cooldown for crossovers (more frequent). The cooldown system works independently for each signal type, preventing spam while allowing different signal types to fire when appropriate.
Technical Specifications
- Pine Script Version: v6
- Indicator Type: Non-overlay (displays in separate panel below price chart)
- Repainting Behavior: Minimal - all signals are based on confirmed bars, ensuring accurate backtesting results
- Performance: Optimized with caching for ATR and volume calculations. Forecast arrays are dynamically managed to prevent memory accumulation.
- Compatibility: Works on all timeframes (1 minute to 1 month) and all instruments (stocks, forex, crypto, futures, etc.)
- Edge Case Handling: All calculations include safety checks for division by zero, NA values, and boundary conditions. Reset conditions and alert cooldowns handle edge cases where conditions never occurred or values are NA.
- Reset Logic: Separate reset conditions for buy signals (based on bottom conditions) and sell signals (based on top conditions) ensure logical correctness.
- Input Parameters: 60+ customizable parameters organized into logical groups for easy configuration. Configuration presets available for instant setup (Scalping, Day Trading, Swing Trading, Position Trading, Custom).
- Noise Reduction: Comprehensive noise reduction system with multiple filters (signal strength, extreme zone, consecutive bars, zone persistence, RSI slope) to reduce false signals.
- Pivot-Based Divergence: Enhanced divergence detection using actual pivot points for improved accuracy.
- Momentum Confirmation: RSI momentum filter ensures signals only fire when RSI is accelerating in the signal direction.
- Multi-Timeframe Confirmation: Optional higher timeframe RSI alignment for trend confirmation.
- Enhanced Pivot Trendlines: Trendline drawing with strength requirements, confirmation, and trend break detection.
Technical Notes
- All RSI values are clamped to 0-100 range to ensure valid oscillator values
- ATR and Volume SMA are cached for performance, updating on confirmed and real-time bars
- Reset conditions handle edge cases: if a condition never occurred, reset returns true (allows first signal)
- Alert cooldown handles na values: if no previous alert, cooldown allows the alert
- Forecast arrays are dynamically sized based on horizon, with unused lines cleaned up
- Fill logic uses a minimum gap (0.1) to ensure reliable polygon rendering in TradingView
- All calculations include safety checks for division by zero and boundary conditions. Regression functions validate that horizon doesn't exceed array size, and all array access operations include bounds checking to prevent out-of-bounds errors
- The script uses separate reset conditions for buy signals (based on bottom conditions) and sell signals (based on top conditions) for logical correctness
- Background coloring uses a fallback system: dynamic color takes priority, then RSI(6) heatmap, then monotone if both are disabled
- Noise reduction filters are applied after accuracy filters, providing multiple layers of signal quality control
- Pivot trendlines use strength requirements to filter weak pivots, reducing noise in trendline drawing. Historical trendlines are stored in arrays and automatically limited to prevent memory accumulation when "Keep Historical Trendlines" is enabled
- Volume climax and dry-up markers are positioned at the top of the pane for better visibility
- All calculations are optimized with conditional execution - features only calculate when enabled (performance optimization)
- Input Validation: Automatic cross-input validation ensures smoothing lengths are always less than RSI period lengths, preventing configuration errors
- Configuration Presets: Four optimized preset configurations (Scalping, Day Trading, Swing Trading, Position Trading) for instant setup, plus Custom mode for full manual control
- Constants Management: Magic numbers extracted to documented constants for improved maintainability and easier tuning (pivot tolerance, divergence thresholds, fill gap, etc.)
- TradingView Function Consistency: All TradingView functions (ta.crossover, ta.crossunder, ta.atr, ta.lowest, ta.highest, ta.lowestbars, ta.highestbars, etc.) and custom functions that depend on historical results (f_consecutiveBarConfirmation, f_rsiSlopeConfirmation, f_rsiZonePersistence, f_applyAllFilters, f_rsiMomentum, f_forecast, f_confirmPivotLow, f_confirmPivotHigh) are called on every bar for consistency, as recommended by TradingView. Results are then used conditionally when needed. This ensures consistent calculations and prevents calculation inconsistencies.
SuperTrend - Dynamic Lines and ChannelsSuperTrend Indicator: Comprehensive Description
Overview
The SuperTrend indicator is Pine Script V6 designed for TradingView to plot dynamic trend lines & channels across multiple timeframes (Daily, Weekly, Monthly, Quarterly, and Yearly/All-Time) to assist traders in identifying potential support, resistance, and trend continuation levels. The script calculates trendlines based on high and low prices over specified periods, projects these trendlines forward, and includes optional reflection channels and heartlines to provide additional context for price action analysis. The indicator is highly customizable, allowing users to toggle the visibility of trendlines, projections, and heartlines for each timeframe, with a focus on the DayTrade channel, which includes unique reflection channel features.
This description provides a detailed explanation of the indicator’s features, functionality, and display, with a specific focus on the DayTrade channel’s anchoring, the role of static and dynamic channels in projecting future price action, the heartline’s potential as a volume indicator, and how traders can use the indicator for line-to-line trading strategies.
Features and Functionality
1. Dynamic Trend Channels
The SuperTrend indicator calculates trend channels for five timeframes:
DayTrade Channel: Tracks daily highs and lows, updating before 12 PM each trading day.
Weekly Channel: Tracks highs and lows over a user-selected period (1, 2, or 3 weeks).
Monthly Channel: Tracks monthly highs and lows.
Quarterly Channel: Tracks highs and lows over a user-selected period (1 or 2 quarters).
Yearly/All-Time Channel: Tracks highs and lows over a user-selected period (1 to 10 years or All Time).
Each channel consists of:
Upper Trendline: Connects the high prices of the previous and current periods.
Lower Trendline: Connects the low prices of the previous and current periods.
Projections: Extends the trendlines forward based on the trend’s slope.
Heartline: A dashed line drawn at the midpoint between the upper and lower trendlines or their projections.
DayTrade Channel Anchoring
The DayTrade channel anchors its trendlines to the high and low prices of the previous and current trading days, with updates restricted to before 12 PM to capture significant price movements during the morning session, which is often more volatile due to market openings or news events. The "Show DayTrade Trend Lines" toggle enables this channel, and after 12 PM, the trendlines and projections remain static for the rest of the trading day. This static anchoring provides a consistent reference for potential support and resistance levels, allowing traders to anticipate price reactions based on historical highs and lows from the previous day and the morning session of the current day.
The static nature of the DayTrade channel after 12 PM ensures that the trendlines and projections do not shift mid-session, providing a stable framework for traders to assess whether price action respects or breaks these levels, potentially indicating trend continuation or reversal.
Static vs. Dynamic Channels
Static Channels: Once set (e.g., after 12 PM for the DayTrade channel or at the start of a new period for other timeframes), the trendlines remain fixed until the next period begins. This static behavior allows traders to use the channels as reference levels for potential price targets or reversal points, as they are based on historical price extremes.
Dynamic Projections: The projections extend the trendlines forward, providing a visual guide for potential future price action, assuming the trend’s momentum continues. When a trendline is broken (e.g., price closes above the upper projection or below the lower projection), it may suggest a breakout or reversal, prompting traders to reassess their positions.
2. Reflection Channels (DayTrade Only)
The DayTrade channel includes optional lower and upper reflection channels, which are additional trendlines positioned symmetrically around the main channel to provide extended support and resistance zones. These are controlled by the "Show Reflection Channel" dropdown.
Lower Reflection Channel:
Position: Drawn below the lower trendline at a distance equal to the range between the upper and lower trendlines.
Projection: Extends forward as a dashed line.
Heartline: A dashed line drawn at the midpoint between the lower trendline and the lower reflection trendline, controlled by the "Show Lower Reflection Heartline" toggle.
Upper Reflection Channel:
Position: Drawn above the upper trendline at the same distance as the main channel’s range.
Projection: Extends forward as a dashed line.
Heartline: A dashed line drawn at the midpoint between the upper trendline and the upper reflection trendline, controlled by the "Show Upper Reflection Heartline" toggle.
Display Control: The "Show Reflection Channel" dropdown allows users to select:
"None": No reflection channels are shown.
"Lower": Only the lower reflection channel is shown.
"Upper": Only the upper reflection channel is shown.
"Both": Both reflection channels are shown.
Purpose: Reflection channels extend the price range analysis by providing additional levels where price may react, acting as potential targets or reversal zones after breaking the main trendlines.
3. Heartlines
Each timeframe, including the DayTrade channel and its reflection channels, can display a heartline, which is a dashed line plotted at the midpoint between the upper and lower trendlines or their projections. For the DayTrade channel:
Main DayTrade Heartline: Midpoint between the upper and lower trendlines, controlled by the "Show DayTrade Heartline" toggle.
Lower Reflection Heartline: Midpoint between the lower trendline and the lower reflection trendline, controlled by the "Show Lower Reflection Heartline" toggle.
Upper Reflection Heartline: Midpoint between the upper trendline and the upper reflection trendline, controlled by the "Show Upper Reflection Heartline" toggle.
Independent Toggles: Visibility is controlled by:
"Show DayTrade Heartline": For the main DayTrade heartline.
"Show Lower Reflection Heartline": For the lower reflection heartline.
"Show Upper Reflection Heartline": For the upper reflection heartline.
Potential Volume Indicator: The heartline represents the average price level between the high and low of a period, which may correlate with areas of high trading activity or volume concentration, as these midpoints often align with price levels where buyers and sellers have historically converged. A break above or below the heartline, especially with strong momentum, may indicate a shift in market sentiment, potentially leading to accelerated price movement in the direction of the break. However, this is an observation based on the heartline’s position, not a direct measure of volume, as the script does not incorporate volume data.
4. Alerts
The script includes alert conditions for all timeframes, triggered when a candle closes fully above the upper projection or below the lower projection. For the DayTrade channel:
Upper Trend Break: Triggers when a candle closes fully above the upper projection.
Lower Trend Break: Triggers when a candle closes fully below the lower projection.
Alerts are combined across all timeframes, so a break in any timeframe triggers a general "Upper Trend Break" or "Lower Trend Break" alert with the message: "Candle closed fully above/below one or more projection lines." Alerts fire once per bar close.
5. Customization Options
The script provides extensive customization through input settings, grouped by timeframe:
DayTrade Channel:
"Show DayTrade Trend Lines": Toggle main trendlines and projections.
"Show DayTrade Heartline": Toggle main heartline.
"Show Lower Reflection Heartline": Toggle lower reflection heartline.
"Show Upper Reflection Heartline": Toggle upper reflection heartline.
"DayTrade Channel Color": Set color for trendlines.
"DayTrade Projection Channel Color": Set color for projections.
"Heartline Color": Set color for all heartlines.
"Show Reflection Channel": Dropdown to show "None," "Lower," "Upper," or "Both" reflection channels.
Other Timeframes (Weekly, Monthly, Quarterly, Yearly/All-Time):
Toggles for trendlines (e.g., "Show Weekly Trend Lines," "Show Monthly Trend Lines") and heartlines (e.g., "Show Weekly Heartline," "Show Monthly Heartline").
Period selection (e.g., "Weekly Period" for 1, 2, or 3 weeks; "Yearly Period" for 1 to 10 years or All Time).
Separate colors for trendlines (e.g., "Weekly Channel Color"), projections (e.g., "Weekly Projection Channel Color"), and heartlines (e.g., "Weekly Heartline Color").
Max Bar Difference: Limits the distance between anchor points to ensure relevance to recent price action.
Display
The indicator overlays the following elements on the chart:
Trendlines: Solid lines connecting the high and low anchor points for each timeframe, using user-specified colors (e.g., set via "DayTrade Channel Color").
Projections: Dashed lines extending from the current anchor points, indicating potential future price levels, using colors set via "DayTrade Projection Channel Color" or equivalent.
Heartlines: Dashed lines at the midpoint of each channel, using the color set via "Heartline Color" or equivalent.
Reflection Channels (DayTrade Only):
Lower reflection trendline and projection: Below the lower trendline, using the same colors as the main channel.
Upper reflection trendline and projection: Above the upper trendline, using the same colors.
Reflection heartlines: Midpoints between the main trendlines and their respective reflection trendlines, using the "Heartline Color."
Visual Clarity: Lines are only drawn if the relevant toggles (e.g., "Show DayTrade Trend Lines") are enabled and data is available. Lines are deleted when their conditions are not met to avoid clutter.
Trading Applications: Line-to-Line Trading
The SuperTrend indicator can be used to inform trading decisions by providing a framework for line-to-line trading, where traders use the trendlines, projections, and heartlines as reference points for entries, exits, and risk management. Below is a detailed explanation of how to use the DayTrade channel and its reflection channels for trading, focusing on their anchoring, static/dynamic behavior, and the heartline’s role.
1. Why DayTrade Channel Anchoring
The DayTrade channel’s anchoring to the previous day’s high/low and the current day’s high/low before 12 PM, controlled by the "Show DayTrade Trend Lines" toggle, captures significant price levels during high-volatility periods:
Previous Day High/Low: These represent key levels where price found resistance (high) or support (low) in the prior session, often acting as psychological or technical barriers in the current session.
Current Day High/Low Before 12 PM: The morning session (before 12 PM) often sees increased volatility due to market openings, news releases, or institutional activity. Anchoring to these early highs/lows ensures the channel reflects the most relevant price extremes, which are likely to influence intraday price action.
Static After 12 PM: By fixing the anchor points after 12 PM, the trendlines and projections become stable references for the afternoon session, allowing traders to anticipate price reactions at these levels without the lines shifting unexpectedly.
This anchoring makes the DayTrade channel particularly useful for intraday traders, as it provides a consistent framework based on recent price history, which can guide decisions on trend continuation or reversal.
2. Using Static Channels and Projections
The static nature of the DayTrade channel after 12 PM, enabled by "Show DayTrade Trend Lines," and the dynamic projections, set via "DayTrade Projection Channel Color," provide a structured approach to trading:
Support and Resistance:
The upper trendline and lower trendline act as dynamic support/resistance levels based on the previous and current day’s price extremes.
Traders may observe price reactions (e.g., bounces or breaks) at these levels. For example, if price approaches the lower trendline and bounces, it may indicate support, suggesting a potential long entry.
Projections as Price Targets:
The projections extend the trendlines forward, offering potential price targets if the trend continues. For instance, if price breaks above the upper trendline and continues toward the upper projection, traders might consider it a bullish continuation signal.
A candle closing fully above the upper projection or below the lower projection (triggering an alert) may indicate a breakout, prompting traders to enter in the direction of the break or reassess if the break fails.
Static Channels for Breakouts:
Because the trendlines are static after 12 PM, they serve as fixed reference points. A break above the upper trendline or its projection may suggest bullish momentum, while a break below the lower trendline or projection may indicate bearish momentum.
Traders can use these breaks to set entry points (e.g., entering a long position after a confirmed break above the upper projection) and place stop-losses below the broken level to manage risk.
3. Line-to-Line Trading Strategy
Line-to-line trading involves using the trendlines, projections, and reflection channels as sequential price targets or reversal zones:
Trading Within the Main Channel:
Long Setup: If price bounces off the lower trendline and moves toward the heartline (enabled by "Show DayTrade Heartline") or upper trendline, traders might enter a long position near the lower trendline, targeting the heartline or upper trendline for profit-taking. A stop-loss could be placed below the lower trendline to protect against a breakdown.
Short Setup: If price rejects from the upper trendline and moves toward the heartline or lower trendline, traders might enter a short position near the upper trendline, targeting the heartline or lower trendline, with a stop-loss above the upper trendline.
Trading to Reflection Channels:
If price breaks above the upper trendline and continues toward the upper reflection trendline or its projection (enabled by "Show Reflection Channel" set to "Upper" or "Both"), traders might treat this as a breakout trade, entering long with a target at the upper reflection level and a stop-loss below the upper trendline.
Similarly, a break below the lower trendline toward the lower reflection trendline or its projection (enabled by "Show Reflection Channel" set to "Lower" or "Both") could signal a short opportunity, with a target at the lower reflection level and a stop-loss above the lower trendline.
Reversal Trades:
If price reaches the upper reflection trendline and shows signs of rejection (e.g., a bearish candlestick pattern), traders might consider a short position, anticipating a move back toward the main channel’s upper trendline or heartline.
Conversely, a rejection at the lower reflection trendline could prompt a long position targeting the lower trendline or heartline.
Risk Management:
Use the heartline as a midpoint to gauge whether price is likely to continue toward the opposite trendline or reverse. For example, a failure to break above the heartline after bouncing from the lower trendline might suggest weakening bullish momentum, prompting a tighter stop-loss.
The static nature of the channels after 12 PM allows traders to set precise stop-loss and take-profit levels based on historical price levels, reducing the risk of chasing moving targets.
4. Heartline as a Volume Indicator
The heartline, controlled by toggles like "Show DayTrade Heartline," "Show Lower Reflection Heartline," and "Show Upper Reflection Heartline," may serve as an indirect proxy for areas of high trading activity:
Rationale: The heartline represents the average price between the high and low of a period, which often aligns with price levels where significant buying and selling have occurred, as these midpoints can correspond to areas of consolidation or high volume in the order book. While the script does not directly use volume data, the heartline’s position may reflect price levels where market participants have historically balanced supply and demand.
Breakout Potential: A break above or below the heartline, particularly with a strong candle (e.g., wide range or high momentum), may indicate a shift in market sentiment, potentially leading to accelerated price movement in the direction of the break. For example:
A close above the main DayTrade heartline could suggest buyers are overpowering sellers, potentially leading to a move toward the upper trendline or upper reflection channel.
A close below the heartline could indicate seller dominance, targeting the lower trendline or lower reflection channel.
Trading Application:
Traders might use heartline breaks as confirmation signals for trend continuation. For instance, after a bounce from the lower trendline, a close above the heartline could confirm bullish momentum, prompting a long entry.
The heartline can also act as a dynamic stop-loss or trailing stop level. For example, in a long trade, a trader might exit if price falls below the heartline, indicating a potential reversal.
For reflection heartlines, a break above the upper reflection heartline or below the lower reflection heartline could signal strong momentum, as these levels are further from the main channel and may require significant buying or selling pressure to breach.
5. Practical Trading Considerations
Timeframe Context: The DayTrade channel, enabled by "Show DayTrade Trend Lines," is best suited for intraday trading due to its daily anchoring and morning update behavior. Traders should consider higher timeframe channels (e.g., enabled by "Show Weekly Trend Lines" or "Show Monthly Trend Lines") for broader context, as breaks of the DayTrade channel may align with or be influenced by larger trends.
Confirmation Tools: Use additional indicators (e.g., RSI, MACD, or volume-based indicators) or candlestick patterns to confirm signals at trendlines, projections, or heartlines. The script’s alerts can help identify breakouts, but traders should verify with other technical or fundamental factors.
Risk Management: Always define risk-reward ratios before entering trades. For example, a 1:2 risk-reward ratio might involve risking a stop-loss below the lower trendline to target the heartline or upper trendline.
Market Conditions: The effectiveness of the channels and heartlines depends on market conditions (e.g., trending vs. ranging markets). In choppy markets, price may oscillate within the main channel, favoring range-bound strategies. In trending markets, breaks of projections or reflection channels may signal continuation trades.
Limitations: The indicator relies on historical price data and does not incorporate volume, news, or other external factors. Traders should use it as part of a broader strategy and avoid relying solely on its signals.
How to Use in TradingView
Add the Indicator: Copy the script into TradingView’s Pine Editor, compile it, and add it to your chart.
Configure Settings:
Enable "Show DayTrade Trend Lines" to display the main DayTrade trendlines and projections.
Use the "Show Reflection Channel" dropdown to select "Lower," "Upper," or "Both" to display reflection channels.
Toggle "Show DayTrade Heartline," "Show Lower Reflection Heartline," and "Show Upper Reflection Heartline" to control heartline visibility.
Adjust colors using "DayTrade Channel Color," "DayTrade Projection Channel Color," and "Heartline Color."
Enable other timeframes (e.g., "Show Weekly Trend Lines," "Show Monthly Trend Lines") for additional context, if desired.
Set Alerts: Configure alerts in TradingView for "Upper Trend Break" or "Lower Trend Break" to receive notifications when a candle closes fully above or below any timeframe’s projections.
Analyze the Chart:
Monitor price interactions with the trendlines, projections, and heartlines.
Look for bounces, breaks, or rejections at these levels to plan entries and exits.
Use the heartline breaks as potential confirmation of momentum shifts.
Test Strategies: Backtest line-to-line trading strategies in TradingView’s strategy tester or demo account to evaluate performance before trading with real capital.
Conclusion
The SuperTrend indicator provides a robust framework for technical analysis by plotting dynamic trend channels, projections, and heartlines across multiple timeframes, with advanced features for the DayTrade channel, including lower and upper reflection channels. The DayTrade channel’s anchoring to previous and current day highs/lows before 12 PM, enabled by "Show DayTrade Trend Lines," creates a stable reference for intraday trading, while static trendlines and dynamic projections guide traders in anticipating price movements. The heartlines, controlled by toggles like "Show DayTrade Heartline," offer potential insights into high-activity price levels, with breaks possibly indicating momentum shifts. Traders can use the indicator for line-to-line trading by targeting moves between trendlines, projections, and reflection channels, while managing risk with stop-losses and confirmations from other tools. The indicator should be used as part of a comprehensive trading plan.
Harish Algo 2The script "Harish Algo 2" is a Pine Script-based TradingView indicator that automatically identifies significant trendlines based on fractal points and tracks price interactions with those trendlines. Key features include:
Fractal Detection: The script identifies fractal highs and lows, using a configurable fractal period, to serve as pivot points for generating trendlines. Fractal highs are marked in blue, and fractal lows are marked in red.
Dynamic Trendlines: It draws trendlines between consecutive fractal points, with a limit on the maximum number of active trendlines. The trendlines can be extended either in both directions or to the right, as per user input. The line width can also be customized.
Support/Resistance Counting: Each trendline tracks how many times the price interacts with it. If the price approaches the line from above and touches or stays near it, the line is considered a support. If the price approaches from below, it is considered a resistance. These counts are used to modify the trendline's color and appearance.
Trendlines with 2 support interactions turn green.
Trendlines with 2 resistance interactions turn red.
Trendlines with 3 or more interactions turn black.
Trendline Styling: Trendlines that extend over a long period (more than 100 bars) change to a dotted style to highlight their persistence.
Break Detection: The script monitors if the price crosses a trendline, signaling a potential breakout or breakdown. Once a trendline is broken, it stops extending further.
Trendline Removal: The script ensures that only a limited number of trendlines are active at a time. If the maximum number of trendlines is reached, the oldest trendline is removed to make space for new ones.
This indicator is designed to help traders visualize important trendlines, spot potential support and resistance levels, and detect breakouts or breakdowns based on price movement.
Trendline Breakout Navigator [LuxAlgo]The Trendline Breakout Navigator indicator shows three trendlines, representing trends of different significance between Swing Points.
Dots highlight a Higher Low (HL) or Lower High (LH) that pierces through the Trendline without the closing price breaking the Trendline.
A bar color and background color option is included, which offers insights into the price against the trendlines.
🔶 USAGE
Trendlines (TL) are drawn, starting as a horizontal line from a Swing Point.
When an HL (in the case of a bullish TL) or an LH (bearish TL) is found, this Swing Point is connected to the first Swing Point. In both cases, the TL can be optimized when one or more historical close prices breach the TL (see DETAILS).
A solid-styled long-term trendline represents the overall market direction, while a dashed-styled medium-term trendline captures medium-term movements within the long-term trend. Finally, a dotted-styled short-term trendline tracks short-term fluctuations.
🔹 Swing Points vs. Trend
A "Higher High" (HH) or "Lower Low" (LL) will initialize a new trendline, respectively, starting from the previous "Swing Low" or Swing High".
To spot the trend shift, "HH/LL" labels and an optional background color are included. They can be enabled/disabled or set at "Long, Medium, or Short" term TL (Settings—"MS", "HH/LL" and "Background Color").
These features are linked to one Trendline of choice only.
Where the "HH/LL" labels can show a potential trend shift, the background color is:
Green from the moment the close price breaks above a bearish trendline or when an HH occurs
Red from the moment the close price breaks below a bullish trendline or when an LL occurs
🔹 Bar Color
The bar color will depend on the location of the closing price against the three trendlines. When a trendline is unavailable (for example, if the close price breaks the TL and there is no HH/LL), the last known trendline value will be considered.
All three trendlines influence the bar color.
If the close price is above the "Long Term" TL, the bar color will show a gradient of green, darker when the close price is below the "Medium Term" and/or "Short Term" TLs.
On the other hand, when the close price is below the "Long Term" TL, the bar color will show a gradient of red, which becomes darker when the close price is above the "Medium Term" and/or "Short Term" TLs.
To keep the above example simple, only the "Long Term" TL is considered. The white line (not included in the script) resembles the actual value of the TL at each bar, where you can see the effect on the bar color.
Combined with the trendlines and dots, the bar color can provide extra depth and insights into the underlying trends.
🔹 Tested Trendlines
If a new HL/LH pierces the Trendline without the close price breaking the Trendline, the Trendline will be updated.
The exact location where the price exceeded the Trendline is visualized by a dot, colored blue on a bullish trendline and orange when bearish.
These dots can be indicative of a potential trend continuation or reversal.
🔹 Higher TimeFrame Option
The "Period" setting enables users to visualize higher-timeframe trendlines as long as the line length doesn't exceed 5000 bars.
🔶 DETAILS
When a new trendline is drawn, the script first draws a preliminary line and then checks whether a historical close price exceeded this line above (in the case of a bearish TL) or below (in a bullish case).
Subsequently, the most valid point in between is chosen as the starting point of the Trendline.
🔶 SETTINGS
Period: Choose "chart" for trendlines from the current chart timeframe, or choose a higher timeframe
🔹 Swing Length
Toggle and Swing Length for three trendlines: Period used for the swing detection, with higher values returning longer-term Swing Levels.
🔹 Style
Trendline: color for bullish/bearish Trendline
Wick Dot: color for bullish/bearish trendline test
Term: Long-, medium- or short-term
HH/LL: Show HH/LL labels (with or without previous Swing High/Low) of chosen Term
Background Color: Green when the closing price is above the trendline of choice, red otherwise
Bar Color
Live Market - Performance MonitorLive Market — Performance Monitor
Study material (no code) — step-by-step training guide for learners
________________________________________
1) What this tool is — short overview
This indicator is a live market performance monitor designed for learning. It scans price, volume and volatility, detects order blocks and trendline events, applies filters (volume & ATR), generates trade signals (BUY/SELL), creates simple TP/SL trade management, and renders a compact dashboard summarizing market state, risk and performance metrics.
Use it to learn how multi-factor signals are constructed, how Greeks-style sensitivity is replaced by volatility/ATR reasoning, and how a live dashboard helps monitor trade quality.
________________________________________
2) Quick start — how a learner uses it (step-by-step)
1. Add the indicator to a chart (any ticker / timeframe).
2. Open inputs and review the main groups: Order Block, Trendline, Signal Filters, Display.
3. Start with defaults (OB periods ≈ 7, ATR multiplier 0.5, volume threshold 1.2) and observe the dashboard on the last bar.
4. Walk the chart back in time (use the last-bar update behavior) and watch how signals, order blocks, trendlines, and the performance counters change.
5. Run the hands-on labs below to build intuition.
________________________________________
3) Main configurable inputs (what you can tweak)
• Order Block Relevant Periods (default ~7): number of consecutive candles used to define an order block.
• Min. Percent Move for Valid OB (threshold): minimum percent move required for a valid order block.
• Number of OB Channels: how many past order block lines to keep visible.
• Trendline Period (tl_period): pivot lookback for detecting highs/lows used to draw trendlines.
• Use Wicks for Trendlines: whether pivot uses wicks or body.
• Extension Bars: how far trendlines are projected forward.
• Use Volume Filter + Volume Threshold Multiplier (e.g., 1.2): requires volume to be greater than multiplier × average volume.
• Use ATR Filter + ATR Multiplier: require bar range > ATR × multiplier to filter noise.
• Show Targets / Table settings / Colors for visualization.
________________________________________
4) Core building blocks — what the script computes (plain language)
Price & trend:
• Spot / LTP: current close price.
• EMA 9 / 21 / 50: fast, medium, slow moving averages to define short/medium trend.
o trend_bullish: EMA9 > EMA21 > EMA50
o trend_bearish: EMA9 < EMA21 < EMA50
o trend_neutral: otherwise
Volatility & noise:
• ATR (14): average true range used for dynamic target and filter sizing.
• dynamic_zone = ATR × atr_multiplier: minimum bar range required for meaningful move.
• Annualized volatility: stdev of price changes × sqrt(252) × 100 — used to classify volatility (HIGH/MEDIUM/LOW).
Momentum & oscillators:
• RSI 14: overbought/oversold indicator (thresholds 70/30).
• MACD: EMA(12)-EMA(26) and a 9-period signal line; histogram used for momentum direction and strength.
• Momentum (ta.mom 10): raw momentum over 10 bars.
Mean reversion / band context:
• Bollinger Bands (20, 2σ): upper, mid, lower.
o price_position measures where price sits inside the band range as 0–100.
Volume metrics:
• avg_volume = SMA(volume, 20) and volume_spike = volume > avg_volume × volume_threshold
o volume_ratio = volume / avg_volume
Support & Resistance:
• support_level = lowest low over 20 bars
• resistance_level = highest high over 20 bars
• current_position = percent of price between support & resistance (0–100)
________________________________________
5) Order Block detection — concept & logic
What it tries to find: a bar (the base) followed by N candles in the opposite direction (a classical order block setup), with a minimum % move to qualify. The script records the high/low of the base candle, averages them, and plots those levels as OB channels.
How learners should think about it (conceptual):
1. An order block is a signature area where institutions (theory) left liquidity — often seen as a large bar followed by a sequence of directional candles.
2. This indicator uses a configurable number of subsequent candles to confirm that the pattern exists.
3. When found, it stores and displays the base candle’s high/low area so students can see how price later reacts to those zones.
Implementation note for learners: the tool keeps a limited history of OB lines (ob_channels). When new OBs exceed the count, the oldest lines are removed — good practice to avoid clutter.
________________________________________
6) Trendline detection — idea & interpretation
• The script finds pivot highs and lows using a symmetric lookback (tl_period and half that as right/left).
• It then computes a trendline slope from successive pivots and projects the line forward (extension_bars).
• Break detection: Resistance break = close crosses above the projected resistance line; Support break = close crosses below projected support.
Learning tip: trendlines here are computed from pivot points and time. Watch how changing tl_period (bigger = smoother, fewer pivots) alters the trendlines and break signals.
________________________________________
7) Signal generation & filters — step-by-step
1. Primary triggers:
o Bullish trigger: order block bullish OR resistance trendline break.
o Bearish trigger: bearish order block OR support trendline break.
2. Filters applied (both must pass unless disabled):
o Volume filter: volume must be > avg_volume × volume_threshold.
o ATR filter: bar range (high-low) must exceed ATR × atr_multiplier.
o Not in an existing trade: new trades only start if trade_active is false.
3. Trend confirmation:
o The primary trigger is only confirmed if trend is bullish/neutral for buys or bearish/neutral for sells (EMA alignment).
4. Result:
o When confirmed, a long or short trade is activated with TP/SL calculated from ATR multiples.
________________________________________
8) Trade management — what the tool does after a signal
• Entry management: the script marks a trade as trade_active and sets long_trade or short_trade flags.
• TP & SL rules:
o Long: TP = high + 2×ATR ; SL = low − 1×ATR
o Short: TP = low − 2×ATR ; SL = high + 1×ATR
• Monitoring & exit:
o A trade closes when price reaches TP or SL.
o When TP/SL hit, the indicator updates win_count and total_pnl using a very simple calculation (difference between TP/SL and previous close).
o Visual lines/labels are drawn for TP and updated as the trade runs.
Important learner notes:
• The script does not store a true entry price (it uses close in its P&L math), so PnL is an approximation — treat this as a learning proxy, not a position accounting system.
• There’s no sizing, slippage, or fee accounted — students must manually factor these when translating to real trades.
• This indicator is not a backtesting strategy; strategy.* functions would be needed for rigorous backtest results.
________________________________________
9) Signal strength & helper utilities
• Signal strength is a composite score (0–100) made up of four signals worth 25 points each:
1. RSI extreme (overbought/oversold) → 25
2. Volume spike → 25
3. MACD histogram magnitude increasing → 25
4. Trend existence (bull or bear) → 25
• Progress bars (text glyphs) are used to visually show RSI and signal strength on the table.
Learning point: composite scoring is a way to combine orthogonal signals — study how changing weights changes outcomes.
________________________________________
10) Dashboard — how to read each section (walkthrough)
The dashboard is split into sections; here's how to interpret them:
1. Market Overview
o LTP / Change%: immediate price & daily % change.
2. RSI & MACD
o RSI value plus progress bar (overbought 70 / oversold 30).
o MACD histogram sign indicates bullish/bearish momentum.
3. Volume Analysis
o Volume ratio (current / average) and whether there’s a spike.
4. Order Block Status
o Buy OB / Sell OB: the average base price of detected order blocks or “No Signal.”
5. Signal Status
o 🔼 BUY or 🔽 SELL if confirmed, or ⚪ WAIT.
o No-trade vs Active indicator summarizing market readiness.
6. Trend Analysis
o Trend direction (from EMAs), market sentiment score (composite), volatility level and band/position metrics.
7. Performance
o Win Rate = wins / signals (percentage)
o Total PnL = cumulative PnL (approximate)
o Bull / Bear Volume = accumulated volumes attributable to signals
8. Support & Resistance
o 20-bar highest/lowest — use as nearby reference points.
9. Risk & R:R
o Risk Level from ATR/price as a percent.
o R:R Ratio computed from TP/SL if a trade is active.
10. Signal Strength & Active Trade Status
• Numeric strength + progress bar and whether a trade is currently active with TP/SL display.
________________________________________
11) Alerts — what will notify you
The indicator includes pre-built alert triggers for:
• Bullish confirmed signal
• Bearish confirmed signal
• TP hit (long/short)
• SL hit (long/short)
• No-trade zone
• High signal strength (score > 75%)
Training use: enable alerts during a replay session to be notified when the indicator would have signalled.
________________________________________
12) Labs — hands-on exercises for learners (step-by-step)
Lab A — Order Block recognition
1. Pick a 15–30 minute timeframe on a liquid ticker.
2. Use default OB periods (7). Mark each time the dashboard shows a Buy/Sell OB.
3. Manually inspect the chart at the base candle and the following sequence — draw the OB zone by hand and watch later price reactions to it.
4. Repeat with OB periods 5 and 10; note stability vs noise.
Lab B — Trendline break confirmation
1. Increase trendline period (e.g., 20), watch trendlines form from pivots.
2. When a resistance break is flagged, compare with MACD & volume: was momentum aligned?
3. Note false breaks vs confirmed moves — change extension_bars to see projection effects.
Lab C — Filter sensitivity
1. Toggle Use Volume Filter off, and record the number and quality of signals in a 2-day window.
2. Re-enable volume filter and change threshold from 1.2 → 1.6; note how many low-quality signals are filtered out.
Lab D — Trade management simulation
1. For each signalled trade, record the time, close entry approximation, TP, SL, and eventual hit/miss.
2. Compute actual PnL if you had entered at the open of the next bar to compare with the script’s PnL math.
3. Tabulate win rate and average R:R.
Lab E — Performance review & improvement
1. Build a spreadsheet of signals over 30–90 periods with columns: Date, Signal type, Entry price (real), TP, SL, Exit, PnL, Notes.
2. Analyze which filters or indicators contributed most to winners vs losers and adjust weights.
________________________________________
13) Common pitfalls, assumptions & implementation notes (things to watch)
• P&L simplification: total_pnl uses close as a proxy entry price. Real entry/exit prices and slippage are not recorded — so PnL is approximate.
• No position sizing or money management: the script doesn’t compute position size from equity or risk percent.
• Signal confirmation logic: composite "signal_strength" is a simple 4×25 point scheme — explore different weights or additional signals.
• Order block detection nuance: the script defines the base candle and checks the subsequent sequence. Be sure to verify whether the intended candle direction (base being bullish vs bearish) aligns with academic/your trading definition — read the code carefully and test.
• Trendline slope over time: slope is computed using timestamps; small differences may make lines sensitive on very short timeframes — using bar_index differences is usually more stable.
• Not a true backtester: to evaluate performance statistically you must transform the logic into a strategy script that places hypothetical orders and records exact entry/exit prices.
________________________________________
14) Suggested improvements for advanced learners
• Record true entry price & timestamp for accurate PnL.
• Add position sizing: risk % per trade using SL distance and account size.
• Convert to strategy. (Pine Strategy)* to run formal backtests with equity curves, drawdowns, and metrics (Sharpe, Sortino).
• Log trades to an external spreadsheet (via alerts + webhook) for offline analysis.
• Add statistics: average win/loss, expectancy, max drawdown.
• Add additional filters: news time blackout, market session filters, multi-timeframe confirmation.
• Improve OB detection: combine wick/body, volume spike at base bar, and liquidity sweep detection.
________________________________________
15) Glossary — quick definitions
• ATR (Average True Range): measure of typical range; used to size targets and stops.
• EMA (Exponential Moving Average): trend smoothing giving more weight to recent prices.
• RSI (Relative Strength Index): momentum oscillator; >70 overbought, <30 oversold.
• MACD: momentum oscillator using difference of two EMAs.
• Bollinger Bands: volatility bands around SMA.
• Order Block: a base candle area with subsequent confirmation candles; a zone of institutional interest (learning model).
• Pivot High/Low: local turning point defined by candles on both sides.
• Signal Strength: combined score from multiple indicators.
• Win Rate: proportion of signals that hit TP vs total signals.
• R:R (Risk:Reward): ratio of potential reward (TP distance) to risk (entry to SL).
________________________________________
16) Limitations & assumptions (be explicit)
• This is an indicator for learning — not a trading robot or broker connection.
• No slippage, fees, commissions or tie-in to real orders are considered.
• The logic is heuristic (rule-of-thumb), not a guarantee of performance.
• Results are sensitive to timeframe, market liquidity, and parameter choices.
________________________________________
17) Practical classroom / study plan (4 sessions)
• Session 1 — Foundations: Understand EMAs, ATR, RSI, MACD, Bollinger Bands. Run the indicator and watch how these numbers change on a single day.
• Session 2 — Zones & Filters: Study order blocks and trendlines. Test volume & ATR filters and note changes in false signals.
• Session 3 — Simulated trading: Manually track 20 signals, compute real PnL and compare to the dashboard.
• Session 4 — Improvement plan: Propose changes (e.g., better PnL accounting, alternative OB rule) and test their impact.
________________________________________
18) Quick reference checklist for each signal
1. Was an order block or trendline break detected? (primary trigger)
2. Did volume meet threshold? (filter)
3. Did ATR filter (bar size) show a real move? (filter)
4. Was trend aligned (EMA 9/21/50)? (confirmation)
5. Signal confirmed → mark entry approximation, TP, SL.
6. Monitor dashboard (Signal Strength, Volatility, No-trade zone, R:R).
7. After exit, log real entry/exit, compute actual PnL, update spreadsheet.
________________________________________
19) Educational caveat & final note
This tool is built for training and analysis: it helps you see how common technical building blocks combine into trade ideas, but it is not a trading recommendation. Use it to develop judgment, to test hypotheses, and to design robust systems with proper backtesting and risk control before risking capital.
________________________________________
20) Disclaimer (must include)
Training & Educational Only — This material and the indicator are provided for educational purposes only. Nothing here is investment advice or a solicitation to buy or sell financial instruments. Past simulated or historical performance does not predict future results. Always perform full backtesting and risk management, and consider seeking advice from a qualified financial professional before trading with real capital.
________________________________________
BTC Trendline Patterns with Signals BTC Trendline Patterns with Signals
This custom Pine Script indicator automatically detects key pivot points in Bitcoin price action and draws support and resistance trendlines. The indicator provides buy (long) and sell (short) signals when these trendlines are broken. This can help traders identify potential breakout opportunities and trend reversals based on established price levels.
Features:
Pivot Point Detection: Automatically identifies pivot highs and lows in the price chart, based on customizable parameters (Pivot Left and Pivot Right).
Support and Resistance Trendlines: Draws trendlines based on the identified pivot points. These lines represent significant price levels where price may experience support or resistance.
Breakout Signals: Provides buy (long) and sell (short) signals when the price breaks above the resistance trendline (for buy signals) or below the support trendline (for sell signals).
Customizable Pivot Lengths: Adjust the number of bars considered for determining pivot points using the Pivot Left and Pivot Right input parameters.
How it Works:
Pivot Detection: The script identifies the highest high (pivotHigh) and the lowest low (pivotLow) within a specific range of bars (defined by Pivot Left and Pivot Right).
Trendline Plotting: Once pivots are detected, the script draws resistance (red) and support (green) trendlines connecting the most recent pivots. These trendlines act as dynamic support and resistance levels.
Breakout Signals: The script generates signals:
BUY (Long): Triggered when the price breaks above the most recent resistance trendline.
SELL (Short): Triggered when the price breaks below the most recent support trendline.
Parameters:
Pivot Left: Number of bars to the left of the pivot point to consider.
Pivot Right: Number of bars to the right of the pivot point to consider.
Line Width: Customizable line width for drawing trendlines.
Ideal Use:
Timeframes: This indicator works well on timeframes ranging from 1-minute to daily charts. For best results, use it on 1-hour, 4-hour, or daily charts.
Strategy: Ideal for breakout traders or trend-following strategies. Use it to identify potential entry points when price breaks key levels of support or resistance.
Example Use Case:
Swing Traders: Traders looking for potential breakouts can use this script to identify key levels in the market and wait for the price to break through resistance for a long trade or support for a short trade.
Day Traders: For those looking to enter and exit trades in a single day, this indicator can help pinpoint areas of support and resistance, and provide actionable signals when price breaks those levels.
Disclaimer:
This script is not a guarantee of success and should be used in conjunction with other technical analysis tools. Always perform additional research and backtesting before live trading.
Important Notes:
The pivot points and trendlines may adjust dynamically as the price evolves. Adjust the pivot settings to suit the volatility and timeframe of the market you're trading.
This indicator works best when combined with other indicators such as volume, RSI, or MACD for confirmation.
How to Use:
Add the indicator to your chart.
Adjust the Pivot Left and Pivot Right parameters to fine-tune the pivot point detection.
Monitor for trendline breakouts. When the price breaks above the resistance line, a BUY signal will appear. When the price breaks below the support line, a SELL signal will appear.
Use the signals to enter trades at the right moment.
Final Notes:
If you're submitting to TradingView for publishing, keep your description clear and informative, but also concise. Traders need to quickly understand how your indicator works, what parameters they can adjust, and how it might fit into their trading strategy.
Tetra Trendline Indicator 2.0This script is designed to help traders visualize and identify potential overbought and oversold conditions in a financial instrument's price chart using four customizable trendlines. It also provides the option to set alerts for these conditions. Users can adjust the input parameters to tailor the indicator's behavior to their trading preferences.
Input Parameters: The script allows users to configure various input parameters to customize the behavior of the indicator. These parameters include:
showTrendlineX: Boolean inputs to control whether to show each of the four trendlines (Trendline 1, Trendline 2, Trendline 3, and Trendline 4).
trendlineColorX: Color inputs to specify the color of each trendline.
trendlineWidthX: Numeric inputs to set the width of each trendline.
trendlineLengthX: Numeric inputs to determine the length of each trendline.
alertOnTrendlineXBreak: Boolean inputs to enable or disable alerts for each trendline when they are breached.
Trendline Calculations: The script calculates the coordinates for each of the four trendlines. It does this by identifying the starting and ending points of each trendline based on user-defined parameters and the highest or lowest price levels within a specified length.
Plotting Trendlines: The script uses the plot function to display the calculated trendlines on the price chart. It also fills the area between the trendlines to visually emphasize the region.
Alert Conditions: The script defines alert conditions for each trendline. Alerts are triggered when certain price conditions are met:
Trendline 1: An alert is triggered when the price crosses above the Trendline 1 (indicating overbought conditions).
Trendline 2: An alert is triggered when the price crosses below the Trendline 2 (indicating oversold conditions).
Trendline 3: Similar to Trendline 1, an alert is triggered when the price crosses above Trendline 3 (overbought).
Trendline 4: Similar to Trendline 2, an alert is triggered when the price crosses below Trendline 4 (oversold).
TradesAI - Elite (Premium)This is an all-inclusive, premium indicator that focuses mainly on price action analysis, a form of looking at raw price data and market structure to analyze and capture areas of interest where price could react.
This indicator is a perfect trading companion that saves you a lot of time in trading price action. Some of the popular methods that use price action analysis are "Smart Money Concepts (SMC)", "Inner Circle Trader (ICT)", and "Institutional Trading".
🔶 POWERFUL TOOLS
The indicator combines three main tools as a trading suite:
Trendlines
Market Structure Breakouts (MSB)
Order Blocks (OBs) and Reversal Order Blocks (ROBs)
These 3 main tools are interconnected together. Below we go over each, and then explain how and why they are brought in together. Please also note that the indicator's settings have tooltips next to most of them, with more detailed information.
🔶 TRENDLINES
This indicator automatically draws the most relevant Trendlines from pivot high/pivot low (based on the defined settings) as origins, while keeping track of candle closes across these Trendlines to adjust or invalidate accordingly.
The indicator will draw all possible Trendlines up to the maximum allowed by TradingView's PineScript. It uses a bullish pivot high candle to draw downtrends, and a bearish pivot low candle to draw uptrends. The algorithm will draw the most suitable active Trendlines from those origin points.
The indicator takes the origin point as the first point of the Trendline, then starts looking for the immediate next same-type candle (bullish to bullish or bearish to bearish), to draw the Trendline between the origin candle and this newer candle.
An uptrend is a ray connecting two bearish candles, as long as the second candle has a Low higher than the low of the origin (first) candle. A downtrend is a ray connecting two bullish candles, as long as the second candle has a high lower than the high of the origin (first) candle.
Upon drawing, the indicator then starts monitoring and adjusting this Trendline, by keeping the origin always the same but changing the second point. The goal is to keep reducing the slope of the Trendline till it is at 0 degrees (horizontal line). That then makes the Trendline "final". Note that you have the option to keep all Trendlines or just show the final, in the settings.
So, the algorithm has three states for the Trendlines:
Initial: not tested, meaning price hasn't yet broken through it and closed a candle beyond it, to cause a re-adjustment of this Trendline.
Broken: a candle hard closed (opened and closed) across it but still, the direction of the trend is maintained with a new Trendline from the same origin – could be replaced (or kept on the chart as a "backside", which is what we call a broken Trendline to be tested from the opposite side) with a new Trendline from the same origin, to the newest candle that caused the break to happen, as then it becomes the new second point of that Trendline.
Final: a candle hard closed (opened and closed) across it and can't draw a new Trendline from the same origin maintaining the direction of the trend (so an uptrend becomes a downtrend or a downtrend becomes an uptrend at this point, which is not allowed). This marks the end of the Trendline adjustment for that origin.
To summarize the Trendlines algorithm, imagine starting from a candle and drawing the Trendline, then keep re-adjusting it to make its slope less and less, till it becomes a horizontal line. That's the final state.
Here is a step-by-step scenario to demonstrate the algorithm:
Notice how first an Uptrend (green ray) is drawn between point A origin pivot (picked by our smart algorithm) and point B, both marked by green arrows:
Uptrend then turned into backside (where it flips from diagonal support to resistance where liquidity potentially resides):
Then a new uptrend is drawn from the same point A origin pivot to a new point B matching the filters in settings.
Finally, it turns also into a backside and is considered final because no more uptrends could be drawn from the same point A origin point.
Unlike traditional Trendline tools, this indicator takes into account numerous rules for each candlestick to determine valid support and resistance levels, which act as liquidity zones.
Unlike conventional Trendline tools, this indicator allows the user to define the pivot point left and right length to capture the proper ones as origins, then automatically recognizes and extends lines from them as liquidity zones where a reaction is expected. Moreover, the indicator monitors those Trendlines in real-time to switch them from buying to selling zones, and vice-versa, as the price structure changes.
Features
Log vs. Linear scale switch to show different Trendlines accordingly. When updating the Trendlines, or deciding whether Touches/Hard Closes are met, it makes a difference.
Ability to show all forms of Trendlines, final Trendlines or just backside Trendlines.
Why is it used?
For experienced traders, it offers the advantage of time efficiency, while new traders can bypass the steep learning curve of drawing Trendlines manually, which could practically be drawn between any two candlesticks on the chart (many variations).
🔶 MARKET STRUCTURE BREAKOUT (MSB)
The Market Structure Breakouts (MSB) tool is a trading tool that detects specific patterns on trading charts and provides ‘take profit’ regions based on the extended direction of the identified pattern. A breakout is a potential trading opportunity that presents itself when an asset's price moves away from a zone of accumulation (i.e. above a resistance level or below a support level) on increasing volume. The most famous form of market structure breakout is double/triple tops/bottoms, or what is referred to as W or M breakouts.
See this example below of how our MSB smart algorithm picked the local bottom of INDEX:BTCUSD
Here is a step-by-step scenario to demonstrate the algorithm:
First, the algorithm picks the pivot points according to our Machine Learning (ML) model, which uses Average True Range (ATR) and Moving Averages of various types to decide. It will then signal a Market Structure Breakout (MSB):
You may either short (sell) this MSB towards the targets (dotted green lines) and/or buy (long) at the targets (dotted green lines). Usually, these targets provide scalp moves, according to our model, but they may also act as strong reversal points on the chart.
Unlike standard indicators, the MSB tool identifies patterns that may not appear in every time frame due to specific conditions that need to be met, including Average True Range (ATR) and Moving Averages at the time of creation. Once these patterns are identified, the tool gives ‘take profit’ regions in the direction of the trading pattern and even allows for trading in the opposite direction (contrarian/counter-trend scalps) once those regions are reached. A confirmed breakout has the potential to drive the price to these specific targets, calculated based on our Machine Learning (ML) model. The Targets are the measured moves placed from the breakout point.
Features
Log vs. Linear scale switch to show different MSBs accordingly based on the ratios.
Detects trading patterns with specific conditions.
Ability to specify how sensitive the pivot points are for capturing market structure breakouts.
Provides take profit regions in the extended direction of the pattern.
Allows for versatile trading styles by permitting trades in the opposite direction (contrarian or counter-trend) once the take profit region is reached.
Highlights 2 levels of interest for potential trade initiation (or as targets of the MSB move).
🔶 ORDER BLOCK (OB) and REVERSAL ORDER BLOCK (ROB)
Before diving deeper into OBs and ROBs, you may consider the following chart for a general understanding of price ladders, and how they break. This is a bearish price ladder leaving Lower Lows and Lower Highs after an initial Low and High (L->H->LL->LH). Bullish ladders are the opposite (H->L->HH->HL).
In this bearish ladder case, notice the numbers representing the highs made (being lower). While this is a clean structure, markets don't always create such clean ladders, but you may switch to a higher timeframe to see it in a clearer form (usually, you will be able to spot it there).
In SMC or ICT concepts, the "Break Of Structure (BOS)" is pretty much creating a new lower low (LL) for the bearish ladder (and the creation of a higher high (HH) for the bullish ladder). By doing so, markets are grabbing liquidity below these levels and could either continue the ladder or stop/flip it. This gives you the context of how the ladder prints.
Price usually ends the ladder with a "Change of Character (CHoCH)", which represents a BOS (to grab liquidity) followed by an aggressive move in the opposite direction, which could lead the market to close the gaps and balance out. It is considered a good practice to then target liquidity in the opposite direction when a CHoCH happens, meaning for a bearish ladder you may target the pivots marked by 3, 2 and 1 at the top (start of the ladder).
Now we move to Order Blocks (OBs) and Reversal Order Blocks (ROBs). Think of them as sniper zones or micro ladders inside the bigger ladder/structure.
Order Blocks are usually used as zones of support and resistance on a trading chart where liquidity is present, or what some traders call "potential institutional interest zones". Order Blocks can be observed at the beginning of these strong moves of BOS or the CHoCH, leaving behind a zone (one or more candles) to be revisited later to balance the market. Therefore, these are interesting levels to place Limit/Market orders (sell the peaks or buy the valleys) instead of doing so at the swing highs or swing lows of the ladder (where BOS or CHoCH happened). The idea here is that the price could go deep into the ladder's step (peak or valley), and by doing so, it usually goes to these zones.
A bullish Order Block (Valley-OB) is the last bearish candle of a downtrend before a sequence of bullish candles (thus forming a "Valley"). A bearish Order Block (Peak-OB) is the last bullish candle of an uptrend before a sequence of bearish candles (thus forming a "Peak"). Our indicator captures the full range zones of the OB meaning not only the last candle but the sequence of same-type candles immediately next to it, which creates a zone, thus the name "OB/ROB Zone". Not only does the tool mark those levels on the chart, but it also has a smart tracking algorithm to remove the appropriate levels dynamically. It will monitor, candle by candle, what is happening to all the OBs/ROBs, and update them according to how they are being tested/visited (eg. weak testing being a touch, and strong testing being a touch of the same colour candle).
Bullish Valley-OB:
Bearish Peak-OB:
The indicator follows our concept of "Zone Activation" to determine whether to mark zones with dashed or solid lines.
If we take a bearish Peak-OB as an example, notice how it first gets drawn with a dashed red line (as the algorithm monitors how far the price moved away from the zone):
As price moves away (distance based on our Machin Learning (ML) model), it turns into solid lines:
Some people prefer to enter market orders or limit (pending) orders close to the zone, while others wait for it to hit. You may wait for these zones to turn into solid lines (meaning that the price made a decent move away from it before revisiting it). It depends on your trading strategy.
When Order Block (OB) zones break instead of holding the ladder, they turn into what we call Reversal Order Blocks (ROB); our algorithm of flipping these zones where price could react from the other side of the OB. Our algorithm monitor and highlight the most suitable ones to trade, based on +30 conditions and variables by our Machine Learning (ML) models. Examples of ROBs in the SMC or ICT trading community are a "Breaker Block", a "Mitigation Block" or a "Unicorn Setup". However, our algorithm filters the zones based on many factors such as ratios of price movement before, inside and after these zones, along with many other factors.
The algorithm monitors the ratios of how price moved into and away from the OB/ROB, as well as the type of move happening, to then filter the ones that are considered of high probability to break/not do a reaction.
A bullish Valley-OB (green) turns into a bearish Valley-ROB (neon red) where you may short (sell), while a bearish Peak-OB (red) turns into a bullish Peak-ROB (neon green) where you may long (buy).
Example of a bullish Valley-OB that turned into a bearish Valley-ROB:
Features
Log vs. Linear scale switch to show OBs/ROBs accordingly based on the ratios and the price action around these zones (before and after creation).
Uses our Machine Learning (ML) model to determine relevant Order Blocks (OBs) to show or hide based on price action.
Considers distribution and accumulation candles to find relevant Order Blocks.
Various types of triggers to mark those Order Blocks and their zones: breakout, close, hard close (open and close) or full close (low, high, open and close).
Monitors the 1:1 expansion of price from key areas of interest, which would change the importance of the zones through our concept of “Zone Activation”.
Allows for customization in the settings to display different types of Order Blocks (e.g., tested or untested).
Marking and invalidating levels based on many variables, including single or multiple candle zones, touching/closing beyond specific levels, weak/strong testing criteria, price tolerance % (near a level), and many more.
Provides color-coded visual representation for easier interpretation.
Why is it used?
Order Blocks (OB) and Reversal Order Blocks (ROB) represent the building blocks of price ladders, in conjunction with Swing Highs and Swing Lows. By identifying where liquidity is potentially present, they become common targets for big market players. Additionally, they provide clear invalidation points based on various types of candle closes, such as hard closes or simply a candle close.
One strategy that could be used is to open positions at these OB or ROB Levels as long as the chart maintains the trend (ladder), for a potentially higher win rate (or against it for a quick scalp). Be mindful of the breaking of a ladder or the building of a new one. A ladder breaks with a hard close (open and close) of a candle across the closest two levels; a ladder builds by not breaking back down across the levels it has tested. By definition, strong ladders will have a few untested levels and come back to wick them but still retain the structure of the laddering direction (trending with Lower Lows + Lower Highs or Higher Lows + Higher Highs).
🔶 COMBINING ALL TOOLS
In summary, Trendlines could be great tools to give you a general context of whether the price is laddering up or down. Once you spot the ladder, your goal is to either trade in its direction (not to go against the trend) or to counter-trend trade (contrarian). To do so, you could use the MSB tool to spot these BOS/CHoCH. And to give you more precise entries, you may rely on the OB/ROB zones which usually mesh over the ladder, to provide a sniper entry!
🔶 RISK DISCLAIMER
Trading is risky, and most day traders lose money. The risk of loss in trading can be substantial. Decisions to buy, sell, hold or trade in securities, commodities and other investments involve risk and are best made based on the advice of qualified financial professionals. Past performance does not guarantee future results. All content is to be considered hypothetical, selected after the fact, in order to demonstrate our product and should not be construed as financial advice. You should therefore carefully consider whether such trading is suitable for you in light of your financial condition.
Tight Entry Trend Engine Strategy═══════════════════════════════════════
TIGHT ENTRY TREND ENGINE
═══════════════════════════════════════
A breakout-based trend-following system designed to capture explosive
moves by entering at precise resistance/support breakouts with minimal
entry risk and massive profit potential.
⚠️ LOW WIN RATE, HIGH REWARD SYSTEM ⚠️
This is NOT a high win-rate strategy. Expect 25-35% winners, but
when it hits, winners are typically 10X+ larger than losers.
═══════════════════════════════════════
🎯 WHAT THIS SYSTEM DOES
═══════════════════════════════════════
The Tight Entry Trend Engine identifies powerful breakout opportunities
by detecting when price breaks through established trendlines with
confirmation from higher timeframe trends:
1. DYNAMIC TRENDLINE DETECTION (3 BANKS)
• Automatically draws support and resistance trendlines
• 3 separate "banks" capture short-term, medium-term, and long-term levels
• Each bank has configurable parameters (required pivot touch count,
angle limits, lengths)
2. BREAKOUT ENTRY TIMING
• Enters LONG when price breaks ABOVE resistance trendlines
• Enters SHORT when price breaks BELOW support trendlines
• Entry Alert occurs at the exact moment of breakout = "tight entry"
• Stop-loss placed just below/above the broken trendline (configurable)
3. HIGHER TIMEFRAME TREND FILTER
• Uses Hull Moving Average (HMA) on higher timeframe for trend following
• Auto-adjusts HTF based on your chart timeframe
• Optional filters prevent entries against major trend
• Optional "overextension" filter avoids buying parabolic moves
4. VOLATILITY-ADAPTIVE RISK MANAGEMENT
• Stop-loss calculated using Average True Range (ATR)
• Tighter stops = better R:R
• Profit targets adjust dynamically with volatility
• Breakeven stop moves automatically when in profit
• Extended profit targets when far from HTF trend
═══════════════════════════════════════
📊 HOW IT WORKS (METHODOLOGY)
═══════════════════════════════════════
STEP 1: TRENDLINE FORMATION
The system continuously scans for pivot highs and pivot lows to
construct trendlines. You control:
BANK 1 (Short-Term):
- Pivot Length: How many bars to look back for swing points
- Min Touches: How many pivots needed to form a line (default: 3)
- Max Length: How far back lines can reach (default: 180 bars)
- Angle Limits: Maximum steepness allowed for valid trendlines
- Tolerance: How close pivots must align to form horizontal lines
BANK 2 (Medium-Term):
- Slightly longer pivot periods for more significant levels
- Captures medium-term trend structure
- Default Max Length: 200 bars
BANK 3 (Long-Term):
- Focuses on major support/resistance zones
- Often uses horizontal levels (angled lines disabled by default)
- Default Max Length: 300 bars
The system draws RESISTANCE lines (red) above price and SUPPORT
lines (green) below price. These adapt in real-time as new pivots form.
STEP 2: BREAKOUT DETECTION
LONG SIGNALS:
- Price closes above a resistance trendline
- Higher timeframe trend is up (optional filter)
- Price not overextended from HTF trend (optional filter)
- No position currently open
SHORT SIGNALS:
- Price closes below a support trendline
- Higher timeframe trend is down (optional filter)
- Price not overextended from HTF trend (optional filter)
- No position currently open
The "tight" aspect: Because you're entering right at the trendline
break, your stop-loss can be placed very close (just below the
broken resistance for longs), creating exceptional risk/reward ratios.
STEP 3: POSITION SIZING
Choose between:
- Fixed $ Risk Per Trade: Risk same dollar amount every trade
- % Risk Per Trade: Risk percentage of current equity
Position size automatically calculated based on:
- Your risk amount
- Distance to stop-loss (ATR-based)
- Works with stocks, futures, crypto (auto-adjusts for contract multipliers)
STEP 4: EXIT MANAGEMENT
Multiple exit methods working together:
- PROFIT TARGET: Exits when profit reaches 100x your risk
- EXTENDED PROFIT: Earlier exit (80R) when very far from HTF trend
- STOP LOSS: Fixed ATR-based stop below entry
- HTF TREND EXIT: Exits when price crosses below HTF trend with profit
- BREAKEVEN PULLBACK: Exits if profit drops below 0.6R after reaching breakeven
- PARTIAL PROFITS: Optional - take partial profits at specified R-multiple
═══════════════════════════════════════
🔧 KEY COMPONENTS EXPLAINED
═══════════════════════════════════════
HULL MOVING AVERAGE (HMA)
A smoothed moving average that reduces lag compared to traditional
MAs. The system uses HMA on a higher timeframe to determine the
dominant trend direction. You can choose:
- Auto HTF: System picks appropriate HTF based on your chart timeframe
- Manual HTF: You specify the higher timeframe
AVERAGE TRUE RANGE (ATR)
Measures current market volatility. Used for:
- Stop-loss distance (tighter when volatility low)
- Profit targets (larger when volatility high)
- Position sizing (smaller positions in volatile conditions)
- Breakeven trigger distance
TRENDLINE ANGLE FILTERING
Each trendline bank has angle limits to ensure quality:
- Resistance lines: Max downward/upward slope allowed
- Support lines: Max downward/upward slope allowed
- Angles automatically adjust based on current volatility
- Prevents overly steep/unreliable trendlines
SENSITIVITY CONTROL
One master slider adjusts multiple parameters:
- Trendline detection sensitivity
- HTF MA length
- Exit timing
- Auto-adjusts for daily+ timeframes (60% increase)
═══════════════════════════════════════
⚙️ WHAT YOU SEE ON YOUR CHART
═══════════════════════════════════════
TRENDLINES:
✓ Red resistance lines above price
✓ Green support lines below price
✓ Orange broken lines (past breakouts)
✓ Lines extend to show current levels
HTF TREND:
✓ Thick colored line showing higher timeframe trend
✓ Color gradient: Red (bearish) → Orange → Yellow → Green (bullish)
✓ 250-bar smoothed curve for visual clarity
ENTRY/EXIT SIGNALS:
✓ Small green dot below bar = Long entry
✓ Small red dot above bar = Short entry
✓ Small red dot above = Long exit
✓ Small black dot below = Short exit
OPTIONAL DETAILED LABELS:
✓ Bank number that triggered entry (Bank 1, 2, or 3)
✓ Exit reason (Profit Target, Stop Loss, HTF Exit, etc.)
✓ Partial profit notifications
POSITION TRACKING:
✓ Yellow dashed line at entry price (extends right)
✓ Green/red fill showing current profit/loss zone
✓ Lime arrows at top = Currently in long position
✓ Red arrows at bottom = Currently in short position
✓ Gray background = No position (flat)
STATS TABLE (Top Right):
✓ Current position (LONG/SHORT/FLAT)
✓ Risk per trade ($ or %)
✓ Entry price
✓ Unrealized P/L in dollars
✓ P/L in R-multiples (how many R's profit/loss)
✓ Average winner/loser R ($ mode) OR CAGR (% mode)
═══════════════════════════════════════
📈 OPTIMAL USAGE
═══════════════════════════════════════
BEST ASSETS:
- NASDAQ:QQQ on 1-hour (reg) chart ⭐ (PRIMARY OPTIMIZATION)
- Strong trending stocks: NVDA, AAPL, TSLA, MSFT, GOOGL, AMZN
- High volatility tech stocks
- Crypto: BTC, ETH
- Any liquid asset with clear trends and momentum (GOLD)
AVOID:
- Low volatility stocks
- Ranging/choppy markets
- Penny stocks or illiquid assets
- Assets without clear directional movement
BEST TIMEFRAMES:
- PRIMARY: 1-hour charts (optimal for QQQ)
- ALSO EXCELLENT: 2H, 4H, 8H
- WORKS: 15min, 30min (only momentum leaders, more noise)
- WORKS WITH ADJUSTMENTS: 1D, 2D (decrease trendline pivot lengths)
═══════════════════════════════════════
📊 BACKTEST RESULTS (QQQ 1H (Reg hours), 1999-2024)
═══════════════════════════════════════
The system showed on NASDAQ:QQQ 1-hour timeframe (regular hours):
- Total Return: 1,100,000%+ over 24 years
- Total Trades: 500+
- Win Rate: ~20-24% (LOW - this is by design!)
- Average Winner: 8-15% gain
- Average Loser: 2-4% loss
- Win/Loss Ratio: 10:1 (winners much bigger than losers)
- Profit Factor: 3+
- Max Drawdown: 45-50%
- Risk per trade: 3% of capital
KEY INSIGHT: This is a LOW WIN RATE, HIGH REWARD system. You will
lose more trades than you win, but the few winners are so large
they more than compensate for many small losses.
IMPORTANT: These are backtested results using optimal parameters
on historical data. Real trading results will vary based on:
- Your execution and timing
- Slippage and commissions
- Your emotional discipline
- Market conditions during your trading period
═══════════════════════════════════════
🎓 WHO IS THIS FOR?
═══════════════════════════════════════
IDEAL FOR:
✓ Swing traders comfortable holding winners for longer period
✓ Part-time traders (1H = check 2-3x per day)
✓ Traders seeking exceptional risk/reward ratios
✓ Those comfortable with low win rates if winners are huge
✓ Technical analysis enthusiasts
✓ Breakout traders
✓ Trend followers
═══════════════════════════════════════
🚀 GETTING STARTED - STEP BY STEP
═══════════════════════════════════════
STEP 1: APPLY TO YOUR CHART
- Search "Tight Entry Trend Engine" in indicators
- Click to apply to your chart
- Trendlines and HTF line will appear immediately
STEP 2: CHOOSE YOUR SETTINGS
For BEGINNERS - Use These Settings First:
1. Trade Direction & Filters:
• ENABLE LONGS: ✓ ON
• ENABLE SHORTS: ✗ OFF (start with longs only)
• Sensitivity: 1.0 (default)
• HTF Trend Entry Filter: ✓ ON (safer entries)
• Block Entries When Overextended: ✓ ON (avoid parabolic tops)
2. Position Sizing & Risk:
• Position Sizing: "Per Risk"
• RISK Type: "$ Per Trade"
• Risk Amount: $200 (or 1-3% of your account)
3. Visual Settings:
• Show Support Lines: ✗ OFF (unless trading shorts)
• Show Detailed Entry/Exit Labels: ✓ ON
• Show Stats Table: ✓ ON
• Show Entry Line & P/L Fill: ✓ ON
4. Leave everything else at DEFAULT for now
STEP 3: UNDERSTAND WHAT YOU SEE
When trendlines appear:
- RED lines above = Resistance (watch for price breaking UP through these)
- GREEN lines below = Support (watch for price breaking DOWN)
- When price breaks a red line = Potential LONG entry
- When price breaks a green line = Potential SHORT entry
The HTF trend line (thick colored):
- Green/lime = Strong uptrend (favorable for longs)
- Red = Strong downtrend (favorable for shorts if enabled)
- Orange/yellow = Transitioning
STEP 4: OBSERVE SIGNALS
- Small GREEN dot below bar = System entered LONG
- Small RED dot above bar = System exited LONG
- Check the label to see which "Bank" triggered (Bank 1, 2, or 3)
- Watch the yellow entry line and colored fill show your P/L
STEP 5: PAPER TRADE FIRST
- Use TradingView's paper trading feature
- Watch how signals perform on YOUR chosen asset
- Understand the win rate will be LOW (20-35%)
- Verify that winners are indeed much larger than losers
- Test for at least 20-30 signals before going live
STEP 6: OPTIMIZE FOR YOUR ASSET (OPTIONAL)
If default settings aren't working well:
For FASTER signals (more trades):
- Reduce Pivot Length 1 to 3-4
- Reduce Max Length 1 to 120-150
- Increase Sensitivity to 1.2-1.5
For SLOWER signals (higher quality):
- Increase Pivot Length 1 to 7-10
- Increase Max Length 1 to 250+
- Decrease Sensitivity to 0.7-0.9
For DAILY timeframes:
- Increase all Pivot Lengths by 30-50%
- Increase all Max Lengths significantly
- Sensitivity: 0.6-0.8
═══════════════════════════════════════
⚙️ ADVANCED SETTINGS EXPLAINED
═══════════════════════════════════════
TRENDLINE BANK SETTINGS:
Each bank (1, 2, 3) has these parameters:
- Min Touches: Minimum pivots to form a line
- Lower (2) = More lines, earlier detection
- Higher (4+) = Fewer lines, higher quality
- Pivot Length: Lookback for swing points
- Lower (3-5) = Reacts to recent price action
- Higher (10+) = Only major swing points
- Max Length: How old a trendline can be
- Shorter (100-150) = Only recent lines
- Longer (300+) = Include historical levels
- Tolerance: Alignment strictness for horizontal lines
- Lower (3.0-3.5) = Very strict horizontal
- Higher (4.5+) = More forgiving alignment
- Allow Angled Lines: Enable diagonal trendlines
- ON = Catches sloped support/resistance
- OFF = Only horizontal levels
- Angle Limits: Maximum steepness allowed
- Lower (1-2) = Only gentle slopes
- Higher (4-6) = Accept steeper angles
- Automatically adjusts for volatility
ATR MULTIPLIERS:
- STOP LOSS ATR (0.6): Distance to stop-loss
- Lower (0.4-0.5) = Tighter stops, stopped out more
- Higher (0.8-1.0) = Wider stops, more room
- PROFIT TARGET ATR (100): Main profit target
- This is 100x your risk = 10,000% R:R
- Lower (50-80) = Take profits sooner
- Higher (120+) = Let winners run longer
- BREAKEVEN ATR (40): When to move stop to breakeven
- Lower (20-30) = Protect profits earlier
- Higher (60+) = Give more room before protecting
HIGHER TIMEFRAME:
- Auto HTF: Automatically selects appropriate HTF
- 5min chart → uses 2H
- 15-30min → uses 6H
- 1-4H → uses 2D
- Daily → uses 4D
- HTF MA Length (300): HMA period for trend
- Lower (150-250) = More responsive
- Higher (400-500) = Smoother, less whipsaw
- HTF Trend Following Exit: Exits when crossing HTF
- ON = Additional exit method
- OFF = Rely only on profit targets/stops
- HTF Trend Entry Filter: Only trade with HTF trend
- ON = Safer, fewer signals
- OFF = More aggressive, more signals
- Block Entries When Overextended: Prevents chasing
- ON = Avoids parabolic tops/bottoms
- OFF = Enter all breakouts regardless
═══════════════════════════════════════
💡 TRADING PHILOSOPHY & EXPECTATIONS
═══════════════════════════════════════
This system is built on one core principle:
"ACCEPT SMALL, FREQUENT LOSSES TO CAPTURE RARE, MASSIVE WINS"
What this means:
- You WILL lose 65%-75% of your trades
- Most losses will be small (1-2R)
- Some winners hit 80R+
- Over time, math works in your favour
Smart Money Concepts by WeloTradesThe "Smart Money Concepts by WeloTrades" indicator is designed to offer traders a comprehensive tool that integrates multiple advanced features to aid in market analysis. By combining order blocks, liquidity levels, fair value gaps, trendlines, and market structure analysis, the indicator provides a holistic approach to understanding market dynamics and making informed trading decisions.
Components and Their Integration:
Order Blocks and Breaker Blocks Detection
Functionality: Order blocks represent areas where significant buying or selling occurred, creating potential support or resistance zones. Breaker blocks signal potential reversals.
Integration: By detecting and visualizing these blocks, the indicator helps traders identify key levels where price might react, aiding in entry and exit decisions. The customizable settings allow traders to adjust the visibility and parameters to suit their specific trading strategy.
Liquidity Levels Analysis
Functionality: Liquidity levels indicate zones where significant price movements can occur due to the presence of large orders. These are areas where smart money might be executing trades.
Integration: By tracking these high-probability liquidity areas, traders can anticipate potential price movements. Customizable display limits and mitigation strategies ensure that the information is tailored to the trader’s needs, providing precise and actionable insights.
Fair Value Gaps (FVG)
Functionality: Fair value gaps highlight areas where there is an imbalance between buyers and sellers. These gaps often represent potential trading opportunities.
Integration: The ability to identify and analyze FVGs helps traders spot potential entries based on market inefficiencies. The touch and break detection functionalities provide further refinement, enhancing the precision of trading signals.
Trendlines
Functionality: Trendlines help in identifying the direction of the market and potential reversal points. The additional trendline adds a layer of confirmation for breaks or retests.
Integration: Automatically drawn trendlines assist traders in visualizing market trends and making decisions about potential entries and exits. The additional trendline for stronger confirmation reduces the risk of false signals, providing more reliable trading opportunities.
Market Structure Analysis
Functionality: Understanding market structure is crucial for identifying key support and resistance levels and overall market dynamics. This component displays internal, external, and composite market structures.
Integration: By automatically highlighting shifts in market structure, the indicator helps traders recognize important levels and potential changes in market direction. This analysis is critical for strategic planning and execution in trading.
Customizable Alerts
Functionality: Alerts ensure that traders do not miss significant market events, such as the formation or breach of order blocks, liquidity levels, and trendline interactions.
Integration: Customizable alerts enhance the user experience by providing timely notifications of key events. This feature ensures that traders can act quickly and efficiently, leveraging the insights provided by the indicator.
Interactive Visualization
Functionality: Customizable visual aspects of the indicator allow traders to tailor the display to their preferences and trading style.
Integration: This feature enhances user engagement and usability, making it easier for traders to interpret the data and make informed decisions. Personalization options like colors, styles, and display formats improve the overall effectiveness of the indicator.
How Components Work Together
Comprehensive Market Analysis
Each component of the indicator addresses a different aspect of market analysis. Order blocks and liquidity levels highlight potential support and resistance zones, while fair value gaps and trendlines provide additional context for potential entries and exits. Market structure analysis ties everything together by offering a broad view of market dynamics.
Synergistic Insights
The integration of multiple features allows for cross-validation of trading signals. For instance, an order block coinciding with a high-probability liquidity level and a fair value gap can provide a stronger signal than any of these features alone. This synergy enhances the reliability of the insights and trading signals generated by the indicator.
Enhanced Decision Making
By combining these advanced features into a single tool, traders are equipped with a powerful resource for making informed decisions. The customizable alerts and interactive visualization further support this by ensuring that traders can act quickly on the insights provided.
Order Blocks ( OB) & Breaker Blocks (BB) Visuals:
📝 OB Input Settings
📊 Timeframe #1
TF #1🕑: Enable or disable Timeframe 1.
What it is: A boolean input to toggle the use of the first timeframe.
What it does: Enables or disables Timeframe 1 for the OB settings.
How to use it: Check or uncheck the box to enable or disable.
📊 Timeframe 1 Selection
Timeframe #1🕑: Select the timeframe for Timeframe 1.
What it is: A dropdown to select the desired timeframe.
What it does: Sets the timeframe for Timeframe 1.
How to use it: Choose a timeframe from the dropdown list.
📊 Timeframe #2
TF #2🕑: Enable or disable Timeframe 2.
What it is: A boolean input to toggle the use of the second timeframe.
What it does: Enables or disables Timeframe 2 for the OB settings.
How to use it: Check or uncheck the box to enable or disable.
📊 Timeframe 2 Selection
Timeframe #2🕑: Select the timeframe for Timeframe 2.
What it is: A dropdown to select the desired timeframe.
What it does: Sets the timeframe for Timeframe 2.
How to use it: Choose a timeframe from the dropdown list.
Additional Info: Higher TF Chart & Lower TF Setting / Lower TF Chart & Higher TF Setting.
📏 Show OBs
OB (Length)📏: Toggle the display of Order Blocks.
What it is: A boolean input to enable or disable the display of Order Blocks.
What it does: Shows or hides Order Blocks based on the selected swing length.
How to use it: Check or uncheck the box to enable or disable.
📏 Swing Length Option
Swing Length Option: Select the swing length option.
What it is: A dropdown to choose between SHORT, MID, LONG, or CUSTOM.
What it does: Sets the length of swings for Order Blocks.
How to use it: Choose an option from the dropdown.
Additional Info: Default lengths are SHORT=10, MID=28, LONG=50.
🔧 Custom Swing Length
🔧custom: Specify a custom swing length.
What it is: An integer input for setting a custom swing length.
What it does: Overrides the default swing lengths if set to CUSTOM.
How to use it: Enter a custom integer value (only shown when CUSTOM is selected).
📛 Show BBs
BB (Method)📛: Toggle the display of Breaker Blocks.
What it is: A boolean input to enable or disable the display of Breaker Blocks.
What it does: Shows or hides Breaker Blocks.
How to use it: Check or uncheck the box to enable or disable.
📛 OB End Method
OB End Method: Select the method for determining the end of a Breaker Block.
What it is: A dropdown to choose between Wick and Close.
What it does: Sets the criteria for when a Breaker Block is considered mitigated.
How to use it: Choose an option from the dropdown.
Additional Info: Wicks: OB is mitigated when the price wicks through the OB Level. Close: OB is mitigated when the closing price is within the OB Level.
🔍 Max Bullish Zones
🔍Max Bullish: Set the maximum number of Bullish Order Blocks to display.
What it is: A dropdown to select the maximum number of Bullish Order Blocks.
What it does: Limits the number of Bullish Order Blocks shown on the chart.
How to use it: Choose a value from the dropdown (1-10).
🔍 Max Bearish Zones
🔍Max Bearish: Set the maximum number of Bearish Order Blocks to display.
What it is: A dropdown to select the maximum number of Bearish Order Blocks.
What it does: Limits the number of Bearish Order Blocks shown on the chart.
How to use it: Choose a value from the dropdown (1-10).
🟩 Bullish OB Color
Bullish OB Color: Set the color for Bullish Order Blocks.
What it is: A color picker to set the color of Bullish Order Blocks.
What it does: Changes the color of Bullish Order Blocks on the chart.
How to use it: Select a color from the color picker.
🟥 Bearish OB Color
Bearish OB Color: Set the color for Bearish Order Blocks.
What it is: A color picker to set the color of Bearish Order Blocks.
What it does: Changes the color of Bearish Order Blocks on the chart.
How to use it: Select a color from the color picker.
🔧 OB & BB Range
↔ OB & BB Range: Select the range option for OB and BB.
What it is: A dropdown to choose between RANGE and CUSTOM.
What it does: Sets how far the OB or BB should extend.
How to use it: Choose an option from the dropdown.
Additional Info: RANGE = Current price, CUSTOM = Adjustable Range.
🔧 Custom OB & BB Range
🔧Custom: Specify a custom range for OB and BB.
What it is: An integer input for setting a custom range.
What it does: Defines how far the OB or BB should go, based on a custom value.
How to use it: Enter a custom integer value (range: 1000-500000).
💬 Text Options
💬Text Options: Set text size and color for OB and BB.
What it is: A dropdown to select text size and a color picker to choose text color.
What it does: Changes the size and color of the text displayed for OB and BB.
How to use it: Select a size from the dropdown and a color from the color picker.
💬 Show Timeframe OB
Text: Toggle to display the timeframe of OB.
What it is: A boolean input to show or hide the timeframe text for OB.
What it does: Displays the timeframe information for Order Blocks on the chart.
How to use it: Check or uncheck the box to enable or disable.
💬 Show Volume
Volume: Toggle to display the volume of OB.
What it is: A boolean input to show or hide the volume information for Order Blocks.
What it does: Displays the volume information for Order Blocks on the chart.
How to use it: Check or uncheck the box to enable or disable.
Additional Info:
What it represents: The volume displayed represents the total trading volume that occurred during the formation of the Order Block. This can indicate the level of participation or interest in that price level.
How it's calculated: The volume is the sum of all traded volumes within the candles that form the Order Block.
What it means: Higher volume at an Order Block level may suggest stronger support or resistance. It shows the amount of trading activity and can be an indicator of the potential strength or validity of the Order Block.
Why it's shown: To give traders an idea of the market participation and to help assess the strength of the Order Block.
💬 Show Percentage
%: Toggle to display the percentage of OB.
What it is: A boolean input to show or hide the percentage information for Order Blocks.
What it does: Displays the percentage information for Order Blocks on the chart.
How to use it: Check or uncheck the box to enable or disable.
Additional Info:
What it represents: The percentage displayed usually represents the proportion of price movement relative to the Order Block.
How it's calculated: This can be the percentage move from the start to the end of the Order Block or the retracement level that price has reached relative to the Order Block's range.
What it means: It helps traders understand the extent of price movement within the Order Block and can indicate the significance of the price level.
Why it's shown: To provide a clearer understanding of the price dynamics and the importance of the Order Block within the overall price movement.
Additional Information
Volume Example: If an Order Block forms over three candles with volumes of 100, 150, and 200, the total volume displayed for that Order Block would be 450.
Percentage Example: If the price moves from 100 to 110 within an Order Block, and the total range of the Order Block is from 100 to 120, the percentage shown might be 50% (since the price has moved halfway through the Order Block's range).
Liquidity Levels visuals:
📊 Liquidity Levels Input Settings
📊 Current Timeframe
TF #1🕑: Enable or disable the current timeframe.
What it is: A boolean input to toggle the use of the current timeframe.
What it does: Enables or disables the display of liquidity levels for the current timeframe.
How to use it: Check or uncheck the box to enable or disable.
📊 Higher Timeframe
Higher Timeframe: Select the higher timeframe for liquidity levels.
What it is: A dropdown to select the desired higher timeframe.
What it does: Sets the higher timeframe for liquidity levels.
How to use it: Choose a timeframe from the dropdown list.
📏 Liquidity Length Option
📏Liquidity Length: Select the length for liquidity levels.
What it is: A dropdown to choose between SHORT, MID, LONG, or CUSTOM.
What it does: Sets the length of swings for liquidity levels.
How to use it: Choose an option from the dropdown.
Additional Info: Default lengths are SHORT=10, MID=28, LONG=50.
🔧 Custom Liquidity Length
🔧custom: Specify a custom length for liquidity levels.
What it is: An integer input for setting a custom swing length.
What it does: Overrides the default liquidity lengths if set to CUSTOM.
How to use it: Enter a custom integer value (only shown when CUSTOM is selected).
📛 Mitigation Method
📛Mitigation (Method): Select the method for determining the mitigation of liquidity levels.
What it is: A dropdown to choose between Close and Wick.
What it does: Sets the criteria for when a liquidity level is considered mitigated.
How to use it: Choose an option from the dropdown.
Additional Info:
Wick: Level is mitigated when the price wicks through the level.
Close: Level is mitigated when the closing price is within the level.
📛 Display Mitigated Levels
-: Select to display or hide mitigated levels.
What it is: A dropdown to choose between Remove and Show.
What it does: Displays or hides mitigated liquidity levels.
How to use it: Choose an option from the dropdown.
Additional Info:
Remove: Hide mitigated levels.
Show: Display mitigated levels.
🔍 Max Buy Side Liquidity
🔍Max Buy Side Liquidity: Set the maximum number of Buy Side Liquidity Levels to display.
What it is: An integer input to set the maximum number of Buy Side Liquidity Levels.
What it does: Limits the number of Buy Side Liquidity Levels shown on the chart.
How to use it: Enter a value between 0 and 50.
🟦 Buy Side Liquidity Color
Buy Side Liquidity Color: Set the color for Buy Side Liquidity Levels.
What it is: A color picker to set the color of Buy Side Liquidity Levels.
What it does: Changes the color of Buy Side Liquidity Levels on the chart.
How to use it: Select a color from the color picker.
Additional Info:
Tooltip: Set the maximum number of Buy Side Liquidity Levels to display. Default: 5, Min: 1, Max: 50.
If liquidity levels are not displayed as expected, try increasing the max count.
🔍 Max Sell Side Liquidity
🔍Max Sell Side Liquidity: Set the maximum number of Sell Side Liquidity Levels to display.
What it is: An integer input to set the maximum number of Sell Side Liquidity Levels.
What it does: Limits the number of Sell Side Liquidity Levels shown on the chart.
How to use it: Enter a value between 0 and 50.
🟥 Sell Side Liquidity Color
Sell Side Liquidity Color: Set the color for Sell Side Liquidity Levels.
What it is: A color picker to set the color of Sell Side Liquidity Levels.
What it does: Changes the color of Sell Side Liquidity Levels on the chart.
How to use it: Select a color from the color picker.
Additional Info:
Tooltip: Set the maximum number of Sell Side Liquidity Levels to display. Default: 5, Min: 1, Max: 50.
If liquidity levels are not displayed as expected, try increasing the max count.
✂ Box Style (Height)
✂ Box Style (↕): Set the box height style for liquidity levels.
What it is: A float input to set the height of the boxes.
What it does: Adjusts the height of the boxes displaying liquidity levels.
How to use it: Enter a value between -50 and 50.
Additional Info: Default value is -5.
📏 Box Length
b: Set the box length of liquidity levels.
What it is: An integer input to set the length of the boxes.
What it does: Adjusts the length of the boxes displaying liquidity levels.
How to use it: Enter a value between 0 and 500.
Additional Info: Default value is 20.
⏭ Extend Liquidity Levels
Extend ⏭: Toggle to extend liquidity levels beyond the current range.
What it is: A boolean input to enable or disable the extension of liquidity levels.
What it does: Extends liquidity levels beyond their default range.
How to use it: Check or uncheck the box to enable or disable.
Additional Info: Extend liquidity levels beyond the current range.
💬 Text Options
💬 Text Options: Set text size and color for liquidity levels.
What it is: A dropdown to select text size and a color picker to choose text color.
What it does: Changes the size and color of the text displayed for liquidity levels.
How to use it: Select a size from the dropdown and a color from the color picker.
💬 Show Text
Text: Toggle to display text for liquidity levels.
What it is: A boolean input to show or hide the text for liquidity levels.
What it does: Displays the text information for liquidity levels on the chart.
How to use it: Check or uncheck the box to enable or disable.
💬 Show Volume
Volume: Toggle to display the volume of liquidity levels.
What it is: A boolean input to show or hide the volume information for liquidity levels.
What it does: Displays the volume information for liquidity levels on the chart.
How to use it: Check or uncheck the box to enable or disable.
Additional Info:
What it represents: The volume displayed represents the total trading volume that occurred during the formation of the liquidity level. This can indicate the level of participation or interest in that price level.
How it's calculated: The volume is the sum of all traded volumes within the candles that form the liquidity level.
What it means: Higher volume at a liquidity level may suggest stronger support or resistance. It shows the amount of trading activity and can be an indicator of the potential strength or validity of the liquidity level.
Why it's shown: To give traders an idea of the market participation and to help assess the strength of the liquidity level.
💬 Show Percentage
%: Toggle to display the percentage of liquidity levels.
What it is: A boolean input to show or hide the percentage information for liquidity levels.
What it does: Displays the percentage information for liquidity levels on the chart.
How to use it: Check or uncheck the box to enable or disable.
Additional Info:
What it represents: The percentage displayed usually represents the proportion of price movement relative to the liquidity level.
How it's calculated: This can be the percentage move from the start to the end of the liquidity level or the retracement level that price has reached relative to the liquidity level's range.
What it means: It helps traders understand the extent of price movement within the liquidity level and can indicate the significance of the price level.
Why it's shown: To provide a clearer understanding of the price dynamics and the importance of the liquidity level within the overall price movement.
Fair Value Gaps visuals:
📊 Fair Value Gaps Input Settings
📊 Show FVG
TF #1🕑: Enable or disable Fair Value Gaps for Timeframe 1.
What it is: A boolean input to toggle the display of Fair Value Gaps.
What it does: Shows or hides Fair Value Gaps on the chart.
How to use it: Check or uncheck the box to enable or disable.
📊 Select Timeframe
Timeframe: Select the timeframe for Fair Value Gaps.
What it is: A dropdown to select the desired timeframe.
What it does: Sets the timeframe for Fair Value Gaps.
How to use it: Choose a timeframe from the dropdown list.
Additional Info: Higher TF Chart & Lower TF Setting or Lower TF Chart & Higher TF Setting.
📛 FVG Break Method
📛FVG Break (Method): Select the method for determining when an FVG is mitigated.
What it is: A dropdown to choose between Touch, Wicks, Close, or Average.
What it does: Sets the criteria for when a Fair Value Gap is considered mitigated.
How to use it: Choose an option from the dropdown.
Additional Info:
Touch: FVG is mitigated when the price touches the gap.
Wicks: FVG is mitigated when the price wicks through the gap.
Close: FVG is mitigated when the closing price is within the gap.
Average: FVG is mitigated when the average price (average of high and low) is within the gap.
📛 Show Mitigated FVG
show: Toggle to display mitigated FVGs.
What it is: A boolean input to show or hide mitigated Fair Value Gaps.
What it does: Displays or hides mitigated Fair Value Gaps.
How to use it: Check or uncheck the box to enable or disable.
📛 Fill FVG
Fill: Toggle to fill Fair Value Gaps.
What it is: A boolean input to fill the Fair Value Gaps with color.
What it does: Adds a color fill to the Fair Value Gaps.
How to use it: Check or uncheck the box to enable or disable.
📛 Shade FVG
Shade: Toggle to shade Fair Value Gaps.
What it is: A boolean input to shade the Fair Value Gaps.
What it does: Adds a shade effect to the Fair Value Gaps.
How to use it: Check or uncheck the box to enable or disable.
Additional Info: Select the method to break FVGs and toggle the visibility of FVG Breaks (fill FVG and/or shade FVG).
🔍 Max Bullish FVG
🔍Max Bullish FVG: Set the maximum number of Bullish Fair Value Gaps to display.
What it is: An integer input to set the maximum number of Bullish Fair Value Gaps.
What it does: Limits the number of Bullish Fair Value Gaps shown on the chart.
How to use it: Enter a value between 0 and 50.
🔍 Max Bearish FVG
🔍Max Bearish FVG: Set the maximum number of Bearish Fair Value Gaps to display.
What it is: An integer input to set the maximum number of Bearish Fair Value Gaps.
What it does: Limits the number of Bearish Fair Value Gaps shown on the chart.
How to use it: Enter a value between 0 and 50.
🟥 Bearish FVG Color
Bearish FVG Color: Set the color for Bearish Fair Value Gaps.
What it is: A color picker to set the color of Bearish Fair Value Gaps.
What it does: Changes the color of Bearish Fair Value Gaps on the chart.
How to use it: Select a color from the color picker.
Additional Info:
Tooltip: Set the maximum number of Bearish Fair Value Gaps to display. Default: 5, Min: 1, Max: 50.
If Fair Value Gaps are not displayed as expected, try increasing the max count.
🟦 Bullish FVG Color
Bullish FVG Color: Set the color for Bullish Fair Value Gaps.
What it is: A color picker to set the color of Bullish Fair Value Gaps.
What it does: Changes the color of Bullish Fair Value Gaps on the chart.
How to use it: Select a color from the color picker.
Additional Info:
Tooltip: Set the maximum number of Bullish Fair Value Gaps to display. Default: 5, Min: 1, Max: 50.
If Fair Value Gaps are not displayed as expected, try increasing the max count.
📏 FVG Range
↔ FVG Range: Set the range for Fair Value Gaps.
What it is: An integer input to set the range of the Fair Value Gaps.
What it does: Adjusts the range of the Fair Value Gaps displayed.
How to use it: Enter a value between 0 and 100.
Additional Info: Adjustable length only works when both RANGE & EXTEND display OFF. Range=current price, Extend=Full Range.
⏭ Extend FVG
Extend⏭: Toggle to extend Fair Value Gaps beyond the current range.
What it is: A boolean input to enable or disable the extension of Fair Value Gaps.
What it does: Extends Fair Value Gaps beyond their default range.
How to use it: Check or uncheck the box to enable or disable.
⏯ FVG Range
Range⏯: Toggle the range of Fair Value Gaps.
What it is: A boolean input to enable or disable the range display for Fair Value Gaps.
What it does: Sets the range of Fair Value Gaps displayed.
How to use it: Check or uncheck the box to enable or disable.
↕ Max Width
↕ Max Width: Set the maximum width of Fair Value Gaps.
What it is: A float input to set the maximum width of Fair Value Gaps.
What it does: Limits the width of Fair Value Gaps as a percentage of the price range.
How to use it: Enter a value between 0 and 5.0.
Additional Info: FVGs wider than this value will be ignored.
♻ Filter FVG
Filter FVG ♻: Toggle to filter out small Fair Value Gaps.
What it is: A boolean input to filter out small Fair Value Gaps.
What it does: Ignores Fair Value Gaps smaller than the specified max width.
How to use it: Check or uncheck the box to enable or disable.
➖ Mid Line Style
➖Mid Line Style: Select the style of the mid line for Fair Value Gaps.
What it is: A dropdown to choose between Solid, Dashed, or Dotted.
What it does: Sets the style of the mid line within Fair Value Gaps.
How to use it: Choose an option from the dropdown.
🎨 Mid Line Color
Mid Line Color: Set the color for the mid line within Fair Value Gaps.
What it is: A color picker to set the color of the mid line.
What it does: Changes the color of the mid line within Fair Value Gaps.
How to use it: Select a color from the color picker.
Additional Information
Mitigation Methods: Each method (Touch, Wicks, Close, Average) provides different criteria for when a Fair Value Gap is considered mitigated, helping traders to understand the dynamics of price movements within gaps.
Volume and Percentage: Displaying volume and percentage information for Fair Value Gaps helps traders gauge the strength and significance of these gaps in relation to trading activity and price movements.
Trendlines visuals:
📊 Trendlines Input Settings
📊 Show Trendlines
Trendlines & Trendlines Difference(%) ↕: Enable or disable trendlines and set the percentage difference from the first trendline.
What it is: A boolean input to toggle the display of trendlines.
What it does: Shows or hides trendlines on the chart and allows setting a percentage difference from the first trendline.
How to use it: Check or uncheck the box to enable or disable.
Additional Info: The percentage difference determines the distance of the second trendline from the first one.
📏 Trendline Length Option
📏Trendline Length: Select the length for trendlines.
What it is: A dropdown to choose between SHORT, MID, LONG, or CUSTOM.
What it does: Sets the length of trendlines.
How to use it: Choose an option from the dropdown.
Additional Info: Default lengths are SHORT=50, MID=100, LONG=200.
🔧 Custom Trendline Length
🔧custom: Specify a custom length for trendlines.
What it is: An integer input for setting a custom trendline length.
What it does: Overrides the default trendline lengths if set to CUSTOM.
How to use it: Enter a custom integer value (only shown when CUSTOM is selected).
🔍 Max Bearish Trendlines
🔍Max Trendlines Bearish: Set the maximum number of bearish trendlines to display.
What it is: A dropdown to select the maximum number of bearish trendlines.
What it does: Limits the number of bearish trendlines shown on the chart.
How to use it: Choose a value from the dropdown (2-20).
🟩 Bearish Trendline Color
Bearish Trendline Color: Set the color for bearish trendlines.
What it is: A color picker to set the color of bearish trendlines.
What it does: Changes the color of bearish trendlines on the chart.
How to use it: Select a color from the color picker.
Additional Info: Adjust to control how many bearish trendlines are displayed.
🔍 Max Bullish Trendlines
🔍Max Trendlines Bullish: Set the maximum number of bullish trendlines to display.
What it is: A dropdown to select the maximum number of bullish trendlines.
What it does: Limits the number of bullish trendlines shown on the chart.
How to use it: Choose a value from the dropdown (2-20).
🟥 Bullish Trendline Color
Bullish Trendline Color: Set the color for bullish trendlines.
What it is: A color picker to set the color of bullish trendlines.
What it does: Changes the color of bullish trendlines on the chart.
How to use it: Select a color from the color picker.
Additional Info: Adjust to control how many bullish trendlines are displayed.
📐 Degrees Text
📐Degrees ° (💬 Size): Enable or disable degrees text and set its size and color.
What it is: A boolean input to show or hide the degrees text for trendlines.
What it does: Displays the degrees text for trendlines.
How to use it: Check or uncheck the box to enable or disable.
📏 Text Size for Degrees
Text Size: Set the text size for degrees on trendlines.
What it is: A dropdown to select the size of the degrees text.
What it does: Changes the size of the degrees text displayed for trendlines.
How to use it: Choose a size from the dropdown (XS, S, M, L, XL).
🎨 Degrees Text Color
Degrees Text Color: Set the color for the degrees text on trendlines.
What it is: A color picker to set the color of the degrees text.
What it does: Changes the color of the degrees text on the chart.
How to use it: Select a color from the color picker.
♻ Filter Degrees
♻ Filter Degrees °: Enable or disable angle filtering and set the angle range.
What it is: A boolean input to filter trendlines by their angle.
What it does: Shows only trendlines within a specified angle range.
How to use it: Check or uncheck the box to enable or disable.
Additional Info: Angles outside this range will be filtered out.
🔢 Angle Range
Angle Range: Set the angle range for filtering trendlines.
What it is: Two float inputs to set the minimum and maximum angle for trendlines.
What it does: Defines the range of angles for which trendlines will be shown.
How to use it: Enter values for the minimum and maximum angles.
➖ Line Style
➖Style #1 & #2: Select the style of the primary and secondary trendlines.
What it is: Two dropdowns to choose between Solid, Dashed, or Dotted for the trendlines.
What it does: Sets the style of the primary and secondary trendlines.
How to use it: Choose a style from each dropdown.
📏 Line Thickness
: Set the thickness for the trendlines.
What it is: An integer input to set the thickness of the trendlines.
What it does: Adjusts the thickness of the trendlines displayed on the chart.
How to use it: Enter a value between 1 and 5.
Additional Information
Trendline Percentage Difference: Setting a percentage difference helps in analyzing the relative position and angle of trendlines.
Filtering by Angle: This feature allows focusing on trendlines within a specific angle range, enhancing the clarity of trend analysis.
BOS & CHOCH Market Structure visuals:
📊 BOS & CHOCH Market Structure Input Settings
📏 Market Structure Length Option
📏Market Structure: Select the market structure length option.
What it is: A dropdown to choose between INTERNAL, EXTERNAL, ALL, CUSTOM, or NONE.
What it does: Sets the type of market structure to be displayed.
How to use it: Choose an option from the dropdown.
Additional Info:
INTERNAL: Only internal structure.
EXTERNAL: Only external structure.
ALL: Both internal and external structures.
CUSTOM: Custom lengths.
NONE: No structure.
🔧 Custom Internal Length
🔧Custom Internal: Specify a custom length for internal market structure.
What it is: An integer input for setting a custom internal length.
What it does: Defines the length of internal market structures if CUSTOM is selected.
How to use it: Enter a custom integer value (only shown when CUSTOM is selected).
💬 Internal Label Size
💬Internal Label Size: Set the label size for internal market structures.
What it is: A dropdown to select the size of the labels.
What it does: Changes the size of the labels for internal market structures.
How to use it: Choose a size from the dropdown (XS, S, M, L, XL).
🟩 Internal Bullish Color
Internal Bullish Color: Set the color for bullish internal market structures.
What it is: A color picker to set the color of bullish internal market structures.
What it does: Changes the color of bullish internal market structures on the chart.
How to use it: Select a color from the color picker.
🟥 Internal Bearish Color
Internal Bearish Color: Set the color for bearish internal market structures.
What it is: A color picker to set the color of bearish internal market structures.
What it does: Changes the color of bearish internal market structures on the chart.
How to use it: Select a color from the color picker.
🔧 Custom External Length
🔧Custom External: Specify a custom length for external market structure.
What it is: An integer input for setting a custom external length.
What it does: Defines the length of external market structures if CUSTOM is selected.
How to use it: Enter a custom integer value (only shown when CUSTOM is selected).
💬 External Label Size
💬External Label Size: Set the label size for external market structures.
What it is: A dropdown to select the size of the labels.
What it does: Changes the size of the labels for external market structures.
How to use it: Choose a size from the dropdown (XS, S, M, L, XL).
🟩 External Bullish Color
External Bullish Color: Set the color for bullish external market structures.
What it is: A color picker to set the color of bullish external market structures.
What it does: Changes the color of bullish external market structures on the chart.
How to use it: Select a color from the color picker.
🟥 External Bearish Color
External Bearish Color: Set the color for bearish external market structures.
What it is: A color picker to set the color of bearish external market structures.
What it does: Changes the color of bearish external market structures on the chart.
How to use it: Select a color from the color picker.
📐 Show Equal Highs and Lows
EQL & EQH📐: Toggle visibility for equal highs and lows.
What it is: A boolean input to show or hide equal highs and lows.
What it does: Displays or hides equal highs and lows on the chart.
How to use it: Check or uncheck the box to enable or disable.
📏 Equal Highs and Lows Threshold
Equal Highs and Lows Threshold: Set the threshold for equal highs and lows.
What it is: A float input to set the threshold for equal highs and lows.
What it does: Defines the range within which highs and lows are considered equal.
How to use it: Enter a value between 0 and 10.
💬 Label Size for Equal Highs and Lows
💬Label Size for Equal Highs and Lows: Set the label size for equal highs and lows.
What it is: A dropdown to select the size of the labels.
What it does: Changes the size of the labels for equal highs and lows.
How to use it: Choose a size from the dropdown (XS, S, M, L, XL).
🟩 Bullish Color for Equal Highs and Lows
Bullish Color for Equal Highs and Lows: Set the color for bullish equal highs and lows.
What it is: A color picker to set the color of bullish equal highs and lows.
What it does: Changes the color of bullish equal highs and lows on the chart.
How to use it: Select a color from the color picker.
🟥 Bearish Color for Equal Highs and Lows
Bearish Color for Equal Highs and Lows: Set the color for bearish equal highs and lows.
What it is: A color picker to set the color of bearish equal highs and lows.
What it does: Changes the color of bearish equal highs and lows on the chart.
How to use it: Select a color from the color picker.
📏 Show Swing Points
Swing Points📏: Toggle visibility for swing points.
What it is: A boolean input to show or hide swing points.
What it does: Displays or hides swing points on the chart.
How to use it: Check or uncheck the box to enable or disable.
📏 Swing Points Length Option
Swing Points Length Option: Select the length for swing points.
What it is: A dropdown to choose between SHORT, MID, LONG, or CUSTOM.
What it does: Sets the length of swing points.
How to use it: Choose an option from the dropdown.
Additional Info: Default lengths are SHORT=10, MID=28, LONG=50.
💬 Swing Points Label Size
💬Swing Points Label Size: Set the label size for swing points.
What it is: A dropdown to select the size of the labels.
What it does: Changes the size of the labels for swing points.
How to use it: Choose a size from the dropdown (XS, S, M, L, XL).
🎨 Swing Points Color
Swing Points Color: Set the color for swing points.
What it is: A color picker to set the color of swing points.
What it does: Changes the color of swing points on the chart.
How to use it: Select a color from the color picker.
🔧 Custom Swing Points Length
🔧Custom Swings: Specify a custom length for swing points.
What it is: An integer input for setting a custom length for swing points.
What it does: Defines the length of swing points if CUSTOM is selected.
How to use it: Enter a custom integer value (only shown when CUSTOM is selected).
Additional Information
Market Structure Types: Understanding internal and external structures helps in analyzing different market behaviors.
Equal Highs and Lows: This feature identifies areas where price action is balanced, which can be significant for trading strategies.
Swing Points: Highlighting swing points aids in recognizing significant market reversals or continuations.
Benefits
Enhance your trading strategy by visualizing smart money's influence on price movements.
Make informed decisions with real-time data on significant market structures.
Reduce manual analysis with automated detection of key trading signals.
Ideal For
Traders looking for an edge in forex, equities, and cryptocurrency markets by understanding the underlying forces driving market dynamics.
Acknowledgements
Special thanks to these amazing creators for inspiration and their creations:
I want to thank these amazing creators for creating there amazing indicators , that inspired me and also gave me a head start by making this indicator! Without their amazing indicators it wouldn't be possible!
Flux Charts: Volumized Order Blocks
LuxAlgo: Trend Lines
UAlgo: Fair Value Gaps (FVG)
By Leviathan: Market Structure
Sonarlab: Liquidity Levels
Note
Remember to always backtest the indicator first before integrating it into your strategy! For any questions about the indicator, please feel free to ask for assistance.






















