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.
Cari skrip untuk "adx"
NIFTY Weekly Option Seller DirectionalHereโs a straight description you can paste into the TradingView โDescriptionโ box and tweak if needed:
---
### NIFTY Weekly Option Seller โ Regime + Score + Management (Single TF)
This indicator is built for **weekly option sellers** (primarily NIFTY) who want a **structured regime + scoring framework** to decide:
* Whether to trade **Iron Condor (IC)**, **Put Credit Spread (PCS)** or **Call Credit Spread (CCS)**
* How strong that regime is on the current timeframe (score 0โ5)
* When to **DEFEND** existing positions and when to **HARVEST** profits
> **Note:** This is a **single timeframe** tool. The original system uses it on **4H and 1D separately**, then combines scores manually (e.g., using `min(4H, 1D)` for conviction and lot sizing).
---
## Core logic
The script classifies the market into 3 regimes:
* **IC (Iron Condor)** โ range/mean-reversion conditions
* **PCS (Put Credit Spread)** โ bullish/trend-up conditions
* **CCS (Call Credit Spread)** โ bearish/trend-down conditions
For each regime, it builds a **0โ5 score** using:
* **EMA stack (8/13/34)** โ trend structure
* **ADX (custom DMI-based)** โ trend strength vs range
* **Previous-day CPR** โ in CPR vs break above/below
* **VWAP (session)** โ near/far value
* **Camarilla H3/L3** โ for IC context
* **RSI (14)** โ used as a **brake**, not a primary signal
* **Daily trend / Daily ADX** โ used as **hard gates**, not double-counted as extra points
Then:
* Scores for PCS / CCS / IC are **cross-penalised** (they pull each other down if conflicting)
* Final scores are **smoothed** (current + previous bar) to avoid jumpy signals
The **background colour** shows the current regime and conviction:
* Blue = IC
* Green = PCS
* Red = CCS
* Stronger tint = higher regime score
---
## Scoring details (per timeframe)
**PCS (uptrend, bullish credit spreads)**
* +2 if EMA(8) > EMA(13) > EMA(34)
* +1 if ADX > ADX_TREND
* +1 if close > CPR High
* +1 if close > VWAP
* RSI brake:
* If RSI < 50 โ PCS capped at 2
* If RSI > 75 โ PCS capped at 3
* Daily gating:
* If daily EMA stack is **not** uptrend โ PCS capped at 2
**CCS (downtrend, bearish credit spreads)**
* +2 if EMA(8) < EMA(13) < EMA(34)
* +1 if ADX > ADX_TREND
* +1 if close < CPR Low
* +1 if close < VWAP
* RSI brake:
* If RSI > 50 โ CCS capped at 2
* If RSI < 25 โ CCS capped at 3
* Daily gating:
* If daily EMA stack is **not** downtrend โ CCS capped at 2
**IC (range / mean-reversion)**
* +2 if ADX < ADX_RANGE (low trend)
* +1 if close inside CPR
* +1 if near VWAP
* +0.5 if inside Camarilla H3โL3
* +1 if daily ADX < ADX_RANGE (daily also range-like)
* +0.5 if RSI between 45 and 55 (classic balance zone)
* Daily gating:
* If daily ADX โฅ ADX_TREND โ IC capped at 2 (no โstrong ICโ in strong trends)
**Cross-penalty & smoothing**
* Each regimeโs raw score is reduced by **0.5 ร max(other two scores)**
* Final IC / PCS / CCS scores are then **smoothed** with previous bar
* Scores are always clipped to ** **
---
## Regime selection
* If one regime has the highest score โ that regime is selected.
* If there is a tie or close scores:
* When ADX is high, trend regimes (PCS/CCS) are preferred in the direction of the EMA stack.
* When ADX is low, IC is preferred.
The selected regimeโs score is used for:
* Background colour intensity
* Minimum score gate for alerts
* Display in the info panel
---
## DEFEND / HARVEST / REGIME alerts
The script also defines **management signals** using ATR-based buffers and Camarilla breaks:
* **DEFEND**
* Price moving too close to short strikes (PCS/CCS/IC) relative to ATR, or
* Trend breaks through Camarilla with ADX strong
โ Suggests rolling away / widening / converting to reduce risk.
* **HARVEST**
* Price has moved far enough from your short strikes (in ATR multiples) and market is still range-compatible
โ Suggests booking profits / rolling closer / reducing risk.
* **REGIME CHANGED**
* Regime flips (IC โ PCS/CCS) with cooldown and minimum score gate
โ Suggests switching playbook (range vs trend) for new entries.
Each of these has a plotshape label plus an `alertcondition()` for TradingView alerts.
---
## UI / Panel
The **top-right panel** (optional) shows:
* Strategy + final regime score (IC / PCS / CCS, x/5)
* ADX / RSI values
* CPR status (Narrow / Normal / Wide + %)
* EMA Stack (Up / Down / Mixed) and EMA tightness
* VWAP proximity (Near / Away)
* Final **IC / PCS / CCS** scores (for this timeframe)
* H3/L3, H4/L4, CPR Low/High and VWAP levels (rounded)
These values are meant to be **read quickly at the decision time** (e.g. near the close of the 4H bar or daily bar).
---
## Intended workflow
1. Run the script on **4H** and **1D** charts separately.
2. For each timeframe, read the panelโs **IC / PCS / CCS scores** and regime.
3. Decide:
* Final regime (IC vs PCS vs CCS)
* Combined score (e.g. `AlignScore = min(Score_4H, Score_1D)`)
4. Map that combined score to **your own lot-size buckets** and trade rules.
5. During the life of the position, use **DEFEND / HARVEST / REGIME** alerts to adjust.
The script does **not** auto-calculate lot size or P&L. It focuses on giving a structured, consistent **market regime + strength + levels + management** layer for weekly option selling.
---
## Disclaimer
This is a discretionary **decision-support tool**, not a guarantee of profit or a replacement for risk management.
No performance is implied or promised. Always size positions and manage risk according to your own capital, rules, and regulations.
Apex Liquidity & Trend Architect [Smart]Trading charts often suffer from two problems: Noise (too many false signals in chopping markets) and Clutter (too many old lines and zones obscuring price).
ALTA solves both. It is a streamlined, institutional-grade trend system that uses ADX filtering to silence weak signals and Time-Decay logic to automatically clean up old liquidity zones. It respects your screen real estate, showing you only what matters, right now.
1. The "Smart" Engine
Unlike standard trend indicators that repaint or clutter the screen, ALTA introduces three key innovations:
A. Hull Moving Average (HMA) Baseline
We have upgraded the core engine to use the Hull Moving Average. HMA is significantly faster and smoother than standard EMAs or SMAs, reducing lag on entry signals.
Note: You can switch back to WMA or SMA in the settings if you prefer a slower pace.
B. ADX Momentum Filtering
Quality over Quantity: The script monitors the ADX (Average Directional Index). If the trend flips, but the ADX is below 20 (weak trend), the signal is blocked.
This prevents you from getting chopped out during sideways accumulation phases. You only get a "BUY" or "SELL" label when there is actual momentum behind the move.
C. Adaptive Gradient Coloring
The candles do not just turn Green or Red. They change intensity based on trend strength.
Bright/Vivid Candles: Strong Momentum (High ADX).
Dark/Dull Candles: Weak Momentum (Low ADX).
Visual Cue: If the candles are fading into the background, stay out of the market.
2. Self-Cleaning Liquidity Zones
Most support/resistance indicators leave old boxes on the chart forever. ALTA uses a Decay Protocol.
Volume Validation: Supply/Demand zones are only drawn if the pivot point had volume significantly higher than average (configurable).
Mitigation: If price wicks through a zone, it is deleted instantly.
Time Decay (New): If a zone is not hit within a set number of bars (Default: 100), it automatically deletes itself. This keeps your chart focused on fresh levels only.
3. The Minimalist HUD
A simplified dashboard in the corner of your screen provides an instant health check of the market:
ALTA Label: System Status.
Trend: BULL / BEAR / WAIT (Squeeze).
Power: WEAK / SOLID / STRONG (Based on ADX).
4. How to Trade (The Strategy)
The High-Probability Buy
Trend: Ribbon is Green.
Candles: Candles are Bright Green (indicating High ADX Strength).
Signal: A "BUY" label appears (confirmed by ADX filter).
Liquidity: Price is bouncing off a valid Demand Zone.
The High-Probability Sell
Trend: Ribbon is Red.
Candles: Candles are Bright Red (indicating High ADX Strength).
Signal: A "SELL" label appears.
Liquidity: Price is rejecting off a valid Supply Zone.
When to STAY OUT
The Squeeze: If the ribbon turns Grey/White, volatility is compressing. Wait for the breakout.
The Fade: If the candles are dark/translucent, momentum is dying. Take profits or wait for a fresh impulse.
5. Settings & Customization
Basis Type: Switch between HMA (Fast), WMA (Standard), or SMA (Slow).
Signal Quality Filter: Toggle the ADX filter on/off.
Zone Life: How many bars should a Supply/Demand zone survive before decaying?
Tooltips: Every single setting in this script includes a descriptive tooltip. Hover over the "i" icon in the settings menu for detailed explanations of every feature.
Disclaimer
This indicator is for educational purposes only. Past performance (even with smart filtering) does not guarantee future results. Always manage your risk.
Dynamic Timeframe Trend AnalyzerPurpose and Core Logic
This indicator automatically adjusts its calculations based on the current chartโs timeframe, allowing traders to analyze trends, momentum, and mean reversion opportunities without manually changing indicator settings for each interval. It detects potential long or short setups by combining several techniques:
Dynamic Timeframe Factor
The script compares the current timeframe to a base (e.g., 5 minutes) and calculates a โfactorโ to scale certain parameters, such as EMA lengths or ATR settings. This reduces the need to reconfigure indicators when switching timeframes.
Regime Detection
It uses ADX (Average Directional Index) to classify the market as strongly trending, moderately trending, choppy, or in a potential mean-reversion phase.
RSI (Relative Strength Index) is also monitored for extreme levels (e.g., overbought/oversold) to detect potential reversal zones.
Volume is compared to a moving average to confirm or refute volatility conditions.
Trend & Mean Reversion Signals
EMA Alignment (8/21/55) helps identify bullish or bearish phases (strong bull if all EMAs align upward, strong bear if aligned downward).
For mean reversion opportunities, the script checks if ADX is sufficiently low (indicating weak or no trend) while price and RSI are at extreme levelsโsuggesting a snapback or countertrend move may occur.
Dynamic Stop Loss & Take Profit
Uses ATR (Average True Range) to set initial stop-loss (SL) and take-profit (TP) levels, then adjusts these levels further with โregime multipliersโ based on whether the market is in a high-volatility trend or a quieter mean-reversion environment.
This approach aims to place stops and targets in a more adaptive way, reflecting current market conditions rather than a one-size-fits-all approach.
Visual Aids
Color-coded chart backgrounds (e.g., greenish for bullish trend, red for bearish, yellow/orange for mean reversion).
Triangles to show recent bullish/bearish signals.
A status table in the top-right corner (optional) displaying key metrics like ADX, RSI, dynamic thresholds, current SL/TP levels, and whether a stop loss has been hit.
How It Works Internally
ADX & Dynamic Thresholds:
A moving average (adx_mean) and standard deviation (adx_std) of the ADX are calculated over a lookback period to define โstrongโ vs. โweakโ ADX thresholds.
This allows the script to adapt to changing volatility and trend strength in different markets or timeframes.
Mean Reversion Criteria:
The indicator checks if price deviates significantly from its own moving average, alongside RSI extremes. If ADX suggests no strong directional push (i.e., the market is โquietโ), it may classify conditions as mean-reverting.
Regime Multipliers:
Once the script identifies the market regime (e.g., strong uptrend, choppy, mean reversion), it applies different multipliers to the user-defined base values for stop-loss and take-profit. For instance, strong trending conditions might allow for wider stops to handle volatility, while mean reversion signals use tighter exits to capture quick reversals.
How to Use It
Timeframe Agnostic
Simply apply it to any timeframe (from 1-minute up to daily or weekly). The โDynamic Timeframe Factorโ will scale the indicator parameters automatically.
Look for Buy/Sell Triangles
When the script detects a valid bullish trend shift or a mean-reversion long setup, it plots a green triangle under the price bar. Conversely, it plots a red triangle above the price bar for bearish or mean-reversion short setups.
Check the Status Table
The table in the top-right corner summarizes the indicatorโs current readings: ADX, RSI, volume trends, and the market regime classification.
The table also shows if a stop loss has been hit (SL Hit) and displays recommended SL/TP levels if a signal is active.
Stop Loss & Take Profit
The script plots lines for SL and TP on your chart after a new signal. These lines are automatically adjusted based on ATR, volume conditions, and ADX-derived multipliers.
Mean Reversion vs. Trend-Following
If you see a โMean Revโ state in the table or the background turning yellow/orange, it suggests potential countertrend trades. Conversely, โSTRONG BULLโ or โSTRONG BEARโ states favor momentum-based entries in the prevailing direction.
Originality & Benefits
Adaptive to Timeframe: Many indicators require reconfiguration when switching from short to long timeframes. This script automates that process using the โtimeframe factorโ logic.
Regime-Based SL/TP: Instead of fixed risk parameters, the script dynamically tunes stop and target levels depending on whether the market is trending or reverting.
Comprehensive Market View: It combines multiple factorsโADX, RSI, volume, moving averages, and volatility measurementsโinto a single, integrated framework that categorizes the market regime in real time.
Best Practices & Notes
Timeframes: It typically performs well on intraday timeframes (5m, 15m, 1H) but can also be used for swing trading on 4H or Daily charts.
Settings: The defaults are a good starting point, but you can adjust the base ATR multiplier or ADX lookbacks if you prefer a different balance between sensitivity and stability.
Risk Management: This indicator is not a guarantee of any specific results. Always use proper risk management (position sizing, stop-losses, and diversified strategies).
Alert Conditions: Built-in alert conditions can notify you when a new long or short signal appears, or when a stop loss is triggered.
Trend Type Indicator by BobRivera990Usage:
The purpose of this indicator is to programmatically determine the type of price trend using technical analysis tools.
You can do a quick check on the assetโs higher and lower time frames. For example, if you are trading on an H1 chart, you can check the m5 chart to ensure that the trend is in the same direction and similarly check the H4 chart to ensure that the higher time frame price is also moving in the same direction.
If multiple time frame charts confirm a similar trend, then it is considered a very strong trend and ideal for Trend trading.
Remarks:
By default, the last status is related to 8 periods before the latest closing price.
Related definitions:
The three basic types of trends are up, down, and sideways.
1. Uptrend
An uptrend describes the price movement of a financial asset when the overall direction is upward. The uptrend is composed of higher swing lows and higher swing highs.
Some market participants ("long" trend traders) only choose to trade during uptrends.
2. Downtrend
A downtrend refers to the price action of a security that moves lower in price as it fluctuates over time.
The downtrend is composed of lower swing lows and lower swing highs.
3. Sideways
A sideways trend is the horizontal price movement that occurs when the forces of supply and demand are nearly equal. This typically occurs during a period of consolidation before the price continues a prior trend or reverses into a new trend.
How it works:
Step 1: Sideways Trend Detection
In this step we want to distinguish the sideways trend from uptrend and downtrend. For this purpose, we use two common technical analysis tools: ATR and ADX
1. Average True Range (ATR)
The average true range (ATR) is a technical analysis indicator that measures market volatility.
We also use a 20-period moving average of the ATR.
When the ATR is below the average of its last 20-periods, it means that the rate of price volatility has decreased and we conclude that the current trend is sideways
2. Average Directional Index (ADX)
The average directional index (ADX) is a technical analysis indicator used by some traders to determine the strength of a trend.
The trend has strength when ADX is above 25.
So when the ADX is less than or equal to 25, there is no strong trend, and we conclude that the current type of trend is sideways.
Step 2: Detect uptrend from downtrend
If it turns out that the current price trend is not sideways, then it is either uptrend or downtrend.
For this purpose, we use plus and minus directional Indicators (+ DI & -DI).
A general interpretation would be that during a strong trend, when +DI is higher than -DI, it is an uptrend. When -DI is higher than +DI, it is a downtrend.
Parameters:
"Use ATR โฆ" ________________________// Use Average True Range (ATR) to detect Sideways Movements
"ATR Length"_______________________ // length of the Average True Range (ATR) used to detect Sideways Movements
"ATR Moving Average Type" ___________// Type of the moving average of the ATR used to detect Sideways Movements
"ATR MA Length" ____________________// length of the moving average of the ATR used to detect Sideways Movements
"Use ADX ..."_______________________ // Use Average Directional Index (ADX) to detect Sideways Movements
"ADX Smoothingโ____________________// length of the Average Directional Index (ADX) used to detect Sideways Movements
"DI Length"_________________________// length of the Plus and Minus Directional Indicators (+DI & -DI) used to determine the direction of the trend
"ADX Limit" ________________________// A level of ADX used as the boundary between Trend Market and Sideways Market
"Smoothing Factor"__________________// Factor used for smoothing the oscillator
"Lag"______________________________// lag used to match indicator and chart
Resources:
www.investopedia.com
VIOP Scalping - OriginalVIOP Scalping โ Original is a rule-based scalping strategy ported from an original C# logic set. It aims to trade only when trend direction, momentum, and trend strength align, then manages the position using fixed take-profit/stop-loss percentages with an optional trailing mechanism to protect gains during favorable moves.
This strategy is provided for educational and backtesting purposes only. It is not financial advice and does not guarantee profitability. Always test thoroughly before any live usage.
Core Concept
Follow the dominant WMA trend, confirm momentum with EMA separation, filter conditions with RSI + ADX, then exit using fixed TP/SL with trailing behavior after a defined profit threshold.
How the Strategy Works
Trend Direction is defined by WMA: above WMA = long bias, below WMA = short bias.
Momentum is measured via Fast EMA vs Slow EMA and the EMA difference.
Trend Strength is confirmed using ADX (must exceed a threshold).
RSI filters trades to avoid entering when momentum is likely overextended or weak.
A no-trade session blocks entries during a predefined time window (default 09:30โ10:05).
Exit logic uses fixed percent TP/SL, with an optional trailing mechanism that activates after a profit threshold.
Inputs and Settings
Trend and Indicator Settings
Main Trend WMA: Determines directional bias (price above = long, price below = short).
Fast EMA / Slow EMA: Used to measure momentum and directional separation.
RSI Period: Filters entries based on RSI range constraints.
ADX Period: Measures trend strength (must exceed threshold to allow entries).
Threshold Settings
EMA Difference Threshold: Minimum EMA separation required to validate momentum.
ADX Threshold: Minimum ADX required to confirm trend strength.
RSI Long Ceiling: RSI must remain below this value for long entries.
RSI Short Floor: RSI must remain above this value for short entries.
Risk Management Settings
Take Profit %: Default TP distance in percent.
Strong Trend Take Profit %: Higher TP used when a โstrong trendโ condition is detected.
Stop Loss %: Fixed SL distance in percent.
Trailing Activation %: Profit threshold at which trailing starts.
Trailing Distance %: Trailing offset distance used once trailing is active.
Time Filter
No-Trade Hours: Default session is 09:30โ10:05. During this window, the strategy does not open new trades.
Entry Logic
No-Trade Time Filter
If the current bar falls inside the no-trade session, entries are blocked.
Long Entry Conditions
Price is above the WMA trend line.
EMA difference is positive and greater than the EMA Difference Threshold.
EMA momentum is increasing (current EMA diff > previous EMA diff).
RSI is within the defined range (RSI > 48 and RSI < RSI Long Ceiling).
Close is higher than the previous close.
ADX is above the ADX Threshold.
Short Entry Conditions
Price is below the WMA trend line.
EMA difference is negative and lower than -EMA Difference Threshold.
Bearish momentum is increasing (current EMA diff < previous EMA diff).
RSI is within the defined range (RSI < 52 and RSI > RSI Short Floor).
Close is lower than the previous close.
ADX is above the ADX Threshold.
Strong Trend Logic (Dynamic TP Selection)
If price is far from the WMA (absolute distance > 20 points) AND EMA separation is strong (absolute EMA diff > 1.5 points), the strategy treats the environment as a strong trend.
In strong trend mode, the strategy uses โStrong Trend Take Profit %โ instead of the default โTake Profit %โ.
Exit Management (TP/SL + Trailing)
The strategy uses fixed percentage-based TP and SL levels.
Trailing logic is enabled via strategy.exit and activates only after price moves in profit by the defined Trailing Activation %.
Once activated, trailing follows price using the defined Trailing Distance % offset.
This is designed to secure partial gains during extended moves while still allowing room for continuation.
What You See on the Chart
WMA Trend Line (Main Trend Filter).
Fast EMA and Slow EMA (Momentum Confirmation).
Strategy entry/exit markers generated by TradingView.
Recommended Use
Scalping systems that rely on trend-following and momentum confirmation.
Markets where ADX filtering helps avoid choppy conditions.
Traders who want a simple, parameter-driven TP/SL system with trailing after confirmation.
Important Notes
The no-trade session depends on your chart/session settings. Ensure your symbol/session configuration matches your intended market hours.
Percent-based exits scale with price; results will vary across instruments and volatility regimes.
Always validate behavior using bar replay, forward testing, and realistic commission/slippage assumptions.
OpenAI Signal Generator - Enhanced Accuracy# AI-Powered Trading Signal Generator Guide
## Overview
This is an advanced trading signal generator that combines multiple technical indicators using AI-enhanced logic to generate high-accuracy trading signals. The indicator uses a sophisticated combination of RSI, MACD, Bollinger Bands, EMAs, ADX, and volume analysis to provide reliable buy/sell signals with comprehensive market analysis.
## Key Features
### 1. Multi-Indicator Analysis
- **RSI (Relative Strength Index)**
- Length: 14 periods (default)
- Overbought: 70 (default)
- Oversold: 30 (default)
- Used for identifying overbought/oversold conditions
- **MACD (Moving Average Convergence Divergence)**
- Fast Length: 12 (default)
- Slow Length: 26 (default)
- Signal Length: 9 (default)
- Identifies trend direction and momentum
- **Bollinger Bands**
- Length: 20 periods (default)
- Multiplier: 2.0 (default)
- Measures volatility and potential reversal points
- **EMAs (Exponential Moving Averages)**
- Fast EMA: 9 periods (default)
- Slow EMA: 21 periods (default)
- Used for trend confirmation
- **ADX (Average Directional Index)**
- Length: 14 periods (default)
- Threshold: 25 (default)
- Measures trend strength
- **Volume Analysis**
- MA Length: 20 periods (default)
- Threshold: 1.5x average (default)
- Confirms signal strength
### 2. Advanced Features
- **Customizable Signal Frequency**
- Daily
- Weekly
- 4-Hour
- Hourly
- On Every Close
- **Enhanced Filtering**
- EMA crossover confirmation
- ADX trend strength filter
- Volume confirmation
- ATR-based volatility filter
- **Comprehensive Alert System**
- JSON-formatted alerts
- Detailed technical analysis
- Multiple timeframe analysis
- Customizable alert frequency
## How to Use
### 1. Initial Setup
1. Open TradingView and create a new chart
2. Select your preferred trading pair
3. Choose an appropriate timeframe
4. Apply the indicator to your chart
### 2. Configuration
#### Basic Settings
- **Signal Frequency**: Choose how often signals are generated
- Daily: Signals at the start of each day
- Weekly: Signals at the start of each week
- 4-Hour: Signals every 4 hours
- Hourly: Signals every hour
- On Every Close: Signals on every candle close
- **Enable Signals**: Toggle signal generation on/off
- **Include Volume**: Toggle volume analysis on/off
#### Technical Parameters
##### RSI Settings
- Adjust `rsi_length` (default: 14)
- Modify `rsi_overbought` (default: 70)
- Modify `rsi_oversold` (default: 30)
##### EMA Settings
- Fast EMA Length (default: 9)
- Slow EMA Length (default: 21)
##### MACD Settings
- Fast Length (default: 12)
- Slow Length (default: 26)
- Signal Length (default: 9)
##### Bollinger Bands
- Length (default: 20)
- Multiplier (default: 2.0)
##### Enhanced Filters
- ADX Length (default: 14)
- ADX Threshold (default: 25)
- Volume MA Length (default: 20)
- Volume Threshold (default: 1.5)
- ATR Length (default: 14)
- ATR Multiplier (default: 1.5)
### 3. Signal Interpretation
#### Buy Signal Requirements
1. RSI crosses above oversold level (30)
2. Price below lower Bollinger Band
3. MACD histogram increasing
4. Fast EMA above Slow EMA
5. ADX above threshold (25)
6. Volume above threshold (if enabled)
7. Market volatility check (if enabled)
#### Sell Signal Requirements
1. RSI crosses below overbought level (70)
2. Price above upper Bollinger Band
3. MACD histogram decreasing
4. Fast EMA below Slow EMA
5. ADX above threshold (25)
6. Volume above threshold (if enabled)
7. Market volatility check (if enabled)
### 4. Visual Indicators
#### Chart Elements
- **Moving Averages**
- SMA (Blue line)
- Fast EMA (Yellow line)
- Slow EMA (Purple line)
- **Bollinger Bands**
- Upper Band (Green line)
- Middle Band (Orange line)
- Lower Band (Green line)
- **Signal Markers**
- Buy Signals: Green triangles below bars
- Sell Signals: Red triangles above bars
- **Background Colors**
- Light green: Buy signal period
- Light red: Sell signal period
### 5. Alert System
#### Alert Types
1. **Signal Alerts**
- Generated when buy/sell conditions are met
- Includes comprehensive technical analysis
- JSON-formatted for easy integration
2. **Frequency-Based Alerts**
- Daily/Weekly/4-Hour/Hourly/Every Close
- Includes current market conditions
- Technical indicator values
#### Alert Message Format
```json
{
"symbol": "TICKER",
"side": "BUY/SELL/NONE",
"rsi": "value",
"macd": "value",
"signal": "value",
"adx": "value",
"bb_upper": "value",
"bb_middle": "value",
"bb_lower": "value",
"ema_fast": "value",
"ema_slow": "value",
"volume": "value",
"vol_ma": "value",
"atr": "value",
"leverage": 10,
"stop_loss_percent": 2,
"take_profit_percent": 5
}
```
## Best Practices
### 1. Signal Confirmation
- Wait for multiple confirmations
- Consider market conditions
- Check volume confirmation
- Verify trend strength with ADX
### 2. Risk Management
- Use appropriate position sizing
- Implement stop losses (default 2%)
- Set take profit levels (default 5%)
- Monitor market volatility
### 3. Optimization
- Adjust parameters based on:
- Trading pair volatility
- Market conditions
- Timeframe
- Trading style
### 4. Common Mistakes to Avoid
1. Trading without volume confirmation
2. Ignoring ADX trend strength
3. Trading against the trend
4. Not considering market volatility
5. Overtrading on weak signals
## Performance Monitoring
Regularly review:
1. Signal accuracy
2. Win rate
3. Average profit per trade
4. False signal frequency
5. Performance in different market conditions
## Disclaimer
This indicator is for educational purposes only. Past performance is not indicative of future results. Always use proper risk management and trade responsibly. Trading involves significant risk of loss and is not suitable for all investors.
Advanced Candlestick Pattern DetectorWhat Does This Indicator Do?
This indicator looks at the way price moves in the market using candlesticks (those red and green bars you see on charts). It tries to find special patterns like Bullish Engulfing, Hammer, Doji, and others. When one of these patterns shows up, the indicator checks a bunch of filters to decide if the pattern is strong enough to be a signal to buy or sell.
The Main Parts of the Indicator
1. Candlestick Pattern Detection
Bullish Engulfing:
Imagine you see a small down candle (red) and then a big up candle (green) that completely โcoversโ the red one. Thatโs a bullish engulfing pattern. It can signal that buyers are taking over.
Bearish Engulfing:
The opposite of bullish engulfing. A small up candle (green) is followed by a big down candle (red) that covers the previous candle. This suggests sellers might be in control.
Hammer & Shooting Star:
Hammer: A candle with a very short body and a long shadow at the bottom. It shows that buyers stepped in after a drop.
Shooting Star:
Similar to the hammer but with a long shadow on top. It can indicate that sellers are starting to push the price down.
Doji:
A candle with almost no body. This means the opening and closing prices are very close. It shows indecision in the market.
Harami Patterns (Bullish & Bearish):
These are two-candle patterns where the second candle is completely inside the body of the first candle. They signal that the previous trend might be about to change.
Morning Star & Evening Star:
These are three-candle patterns.
Morning Star:
Often seen at the bottom of a downtrend, it can signal a reversal to an uptrend.
Evening Star:
Seen at the top of an uptrend, it can signal that the price may soon go down.
2. Filters: Making the Signals Smarter
The indicator doesnโt just rely on patterns. It uses several โfiltersโ to decide if a pattern is strong enough to trade on. Hereโs what each filter does:
a. Adaptive Thresholds (ATR-Based)
What It Is:
The indicator uses something called ATR (Average True Range) to see how much the price is moving (volatility).
How It Works:
Instead of using fixed numbers to decide if a candle is a Hammer or a Doji, it adjusts these numbers based on current market activity.
User Settings:
Use Adaptive Thresholds: Turn this on to let the indicator adjust automatically.
Body Factor, Shadow Factor, Doji Factor: These numbers are multipliers that decide how small or big the body and shadows of the candle should be. You can change them if you want the indicator to be more or less sensitive.
b. Volume Filter
What It Is:
Volume shows how many trades are happening.
How It Works:
The filter checks if the current volume is higher than the average volume (multiplied by a set factor). This helps ensure that the signal isnโt coming from a very quiet market.
User Settings:
Use Volume Filter: Turn this on if you want to ignore signals when thereโs not much trading.
Volume MA Period & Volume Multiplier: These settings determine what โnormalโ volume is and how much higher the current volume must be to count.
c. Multi-Timeframe Trend Filter
What It Is:
This filter looks at a bigger picture by using a moving average (MA) from a higher timeframe (for example, daily charts).
How It Works:
For a bullish (buy) signal, the indicator checks if the price is above this MA.
For a bearish (sell) signal, the price must be below the MA.
User Settings:
Use Multi-Timeframe Trend Filter: Enable or disable this filter.
Higher Timeframe for Trend: Choose which timeframe (like Daily) to use.
Trend MA Type (SMA or EMA) & Trend MA Period: Choose the type of moving average and how many candles to average.
d. Additional Trend Filters (ADX & RSI)
ADX Filter:
What It Is:
ADX stands for Average Directional Index. It measures how strong a trend is.
How It Works:
If the ADX is above a certain threshold, it means the trend is strong.
User Setting:
ADX Threshold: Set the minimum strength the trend should have.
RSI Filter:
What It Is:
RSI (Relative Strength Index) tells you if the price is overbought (too high) or oversold (too low).
How It Works:
For a buy signal, RSI should be low (under a set threshold).
For a sell signal, RSI should be high (above a set threshold).
User Settings:
RSI Buy Threshold & RSI Sell Threshold: These set the levels for buying or selling.
3. How the Final Signal Is Determined
For a signal (buy or sell) to be generated, the indicator first checks if one of the candlestick patterns is present. Then it goes through all these filters (trend, volume, ADX, RSI). Only if everything is in line will it show:
A BUY signal when all bullish conditions are met.
A SELL signal when all bearish conditions are met.
4. Visual Elements on the Chart
Trend MA Line:
A blue line is drawn on your chart showing the moving average from the higher timeframe (if you enable the trend filter). This helps you see the overall direction of the market.
Labels on the Chart:
When a signal is detected, youโll see:
A BUY label below the candle (green).
A SELL label above the candle (red).
Background Colors:
The chart background might change slightly (green for bullish and red for bearish) to give you a quick visual cue.
Histogram:
At the bottom, there is a histogram that shows +1 for bullish signals, -1 for bearish signals, and 0 when thereโs no clear signal.
5. Alerts
Alerts are built into the indicator so you can get a notification when a signal appears. The alert messages are fixed strings, meaning they always say something like โBUY signal on at price .โ You can set up these alerts in TradingView to be notified via sound, email, or pop-up.
How to Use and Adjust the Filters
Deciding on Patterns:
You can choose which candlestick patterns you want to detect by toggling the options (e.g., Bullish Engulfing, Hammer, etc.).
Adjusting Adaptive Thresholds:
If you feel that the indicator is too sensitive (or not sensitive enough) during volatile times, adjust the Body Factor, Shadow Factor, and Doji Factor. These change how the indicator recognizes different candle shapes based on market movement.
Volume Filter Settings:
Use Volume Filter:
Turn this on if you want to ignore signals when thereโs not enough trading activity.
Adjust the Volume MA Period and Volume Multiplier to change what โnormalโ volume is for your chart.
Multi-Timeframe Trend Filter Settings:
Choose a higher timeframe (like Daily) to see the bigger picture trend. Select the type of moving average (SMA or EMA) and its period. This filter ensures you only trade in the direction of the overall trend.
ADX & RSI Filters:
ADX:
Adjust the ADX Threshold if you want to change the minimum strength of the trend needed for a signal.
RSI:
Set the RSI Buy Threshold (for oversold conditions) and RSI Sell Threshold (for overbought conditions) to refine when a signal is valid.
Summary
This indicator is like having a smart assistant that not only looks for specific price patterns (candlesticks) but also checks if the overall market conditions are right using several filters. By combining:
Pattern Detection
Adaptive thresholds (based on ATR)
Volume Checks
Multi-Timeframe Trend Analysis
Additional Trend Strength and Overbought/Oversold Indicators (ADX & RSI)
...it helps you decide if it might be a good time to buy or sell. You can customize each part to fit your trading style, and with the built-in alerts, you can be notified when everything lines up.
Feel free to adjust the settings to see how each filter changes the signals on your chart. Experimenting with these will help you learn how the market behaves and how you can best use the indicator for your own strategy!
Crypto Scanner v4This guide explains a version 6 Pine Script that scans a user-provided list of cryptocurrency tokens to identify high probability tradable opportunities using several technical indicators. The script combines trend, momentum, and volume-based analyses to generate potential buying or selling signals, and it displays the results in a neatly formatted table with alerts for trading setups. Below is a detailed walkthrough of the scriptโs design, how traders can interpret its outputs, and recommendations for optimizing indicator inputs across different timeframes.
## Overview and Key Components
The script is designed to help traders assess multiple tokens by calculating several indicators for each one. The key components include:
- **Input Settings:**
- A comma-separated list of symbols to scan.
- Adjustable parameters for technical indicators such as ADX, RSI, MFI, and a custom Wave Trend indicator.
- Options to enable alerts and set update frequencies.
- **Indicator Calculations:**
- **ADX (Average Directional Index):** Measures trend strength. A value above the provided threshold indicates a strong trend, which is essential for validating momentum before entering a trade.
- **RSI (Relative Strength Index):** Helps determine overbought or oversold conditions. When the RSI is below the oversold level, it may present a buying opportunity, while an overbought condition (not explicitly part of this setup) could suggest selling.
- **MFI (Money Flow Index):** Similar in concept to RSI but incorporates volume, thus assessing buying and selling pressure. Values below the designated oversold threshold indicate potential undervaluation.
- **Wave Trend:** A custom indicator that calculates two components (WT1 and WT2); a crossover where WT1 moves from below to above WT2 (particularly near oversold levels) may signal a reversal and a potential entry point.
- **Scanning and Trading Zone:**
- The script identifies a *bullish setup* when the following conditions are met for a token:
- ADX exceeds the threshold (strong trend).
- Both RSI and MFI are below their oversold levels (indicating potential buying opportunities).
- A Wave Trend crossover confirms near-term reversal dynamics.
- A *trading zone* condition is also defined by specific ranges for ADX, RSI, MFI, and a limited difference between WT1 and WT2. This zone suggests that the token might be in a consolidation phase where even small moves may be significant.
- **Alerts and Table Reporting:**
- A table is generated, with each row corresponding to a token. The table contains columns for the symbol, ADX, RSI, MFI, WT1, WT2, and the trading zone status.
- Visual cuesโsuch as different background colorsโhighlight tokens with a bullish setup or that are within the trading zone.
- Alerts are issued based on the detection of a bullish setup or entry into a trading zone. These alerts are limited per bar to avoid flooding the trader with notifications.
## How to Interpret the Indicator Outputs
Traders should use the indicator values as guidance, verifying them against their own analysis before making any trading decision. Hereโs how to assess each output:
- **ADX:**
- **High values (above threshold):** Indicate strong trends. If other indicators confirm an oversold condition, a trader may consider a long position for a corrective reversal.
- **Low values:** Suggest that the market is not trending strongly, and caution should be taken when considering entry.
- **RSI and MFI:**
- **Below oversold levels:** These conditions are traditionally seen as signals that an asset is undervalued, potentially triggering a bounce.
- **Above typical resistance levels (not explicitly used here):** Would normally caution a trader against entering a long position.
- **Wave Trend (WT1 and WT2):**
- A crossover where WT1 moves upward above WT2 in an oversold environment can signal the beginning of a recovery or reversal, thereby reinforcing buy signals.
- **Trading Zone:**
- Being โin zoneโ means that the assetโs current values for ADX, RSI, MFI, and the closeness of the Wave Trend lines indicate a period of consolidation. This scenario might be suitable for both short-term scalping or as an early exit indicator, depending on further market analysis.
## Timeframe Optimization Input Table
Traders can optimize indicator inputs depending on the timeframe they use. The following table provides a set of recommended input values for various timeframes. These values are suggestions and should be adjusted based on market conditions and individual trading styles.
Timeframe ADX RSI MFI ADX RSI MFI WT Channel WT Average
5-min 10 10 10 20 30 20 7 15
15-min 12 12 12 22 30 20 9 18
1-hour 14 14 14 25 30 20 10 21
4-hour 16 16 16 27 30 20 12 24
1-day 18 18 18 30 30 20 14 28
Adjust these parameters directly in the scriptโs input settings to match the selected timeframe. For shorter timeframes (e.g., 5-min or 15-min), the shorter lengths help filter high-frequency noise. For longer timeframes (e.g., 1-day), longer input values may reduce false signals and capture more significant trends.
## Best Practices and Usage Tips
- **Token Limit:**
- Limit the number of tokens scanned to 10 per query line. If you need to scan more tokens, initiate a new query line. This helps manage screen real estate and ensures the table remains legible.
- **Confirming Signals:**
- Use this script as a starting point for identifying high potential trades. Each indicatorโs output should be used to confirm your trading decision. Always cross-reference with additional technical analysis tools or market context.
- **Regular Review:**
- Since the script updates the table every few bars (as defined by the update frequency), review the table and alerts regularly. Market conditions change rapidly, so timely decisions are crucial.
## Conclusion
This Pine Script provides a comprehensive approach for scanning multiple cryptocurrencies using a combination of trend strength (ADX), momentum (RSI and MFI), and reversal signals (Wave Trend). By using the provided recommendation table for different timeframes and limiting the tokens to 20 per query line (with a maximum of four query lines), traders can streamline their scanning process and more effectively identify high probability tradable tokens. Ultimately, the outputs should be critically evaluated and combined with additional market research before executing any trades.
Johnny's Machine Learning Moving Average (MLMA) w/ Trend Alerts๐ Overview
Johnny's Machine Learning Moving Average (MLMA) w/ Trend Alerts is a powerful adaptive moving average indicator designed to capture market trends dynamically. Unlike traditional moving averages (e.g., SMA, EMA, WMA), this indicator incorporates volatility-based trend detection, Bollinger Bands, ADX, and RSI, offering a comprehensive view of market conditions.
The MLMA is "machine learning-inspired" because it adapts dynamically to market conditions using ATR-based windowing and integrates multiple trend strength indicators (ADX, RSI, and volatility bands) to provide an intelligent moving average calculation that learns from recent price action rather than being static.
๐ How It Works
1๏ธโฃ Adaptive Moving Average Selection
The MLMA automatically selects one of four different moving averages:
๐ EMA (Exponential Moving Average) โ Reacts quickly to price changes.
๐ต HMA (Hull Moving Average) โ Smooth and fast, reducing lag.
๐ก WMA (Weighted Moving Average) โ Gives recent prices more importance.
๐ด VWAP (Volume Weighted Average Price) โ Accounts for volume impact.
The user can select which moving average type to use, making the indicator customizable based on their strategy.
2๏ธโฃ Dynamic Trend Detection
ATR-Based Adaptive Window ๐
The Average True Range (ATR) determines the window size dynamically.
When volatility is high, the moving average window expands, making the MLMA more stable.
When volatility is low, the window shrinks, making the MLMA more responsive.
Trend Strength Filters ๐
ADX (Average Directional Index) > 25 โ Indicates a strong trend.
RSI (Relative Strength Index) > 70 or < 30 โ Identifies overbought/oversold conditions.
Price Position Relative to Upper/Lower Bands โ Determines bullish vs. bearish momentum.
3๏ธโฃ Volatility Bands & Dynamic Support/Resistance
Bollinger Bands (BB) ๐
Uses standard deviation-based bands around the MLMA to detect overbought and oversold zones.
Upper Band = Resistance, Lower Band = Support.
Helps traders identify breakout potential.
Adaptive Trend Bands ๐ต๐ด
The MLMA has built-in trend envelopes.
When price breaks the upper band, bullish momentum is confirmed.
When price breaks the lower band, bearish momentum is confirmed.
4๏ธโฃ Visual Enhancements
Dynamic Gradient Fills ๐
The trend strength (ADX-based) determines the gradient intensity.
Stronger trends = More vivid colors.
Weaker trends = Lighter colors.
Trend Reversal Arrows ๐
๐ผ Green Up Arrow: Bullish reversal signal.
๐ฝ Red Down Arrow: Bearish reversal signal.
Trend Table Overlay ๐ฅ
Displays ADX, RSI, and Trend State dynamically on the chart.
๐ข Trading Signals & How to Use It
1๏ธโฃ Bullish Signals ๐
โ
Conditions for a Long (Buy) Trade:
The MLMA crosses above the lower band.
The ADX is above 25 (confirming trend strength).
RSI is above 55, indicating positive momentum.
Green trend reversal arrow appears (confirmation of a bullish reversal).
๐น How to Trade It:
Enter a long trade when the MLMA turns bullish.
Set stop-loss below the lower Bollinger Band.
Target previous resistance levels or use the upper band as take-profit.
2๏ธโฃ Bearish Signals ๐
โ
Conditions for a Short (Sell) Trade:
The MLMA crosses below the upper band.
The ADX is above 25 (confirming trend strength).
RSI is below 45, indicating bearish pressure.
Red trend reversal arrow appears (confirmation of a bearish reversal).
๐น How to Trade It:
Enter a short trade when the MLMA turns bearish.
Set stop-loss above the upper Bollinger Band.
Target the lower band as take-profit.
๐ก What Makes This a Machine Learning Moving Average?
๐ 1๏ธโฃ Adaptive & Self-Tuning
Unlike static moving averages that rely on fixed parameters, this MLMA automatically adjusts its sensitivity to market conditions using:
ATR-based dynamic windowing ๐ (Expands/contracts based on volatility).
Adaptive smoothing using EMA, HMA, WMA, or VWAP ๐.
Multi-indicator confirmation (ADX, RSI, Volatility Bands) ๐.
๐ 2๏ธโฃ Intelligent Trend Confirmation
The MLMA "learns" from recent price movements instead of blindly following a fixed-length average.
It incorporates ADX & RSI trend filtering to reduce noise & false signals.
๐ 3๏ธโฃ Dynamic Color-Coding for Trend Strength
Strong trends trigger more vivid colors, mimicking confidence levels in machine learning models.
Weaker trends appear faded, suggesting uncertainty.
๐ฏ Why Use the MLMA?
โ
Pros
โ Combines multiple trend indicators (MA, ADX, RSI, BB).
โ Automatically adjusts to market conditions.
โ Filters out weak trends, making it more reliable.
โ Visually intuitive (gradient colors & reversal arrows).
โ Works across all timeframes and assets.
โ ๏ธ Cons
โ Not a standalone strategy โ Best used with volume confirmation or candlestick analysis.
โ Can lag slightly in fast-moving markets (due to smoothing).
Strength Measurement -HTStrength Measurement -HT
This indicator provides a comprehensive view of trend strength by calculating the average ADX (Average Directional Index) across multiple timeframes. It helps traders identify strong trends, potential reversals, and confirm signals from other indicators.
Key Features:
Multi-Timeframe Analysis: Analyze trend strength across different timeframes. Choose which timeframes to include in the calculation (5 min, 15 min, 30 min, 1 hour, 4 hour).
Customizable ADX Parameters: Adjust the ADX smoothing (adxlen) and DI length (dilen) parameters to fine-tune the indicator to your preferred settings.
Smoothed Average ADX: The average ADX is smoothed using a Simple Moving Average to reduce noise and provide a clearer picture of the overall trend. ย
Color-Coded Visualization: The histogram clearly indicates trend direction and strength:
Green: Uptrend
Red: Downtrend
Darker shades: Stronger trend
Lighter shades: Weaker trend
Reference Levels: Includes horizontal lines at 25, 50, and 75 to provide benchmarks for trend strength classification.
Alerts: Set alerts for strong trend up (ADX crossing above 50) and weakening trend (ADX crossing below 25).
How to Use:
Select Timeframes: Choose the timeframes you want to include in the average ADX calculation.
Adjust ADX Parameters: Fine-tune the adxlen and dilen values based on your trading style and the timeframe of the chart.
Identify Strong Trends: Look for histogram bars with darker green or red colors, indicating a strong trend.
Spot Potential Reversals: Watch for changes in histogram color and height, which may suggest a weakening trend or a potential reversal.
Combine with Other Indicators: Use this indicator with other technical analysis tools to confirm trading signals. ย
Note: This indicator is based on the ADX, which is a lagging indicator.
DMI Delta by 0xjcfOverview
This indicator integrates the Directional Movement Index (DMI), Average Directional Index (ADX), and volume analysis into an Oscillator designed to help traders identify divergence-based trading signals. Unlike typical volume or momentum indicators, this combination provides insight into directional momentum and volume intensity, allowing traders to make well-informed decisions based on multiple facets of market behavior.
Purpose and How Components Work Together
By combining DMI and ADX with volume analysis, this indicator helps traders detect when momentum diverges from price actionโa common precursor to potential reversals or significant moves. The ADX filter enhances this by distinguishing trending from range-bound conditions, while volume analysis highlights moments of extreme sentiment, such as solid buying or selling. Together, these elements provide traders with a comprehensive view of market strength, directional bias, and volume surges, which help filter out weaker signals.
Key Features
DMI Delta and Oscillator: The DMI indicator measures directional movement by comparing DI+ and DI- values. This difference (DMI Delta) is calculated and displayed as a histogram, visualizing changes in directional bias. When combined with ADX filtering, this histogram helps traders gauge the strength of momentum and spot directional shifts early. For instance, a rising histogram in a bearish price trend might signal a potential bullish reversal.
Volume Analysis with Extremes: Volume is monitored to reveal when market participation is unusually high, using a customizable multiplier to highlight significant volume spikes. These extreme levels are color-coded directly on the histogram, providing visual cues on whether buying or selling interest is particularly strong. Volume analysis adds depth to the directional insights from DMI, allowing traders to differentiate between regular and powerful moves.
ADX Trending Filter: The ADX component filters trends by measuring the overall strength of a price move, with a default threshold of 25. When ADX is above this level, it suggests that the market is trending strongly, making the DMI Delta readings more reliable. Below this threshold, the market is likely range-bound, cautioning traders that signals might not have as much follow-through.
Using the Indicator in Divergence Strategies
This indicator excels in divergence strategies by highlighting moments when price action diverges from directional momentum. Hereโs how it aids in decision-making:
Bullish Divergence: If the price is falling to new lows while the DMI Delta histogram rises, it can indicate weakening bearish momentum and signal a potential price reversal to the upside.
Bearish Divergence: Conversely, if prices are climbing but the DMI Delta histogram falls, it may point to waning bullish momentum, suggesting a bearish reversal.
Visual Cues and Customization
The color-coded output enhances usability:
Bright Green/Red: Extreme volume with strong bullish or bearish signals, often at points of high potential for trend continuation or reversal.
Green/Red Shades: These shades reflect trending conditions (bullish or bearish) based on ADX, factoring in volume. Green signals a bullish trend, and red is a bearish trend.
Blue/Orange Shades: Indicates non-trending or weaker conditions, suggesting a more cautious approach in range-bound markets.
Customizable for Diverse Trading Styles
This indicator allows users to adjust settings like the ADX threshold and volume multiplier to optimize performance for various timeframes and strategies. Whether a trader prefers swing trading or intraday scalping, these parameters enable fine-tuning to enhance signal reliability across different market contexts.
Practical Usage Tips
Entry and Exit Signals: Use this indicator in conjunction with price action. Divergences between the price and DMI Delta histogram can reinforce entry or exit decisions.
Adjust Thresholds: Based on backtesting, customize the ADX Trending Threshold and Volume Multiplier to ensure optimal performance on different timeframes or trading styles.
In summary, this indicator is tailored for traders seeking a multi-dimensional approach to market analysis. It blends momentum, trend strength, and volume insights to support divergence-based strategies, helping traders confidently make informed decisions. Remember to validate signals through backtesting and use it alongside price action for the best results.
Previous Day High Low Strategy only for LongWelcome to the "Previous Day High Low Strategy only for Long"!.
This strategy aims to identify potential long trading opportunities based on the previous day's high and low prices, along with certain market strength conditions.
Key Features:
Entry Conditions: The strategy triggers a long position when the current day's closing price crosses above the previous day's high or low.
Market Strength Filter: The strategy incorporates a market strength filter using the Average Directional Index (ADX). It only takes long positions when the ADX value is above a specific threshold and when there is a predominance of upward movement.
Trade Timing: The strategy operates within a specified trade window, starting at 09:30 and ending at 15:10. Positions are closed at 15:15 if still active.
Risk Management: The strategy employs dynamic stop-loss and profit-taking levels based on a user-defined Max Profit value. It has three profit targets (T1, T2, T3) and a stop-loss level to manage risk effectively.
Rules:
Ensure that the strategy idea is clearly understandable. Provide an easy-to-read title and a thoughtful description explaining the reasoning behind the strategy.
All content should be ad-free. Avoid any form of promotion, advertising, or solicitation.
No fundraising requests or money solicitation is allowed on TradingView.
Publish in the same language as the TradingView subdomain you're on, except for script titles, which must be in English.
Don't plagiarize. Create and share only unique content, and always give credit when using someone else's work.
Be respectful, kind, and constructive when engaging with others.
Zero tolerance for contentious political discourse, defamatory, threatening, or discriminatory remarks.
Avoid sharing harmful, misleading, or inappropriate content.
Respect the moderators' work and address complaints privately.
Use only your original account and avoid creating duplicate or fake accounts.
Do not attempt to manipulate the reputation system or engage in like-for-like schemes.
Explanation of how the strategy works
1. Previous Day's High and Low (HH, LL):
In this strategy, we start by obtaining the high and low prices of the previous day (not the current day) using the request.security function. This function allows us to access historical data for a specific time frame. The high and low prices are stored in the variables HH and LL, respectively.
2. Entry Conditions:
The strategy uses two conditions to trigger a long position:
Condition 1 (Long Condition 1): If the closing price of the current day crosses above the previous day's high (HH), it generates a long signal. This is achieved using the ta.crossover function, which detects when a crossover occurs.
Condition 2 (Long Condition 2): Similarly, if the closing price of the current day crosses above the previous day's low (LL), it also generates a long signal.
Combined Condition: To take long positions, the strategy combines both long conditions using the logical OR operator (or). This means that if either of the two conditions is met, a long position will be initiated.
3. Market Strength Filter:
The strategy also includes a filter based on the Average Directional Index (ADX) to gauge the market's strength before taking long positions. The ADX measures the strength of a trend in the market. The higher the ADX value, the stronger the trend.
Calculation of ADX: The ADX is calculated using the adx function, which takes two parameters: LWdilength (DMI Length) and LWadxlength (ADX period).
Strength Condition (strength_up): The strategy requires that the ADX value should be above a threshold (11 in this case) and that there is a predominance of upward movement (up > down) before initiating a long position. The LWADX value is multiplied by 2.5 and compared to the highest value of LWADX from the last 4 periods using ta.highest(LWADX , 4). If these conditions are met, the variable strength_up is set to true.
Combined Condition: The strength_up condition is then combined with the long conditions using the logical AND operator (and). This means that the strategy will only take a long position if both the long conditions and the market strength condition are met.
4. Trade Timing:
The strategy sets a specific trade window between 09:30 and 15:10. It will only execute trades within this time frame (TradeTime).
5. Risk Management:
The strategy implements dynamic stop-loss (SL) and profit-taking levels (T1, T2, T3) based on a user-defined Max Profit value. The stop-loss is set as a percentage of the Max Profit value. As the position moves in favor of the trader, the profit targets are adjusted accordingly.
6. Position Management:
The strategy uses the strategy.entry function to enter long positions based on the combined entry conditions. Once a position is open, the script uses strategy.exit to define the exit condition when either the profit target or stop-loss level is hit. The strategy.close function is used to close any open position at the end of the trade window (15:15).
7. Plotting:
The strategy uses the plot function to visualize the previous day's high and low prices, as well as the stop-loss (SL) and profit-taking (T1, T2, T3) levels on the chart.
Overall, the "Previous Day High Low Strategy only for Long" aims to identify potential long trading opportunities based on the previous day's price action and market strength conditions. However, as with any trading strategy, it's essential to thoroughly test it and consider risk management before applying it to real-world trading scenarios.
Disclaimer:
The information presented by this strategy is for educational purposes only and should not be considered as investment advice. The strategy is not designed for qualified investors. Always conduct your own research and consult with a financial advisor before making any trading decisions.
Remember, the success of any trading strategy depends on various factors, including market conditions, risk management, and individual trading skills. Past performance is not indicative of future results.
Trend Strength Matrix [JOAT]Trend Strength Matrix โ Multi-Timeframe Confluence Analysis System
This indicator addresses a specific analytical challenge: how to efficiently compare multiple technical measurements across different timeframes while accounting for their varying scales and interpretations. Rather than managing separate indicator windows with different scales, this tool normalizes four distinct analytical approaches to a common -1 to +1 scale and presents them in a unified matrix format.
Why This Combination Adds Value
The core problem this indicator solves is analytical fragmentation. Traders often use multiple indicators but struggle with:
1. **Scale Inconsistency**: RSI ranges 0-100, MACD has no fixed range, ADX ranges 0-100 but measures strength not direction
2. **Timeframe Coordination**: Checking multiple timeframes requires switching between charts or cramming multiple indicators
3. **Cognitive Load**: Processing different indicator types simultaneously creates mental overhead
4. **Confluence Assessment**: Determining when multiple approaches agree requires manual comparison
This indicator specifically addresses these issues by creating a standardized analytical framework where different measurement approaches can be directly compared both within and across timeframes.
Originality and Technical Innovation
While the individual components (RSI, MACD, ADX, Moving Average) are standard, the originality lies in:
1. **Unified Normalization System**: Each component is mathematically transformed to a -1 to +1 scale using component-specific normalization that preserves the indicator's core characteristics
2. **Multi-Timeframe Weighting Algorithm**: Higher timeframes receive proportionally more weight (40% current, 25% next, 20% third, 15% fourth) based on the principle that longer timeframes provide more significant context
3. **Real-Time Confluence Scoring**: The composite calculation provides an instant assessment of how much the different analytical approaches agree
4. **Adaptive Visual Encoding**: The heatmap format allows immediate pattern recognition of agreement/disagreement across both indicators and timeframes
How the Components Work Together
Each component measures a different aspect of market behavior, and their combination provides a more complete analytical picture:
**Momentum Component (RSI-based)**: Measures the velocity of price changes by comparing average gains to losses
**Trend Component (MACD-based)**: Measures the relationship between fast and slow moving averages, indicating trend acceleration/deceleration
**Strength Component (ADX-based)**: Measures trend strength regardless of direction, then applies directional bias
**Position Component (MA-based)**: Measures price position relative to a reference average
The mathematical relationship between these components creates a comprehensive view:
- When all four agree (similar colors), it suggests multiple analytical approaches are aligned
- When they disagree (mixed colors), it highlights analytical uncertainty or transition periods
- The composite score quantifies the degree of agreement numerically
Detailed Component Analysis
**1. Momentum Oscillator Component**
This component transforms RSI into a centered oscillator by subtracting 50 and dividing by 50, creating a -1 to +1 range where 0 represents equilibrium between buying and selling pressure.
// Momentum calculation normalized to -1 to +1 scale
float rsi = ta.rsi(close, rsiLength)
float rsiScore = (rsi - 50) / 50
// Result: 0 at equilibrium, +1 at extreme overbought, -1 at extreme oversold
**2. Moving Average Convergence Component**
MACD is normalized by its own volatility (standard deviation) to create a bounded oscillator. This prevents the unbounded nature of MACD from dominating the composite calculation.
// MACD normalized by its historical volatility
= ta.macd(close, macdFast, macdSlow, macdSignal)
float macdStdev = ta.stdev(macdLine, 100)
float macdScore = macdStdev != 0 ? math.max(-1, math.min(1, macdLine / (macdStdev * 2))) : 0
**3. Directional Movement Component**
This combines ADX (strength) with directional movement (+DI vs -DI) to create a directional strength measurement. ADX alone shows strength but not direction; this component adds directional context.
// ADX-based directional strength
= calcADX(adxLength)
float adxStrength = math.min(adx / 50, 1) // Normalize ADX to 0-1
float adxDirection = plusDI > minusDI ? 1 : -1 // Direction bias
float adxScore = adxStrength * adxDirection // Combine strength and direction
**4. Price Position Component**
This measures price deviation from a moving average, weighted by the magnitude of deviation to distinguish between minor and significant displacements.
// Price position relative to moving average
float ma = ta.sma(close, maLength)
float maDirection = close > ma ? 1 : -1
float maDeviation = math.abs(close - ma) / ma * 10 // Percentage deviation scaled
float maScore = math.max(-1, math.min(1, maDirection * math.min(maDeviation, 1)))
Multi-Timeframe Integration Logic
The multi-timeframe system uses a weighted average that gives more influence to higher timeframes:
// Timeframe weighting system
float currentTF = composite * 0.40 // Current timeframe: 40%
float higherTF1 = composite_tf2 * 0.25 // Next higher: 25%
float higherTF2 = composite_tf3 * 0.20 // Third higher: 20%
float higherTF3 = composite_tf4 * 0.15 // Fourth higher: 15%
float multiTFComposite = currentTF + higherTF1 + higherTF2 + higherTF3
This weighting reflects the principle that higher timeframes provide more significant context for market direction, while lower timeframes provide timing precision.
What the Dashboard Shows
The heatmap displays a grid where:
Each row represents a timeframe
Each column shows one component's normalized reading
Colors indicate the value: green shades for positive, red shades for negative, gray for neutral
The rightmost column shows the composite average for that timeframe
Visual Elements
Moving Average Line โ A simple moving average plotted on the price chart
Background Tint โ Subtle coloring based on the composite score
Shift Labels โ Markers when the composite crosses threshold values
Dashboard Table โ The main heatmap display
Inputs
Calculation Parameters:
Momentum Length (default: 14)
MACD Fast/Slow/Signal (default: 12/26/9)
Directional Movement Length (default: 14)
Moving Average Length (default: 50)
Timeframe Settings:
Enable/disable multi-timeframe analysis
Select additional timeframes to display
How to Read the Display
Similar colors across a row indicate the components are showing similar readings
Mixed colors indicate the components are showing different readings
The composite percentage shows the average of all four components
Alerts
Composite crossed above/below threshold values
Strong readings (above 50% or below -50%)
Important Limitations and Realistic Expectations
This indicator displays current analytical conditionsโit does not predict future price movements
Agreement between components indicates current analytical alignment, not future price direction
All four components are based on historical price data and inherently lag price action
Market conditions can change rapidly, making current readings irrelevant
Different parameter settings will produce different readings and interpretations
No combination of technical indicators can reliably predict future market behavior
Strong readings in one direction do not guarantee continued movement in that direction
The composite score reflects mathematical relationships, not market fundamentals or sentiment
This tool should be used as one input among many in a comprehensive analytical approach
Appropriate Use Cases
This indicator is designed for:
- Analytical organization and efficiency
- Multi-timeframe confluence assessment
- Pattern recognition in indicator relationships
- Educational study of how different analytical approaches relate
- Supplementary analysis alongside other methods
This indicator is NOT designed for:
- Standalone trading signals
- Guaranteed profit generation
- Market timing precision
- Replacement of fundamental analysis
- Automated trading systems
โ Made with passion by officialjackofalltrades
PRO Scalper(EN)
## What it is
**PRO Scalper** is an intraday priceโaction and liquidity map that helps you see where the market is likely to move **now**, not just where it has been.
It combines five building blocks that professional scalpers often watch together:
1. **Session Volume-Weighted Average Price (VWAP)** โ the intraday โfair valueโ anchor.
2. **Opening Range** โ the first minutes of the session that set the dayโs balance.
3. **Trend filter** โ higher-timeframe bias using **Exponential Moving Averages (EMA)** and optional **Average Directional Index (ADX)** strength.
4. **Two independent Supply/Demand zone engines** โ zones are drawn from confirmed swing pivots, with midlines and **touch counters**.
5. **Order-flow style visuals**:
* **Delta bubbles** (green/red circles) show where buying or selling pressure was unusually strong, using a safe **delta proxy** (no external feeds).
* **Liquidity densities** (subtle rectangular bands) highlight clusters of large activity that often act as magnets or barriers and disappear when โeatenโ by strong moves.
This mix gives you a **complete intraday picture**: the mean (VWAP), the dayโs initial balance (Opening Range), the higher-timeframe push (trend filter), the nearby fuel or brakes (zones), and the live pressure points (bubbles and densities).
---
## Why these components
* **VWAP** tracks where the bulk of traded value sits. Price tends to rotate around it or accelerate away from it โ a perfect compass for scalps.
* **Opening Range** frames the early auction. Many intraday breaks, fades and retests start at its boundaries.
* **EMA bias + ADX strength** separates trending conditions from chop, so you can keep only the zones that agree with the bigger push.
* **Pivot-based zones (two pairs at once)** are simple, objective and fast. Midlines help with confirmations; touch counters quantify how many times the zone was tested.
* **Bubbles and densities** add the โeffortโ layer: where the push appeared and where liquidity is concentrated. You see **where** a move is likely to continue or fail.
Together they reduce ambiguity: **context + level + effort** โ all on one screen.
---
## How it works (plain language)
* **VWAP** resets each day and is calculated as the cumulative sum of typical price multiplied by volume divided by total volume.
* **Opening Range** is either automatic (a multiple of your chart timeframe) or a manual number of minutes. While it is forming, the highest high and lowest low are captured and plotted as the range.
* **Trend filter**
* **EMA Fast** and **EMA Slow** define directional bias.
* **ADX (optional)** adds โtrend strengthโ: only when the Average Directional Index is above the chosen threshold do we treat the move as strong. You can source this from a higher timeframe.
* **Zones**
* There are **two independent pairs** of pivots at the same time (for example 10-left 10-right and 5-left 5-right).
* Each detected pivot creates a **Supply** (from a swing high) or **Demand** (from a swing low) box. Box depth = **zone depth ร Average True Range** for adaptive sizing; the boxes **extend forward**.
* Midline (optional dashed line inside the box) is the โbalanceโ of the zone.
* **โOnly in trendโ** mode can hide boxes that go against the higher-timeframe bias.
* The **touch counter** increases when price revisits the box. Labels show the pair name and the number of touches.
* **Bubbles**
* A safe **delta proxy** measures bar pressure (for example, range-weighted close vs open).
* A **quantile filter** shows only unusually large pressure: choose lookback and percentile, and the script draws a circle sized by intensity (green = bullish pressure, red = bearish).
* **Densities**
* The script marks heavy activity clusters as **subtle bands** around price (depth = fraction of Average True Range).
* If price **breaks** a density with volume above its moving average, the band **disappears** (โeatenโ), which often precedes continuation.
---
## How to use โ practical playbooks
> Recommended chart: crypto or index futures, one to five minutes. Use **one hour** or **fifteen minutes** for the higher-timeframe bias.
### 1) Trend pullback scalp (continuation)
1. Enable **Only in trend** zones.
2. In an uptrend: wait for a pullback into a **Demand** zone that overlaps with VWAP or sits just below the Opening Range midpoint.
3. Look for **green bubbles** near the zoneโs bottom or a fresh **density** under price.
4. Enter on a candle closing **back above the zone midline**.
5. Stop-loss: below the bottom of the zone or a small multiple of Average True Range.
6. Targets: previous swing high, Opening Range high, fixed risk multiples, or VWAP.
Mirror the logic for downtrends using Supply zones, red bubbles and densities above price.
### 2) Reversion with liquidity sweep (fade)
1. Bias neutral or countertrend allowed.
2. Price **wicks through** a zone boundary (or an Opening Range line) and **closes back inside** the zone.
3. The bubble color often flips (absorption).
4. Enter toward the **inside** of the zone; stop beyond the sweep wick; first target = zone midline, second = opposite side of the zone or VWAP.
### 3) Opening Range break and retest
1. Wait for the Opening Range to complete.
2. A break with a large bubble suggests intent.
3. Look for a **retest** into a nearby zone aligned with VWAP.
4. Trade continuation toward the next zone or the session extremes.
### 4) Density โeatenโ continuation
1. When a density band **disappears** on high volume, it often means the resting liquidity was consumed.
2. Trade in the direction of the break, toward the nearest opposing zone.
---
## Settings โ quick guide
**Core**
* *ATR Length* โ used for zone and density depths.
* *Show VWAP / Show Opening Range*.
* *Opening Range*: Auto (multiple of timeframe minutes) or Manual minutes.
**Trend Filter**
* *Mode*: Off, EMA only, or EMA with ADX strength.
* *Use higher timeframe* and its value.
* *EMA Fast / EMA Slow*, *ADX Length*, *ADX threshold*.
* *Plot EMA filter* to display the moving averages.
**Zones (two pairs)**
* *Pivot A Left / Right* and *Pivot B Left / Right*.
* *Zone depth ร ATR*, *Extend bars*.
* *Show zone midline*, *Only in trend zones*.
* Labels automatically show the touch counters.
**Bubbles**
* *Show Bubbles*.
* *Quantile lookback* and *Quantile percent* (higher percent = stricter filter, fewer bubbles).
**Densities**
* *Metric*: absolute delta proxy or raw volume.
* *Quantile lookback / percent*.
* *Depth ร ATR*, *Extend bars*, *Merge distance* (in ATR),
* *Break condition*: volume moving average length and multiplier,
* *Midline for densities* (optional dashed line).
---
## Tips and risk management
* This script **does not use external order-flow feeds**. Delta is a **proxy** suitable for TradingView; tune quantiles per symbol and timeframe.
* Do not trade every bubble. Combine **context (trend + VWAP + Opening Range)** with **level (zone)** and **effort (bubble/density)**.
* Set stop-losses beyond the zone or at a fraction of Average True Range. Predefine risk per trade.
* Backtest your rules with a strategy script before using real funds.
* Markets differ. Parameters that work on Bitcoin may not transfer to low-liquidity altcoins or stocks.
* Nothing here is financial advice. Scalping is high-risk; slippage and over-trading can quickly damage your account.
---
## What makes PRO Scalper unique
* Two **independent** zone engines run in parallel, so you can see both **larger structure** and **fine intraday levels** at the same time.
* Clean **โonly in trendโ rendering** โ zones and midlines against the bias can be hidden, reducing clutter and hesitation.
* **Touch counters** convert โfeelโ into numbers.
* **Self-contained order-flow visuals** (bubbles and densities) that require no extra data sources.
* Careful defaults: subtle colors for densities, clearer zones, and responsive auto Opening Range.
---
(RU)
## ะงัะพ ััะพ ัะฐะบะพะต
**PRO Scalper** โ ััะพ ะธะฝะดะธะบะฐัะพั ะดะปั ะฒะฝัััะธะดะฝะตะฒะฝะพะน ัะพัะณะพะฒะปะธ, ะบะพัะพััะน ะฟะพะบะฐะทัะฒะฐะตั **ะบะพะฝัะตะบัั ะธ ะปะธะบะฒะธะดะฝะพััั ะฟััะผะพ ัะตะนัะฐั**.
ะะฝ ะพะฑัะตะดะธะฝัะตั ะฟััั ะผะพะดัะปะตะน, ะบะพัะพััะผะธ ะฟัะพัะตััะธะพะฝะฐะปัะฝัะต ัะบะฐะปัะฟะตัั ะฟะพะปัะทััััั ะฒะผะตััะต:
1. **VWAP** โ ััะตะดะฝะตะฒะทะฒะตัะตะฝะฝะฐั ะฟะพ ะพะฑัะตะผั ัะตะฝะฐ ะทะฐ ัะตััะธั, ยซัะฟัะฐะฒะตะดะปะธะฒะฐั ััะพะธะผะพัััยป ะดะฝั.
2. **Opening Range** โ ะฟะตัะฒะฐั ัะฐััั ัะตััะธะธ, ะทะฐะดะฐััะฐั ะฑะฐะปะฐะฝั ะดะฝั.
3. **ะคะธะปััั ััะตะฝะดะฐ** โ ะฝะฐะฟัะฐะฒะปะตะฝะธะต ััะฐััะตะณะพ ัะฐะนะผััะตะนะผะฐ ะฟะพ **ัะบัะฟะพะฝะตะฝัะธะฐะปัะฝัะผ ััะตะดะฝะธะผ** ะธ ะฟัะธ ะถะตะปะฐะฝะธะธ ะฟะพ ัะธะปะต ััะตะฝะดะฐ **Average Directional Index**.
4. **ะะฒะต ะฝะตะทะฐะฒะธัะธะผัะต ัะธััะตะผั ะทะพะฝ ัะฟัะพัะฐ/ะฟัะตะดะปะพะถะตะฝะธั** โ ะทะพะฝั ัััะพัััั ะพั ะฟะพะดัะฒะตัะถะดะตะฝะฝัั
ัะบัััะตะผัะผะพะฒ (ะฟะธะฒะพัะพะฒ), ะธะผะตัั **ััะตะดะฝัั ะปะธะฝะธั** ะธ **ััะตััะธะบ ะบะฐัะฐะฝะธะน**.
5. **ะะธะทัะฐะปะธะทะฐัะธั ยซะพัะดะตั-ัะปะพัยป**:
* **ะัะทััะธ ะดะตะปััั** (ะทะตะปะตะฝัะต/ะบัะฐัะฝัะต ะบััะณะธ) โ ะผะตััะฐ ะฟะพะฒััะตะฝะฝะพะณะพ ะฟะพะบัะฟะฐัะตะปัะฝะพะณะพ/ะฟัะพะดะฐะถะฝะพะณะพ ะดะฐะฒะปะตะฝะธั, ัะฐัััะธัะฐะฝะฝัะต ัะตัะตะท ะฑะตะทะพะฟะฐัะฝัะน **ะฟัะพะบัะธ-ะดะตะปััั**.
* **ะะปะพัะฝะพััะธ ะปะธะบะฒะธะดะฝะพััะธ** (ะฝะตะฝะฐะฒัะทัะธะฒัะต ะฟััะผะพัะณะพะปัะฝัะต ะปะตะฝัั) โ ัะบะพะฟะปะตะฝะธั ะพะฑัะตะผะฐ, ะบะพัะพััะต ะฝะตัะตะดะบะพ ะฟัะธััะณะธะฒะฐัั ัะตะฝั ะธะปะธ ัะดะตัะถะธะฒะฐัั ะตะต ะธ ะธััะตะทะฐัั, ะบะพะณะดะฐ ยซัะฐะทัะตะดะฐััััยป ัะธะปัะฝัะผ ะดะฒะธะถะตะฝะธะตะผ.
ะัะพะณ โ **ะฟะพะปะฝะฐั ะบะฐััะธะฝะบะฐ ะผะพะผะตะฝัะฐ**: ััะตะดะฝะตะต (VWAP), ะฑะฐะปะฐะฝั ะดะฝั (Opening Range), ััะฐััะฐั ัะธะปะฐ (ัะธะปััั ััะตะฝะดะฐ), ะฑะปะธะถะฐะนัะธะต ััะพะฒะฝะธ ัะพะฟะปะธะฒะฐ/ัะพัะผะพะทะพะฒ (ะทะพะฝั), ัะตะบััะธะต ัะพัะบะธ ััะธะปะธั (ะฟัะทััะธ ะธ ะฟะปะพัะฝะพััะธ).
---
## ะะพัะตะผั ะธะผะตะฝะฝะพ ััะธ ัะปะตะผะตะฝัั
* **VWAP** ะฟะพะบะฐะทัะฒะฐะตั, ะณะดะต ัะพััะตะดะพัะพัะตะฝะฐ ััะพะธะผะพััั; ัะตะฝะฐ ะปะธะฑะพ ะฒัะฐัะฐะตััั ะฒะพะบััะณ ะฝะตะณะพ, ะปะธะฑะพ ะฑััััะพ ัั
ะพะดะธั โ ะธะดะตะฐะปัะฝัะน ะพัะธะตะฝัะธั ัะบะฐะปัะฟะตัะฐ.
* **Opening Range** ัะธะบัะธััะตั ัะฐะฝะฝะธะน ะฐัะบัะธะพะฝ โ ะพั ะตะณะพ ะณัะฐะฝะธั ัะฐััะพ ะฝะฐัะธะฝะฐัััั ะฟัะพะฑะพะธ, ะฒะพะทะฒัะฐัั ะธ ัะตัะตััั.
* **EMA + ADX** ะพัะดะตะปััั ััะตะฝะด ะพั ยซะฟะธะปัยป, ะฟะพะทะฒะพะปัั ะพััะฐะฒะปััั ะฝะฐ ะณัะฐัะธะบะต ัะพะปัะบะพ ะทะพะฝั ะฟะพ ะฝะฐะฟัะฐะฒะปะตะฝะธั ััะฐััะตะณะพ ัะฐะนะผััะตะนะผะฐ.
* **ะะพะฝั ะพั ะฟะธะฒะพัะพะฒ** ะฟัะพััั, ะพะฑัะตะบัะธะฒะฝั ะธ ะฑััััั; ััะตะดะฝัั ะปะธะฝะธั ะฟะพะผะพะณะฐะตั ะฟะพะดัะฒะตัะถะดะฐัั ัะฐะทะฒะพัะพั, ััะตััะธะบ ะบะฐัะฐะฝะธะน ะฟะตัะตะฒะพะดะธั ััะฑัะตะบัะธะฒะฝะพััั ะฒ ัะธััั.
* **ะัะทััะธ ะธ ะฟะปะพัะฝะพััะธ** ะดะพะฑะฐะฒะปััั ัะปะพะน ยซััะธะปะธัยป: ะณะดะต ะธะผะตะฝะฝะพ ะฒะพะทะฝะธะบ ัะพะปัะพะบ ะธ ะณะดะต ัะบะพะฝัะตะฝััะธัะพะฒะฐะฝะฐ ะปะธะบะฒะธะดะฝะพััั.
ะะพะผะฑะธะฝะฐัะธั **ะบะพะฝัะตะบััะฐ + ััะพะฒะฝั + ััะธะปะธั** ัะผะตะฝััะฐะตั ะดะฒััะผััะปะตะฝะฝะพััั ะธ ััะบะพััะตั ะฟัะธะฝััะธะต ัะตัะตะฝะธั.
---
## ะะฐะบ ััะพ ัะฐะฑะพัะฐะตั (ะฟัะพัััะผะธ ัะปะพะฒะฐะผะธ)
* **VWAP** ะบะฐะถะดัะน ะดะตะฝั ััะฐัััะตั ะทะฐะฝะพะฒะพ: ััะผะผะฐ ยซัะธะฟะธัะฝะพะน ัะตะฝั ร ะพะฑัะตะผยป ะดะตะปะธััั ะฝะฐ ััะผะผะฐัะฝัะน ะพะฑัะตะผ.
* **Opening Range** โ ะฐะฒัะพะผะฐัะธัะตัะบะธะน (ะบัะฐัะฝัะน ะผะธะฝััะฐะผ ะฒะฐัะตะณะพ ัะฐะนะผััะตะนะผะฐ) ะธะปะธ ะฒัััะฝัั ะทะฐะดะฐะฝะฝัะน ะฟะตัะธะพะด; ะฟะพะบะฐ ะพะฝ ัะพัะผะธััะตััั, ัะธะบัะธัััััั ะผะฐะบัะธะผัะผ ะธ ะผะธะฝะธะผัะผ.
* **ะคะธะปััั ััะตะฝะดะฐ**
* ะะฒะต ัะบัะฟะพะฝะตะฝัะธะฐะปัะฝัะต ััะตะดะฝะธะต ะทะฐะดะฐัั ะฝะฐะฟัะฐะฒะปะตะฝะธะต.
* **ADX** (ะฟะพ ะถะตะปะฐะฝะธั) ะดะพะฑะฐะฒะปัะตั ยซัะธะปัยป. ะััะพัะฝะธะบ ะผะพะถะฝะพ ะฒะทััั ัะพ ััะฐััะตะณะพ ัะฐะนะผััะตะนะผะฐ.
* **ะะพะฝั**
* ะะดะฝะพะฒัะตะผะตะฝะฝะพ ัะฐะฑะพัะฐะตั **ะดะฒะต ะฟะฐัั** ะฟะธะฒะพัะพะฒ (ะฝะฐะฟัะธะผะตั 10-ะปะตะฒะพ 10-ะฟัะฐะฒะพ ะธ 5-ะปะตะฒะพ 5-ะฟัะฐะฒะพ).
* ะั ะฟะธะฒะพัะฐ ัััะพะธััั ะทะพะฝะฐ **ะฟัะตะดะปะพะถะตะฝะธั** (ะพั ะผะฐะบัะธะผัะผะฐ) ะธะปะธ **ัะฟัะพัะฐ** (ะพั ะผะธะฝะธะผัะผะฐ). ะะปัะฑะธะฝะฐ ะทะพะฝั = **ะบะพัััะธัะธะตะฝั ร Average True Range**; ะทะพะฝะฐ ััะฝะตััั ะฒะฟะตัะตะด.
* ะะฝัััะธ ัะธััะตััั **ััะตะดะฝัั ะปะธะฝะธั** (ะฟะพ ะถะตะปะฐะฝะธั).
* ะ ะตะถะธะผ **ยซัะพะปัะบะพ ะฟะพ ััะตะฝะดัยป** ัะบััะฒะฐะตั ะทะพะฝั ะฟัะพัะธะฒ ััะฐััะตะณะพ ะฝะฐะฟัะฐะฒะปะตะฝะธั.
* **ะกัะตััะธะบ ะบะฐัะฐะฝะธะน** ัะฒะตะปะธัะธะฒะฐะตััั, ะบะพะณะดะฐ ัะตะฝะฐ ัะฝะพะฒะฐ ะฒั
ะพะดะธั ะฒ ะทะพะฝั; ะฟะพะดะฟะธัั ะฟะพะบะฐะทัะฒะฐะตั ะฟะฐัั ะธ ะบะพะปะธัะตััะฒะพ ะบะฐัะฐะฝะธะน.
* **ะัะทััะธ**
* ะัะฟะพะปัะทัะตััั ะฑะตะทะพะฟะฐัะฝัะน **ะฟัะพะบัะธ-ะดะตะปััั** โ ะธะทะผะตัะตะฝะธะต ยซะฝะฐะฟััะถะตะฝะธัยป ะฒะฝัััะธ ัะฒะตัะธ.
* ะงะตัะตะท **ะบะฒะฐะฝัะธะปัะฝัะน ัะธะปััั** ะฒัะฒะพะดัััั ัะพะปัะบะพ ะฝะตะพะฑััะฝะพ ัะธะปัะฝัะต ะผะตััะฐ: ะฝะฐัััะฐะธะฒะฐัััั ะพะบะฝะพ ะธ ะฟัะพัะตะฝั ะบะฒะฐะฝัะธะปั; ัะฐะทะผะตั ะบััะถะบะฐ โ ัะธะปะฐ, ัะฒะตั: ะทะตะปะตะฝัะน ะฟะพะบัะฟะฐัะตะปะธ, ะบัะฐัะฝัะน ะฟัะพะดะฐะฒัั.
* **ะะปะพัะฝะพััะธ**
* ะััะฟะฝัะต ะฐะบัะธะฒะฝะพััะธ ะพัะผะตัะฐัััั **ะฝะตะฝะฐะฒัะทัะธะฒัะผะธ ะฟััะผะพัะณะพะปัะฝะธะบะฐะผะธ** (ะณะปัะฑะธะฝะฐ โ ะดะพะปั Average True Range).
* ะัะปะธ ะฟะปะพัะฝะพััั **ะฟัะพะฑะธะฒะฐะตััั** ะพะฑัะตะผะพะผ ะฒััะต ััะตะดะฝะตะณะพ, ะพะฝะฐ **ะธััะตะทะฐะตั** โ ัะฐััะพ ััะพ ะฟัะตะดะฒะตัะฐะตั ะฟัะพะดะพะปะถะตะฝะธะต.
---
## ะะฐะบ ะฟะพะปัะทะพะฒะฐัััั โ ะฟัะฐะบัะธัะตัะบะธะต ัั
ะตะผั
> ะ ะตะบะพะผะตะฝะดะฐัะธั: ะบัะธะฟัะพ ะธะปะธ ััััะตััั, ัะฐะนะผััะตะนะผ 1โ5 ะผะธะฝัั. ะะปั ััะฐััะตะณะพ ัะธะปัััะฐ ัะดะพะฑะฝะพ ะฒะทััั **1 ัะฐั** ะธะปะธ **15 ะผะธะฝัั**.
### 1) ะกะบะฐะปัะฟ ะฝะฐ ะพัะบะฐั ะฟะพ ััะตะฝะดั
1. ะะบะปััะธัะต **ยซัะพะปัะบะพ ะฟะพ ััะตะฝะดัยป**.
2. ะ ะฒะพัั
ะพะดััะตะผ ััะตะฝะดะต ะดะพะถะดะธัะตัั ะพัะบะฐัะฐ ะฒ **ะทะพะฝั ัะฟัะพัะฐ**, ะถะตะปะฐัะตะปัะฝะพ ััะดะพะผ ั **VWAP** ะธะปะธ ัะตัะตะดะธะฝะพะน **Opening Range**.
3. ะะพะดัะฒะตัะถะดะตะฝะธะต โ **ะทะตะปะตะฝัะต ะฟัะทััะธ** ั ะฝะธะถะฝะตะน ะณัะฐะฝะธัั ะทะพะฝั ะธะปะธ ัะฒะตะถะฐั **ะฟะปะพัะฝะพััั** ะฟะพะด ัะตะฝะพะน.
4. ะั
ะพะด ะฟะพัะปะต ะทะฐะบัััะธั ัะฒะตัะธ **ะฒััะต ััะตะดะฝะตะน ะปะธะฝะธะธ** ะทะพะฝั.
5. ะกัะพะฟ-ะปะพัั: ะทะฐ ะฝะธะถะฝัั ะณัะฐะฝะธัั ะทะพะฝั ะธะปะธ ะฝะตะฑะพะปััะพะน ะผะฝะพะถะธัะตะปั Average True Range.
6. ะฆะตะปะธ: ะฟัะตะดัะดััะธะน ะผะฐะบัะธะผัะผ, ะฒะตัั
Opening Range, ัะธะบัะธัะพะฒะฐะฝะฝัะต R-ะผะฝะพะถะธัะตะปะธ, ะปะธะฑะพ VWAP.
ะะปั ะฝะธัั
ะพะดััะตะณะพ ััะตะฝะดะฐ ะทะตัะบะฐะปัะฝะพ: ะทะพะฝั ะฟัะตะดะปะพะถะตะฝะธั, ะบัะฐัะฝัะต ะฟัะทััะธ ะธ ะฟะปะพัะฝะพััะธ ะฝะฐะด ัะตะฝะพะน.
### 2) ะะพะฝััะดะฒะธะถะตะฝะธะต ั ยซะฒัะฑะธะฒะฐะฝะธะตะผ ะปะธะบะฒะธะดะฝะพััะธยป
1. ะะตะนััะฐะปัะฝัะน ะธะปะธ ะบะพะฝััััะตะฝะดะพะฒัะน ัะตะถะธะผ.
2. ะฆะตะฝะฐ **ะฒัะฝะพัะธั ั
ะฒะพััะพะผ** ะณัะฐะฝะธัั ะทะพะฝั (ะธะปะธ ะปะธะฝะธั Opening Range) ะธ **ะทะฐะบััะฒะฐะตััั ะพะฑัะฐัะฝะพ ะฒะฝัััะธ**.
3. ะฆะฒะตั ะฟัะทััั ัะฐััะพ ะผะตะฝัะตััั (ะฟะพะณะปะพัะตะฝะธะต).
4. ะั
ะพะด ะฒะฝัััั ะทะพะฝั; ััะพะฟ โ ะทะฐ ั
ะฒะพัั ะฒัะฑะธะฒะฐะฝะธั; ัะตะปะธ: ััะตะดะฝัั ะปะธะฝะธั, ะฟัะพัะธะฒะพะฟะพะปะพะถะฝะฐั ะณัะฐะฝะธัะฐ ะทะพะฝั ะธะปะธ VWAP.
### 3) ะัะพะฑะพะน Opening Range + ัะตัะตัั
1. ะะพะถะดะธัะตัั ะทะฐะฒะตััะตะฝะธั ะดะธะฐะฟะฐะทะพะฝะฐ.
2. ะกะธะปัะฝัะน ะฟัะพะฑะพะน ั ะบััะฟะฝัะผ ะฟัะทััะตะผ โ ะฟัะธะทะฝะฐะบ ะฝะฐะผะตัะตะฝะธั.
3. ะัะธัะต **ัะตัะตัั** ะฒ ะทะพะฝะต ะฟะพ ััะตะฝะดั ััะดะพะผ ั ะปะธะฝะธะตะน ะดะธะฐะฟะฐะทะพะฝะฐ ะธ VWAP.
4. ะขะพัะณัะนัะต ะฟัะพะดะพะปะถะตะฝะธะต ะบ ัะปะตะดัััะตะน ะทะพะฝะต.
### 4) ะัะพะดะพะปะถะตะฝะธะต ะฟะพัะปะต ยซััะตะดะตะฝะฝะพะนยป ะฟะปะพัะฝะพััะธ
1. ะะพะณะดะฐ ะฟััะผะพัะณะพะปัะฝะธะบ ะฟะปะพัะฝะพััะธ **ะธััะตะทะฐะตั** ะฝะฐ ะฟะพะฒััะตะฝะฝะพะผ ะพะฑัะตะผะต, ััะพ ะทะฝะฐัะธั, ััะพ ะปะธะบะฒะธะดะฝะพััั ะฟะพะณะปะพัะตะฝะฐ.
2. ะขะพัะณัะนัะต ะฒ ััะพัะพะฝั ะฟัะพะฑะพั ะบ ะฑะปะธะถะฐะนัะตะน ะฟัะพัะธะฒะพะฟะพะปะพะถะฝะพะน ะทะพะฝะต.
---
## ะะฐัััะพะนะบะธ โ ะบัะฐัะบะฐั ัะฟะฐัะณะฐะปะบะฐ
**Core**
โ ะะปะธะฝะฐ Average True Range (ะดะปั ัะฐะทะผะตัะพะฒ ะทะพะฝ ะธ ะฟะปะพัะฝะพััะตะน).
โ ะะบะปััะตะฝะธะต VWAP ะธ Opening Range.
โ ะะปะธะฝะฐ Opening Range: ะฐะฒัะพะผะฐัะธัะตัะบะฐั (ะบัะฐัะฝะฐั ะผะธะฝััะฐะผ ะขะค) ะธะปะธ ัััะฝะฐั.
**Trend Filter**
โ ะ ะตะถะธะผ: ะฒัะบะป., ัะพะปัะบะพ ััะตะดะฝะธะต, ะปะธะฑะพ ััะตะดะฝะธะต + ADX.
โ ะััะพัะฝะธะบ ัะพ ััะฐััะตะณะพ ัะฐะนะผััะตะนะผะฐ ะธ ะตะณะพ ะทะฝะฐัะตะฝะธะต.
โ ะะปะธะฝั ััะตะดะฝะธั
, ะดะปะธะฝะฐ ADX ะธ ะฟะพัะพะณ ัะธะปั.
โ ะะพะบะฐะทะฐัั/ัะบัััั ะปะธะฝะธะน ััะตะดะฝะธั
.
**Zones (ะดะฒะต ะฟะฐัั ะพะดะฝะพะฒัะตะผะตะฝะฝะพ)**
โ ะะฐัะฐ A: ะปะตะฒ/ะฟัะฐะฒ; ะะฐัะฐ B: ะปะตะฒ/ะฟัะฐะฒ.
โ ะะปัะฑะธะฝะฐ ะทะพะฝั ร Average True Range, ะฟัะพะดะปะตะฝะธะต ะฟะพ ะฑะฐัะฐะผ.
โ ะกัะตะดะฝัั ะปะธะฝะธั, ัะตะถะธะผ **ยซัะพะปัะบะพ ะฟะพ ััะตะฝะดัยป**.
โ ะะพะดะฟะธัะธ ัะพ ััะตััะธะบะพะผ ะบะฐัะฐะฝะธะน.
**Bubbles**
โ ะะบะป./ะฒัะบะป., ะพะบะฝะพ ะฟะพะธัะบะฐ ะธ ะฟัะพัะตะฝั ะบะฒะฐะฝัะธะปั (ัะตะผ ะฒััะต ะฟัะพัะตะฝั โ ัะตะผ ัะตะถะต ะฟัะทััะธ).
**Densities**
โ ะะตััะธะบะฐ: ะฐะฑัะพะปััะฝะฐั ะฟัะพะบัะธ-ะดะตะปััั ะธะปะธ ัะธัััะน ะพะฑัะตะผ.
โ ะะบะฝะพ/ะบะฒะฐะฝัะธะปั, ะณะปัะฑะธะฝะฐ ร Average True Range, ะฟัะพะดะปะตะฝะธะต,
โ ะะพัะพะณ ะพะฑัะตะดะธะฝะตะฝะธั (ะฒ Average True Range),
โ ะฃัะปะพะฒะธะต ยซัะฐะทัะตะดะฐะฝะธัยป ะฟะพ ะพะฑัะตะผั,
โ ะกัะตะดะฝัั ะปะธะฝะธั ะฟะปะพัะฝะพััะธ (ะฟะพ ะถะตะปะฐะฝะธั).
---
## ะกะพะฒะตัั ะธ ัะธัะบะธ
* ะะฝะดะธะบะฐัะพั **ะฝะต ะธัะฟะพะปัะทัะตั ะฒะฝะตัะฝะธะต ะฟะพัะพะบะธ ะพัะดะตั-ัะปะพั**. ะะตะปััะฐ โ **ะฟัะพะบัะธ**, ะฟะพะดั
ะพะดััะฐั ะดะปั TradingView; ะฟะพะดะฑะธัะฐะนัะต ะบะฒะฐะฝัะธะปะธ ะฟะพะด ะธะฝััััะผะตะฝั ะธ ัะฐะนะผััะตะนะผ.
* ะะต ัะพัะณัะนัะต ะบะฐะถะดัะน ะฟัะทััั. ะกะบะปะตะนัะต **ะบะพะฝัะตะบัั (ััะตะฝะด + VWAP + Opening Range)** ั **ััะพะฒะฝะตะผ (ะทะพะฝะฐ)** ะธ **ััะธะปะธะตะผ (ะฟัะทััั/ะฟะปะพัะฝะพััั)**.
* ะกัะพะฟ-ะปะพัั โ ะทะฐ ะณัะฐะฝะธัะตะน ะทะพะฝั ะธะปะธ ะฟะพ Average True Range. ะ ะธัะบ ะฝะฐ ัะดะตะปะบั ะทะฐะดะฐะฒะฐะนัะต ะทะฐัะฐะฝะตะต.
* ะะตัะตะด ัะตะฐะปัะฝัะผะธ ะดะตะฝัะณะฐะผะธ ะฟัะพัะตััะธััะนัะต ะฟัะฐะฒะธะปะฐ ะฒ ัััะฐัะตะณะธะธ.
* ะ ะฐะทะฝัะต ััะฝะบะธ ะฒะตะดัั ัะตะฑั ะฟะพ-ัะฐะทะฝะพะผั; ะฝะฐัััะพะนะบะธ ะธะท ะะธัะบะพะธะฝะฐ ะผะพะณัั ะฝะต ะฟะพะดะพะนัะธ ะผะฐะปะพะปะธะบะฒะธะดะฝัะผ ะฐะปััะบะพะธะฝะฐะผ ะธะปะธ ะฐะบัะธัะผ.
* ะญัะพ ะฝะต ะธะฝะฒะตััะธัะธะพะฝะฝะฐั ัะตะบะพะผะตะฝะดะฐัะธั. ะกะบะฐะปัะฟะธะฝะณ โ ะฒััะพะบะธะน ัะธัะบ; ะฟัะพัะบะฐะปัะทัะฒะฐะฝะธะต ะธ ะฟะตัะตะธะทะฑััะพะบ ัะดะตะปะพะบ ะฑััััะพ ะฝะฐะฝะพััั ััะตัะฑ ะบะฐะฟะธัะฐะปั.
---
## ะงะตะผ ัะฝะธะบะฐะปะตะฝ PRO Scalper
* ะะฒะต **ะพะดะฝะพะฒัะตะผะตะฝะฝัะต** ัะธััะตะผั ะทะพะฝ ะฟะพะบะฐะทัะฒะฐัั ะธ **ะบััะฟะฝัั ััััะบัััั**, ะธ **ัะพัะฝัะต ะปะพะบะฐะปัะฝัะต ััะพะฒะฝะธ**.
* ะ ะตะถะธะผ **ยซัะพะปัะบะพ ะฟะพ ััะตะฝะดัยป** ัะธััะธั ัะบัะฐะฝ ะพั ะปะธัะฝะธั
ััะพะฒะฝะตะน ะธ ััะบะพััะตั ัะตัะตะฝะธะต.
* **ะกัะตััะธะบะธ ะบะฐัะฐะฝะธะน** ะดะฐัั ะบะพะปะธัะตััะฒะตะฝะฝัั ะพะฟะพัั.
* **ะกะฐะผะพะดะพััะฐัะพัะฝัะต ะฒะธะทัะฐะปะธะทะฐัะธะธ ััะธะปะธั** (ะฟัะทััะธ ะธ ะฟะปะพัะฝะพััะธ) โ ะฑะตะท ััะพัะพะฝะฝะธั
ะธััะพัะฝะธะบะพะฒ ะดะฐะฝะฝัั
.
* ะะบะบััะฐัะฝะฐั ัะฒะตัะพะฒะฐั ัั
ะตะผะฐ: ะฟะปะพัะฝะพััะธ โ ะผัะณะบะพ, ะทะพะฝั โ ััะฝะพ; Opening Range โ ะฐะดะฐะฟัะธะฒะฝัะน.
ะัััั ะพะฝ ััะฐะฝะตั ะฒะฐัะตะน ยซะบะฐััะพะน ะผะตััะฝะพััะธยป ะดะปั ะฑัััััั
ะธ ะดะธััะธะฟะปะธะฝะธัะพะฒะฐะฝะฝัั
ัะตัะตะฝะธะน ะฒะฝัััะธ ะดะฝั.
sideways market for strangleThis Pine Script is designed to identify **sideways or range-bound markets**, which are often ideal conditions for trading **options strangle strategies**. Here's a breakdown of what the script does:
---
### ๐ **Purpose:**
To **detect low-volatility, sideways market conditions** where price is not trending strongly in either direction โ suitable for **neutral options strategies like short strangles**.
---
### ๐ **Key Components:**
#### 1. **Inputs:**
- `RSI Length`: Default 14 โ used for calculating the Relative Strength Index (RSI).
- `ADX Length`: Default 14 โ used for calculating the Average Directional Index (ADX), DI+ (positive directional movement), and DI- (negative directional movement).
#### 2. **RSI Calculation:**
- `rsiValue` is calculated using the built-in `ta.rsi(close, rsiLength)`.
- A **sideways market** is expected when RSI is in the **40โ60 range**, indicating lack of strong momentum.
#### 3. **ADX and Directional Indicators (DI+ and DI-):**
- `diPlus` and `diMinus` are calculated based on recent price movements and the True Range.
- `dx` (Directional Index) measures the strength of trend direction using the difference between DI+ and DI-.
- `adx` is a smoothed version of `dx` and represents **overall trend strength**.
#### 4. **Sideways Market Conditions:**
- **RSI Condition**: RSI is between 40 and 60.
- **ADX Condition**:
- `adx <= 25` โ Weak or no trend.
- `adx < diPlus` and `adx < diMinus` โ Confirms ADX is lower than directional components, reducing likelihood of a trending market.
#### 5. **Signal Plot:**
- A **green label below the bar** (`shape.labelup`) is plotted when both conditions are met.
- Indicates potential sideways market conditions.
---
### โ
**Use Case:**
- This signal can help identify **low-volatility zones** suitable for **short strangles** or **iron condors**, where you profit from time decay while expecting the price to stay within a range.
Reversal Trading Bot Strategy[BullByte]Overview :
The indicator Reversal Trading Bot Strategy is crafted to capture potential market reversal points by combining momentum, volatility, and trend alignment filters. It uses a blend of technical indicators to identify both bullish and bearish reversal setups, ensuring that multiple market conditions are met before entering a trade.
Core Components :
Technical Indicators Used :
RSI (Relative Strength Index) :
Purpose : Detects divergence conditions by comparing recent lows/highs in price with the RSI.
Parameter : Length of 8.
Bollinger Bands (BB) :
Purpose : Measures volatility and identifies price levels that are statistically extreme.
Parameter : Length of 20 and a 2-standard deviation multiplier.
ADX (Average Directional Index) & DMI (Directional Movement Index) :
Purpose : Quantifies the strength of the trend. The ADX threshold is set at 20, and additional filters check for the alignment of the directional indicators (DI+ and DIโ).
ATR (Average True Range) :
Purpose : Provides a volatility measure used to set stop levels and determine risk through trailing stops.
Volume SMA (Simple Moving Average of Volume ):
Purpose : Helps confirm strength by comparing the current volume against a 20-period average, with an optional filter to ensure volume is at least twice the SMA.
User-Defined Toggle Filters :
Volume Filter : Confirms that the volume is above average (or twice the SMA) before taking trades.
ADX Trend Alignment Filter : Checks that the ADXโs directional indicators support the trade direction.
BB Close Confirmation : Optionally refines the entry by requiring price to be beyond the upper or lower Bollinger Band rather than just above or below.
RSI Divergence Exit : Allows the script to close positions if RSI divergence is detected.
BB Mean Reversion Exit : Closes positions if the price reverts to the Bollinger Bandsโ middle line.
Risk/Reward Filter : Ensures that the potential reward is at least twice the risk by comparing the distance to the Bollinger Band with the ATR.
Candle Movement Filter : Optional filter to require a minimum percentage move in the candle to confirm momentum.
ADX Trend Exit : Closes positions if the ADX falls below the threshold and the directional indicators reverse.
Entry Conditions :
Bullish Entry :
RSI Divergence : Checks if the current close is lower than a previous low while the RSI is above the previous low, suggesting bullish divergence.
Bollinger Confirmation : Requires that the price is above the lower (or upper if confirmation is toggled) Bollinger Band.
Volume & Trend Filters : Combines volume condition, ADX strength, and an optional candle momentum condition.
Risk/Reward Check : Validates that the trade meets a favorable risk-to-reward ratio.
Bearish Entry :
Uses a mirror logic of the bullish entry by checking for bearish divergence, ensuring the price is below the appropriate Bollinger level, and confirming volume, trend strength, candle pattern, and risk/reward criteria.
Trade Execution and Exit Strateg y:
Trade Execution :
Upon meeting the entry conditions, the strategy initiates a long or short position.
Stop Loss & Trailing Stops :
A stop-loss is dynamically set using the ATR value, and trailing stops are implemented as a percentage of the close price.
Exit Conditions :
Additional exit filters can trigger early closures based on RSI divergence, mean reversion (via the middle Bollinger Band), or a weakening trend as signaled by ADX falling below its threshold.
This multi-layered exit strategy is designed to lock in gains or minimize losses if the market begins to reverse unexpectedly.
How the Strategy Works in Different Market Conditions :
Trending Markets :
The ADX filter ensures that trades are only taken when the trend is strong. When the market is trending, the directional movement indicators help confirm the momentum, making the reversal signal more reliable.
Ranging Markets :
In choppy markets, the Bollinger Bands expand and contract, while the RSI divergence can highlight potential turning points. The optional filters can be adjusted to avoid false signals in low-volume or low-volatility conditions.
Volatility Management :
With ATR-based stop-losses and a risk/reward filter, the strategy adapts to current market volatility, ensuring that risk is managed consistently.
Recommendation on using this Strategy with a Trading Bot :
This strategy is well-suited for high-frequency trading (HFT) due to its ability to quickly identify reversal setups and execute trades dynamically with automated stop-loss and trailing exits. By integrating this script with a TradingView webhook-based bot or an API-driven execution system, traders can automate trade entries and exits in real-time, reducing manual execution delays and capitalizing on fast market movements.
Disclaimer :
This script is provided for educational and informational purposes only. It is not intended as investment advice. Trading involves significant risk, and you should always conduct your own research and analysis before making any trading decisions. The author is not responsible for any losses incurred while using this script.
Trend Momentum Strength Indicator, Built for Pairs TradingOverview:
This script combines multiple indicators to provide a comprehensive analysis of both trend strength and trend momentum. It is tailored specifically for pairs trading strategies but can also be used for other trading strategies.
Benefit of Comprehensive Analysis:
Having an indicator that evaluates both trend strength and trend momentum is crucial for traders looking to make informed decisions. It allows traders to not only identify the direction and intensity of a trend but also gauge the momentum behind it. This dual capability helps in confirming potential trade opportunities, whether for entering trades with strong trends or considering reversals during overbought or oversold conditions. By integrating both aspects into one tool, traders can gain a holistic view of market dynamics, enhancing their ability to time entries and manage risk effectively.
Features:
* Trend Strength:
Enhanced ADX Formula: The script includes modifications to the standard ADX formula along with DI+ and DI- to provide more responsive trend strength readings.
Directional Indicators: DI+ (green line) indicates positive directional movement, while DI- (red line) indicates negative directional movement.
Trend Momentum:
Modified Stochastic Indicators: The script uses %K and %D indicators, modified and combined with ADX to give a clear indication of trend momentum.
Momentum Strength: This helps determine the strength and direction of the momentum.
Trading Signals:
Combining Indicators: The script combines ADX, DI+, DI-, %K, and %D to generate comprehensive trading signals.
Optimal Entry Points: Designed to identify optimal entry points for trades, particularly in pairs trading.
Colored Area at Bottom:
This area provides two easy-to-read functions:
Color:
Green: Upward momentum (ratio above 1)
Red: Downward momentum (ratio below 1)
Height:
Higher in green: Stronger upward momentum
Lower in red: Stronger downward momentum
Legend:
Green Line: DI+ (Positive)
Red Line: DI- (Negative)
Black Line: ADX
How to Read This Indicator:
1) Trend Direction:
DI+ above DI-: Indicates an upward trend.
DI- above DI+: Indicates a downward trend.
2) Trend Strength:
ADX below 20: Indicates a neutral trend.
ADX between 20 and 25: Indicates a weak trend.
ADX above 25: Indicates a strong trend.
Trading Signals in Pairs Trading:
Neutral Trend: Ideal for pairs trading when no strong trend is detected.
Overbought/Oversold: Uses %K and %D to identify overbought/oversold conditions that support trade decisions.
Entry Signals: Green signals for long positions, red signals for short positions, based on combined criteria of neutral trend strength and supportive momentum.
Application in Pairs Trading:
Neutral trend: In pairs trading strategies, where neutral movement is often sought, this indicator provides signals that are especially relevant during periods of neutral trend strength and supportive momentum, aiding traders in identifying optimal entry
Risk Management: Combining signals from ADX, DI+, DI-, %K, and %D helps traders make more informed decisions regarding entry points, enhancing risk management.
Example Chart (The indicator is on the upper right corner):
Clean Presentation: The chart only includes the necessary elements to demonstrate the indicatorโs functionality.
Demonstrates: Overbought/oversold conditions, upward/downward/no momentum, and trading signals with/without specific scenarios.
AI SuperTrend x Pivot Percentile - Strategy [PresentTrading]โ Introduction and How it is Different
The AI SuperTrend x Pivot Percentile strategy is a sophisticated trading approach that integrates AI-driven analysis with traditional technical indicators. Combining the AI SuperTrend with the Pivot Percentile strategy highlights several key advantages:
1. Enhanced Accuracy in Trend Prediction: The AI SuperTrend utilizes K-Nearest Neighbors (KNN) algorithm for trend prediction, improving accuracy by considering historical data patterns. This is complemented by the Pivot Percentile analysis which provides additional context on trend strength.
2. Comprehensive Market Analysis: The integration offers a multi-faceted approach to market analysis, combining AI insights with traditional technical indicators. This dual approach captures a broader range of market dynamics.
BTC 6H L/S Performance
Local
โ Strategy: How it Works - Detailed Explanation
๐ถ AI-Enhanced SuperTrend Indicators
1. SuperTrend Calculation:
- The SuperTrend indicator is calculated using a moving average and the Average True Range (ATR). The basic formula is:
- Upper Band = Moving Average + (Multiplier ร ATR)
- Lower Band = Moving Average - (Multiplier ร ATR)
- The moving average type (SMA, EMA, WMA, RMA, VWMA) and the length of the moving average and ATR are adjustable parameters.
- The direction of the trend is determined based on the position of the closing price in relation to these bands.
2. AI Integration with K-Nearest Neighbors (KNN):
- The KNN algorithm is applied to predict trend direction. It uses historical price data and SuperTrend values to classify the current trend as bullish or bearish.
- The algorithm calculates the 'distance' between the current data point and historical points. The 'k' nearest data points (neighbors) are identified based on this distance.
- A weighted average of these neighbors' trends (bullish or bearish) is calculated to predict the current trend.
For more please check: Multi-TF AI SuperTrend with ADX - Strategy
๐ถ Pivot Percentile Analysis
1. Percentile Calculation:
- This involves calculating the percentile ranks for high and low prices over a set of predefined lengths.
- The percentile function is typically defined as:
- Percentile = Value at (P/100) ร (N + 1)th position
- Where P is the desired percentile, and N is the number of data points.
2. Trend Strength Evaluation:
- The calculated percentiles for highs and lows are used to determine the strength of bullish and bearish trends.
- For instance, a high percentile rank in the high prices may indicate a strong bullish trend, and vice versa for bearish trends.
For more please check: Pivot Percentile Trend - Strategy
๐ถ Strategy Integration
1. Combining SuperTrend and Pivot Percentile:
- The strategy synthesizes the insights from both AI-enhanced SuperTrend and Pivot Percentile analysis.
- It compares the trend direction indicated by the SuperTrend with the strength of the trend as suggested by the Pivot Percentile analysis.
2. Signal Generation:
- A trading signal is generated when both the AI-enhanced SuperTrend and the Pivot Percentile analysis agree on the trend direction.
- For instance, a bullish signal is generated when both the SuperTrend is bullish, and the Pivot Percentile analysis shows strength in bullish trends.
๐ถ Risk Management and Filters
- ADX and DMI Filter: The strategy uses the Average Directional Index (ADX) and the Directional Movement Index (DMI) as filters to assess the trend's strength and direction.
- Dynamic Trailing Stop Loss: Based on the SuperTrend indicator, the strategy dynamically adjusts stop-loss levels to manage risk effectively.
This strategy stands out for its ability to combine real-time AI analysis with established technical indicators, offering traders a nuanced and responsive tool for navigating complex market conditions. The equations and algorithms involved are pivotal in accurately identifying market trends and potential trade opportunities.
โ Usage
To effectively use this strategy, traders should:
1. Understand the AI and Pivot Percentile Indicators: A clear grasp of how these indicators work will enable traders to make informed decisions.
2. Interpret the Signals Accurately: The strategy provides bullish, bearish, and neutral signals. Traders should align these signals with their market analysis and trading goals.
3. Monitor Market Conditions: Given that this strategy is sensitive to market dynamics, continuous monitoring is crucial for timely decision-making.
4. Adjust Settings as Needed: Traders should feel free to tweak the input parameters to suit their trading preferences and to respond to changing market conditions.
โDefault Settings and Their Impact on Performance
1. Trading Direction (Default: "Both")
Effect: Determines whether the strategy will take long positions, short positions, or both. Adjusting this setting can align the strategy with the trader's market outlook or risk preference.
2. AI Settings (Neighbors: 3, Data Points: 24)
Neighbors: The number of nearest neighbors in the KNN algorithm. A higher number might smooth out noise but could miss subtle, recent changes. A lower number makes the model more sensitive to recent data but may increase noise.
Data Points: Defines the amount of historical data considered. More data points provide a broader context but may dilute recent trends' impact.
3. SuperTrend Settings (Length: 10, Factor: 3.0, MA Source: "WMA")
Length: Affects the sensitivity of the SuperTrend indicator. A longer length results in a smoother, less sensitive indicator, ideal for long-term trends.
Factor: Determines the bandwidth of the SuperTrend. A higher factor creates wider bands, capturing larger price movements but potentially missing short-term signals.
MA Source: The type of moving average used (e.g., WMA - Weighted Moving Average). Different MA types can affect the trend indicator's responsiveness and smoothness.
4. AI Trend Prediction Settings (Price Trend: 10, Prediction Trend: 80)
Price Trend and Prediction Trend Lengths: These settings define the lengths of weighted moving averages for price and SuperTrend, impacting the responsiveness and smoothness of the AI's trend predictions.
5. Pivot Percentile Settings (Length: 10)
Length: Influences the calculation of pivot percentiles. A shorter length makes the percentile more responsive to recent price changes, while a longer length offers a broader view of price trends.
6. ADX and DMI Settings (ADX Length: 14, Time Frame: 'D')
ADX Length: Defines the period for the Average Directional Index calculation. A longer period results in a smoother ADX line.
Time Frame: Sets the time frame for the ADX and DMI calculations, affecting the sensitivity to market changes.
7. Commission, Slippage, and Initial Capital
These settings relate to transaction costs and initial investment, directly impacting net profitability and strategy feasibility.
Machine Learning: Lorentzian ClassificationโโOVERVIEW
A Lorentzian Distance Classifier (LDC) is a Machine Learning classification algorithm capable of categorizing historical data from a multi-dimensional feature space. This indicator demonstrates how Lorentzian Classification can also be used to predict the direction of future price movements when used as the distance metric for a novel implementation of an Approximate Nearest Neighbors (ANN) algorithm.
โโBACKGROUND
In physics, Lorentzian space is perhaps best known for its role in describing the curvature of space-time in Einstein's theory of General Relativity (2). Interestingly, however, this abstract concept from theoretical physics also has tangible real-world applications in trading.
Recently, it was hypothesized that Lorentzian space was also well-suited for analyzing time-series data (4), (5). This hypothesis has been supported by several empirical studies that demonstrate that Lorentzian distance is more robust to outliers and noise than the more commonly used Euclidean distance (1), (3), (6). Furthermore, Lorentzian distance was also shown to outperform dozens of other highly regarded distance metrics, including Manhattan distance, Bhattacharyya similarity, and Cosine similarity (1), (3). Outside of Dynamic Time Warping based approaches, which are unfortunately too computationally intensive for PineScript at this time, the Lorentzian Distance metric consistently scores the highest mean accuracy over a wide variety of time series data sets (1).
Euclidean distance is commonly used as the default distance metric for NN-based search algorithms, but it may not always be the best choice when dealing with financial market data. This is because financial market data can be significantly impacted by proximity to major world events such as FOMC Meetings and Black Swan events. This event-based distortion of market data can be framed as similar to the gravitational warping caused by a massive object on the space-time continuum. For financial markets, the analogous continuum that experiences warping can be referred to as "price-time".
Below is a side-by-side comparison of how neighborhoods of similar historical points appear in three-dimensional Euclidean Space and Lorentzian Space:
This figure demonstrates how Lorentzian space can better accommodate the warping of price-time since the Lorentzian distance function compresses the Euclidean neighborhood in such a way that the new neighborhood distribution in Lorentzian space tends to cluster around each of the major feature axes in addition to the origin itself. This means that, even though some nearest neighbors will be the same regardless of the distance metric used, Lorentzian space will also allow for the consideration of historical points that would otherwise never be considered with a Euclidean distance metric.
Intuitively, the advantage inherent in the Lorentzian distance metric makes sense. For example, it is logical that the price action that occurs in the hours after Chairman Powell finishes delivering a speech would resemble at least some of the previous times when he finished delivering a speech. This may be true regardless of other factors, such as whether or not the market was overbought or oversold at the time or if the macro conditions were more bullish or bearish overall. These historical reference points are extremely valuable for predictive models, yet the Euclidean distance metric would miss these neighbors entirely, often in favor of irrelevant data points from the day before the event. By using Lorentzian distance as a metric, the ML model is instead able to consider the warping of price-time caused by the event and, ultimately, transcend the temporal bias imposed on it by the time series.
For more information on the implementation details of the Approximate Nearest Neighbors (ANN) algorithm used in this indicator, please refer to the detailed comments in the source code.
โโHOW TO USE
Below is an explanatory breakdown of the different parts of this indicator as it appears in the interface:
Below is an explanation of the different settings for this indicator:
General Settings:
Source - This has a default value of "hlc3" and is used to control the input data source.
Neighbors Count - This has a default value of 8, a minimum value of 1, a maximum value of 100, and a step of 1. It is used to control the number of neighbors to consider.
Max Bars Back - This has a default value of 2000.
Feature Count - This has a default value of 5, a minimum value of 2, and a maximum value of 5. It controls the number of features to use for ML predictions.
Color Compression - This has a default value of 1, a minimum value of 1, and a maximum value of 10. It is used to control the compression factor for adjusting the intensity of the color scale.
Show Exits - This has a default value of false. It controls whether to show the exit threshold on the chart.
Use Dynamic Exits - This has a default value of false. It is used to control whether to attempt to let profits ride by dynamically adjusting the exit threshold based on kernel regression.
Feature Engineering Settings:
Note: The Feature Engineering section is for fine-tuning the features used for ML predictions. The default values are optimized for the 4H to 12H timeframes for most charts, but they should also work reasonably well for other timeframes. By default, the model can support features that accept two parameters (Parameter A and Parameter B, respectively). Even though there are only 4 features provided by default, the same feature with different settings counts as two separate features. If the feature only accepts one parameter, then the second parameter will default to EMA-based smoothing with a default value of 1. These features represent the most effective combination I have encountered in my testing, but additional features may be added as additional options in the future.
Feature 1 - This has a default value of "RSI" and options are: "RSI", "WT", "CCI", "ADX".
Feature 2 - This has a default value of "WT" and options are: "RSI", "WT", "CCI", "ADX".
Feature 3 - This has a default value of "CCI" and options are: "RSI", "WT", "CCI", "ADX".
Feature 4 - This has a default value of "ADX" and options are: "RSI", "WT", "CCI", "ADX".
Feature 5 - This has a default value of "RSI" and options are: "RSI", "WT", "CCI", "ADX".
Filters Settings:
Use Volatility Filter - This has a default value of true. It is used to control whether to use the volatility filter.
Use Regime Filter - This has a default value of true. It is used to control whether to use the trend detection filter.
Use ADX Filter - This has a default value of false. It is used to control whether to use the ADX filter.
Regime Threshold - This has a default value of -0.1, a minimum value of -10, a maximum value of 10, and a step of 0.1. It is used to control the Regime Detection filter for detecting Trending/Ranging markets.
ADX Threshold - This has a default value of 20, a minimum value of 0, a maximum value of 100, and a step of 1. It is used to control the threshold for detecting Trending/Ranging markets.
Kernel Regression Settings:
Trade with Kernel - This has a default value of true. It is used to control whether to trade with the kernel.
Show Kernel Estimate - This has a default value of true. It is used to control whether to show the kernel estimate.
Lookback Window - This has a default value of 8 and a minimum value of 3. It is used to control the number of bars used for the estimation. Recommended range: 3-50
Relative Weighting - This has a default value of 8 and a step size of 0.25. It is used to control the relative weighting of time frames. Recommended range: 0.25-25
Start Regression at Bar - This has a default value of 25. It is used to control the bar index on which to start regression. Recommended range: 0-25
Display Settings:
Show Bar Colors - This has a default value of true. It is used to control whether to show the bar colors.
Show Bar Prediction Values - This has a default value of true. It controls whether to show the ML model's evaluation of each bar as an integer.
Use ATR Offset - This has a default value of false. It controls whether to use the ATR offset instead of the bar prediction offset.
Bar Prediction Offset - This has a default value of 0 and a minimum value of 0. It is used to control the offset of the bar predictions as a percentage from the bar high or close.
Backtesting Settings:
Show Backtest Results - This has a default value of true. It is used to control whether to display the win rate of the given configuration.
โโWORKS CITED
(1) R. Giusti and G. E. A. P. A. Batista, "An Empirical Comparison of Dissimilarity Measures for Time Series Classification," 2013 Brazilian Conference on Intelligent Systems, Oct. 2013, DOI: 10.1109/bracis.2013.22.
(2) Y. Kerimbekov, H. ล. Bilge, and H. H. Uฤurlu, "The use of Lorentzian distance metric in classification problems," Pattern Recognition Letters, vol. 84, 170โ176, Dec. 2016, DOI: 10.1016/j.patrec.2016.09.006.
(3) A. Bagnall, A. Bostrom, J. Large, and J. Lines, "The Great Time Series Classification Bake Off: An Experimental Evaluation of Recently Proposed Algorithms." ResearchGate, Feb. 04, 2016.
(4) H. ล. Bilge, Yerzhan Kerimbekov, and Hasan Hรผseyin Uฤurlu, "A new classification method by using Lorentzian distance metric," ResearchGate, Sep. 02, 2015.
(5) Y. Kerimbekov and H. ลakir Bilge, "Lorentzian Distance Classifier for Multiple Features," Proceedings of the 6th International Conference on Pattern Recognition Applications and Methods, 2017, DOI: 10.5220/0006197004930501.
(6) V. Surya Prasath et al., "Effects of Distance Measure Choice on KNN Classifier Performance - A Review." .
โโACKNOWLEDGEMENTS
@veryfid - For many invaluable insights, discussions, and advice that helped to shape this project.
@capissimo - For open sourcing his interesting ideas regarding various KNN implementations in PineScript, several of which helped inspire my original undertaking of this project.
@RikkiTavi - For many invaluable physics-related conversations and for his helping me develop a mechanism for visualizing various distance algorithms in 3D using JavaScript
@jlaurel - For invaluable literature recommendations that helped me to understand the underlying subject matter of this project.
@annutara - For help in beta-testing this indicator and for sharing many helpful ideas and insights early on in its development.
@jasontaylor7 - For helping to beta-test this indicator and for many helpful conversations that helped to shape my backtesting workflow
@meddymarkusvanhala - For helping to beta-test this indicator
@dlbnext - For incredibly detailed backtesting testing of this indicator and for sharing numerous ideas on how the user experience could be improved.
Standard Error of the Estimate -Jon Andersen- V2Original implementation idea of bands by:
Traders issue: Stocks & Commodities V. 14:9 (375-379):
Standard Error Bands by Jon Andersen
Standard Error Bands are quite different than Bollinger's.
First, they are bands constructed around a linear regression curve.
Second, the bands are based on two standard errors above and below this regression line.
The error bands measure the standard error of the estimate around the linear regression line.
Therefore, as a price series follows the course of the regression line the bands will narrow , showing little error in the estimate. As the market gets noisy and random, the error will be greater resulting in wider bands .
Thanks to the work of @glaz & @XeL_arjona
In this version you can change the type of moving averages and the source of the bands.
Add a few studies of @dgtrd
1- ADX Colored Directional Movement Line
Directional Movement (DMI) (created by J. Welles Wilder ) consists of the Average Directional Index ( ADX ), to define whether or not there is a trend present, and Plus Directional Indicator (+D I) and Minus Directional Indicator (-D I) serve the purpose of determining trend direction
ADX Colored Directional Movement Line is custom interpretation of Directional Movement (DMI) with aim to present all 3 DMI indicator components with SINGLE line and ability to be added on top of the price chart (main chart)
How to interpret :
โ* triangle shapes:
โโโฒ- bullish : diplus >= diminus
โโโผ- bearish : diplus < diminus
* colors:
โโgreen - bullish trend : adx >= strongTrend and di+ > di-
โโred - bearish trend : adx >= strongTrend and di+ < di-
โโgray - no trend : weekTrend < adx < strongTrend
โโyellow - week trend : adx < weekTrend
* color density:
โโdarker : adx growing
โโlighter : adx falling
2- Volatility Colored Price/MA Line
Custom interpretation of the idea โPrices high above the moving average (MA) or low below it are likely to be remedied in the future by a reverse price movementโ. Further details can be found under study โPrice Distance to its MA by DGTโ
How to interpret :
โ-โฒ โ Bullish , Price Action above Moving Average
โ-โผ โ Bearish , Price Action below Moving Average
โ-Gray/Black - Low Volatility
โ-Green/Red โ Price Action in Threshold Bands
โ-Dark Green/Red โ Price Action Exceeds Threshold Bands
3- Volume Weighted Bar s
Volume Weighted Bars, a study of Kฤฑvancฬง Oฬzbilgicฬง, aims to present whether volume supports price movements. Volume Weighted Bars are calculated based on volume moving average.
How to interpret :
โ-Volume high above the volume moving average be displayed with red/green colors
โ-Average volume values will remain as they are and
โ-Volume low below the volume moving average will be indicated with darker colors
4- Fear & Greed index value, using technical anlysis approach calculated based on :
โโฎฉ1 - Price Momentum : Price Distance to its Moving Average
โโฎฉ2 - Strenght : Rate of Return, price movement over a period of time
โโฎฉ3 - Money Flow : Chaikin Money Flow, quantify changes in buying and selling pressure. CMF calculations is based on Accumulation/Distribution
โโฎฉ4 - Market Volatility : CBOE Volatility Index ( VIX ), the Volatility Index, or VIX , is a real-time market index that represents the market's expectation. It provides a measure of market risk and investors' sentiments
โโฎฉ5 -Safe Haven Demand: in this study GOLD demand is assumed
Estrategia de Monitor - RSI/EMAThis indicator, competes the signals of two of the most important and reliable indicators for monitoring price trends, the Squeeze Monitor and the RSI.
For a better visualization of the relationship of the indicators with the price, the Squeeze Monitor is presented in colored bars that represent the trend of the indicator. The RSI is combined with the EMA of the RSI that supports its directionality.
As additional support for decision making, the ADX is also plotted, as an element to project the force of the next movement.
The indicator settings are presented in the configuration of the indicator. The following parameters can be adjusted there:
** Monitor Parameters **
Monitor Length Squeeze -> "Long. Monitor"
** ADX parameters **
ADX Longitug -> "Long. ADX"
ADX Smoother -> "Suavizador ADX"
ADX Variation Factor -> "Factor Var. ADX"
ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย This parameter defines the minimum variation for the
ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ADX address highlighting
** RSI parameters **
RSI Length -> "Long. RSI"
RSI Smoothing -> "Suavizador RSI"
RSI EMA Length -> "Long. EMA del RSI"
Finally, the Script consolidates the information, based on the trends of the indicators, and changes the color of the candle body. The color code considers Green for the uptrend, Red for the Downtrend and Yellow in transition processes (not operable).
Market Regime# MARKET REGIME IDENTIFICATION & TRADING SYSTEM
## Complete User Guide
---
## ๐ TABLE OF CONTENTS
1. (#overview)
2. (#regimes)
3. (#indicator-usage)
4. (#entry-signals)
5. (#exit-signals)
6. (#regime-strategies)
7. (#confluence)
8. (#backtesting)
9. (#optimization)
10. (#examples)
---
## OVERVIEW
### What This System Does
This is a **complete market regime identification and trading system** that:
1. **Identifies 6 distinct market regimes** automatically
2. **Adapts trading tactics** to each regime
3. **Provides high-probability entry signals** with confluence scoring
4. **Shows optimal exit points** for each trade
5. **Can be backtested** to validate performance
### Two Components Provided
1. **Indicator** (`market_regime_indicator.pine`)
- Visual regime identification
- Entry/exit signals on chart
- Dynamic support/resistance
- Info tables with live data
- Use for manual trading
2. **Strategy** (`market_regime_strategy.pine`)
- Fully automated backtestable version
- Same logic as indicator
- Position sizing and risk management
- Performance metrics
- Use for backtesting and automation
---
## THE 6 MARKET REGIMES
### 1. ๐ข BULL TRENDING
**Characteristics:**
- Strong uptrend
- Price above SMA50 and SMA200
- ADX > 25 (strong trend)
- Higher highs and higher lows
- DI+ > DI- (bullish momentum)
**What It Means:**
- Market has clear upward direction
- Buyers in control
- Pullbacks are buying opportunities
- Strongest regime for long positions
**How to Trade:**
- โ
**BUY dips to EMA20 or SMA20**
- โ
Enter when RSI < 60 on pullback
- โ
Hold through minor corrections
- โ Don't short against the trend
- โ Don't sell too early
**Expected Behavior:**
- Pullbacks are shallow (5-10%)
- Bounces are strong
- Support at moving averages holds
- Volume increases on rallies
---
### 2. ๐ด BEAR TRENDING
**Characteristics:**
- Strong downtrend
- Price below SMA50 and SMA200
- ADX > 25 (strong trend)
- Lower highs and lower lows
- DI- > DI+ (bearish momentum)
**What It Means:**
- Market has clear downward direction
- Sellers in control
- Rallies are selling opportunities
- Strongest regime for short positions
**How to Trade:**
- โ
**SELL rallies to EMA20 or SMA20**
- โ
Enter when RSI > 40 on bounce
- โ
Hold through minor bounces
- โ Don't buy against the trend
- โ Don't cover shorts too early
**Expected Behavior:**
- Rallies are weak (5-10%)
- Selloffs are strong
- Resistance at moving averages holds
- Volume increases on declines
---
### 3. ๐ต BULL RANGING
**Characteristics:**
- Bullish bias but consolidating
- Price near or above SMA50
- ADX < 20 (weak trend)
- Trading in range
- Choppy price action
**What It Means:**
- Uptrend is pausing
- Accumulation phase
- Support and resistance zones clear
- Lower volatility
**How to Trade:**
- โ
**BUY at support zone**
- โ
Enter when RSI < 40
- โ
Take profits at resistance
- โ ๏ธ Smaller position sizes
- โ ๏ธ Tighter stops
**Expected Behavior:**
- Range-bound oscillations
- Support bounces repeatedly
- Resistance rejections common
- Eventually breaks higher (usually)
---
### 4. ๐ BEAR RANGING
**Characteristics:**
- Bearish bias but consolidating
- Price near or below SMA50
- ADX < 20 (weak trend)
- Trading in range
- Choppy price action
**What It Means:**
- Downtrend is pausing
- Distribution phase
- Support and resistance zones clear
- Lower volatility
**How to Trade:**
- โ
**SELL at resistance zone**
- โ
Enter when RSI > 60
- โ
Take profits at support
- โ ๏ธ Smaller position sizes
- โ ๏ธ Tighter stops
**Expected Behavior:**
- Range-bound oscillations
- Resistance holds repeatedly
- Support bounces are weak
- Eventually breaks lower (usually)
---
### 5. โช CONSOLIDATION
**Characteristics:**
- No clear direction
- Range compression
- Very low ADX (< 15 often)
- Price inside tight range
- Neutral sentiment
**What It Means:**
- Market is coiling
- Building energy for next move
- Indecision between buyers/sellers
- Calm before the storm
**How to Trade:**
- โ
**WAIT for breakout direction**
- โ
Enter on high-volume breakout
- โ
Direction becomes clear
- โ Don't trade inside the range
- โ Avoid choppy scalping
**Expected Behavior:**
- Narrow range
- Low volume
- False breakouts possible
- Explosive move when it breaks
---
### 6. ๐ฃ CHAOS (High Volatility)
**Characteristics:**
- Extreme volatility
- No clear direction
- Erratic price swings
- ATR > 2x average
- Unpredictable
**What It Means:**
- Market panic or euphoria
- News-driven moves
- Emotion dominates logic
- Highest risk environment
**How to Trade:**
- โ **STAY OUT!**
- โ No positions
- โ Wait for stability
- โ
Protect existing positions
- โ
Reduce risk
**Expected Behavior:**
- Large intraday swings
- Gaps up/down
- Stop hunts
- Whipsaws
- Eventually calms down
---
## INDICATOR USAGE
### Visual Elements
#### 1. Background Colors
- **Light Green** = Bull Trending (go long)
- **Light Red** = Bear Trending (go short)
- **Light Teal** = Bull Ranging (buy dips)
- **Light Orange** = Bear Ranging (sell rallies)
- **Light Gray** = Consolidation (wait)
- **Purple** = Chaos (stay out!)
#### 2. Regime Labels
- Appear when regime changes
- Show new regime name
- Positioned at highs (bullish) or lows (bearish)
#### 3. Entry Signals
- **Green "LONG"** labels = Buy here
- **Red "SHORT"** labels = Sell here
- Number shows confluence score (X/5 signals)
- Hover for details (stop, target, RSI, etc.)
#### 4. Exit Signals
- **Orange "EXIT LONG"** = Close long position
- **Orange "EXIT SHORT"** = Close short position
- Shows exit reason in tooltip
#### 5. Support/Resistance Lines
- **Green line** = Dynamic support (buy zone)
- **Red line** = Dynamic resistance (sell zone)
- Adapts to regime automatically
#### 6. Moving Averages
- **Blue** = SMA 20 (short-term trend)
- **Orange** = SMA 50 (medium-term trend)
- **Purple** = SMA 200 (long-term trend)
### Information Tables
#### Top Right Table (Main Info)
Shows real-time market conditions:
- **Current Regime** - What regime we're in
- **Bias** - Long, Short, Breakout, or Stay Out
- **ADX** - Trend strength (>25 = strong)
- **Trend** - Strong, Moderate, or Weak
- **Volatility** - High or Normal
- **Vol Ratio** - Current vs average volatility
- **RSI** - Momentum (>70 overbought, <30 oversold)
- **vs SMA50/200** - Price position relative to MAs
- **Support/Resistance** - Exact price levels
- **Long/Short Signals** - Confluence scores (X/5)
#### Bottom Right Table (Regime Guide)
Quick reference for each regime:
- What action to take
- What strategy to use
- Color-coded for quick identification
---
## ENTRY SIGNALS EXPLAINED
### Confluence Scoring System (5 Factors)
Each entry signal is scored 0-5 based on how many factors align:
#### For LONG Entries:
1. โ
**Regime Alignment** - In Bull Trending or Bull Ranging
2. โ
**RSI Pullback** - RSI between 35-50 (not overbought)
3. โ
**Near Support** - Price within 2% of dynamic support
4. โ
**MACD Turning Up** - Momentum shifting bullish
5. โ
**Volume Confirmation** - Above average volume
#### For SHORT Entries:
1. โ
**Regime Alignment** - In Bear Trending or Bear Ranging
2. โ
**RSI Rejection** - RSI between 50-65 (not oversold)
3. โ
**Near Resistance** - Price within 2% of dynamic resistance
4. โ
**MACD Turning Down** - Momentum shifting bearish
5. โ
**Volume Confirmation** - Above average volume
### Confluence Requirements
**Minimum Confluence** (default = 2):
- 2/5 = Entry signal triggered
- 3/5 = Good signal
- 4/5 = Strong signal
- 5/5 = Excellent signal (rare)
**Higher confluence = Higher probability = Better trades**
### Specific Entry Patterns
#### 1. Bull Trending Entry
```
Requirements:
- Regime = Bull Trending
- Price pulls back to EMA20
- Close above EMA20 (bounce)
- Up candle (close > open)
- RSI < 60
- Confluence โฅ 2
```
#### 2. Bear Trending Entry
```
Requirements:
- Regime = Bear Trending
- Price rallies to EMA20
- Close below EMA20 (rejection)
- Down candle (close < open)
- RSI > 40
- Confluence โฅ 2
```
#### 3. Bull Ranging Entry
```
Requirements:
- Regime = Bull Ranging
- RSI < 40 (oversold)
- Price at or below support
- Up candle (reversal)
- Confluence โฅ 1 (more lenient)
```
#### 4. Bear Ranging Entry
```
Requirements:
- Regime = Bear Ranging
- RSI > 60 (overbought)
- Price at or above resistance
- Down candle (rejection)
- Confluence โฅ 1 (more lenient)
```
#### 5. Consolidation Breakout
```
Requirements:
- Regime = Consolidation
- Price breaks above/below range
- Volume > 1.5x average (explosive)
- Strong directional candle
```
---
## EXIT SIGNALS EXPLAINED
### Three Types of Exits
#### 1. Regime Change Exits (Automatic)
- **Long Exit**: Regime changes to Bear Trending or Chaos
- **Short Exit**: Regime changes to Bull Trending or Chaos
- **Reason**: Market character changed, strategy no longer valid
#### 2. Support/Resistance Break Exits
- **Long Exit**: Price breaks below support by 2%
- **Short Exit**: Price breaks above resistance by 2%
- **Reason**: Key level violated, trend may be reversing
#### 3. Momentum Exits
- **Long Exit**: RSI > 70 (overbought) AND down candle
- **Short Exit**: RSI < 30 (oversold) AND up candle
- **Reason**: Overextension, take profits
### Stop Loss & Take Profit
**Stop Loss** (Automatic in strategy):
- Placed at Entry - (ATR ร 2)
- Adapts to volatility
- Protected from whipsaws
- Typically 2-4% for stocks, 5-10% for crypto
**Take Profit** (Automatic in strategy):
- Placed at Entry + (Stop Distance ร R:R Ratio)
- Default 2.5:1 reward:risk
- Example: $2 risk = $5 reward target
- Allows winners to run
---
## TRADING EACH REGIME
### BULL TRENDING - Most Profitable Long Environment
**Strategy: Buy Every Dip**
**Entry Rules:**
1. Wait for pullback to EMA20 or SMA20
2. Look for RSI < 60
3. Enter when candle closes above MA
4. Confluence should be 2+
**Stop Loss:**
- Below the recent swing low
- Or 2 ร ATR below entry
**Take Profit:**
- At previous high
- Or 2.5:1 R:R minimum
**Position Size:**
- Can use full size (2% risk)
- High win rate regime
**Example Trade:**
```
Price: $100, pulls back to $98 (EMA20)
Entry: $98.50 (close above EMA)
Stop: $96.50 (2 ATR)
Target: $103.50 (2.5:1)
Risk: $2, Reward: $5
```
---
### BEAR TRENDING - Most Profitable Short Environment
**Strategy: Sell Every Rally**
**Entry Rules:**
1. Wait for bounce to EMA20 or SMA20
2. Look for RSI > 40
3. Enter when candle closes below MA
4. Confluence should be 2+
**Stop Loss:**
- Above the recent swing high
- Or 2 ร ATR above entry
**Take Profit:**
- At previous low
- Or 2.5:1 R:R minimum
**Position Size:**
- Can use full size (2% risk)
- High win rate regime
**Example Trade:**
```
Price: $100, rallies to $102 (EMA20)
Entry: $101.50 (close below EMA)
Stop: $103.50 (2 ATR)
Target: $96.50 (2.5:1)
Risk: $2, Reward: $5
```
---
### BULL RANGING - Buy Low, Sell High
**Strategy: Range Trading (Long Bias)**
**Entry Rules:**
1. Wait for price at support zone
2. Look for RSI < 40
3. Enter on reversal candle
4. Confluence should be 1-2+
**Stop Loss:**
- Below support zone
- Tighter than trending (1.5 ATR)
**Take Profit:**
- At resistance zone
- Don't hold through resistance
**Position Size:**
- Reduce to 1-1.5% risk
- Lower win rate than trending
**Example Trade:**
```
Range: $95-$105
Entry: $96 (at support, RSI 35)
Stop: $94 (below support)
Target: $104 (at resistance)
Risk: $2, Reward: $8 (4:1)
```
---
### BEAR RANGING - Sell High, Buy Low
**Strategy: Range Trading (Short Bias)**
**Entry Rules:**
1. Wait for price at resistance zone
2. Look for RSI > 60
3. Enter on rejection candle
4. Confluence should be 1-2+
**Stop Loss:**
- Above resistance zone
- Tighter than trending (1.5 ATR)
**Take Profit:**
- At support zone
- Don't hold through support
**Position Size:**
- Reduce to 1-1.5% risk
- Lower win rate than trending
**Example Trade:**
```
Range: $95-$105
Entry: $104 (at resistance, RSI 65)
Stop: $106 (above resistance)
Target: $96 (at support)
Risk: $2, Reward: $8 (4:1)
```
---
### CONSOLIDATION - Wait for Breakout
**Strategy: Breakout Trading**
**Entry Rules:**
1. Identify consolidation range
2. Wait for VOLUME SURGE (1.5x+ avg)
3. Enter on close outside range
4. Direction must be clear
**Stop Loss:**
- Opposite side of range
- Or 2 ATR
**Take Profit:**
- Measure range height, project it
- Example: $10 range = $10 move expected
**Position Size:**
- Reduce to 1% risk
- 50% false breakout rate
**Example Trade:**
```
Consolidation: $98-$102 (4-point range)
Breakout: $102.50 (high volume)
Entry: $103
Stop: $100 (back in range)
Target: $107 (4-point range projected)
Risk: $3, Reward: $4
```
---
### CHAOS - STAY OUT!
**Strategy: Preservation**
**What to Do:**
- โ NO new positions
- โ
Close existing positions if near entry
- โ
Tighten stops on profitable trades
- โ
Reduce position sizes dramatically
- โ
Wait for regime to stabilize
**Why It's Dangerous:**
- Stop hunts are common
- Whipsaws everywhere
- News-driven volatility
- No technical reliability
- Even "perfect" setups fail
**When Does It End:**
- Volatility ratio drops < 1.5
- ADX starts rising (direction appears)
- Price respects support/resistance again
- Usually 1-5 days
---
## CONFLUENCE SYSTEM
### How It Works
The system scores each potential entry on 5 factors. More factors aligning = higher probability.
### Confluence Requirements by Regime
**Trending Regimes** (strictest):
- Minimum 2/5 required
- 3/5 = Good
- 4-5/5 = Excellent
**Ranging Regimes** (moderate):
- Minimum 1-2/5 required
- 2/5 = Good
- 3+/5 = Excellent
**Consolidation** (breakout only):
- Volume is most critical
- Direction confirmation
- Less confluence needed
### Adjusting Minimum Confluence
**If too few signals:**
- Lower from 2 to 1
- More trades, lower quality
**If too many false signals:**
- Raise from 2 to 3
- Fewer trades, higher quality
**Recommendation:**
- Start at 2
- Adjust based on win rate
- Aim for 55-65% win rate
---
## STRATEGY BACKTESTING
### Loading the Strategy
1. Copy `market_regime_strategy.pine`
2. Open Pine Editor in TradingView
3. Paste and "Add to Chart"
4. Strategy Tester tab opens at bottom
### Initial Settings
```
Risk Per Trade: 2%
ATR Stop Multiplier: 2.0
Reward:Risk Ratio: 2.5
Trade Longs: โ
Trade Shorts: โ
Trade Trending Only: โ (test both)
Avoid Chaos: โ
Minimum Confluence: 2
```
### What to Look For
**Good Results:**
- Win Rate: 50-60%
- Profit Factor: 1.8-2.5
- Net Profit: Positive
- Max Drawdown: <20%
- Consistent equity curve
**Warning Signs:**
- Win Rate: <45% (too many losses)
- Profit Factor: <1.5 (barely profitable)
- Max Drawdown: >30% (too risky)
- Erratic equity curve (unstable)
### Testing Different Regimes
**Test 1: Trending Only**
```
Trade Trending Only: โ
Result: Higher win rate, fewer trades
```
**Test 2: All Regimes**
```
Trade Trending Only: โ
Result: More trades, potentially lower win rate
```
**Test 3: Long Only**
```
Trade Longs: โ
Trade Shorts: โ
Result: Works in bull markets
```
**Test 4: Short Only**
```
Trade Longs: โ
Trade Shorts: โ
Result: Works in bear markets
```
---
## SETTINGS OPTIMIZATION
### Key Parameters to Adjust
#### 1. Risk Per Trade (Most Important)
- **0.5%** = Very conservative
- **1.0%** = Conservative (recommended for beginners)
- **2.0%** = Moderate (recommended)
- **3.0%** = Aggressive
- **5.0%** = Very aggressive (not recommended)
**Impact:** Higher risk = higher returns BUT bigger drawdowns
#### 2. Reward:Risk Ratio
- **2:1** = More wins needed, hit target faster
- **2.5:1** = Balanced (recommended)
- **3:1** = Fewer wins needed, hold longer
- **4:1** = Very patient, best in trending
**Impact:** Higher R:R = can have lower win rate
#### 3. Minimum Confluence
- **1** = More signals, lower quality
- **2** = Balanced (recommended)
- **3** = Fewer signals, higher quality
- **4** = Very selective
- **5** = Almost never triggers
**Impact:** Higher = fewer but better trades
#### 4. ADX Thresholds
- **Trending: 20-30** (default 25)
- Lower = detect trends earlier
- Higher = only strong trends
- **Ranging: 15-25** (default 20)
- Lower = identify ranging earlier
- Higher = only weak trends
#### 5. Trend Period (SMA)
- **20-50** = Short-term trends
- **50** = Medium-term (default, recommended)
- **100-200** = Long-term trends
**Impact:** Longer period = slower regime changes, more stable
### Optimization Workflow
**Step 1: Baseline**
- Use all default settings
- Test on 3+ years
- Record: Win Rate, PF, Drawdown
**Step 2: Risk Optimization**
- Test 1%, 1.5%, 2%, 2.5%
- Find best risk-adjusted return
- Balance profit vs drawdown
**Step 3: R:R Optimization**
- Test 2:1, 2.5:1, 3:1
- Check which maximizes profit factor
- Consider holding time
**Step 4: Confluence Optimization**
- Test 1, 2, 3
- Find sweet spot for win rate
- Aim for 55-65% win rate
**Step 5: Regime Filter**
- Test with/without trend filter
- Test with/without chaos filter
- Find what works for your asset
---
## REAL TRADING EXAMPLES
### Example 1: Bull Trending - SPY
**Setup:**
- Regime: BULL TRENDING
- Price pulls back from $450 to $445
- EMA20 at $444
- RSI drops to 45
- Confluence: 4/5
**Entry:**
- Price closes at $445.50 (above EMA20)
- LONG signal appears
- Enter at $445.50
**Risk Management:**
- Stop: $443 (2 ATR = $2.50)
- Target: $451.75 (2.5:1 = $6.25)
- Risk: $2.50 per share
- Position: 80 shares (2% of $10k = $200 risk)
**Outcome:**
- Price rallies to $452 in 3 days
- Target hit
- Profit: $6.50 ร 80 = $520
- Return: 2.6 ร risk (excellent)
---
### Example 2: Bear Ranging - AAPL
**Setup:**
- Regime: BEAR RANGING
- Range: $165-$175
- Price rallies to $174
- Resistance at $175
- RSI at 68
- Confluence: 3/5
**Entry:**
- Rejection candle at $174
- SHORT signal appears
- Enter at $173.50
**Risk Management:**
- Stop: $176 (above resistance)
- Target: $166 (support)
- Risk: $2.50
- Position: 80 shares
**Outcome:**
- Price drops to $167 in 2 days
- Target hit
- Profit: $6.50 ร 80 = $520
- Return: 2.6 ร risk
---
### Example 3: Consolidation Breakout - BTC
**Setup:**
- Regime: CONSOLIDATION
- Range: $28,000 - $30,000
- Compressed for 2 weeks
- Volume declining
**Breakout:**
- Price breaks $30,000
- Volume surges 200%
- Close at $30,500
- LONG signal
**Entry:**
- Enter at $30,500
**Risk Management:**
- Stop: $29,500 (back in range)
- Target: $32,000 (range height = $2k)
- Risk: $1,000
- Position: 0.2 BTC ($200 risk on $10k)
**Outcome:**
- Price runs to $33,000
- Target exceeded
- Profit: $2,500 ร 0.2 = $500
- Return: 2.5 ร risk
---
### Example 4: Avoiding Chaos - Tesla
**Setup:**
- Regime: BULL TRENDING
- LONG position from $240
- Elon tweets something crazy
- Regime changes to CHAOS
**Action:**
- EXIT signal appears
- Close position immediately
- Current price: $242 (small profit)
**Outcome:**
- Next 3 days: wild swings
- High $255, Low $230
- By staying out, avoided:
- Potential stop out
- Whipsaw losses
- Stress
**Result:**
- Small profit preserved
- Capital protected
- Re-enter when regime stabilizes
---
## ALERTS SETUP
### Available Alerts
1. **Bull Trending Regime** - Market goes bullish
2. **Bear Trending Regime** - Market goes bearish
3. **Chaos Regime** - High volatility, stay out
4. **Long Entry Signal** - Buy opportunity
5. **Short Entry Signal** - Sell opportunity
6. **Long Exit Signal** - Close long
7. **Short Exit Signal** - Close short
### How to Set Up
1. Click **โฐ (Alert)** icon in TradingView
2. Select **Condition**: Choose indicator + alert type
3. **Options**: Popup, Email, Webhook, etc.
4. **Message**: Customize notification
5. Click **Create**
### Recommended Alert Strategy
**For Active Traders:**
- Long Entry Signal
- Short Entry Signal
- Long Exit Signal
- Short Exit Signal
**For Position Traders:**
- Bull Trending Regime (enter longs)
- Bear Trending Regime (enter shorts)
- Chaos Regime (exit all)
**For Conservative:**
- Only regime change alerts
- Manually review entries
- More selective
---
## TIPS FOR SUCCESS
### 1. Start Small
- Paper trade first
- Then 0.5% risk
- Build to 1-2% over time
### 2. Follow the Regime
- Don't fight it
- Adapt your style
- Different tactics for each
### 3. Trust the Confluence
- 4-5/5 = Best trades
- 2-3/5 = Good trades
- 1/5 = Skip unless desperate
### 4. Respect Exits
- Don't hope and hold
- Cut losses quickly
- Take profits at targets
### 5. Avoid Chaos
- Seriously, just stay out
- Protect your capital
- Wait for clarity
### 6. Keep a Journal
- Record every trade
- Note regime and confluence
- Review weekly
- Learn patterns
### 7. Backtest Thoroughly
- 3+ years minimum
- Multiple market conditions
- Different assets
- Walk-forward test
### 8. Be Patient
- Best setups are rare
- 1-3 trades per week is normal
- Quality over quantity
- Compound over time
---
## COMMON QUESTIONS
**Q: How many trades per month should I expect?**
A: Depends on timeframe and settings. Daily chart: 5-15 trades/month. 4H chart: 15-30 trades/month.
**Q: What's a good win rate?**
A: 55-65% is excellent. 50-55% is good. Below 50% needs adjustment.
**Q: Should I trade all regimes?**
A: Beginners: Only trending. Intermediate: Trending + ranging. Advanced: All except chaos.
**Q: Can I use this on any timeframe?**
A: Best on Daily and 4H. Works on 1H with more noise. Not recommended <1H.
**Q: What if I'm in a trade and regime changes?**
A: Exit immediately (if using indicator) or let strategy handle it automatically.
**Q: How do I know if I'm over-optimizing?**
A: If results are perfect on one period but fail on another. Use walk-forward testing.
**Q: Should I always take 5/5 confluence trades?**
A: Yes, but they're rare (1-2/month). Don't wait only for these.
**Q: Can I combine this with other indicators?**
A: Yes, but keep it simple. RSI, MACD already included. Maybe add volume profile.
**Q: What assets work best?**
A: Liquid stocks, major crypto, futures. Avoid forex spot (use futures), penny stocks.
**Q: How long to hold positions?**
A: Trending: Days to weeks. Ranging: Hours to days. Breakout: Days. Let the regime guide you.
---
## FINAL THOUGHTS
This system gives you:
- โ
Clear market context (regime)
- โ
High-probability entries (confluence)
- โ
Defined exits (automatic signals)
- โ
Adaptable tactics (regime-specific)
- โ
Backtestable results (strategy version)
**Success requires:**
- ๐ Understanding each regime
- ๐ฏ Following the signals
- ๐ช Discipline to wait
- ๐ง Emotional control
- ๐ Proper risk management
**Start your journey:**
1. Load the indicator
2. Watch for 1 week (no trading)
3. Identify regime patterns
4. Paper trade for 1 month
5. Go live with small size
6. Scale up as you gain confidence
**Remember:** The market will always be here. There's no rush. Master one regime at a time, and you'll be profitable in all conditions!
Good luck! ๐






















