Ultimate Auto Trendlines - No Lag, No repaint, & High Accuracy Non-Repainting Auto Trendlines by Pivots – The cleanest way to draw real trendlines automatically!
Connects confirmed pivot highs/lows → solid, angled trendlines (no flat junk)
Filters by minimum angle → only meaningful trends
Shows recent pivots with "R" / "S" labels (optional)
Long extension to the right – see future zones instantly
Perfect for SPY, QQQ, NASDAQ daily swings – 85%+ touch rate in backtests
Why traders love it:
• No repaint – safe for live trading & alerts
• Keeps chart clean – only recent levels
• Angle filter = no useless horizontal lines
• Works on any timeframe – daily/4H/1H killer
Add to chart now → see the difference immediately!
How to Use the "Auto Trendlines by Pivots" Indicator Effectively
This indicator automatically draws clean, non-repainting trendlines by connecting confirmed pivot highs and lows, helping you visualize dynamic trend direction, support/resistance from swings, and potential reversal or continuation zones. It's especially powerful on daily and 4H charts for SPY, QQQ, NASDAQ stocks, forex majors, and crypto.
Quick Start Guide
Add to Chart
Open TradingView → Pine Editor → paste the script → Save → Add to Chart.
Best symbols/timeframes: SPY/QQQ/ES1! daily, 4H, or 1H.
Key Settings (Recommended Starting Values)
Pivot Left/Right Bars: 5/5 (default) → balanced strength.
Increase to 8–10 for stronger, fewer lines (less noise, higher accuracy).
Decrease to 3–4 for more frequent lines (scalping/intraday).
Max Trendlines: 8 (default) → keeps chart readable.
Lower to 4–6 for minimalism; raise to 12–15 for more history.
Min Trend Angle: 15° (default) → filters out flat/weak lines.
Increase to 20–25° for steeper trends only (very clean chart).
Decrease to 10° to see shallower trends.
Line Extension: 100–200 bars → long enough to project forward zones.
Show Labels: On → "R" (red) and "S" (green) marks pivot points.
Turn off for ultra-clean look.
How to Read & Trade with It
Uptrend (Bullish): Greenish upward-sloping lines connecting higher lows → act as dynamic support.
→ Buy pullbacks to the trendline + confirmation (e.g., RSI oversold, volume spike, candlestick reversal).
→ Target next resistance line or previous pivot high.
Downtrend (Bearish): Reddish downward-sloping lines connecting lower highs → act as dynamic resistance.
→ Short rejections at trendline + confirmation (e.g., RSI overbought, bearish engulfing).
→ Target next support line or previous pivot low.
Range / Sideways: Mixed criss-crossing lines → avoid trading or use horizontal S/R levels (when trendlines flatten).
Confluence = where multiple lines cluster → highest-probability zones.
Breakouts: When price closes decisively through a trendline → signals potential trend change or acceleration.
Wait for retest of broken line as new support/resistance.
Pro Trading Tips (High-Probability Setups)
Confluence is King: Trade when price reaches a trendline + horizontal S/R level from pivots (yellow zones if you add confluence logic).
Timeframe Alignment: Use daily lines for bias, 4H/1H for entries.
Confirmation Tools:
RSI(2) < 10 near support (long) or > 90 near resistance (short)
Volume > 20-period SMA on touch
Candlestick patterns (hammer, engulfing) at line
Risk Management:
Stop below support trendline (longs) or above resistance trendline (shorts)
Target 1.5–3R (next major level or opposite line)
Avoid trades if VIX > 25–30 (high volatility kills accuracy)
Best Markets: Strong trends (bullish SPY/QQQ 2020–2025) → 70–85% bounce rate at lines.
Common Mistakes to Avoid
Over-trading flat markets → wait for clear trend angle.
Ignoring angle filter → flat lines are noise, not real trends.
Not zooming out → always check higher timeframe (weekly) for major lines.
Performance Insight
Backtests on SPY daily (2010–2025): ~80% price interaction (touch/bounce) at trendlines in trending periods.
Combine with RSI(2) or EMA50 → win rate often >75% on pullback entries.
Trend Analysis
Fibonacci 5 Candles Retracement
================================================================================
FIBONACCI 5 CANDLES RETRACEMENT - STRATEGY GUIDE
================================================================================
WHAT DOES THIS STRATEGY DO?
---------------------------
This strategy automatically identifies market trends and uses Fibonacci
retracements to find the best entry points. The idea is simple: when price
makes a strong movement (trend), it often pulls back before continuing in
the same direction. The strategy captures these "pullbacks" to enter at the
right moment.
HOW IT WORKS?
-------------
1. TREND DETECTION
The strategy looks for 5 consecutive candles of the same color:
- 5 red candles = BEARISH trend (price falls)
- 5 green candles = BULLISH trend (price rises)
2. CALCULATION OF START AND END POINTS
For a BEARISH trend (5 red candles):
- START: The highest point between the first red candle and the previous one
- END: The lowest point reached during the 5 candles (and beyond, if the
trend continues)
For a BULLISH trend (5 green candles):
- START: The lowest point between the first green candle and the previous one
- END: The highest point reached during the 5 candles (and beyond, if the
trend continues)
3. DYNAMIC UPDATE
The END point updates automatically if price continues to move in the
direction of the trend, creating new highs (for bullish trends) or new
lows (for bearish trends).
4. TREND END
Normal Mode:
- BEARISH trend ends when a candle closes above the previous candle's open
- BULLISH trend ends when a candle closes below the previous candle's open
"Extended Trend" mode (optional):
- The trend remains active until a candle closes beyond the dynamic 50%
retracement level
- When this happens, the END point "freezes" (stops updating), but the
trend can continue
5. FIBONACCI RETRACEMENT CALCULATION
Once START and END are identified, the strategy automatically calculates
Fibonacci levels. IMPORTANT: for retracements and pending orders, we
consider START as 100% and END as 0%, because we work on the part of the
trend that is recovered (the pullback).
The retracement levels are:
- 70% = level closest to START (smallest retracement)
- 60% = second level
- 50% = central level (often used for entry)
- 25% = level closest to END (largest retracement)
6. PENDING ORDER PLACEMENT
When a trend is identified and completed, the strategy automatically places
a pending order (limit order) at one of the selectable Fibonacci levels.
Available levels:
- 25%: closest to END
- 50%: central level (balanced)
- 60%: closest to START
- 70%: very close to START
The order direction depends on the trend:
- BEARISH trend → SHORT order (bet that price falls)
- BULLISH trend → LONG order (bet that price rises)
Stop Loss and Take Profit (for retracements):
- Stop Loss: always at START level
- Take Profit: always at END level
EXTENDED TAKE PROFIT:
If the order is executed (filled), the strategy can apply an "Extended
Take Profit" if configured. IMPORTANT: for the extended TP calculation,
we consider START as 0% and END as 100% (the original trend movement).
For example, if you set 3%, the Take Profit will be at 103% of the
original trend movement instead of 100%.
AVAILABLE FILTERS
-----------------
1. MINIMUM TREND (pips)
Filters trends that are too small. If a trend is below the set value:
- START and END labels become gray (instead of red/green)
- No pending order is placed
- The trend is still displayed on the chart
Useful for avoiding trading movements that are too small.
2. EMA FILTER
Uses two moving averages (EMA 50 and EMA 200) to filter direction:
- If active: places LONG orders only when EMA50 > EMA200 (uptrend)
- If active: places SHORT orders only when EMA50 < EMA200 (downtrend)
Useful for trading only in the direction of the main trend.
3. EXTENDED TREND
Modifies how the trend is considered "completed":
- If disabled: uses normal logic (opposite candle)
- If active: the trend remains in formation until a candle closes beyond
the dynamic 50%. When this happens, END freezes but the trend can continue.
Useful for capturing longer trends and extended movements.
VISUALIZATION
-------------
The strategy displays on the chart:
1. START AND END LABELS
- Red color for bearish trends
- Green color for bullish trends
- Gray color if the trend is not valid (too small)
- Remain visible even when new trends form
2. START AND END LINES
- Horizontal lines indicating the start (START) and end (END) points of the trend
- White color by default, customizable from the settings panel
- Update dynamically when the END point changes
- Can be shown or hidden via the "Show Start/End Lines" option
3. FIBONACCI LINES
The strategy shows horizontal lines at retracement levels:
- Line at 50% (yellow by default)
- Line at 25% (green by default)
- Line at 60% (azure by default)
- Line at 70% (red by default)
COLOR CUSTOMIZATION:
All line colors can be customized from the settings panel in the
"LINE COLORS" section:
- Start/End Line Color: customize the color of START and END lines
- 50% Line Color: customize the color of the 50% line
- 25% Line Color: customize the color of the 25% line
- 60% Line Color: customize the color of the 60% line
- 70% Line Color: customize the color of the 70% line
Lines update dynamically when the END point changes and can be shown or
hidden individually via options in the "VISUALIZATION" section.
4. PENDING ORDER LABELS
Show pending order information:
- Direction (LONG or SHORT)
- Entry price
- Stop Loss
- Take Profit
Positioned far from the chart to avoid cluttering the visualization.
ALERTS
------
If enabled, alerts send notifications when:
1. PENDING ORDER CREATED
When a new pending order is placed, with all information.
2. PENDING ORDER UPDATED
When the pending order is updated (for example, if the level changes or
if the END point moves).
3. ORDER OPENED
When the pending order is executed (filled) and the position is opened.
Alerts can be configured in TradingView to send notifications via email,
SMS, or other platforms.
RECOMMENDED SETTINGS
--------------------
To get started, you can use these settings:
VISUALIZATION:
- Show all lines and labels to see how it works
- Show Start/End Lines: true (to display lines at START and END points)
- Customize line colors in the "LINE COLORS" section according to your preferences
STRATEGY:
- Pending Order Level: 50% (balanced)
- Extended TP: 0% (use standard TP at 100%)
FILTERS:
- Minimum Trend: 0 pips (disabled initially)
- Use EMA Filter: false (disabled initially)
- Extended Trend: false (use normal logic)
ALERTS:
- Enable Alerts: true (if you want to receive notifications)
PRACTICAL EXAMPLE
-----------------
Scenario: Bearish Trend
1. Price forms 5 consecutive red candles
2. The strategy identifies:
- START = 1.2000 (highest point)
- END = 1.1900 (lowest point)
- Range = 100 pips
3. Calculates Fibonacci levels (for retracements: START = 100%, END = 0%):
- 100% = 1.2000 (START)
- 70% = 1.1930
- 60% = 1.1940
- 50% = 1.1950
- 25% = 1.1975
- 0% = 1.1900 (END)
4. If you set "Pending Order Level" to 50%:
- Places a SHORT pending order at 1.1950 (50% retracement)
- Stop Loss at 1.2000 (START = 100%)
- Take Profit at 1.1900 (END = 0%)
5. If price rises and touches 1.1950:
- The order is executed
- Opens a SHORT position
- If price falls to 1.1900 → Take Profit (profit)
- If price rises to 1.2000 → Stop Loss (loss)
IMPORTANT NOTE
--------------
This strategy is a technical analysis tool. Like all trading strategies,
it does not guarantee profits. Trading involves risks and you can lose money.
Always use appropriate risk management and test the strategy on historical
data before using it with real money.
LICENSE
-------
This code is open source and available for modification. You are free to
use, modify, and distribute this strategy. If you republish or share a
modified version, please kindly mention the original author.
================================================================================
Auto Fib Retracement Advanced//@version=5
indicator("Auto Fib Retracement Advanced", overlay=true, max_lines_count=500) // Increase max_lines_count
leftBars = input.int(10, "Pivot Left Bars")
rightBars = input.int(10, "Pivot Right Bars")
extendRight = input.bool(true, "Extend Lines Right")
swingHigh = ta.pivothigh(high, leftBars, rightBars)
swingLow = ta.pivotlow(low, leftBars, rightBars)
var float lastHighPrice = na
var int lastHighBar = na
var float lastLowPrice = na
var int lastLowBar = na
// Arrays to store line IDs for management
var lines = array.new_line()
levels_values = array.from(0.0, 0.236, 0.382, 0.5, 0.618, 0.786, 1.0)
// Update pivot points and redraw lines when a new pivot is confirmed
if not na(swingHigh) or not na(swingLow)
if not na(swingHigh)
lastHighPrice := swingHigh
lastHighBar := bar_index
if not na(swingLow)
lastLowPrice := swingLow
lastLowBar := bar_index
// Delete existing lines before drawing new ones
for i = 0 to array.size(lines) - 1
line.delete(array.get(lines, i))
array.clear(lines)
if not na(lastHighPrice) and not na(lastLowPrice)
isUptrend = lastHighPrice > lastLowPrice
fibRange = math.abs(lastHighPrice - lastLowPrice)
// Draw new lines
for i = 0 to array.size(levels_values) - 1
levelValue = array.get(levels_values, i)
priceLevel = isUptrend ? lastLowPrice + fibRange * levelValue : lastHighPrice - fibRange * levelValue
// Use line.new to create persistent horizontal lines
newLine = line.new(x1=lastLowBar, y1=priceLevel, x2=bar_index + (extendRight ? 500 : 0), y2=priceLevel, color=color.gray, style=line.style_dashed)
array.push(lines, newLine)
CUSUM Volatility BreakoutCUSUM Volatility Breakout A statistical trend-detection and volatility-breakout indicator that identifies subtle momentum shifts earlier than traditional tools.
OVERVIEW
The CUSUM control chart is a statistical tool designed to detect small, gradual shifts from a target value. In trading, it helps identify the early stages of a trend, giving traders a heads-up before momentum becomes obvious on standard price charts. By spotting these subtle movements, the CUSUM Volatility Breakout indicator (CUSUM VB) can highlight potential breakout opportunities earlier than traditional indicators. In other words, a statistical trend detection & breakout indicator.
Copyright © 2025 CoinOperator
HOW IT WORKS
CUSUM VB uses a combination of differenced price series, volume normalization, and dynamic control limits:
CUSUM Principle: Tracks cumulative deviations of price from a zero reference. Signals occur when cumulative deviations exceed a control limit shown on the chart and clears any enabled filters.
Adaptive Volatility: H adjusts automatically based on short- vs long-term ATR ratios, allowing faster detection during volatile periods and reduced false signals in calm markets.
Volume Weighting (optional): Amplifies price CUSUM values during high-volume bars to prioritize market participation strength.
ATR Confirmation (optional): Ensures breakouts are accompanied by expanded volatility.
Bollinger Band Squeeze Integration (optional): Confirms trend breakouts by detecting volatility contraction and release shown on the chart as triangles.
Signals:
Arrows on the price chart mark the bars where trades are actually filled, based on conditions detected on the prior signal bar.
Long Entry: Confirmed positive CUSUM breach (price & volume) with BB breakout (signal bar).
Short Entry: Confirmed negative CUSUM breach (price & volume) with BB breakout (signal bar).
Exit Signals: Triggered automatically by opposite-side signals.
Alerts, when created, fire on the bars where fills occur.
CHART COMPONENTS
CUSUM Upper Price (CU Price) and CUSUM Lower Price (CL Price) are green/red circles for confirmed signals.
● Rapid upward accumulation of CU Price indicates a developing bullish trend.
● Rapid downward accumulation of CL Price indicates a developing bearish trend.
Decision/Control limits (UCL/LCL, red)
Zero line (reference for the differenced price series baseline)
Optional BB triangles and volume CUSUM
SETUP AND CONFIGURATION
Differenced Price Series
Differenced Price Length and Lag
Increase differencing lag or window length → Increases variance of residuals → Wider control limits (UCL/LCL) → Slower to trigger.
Decrease lag or window → Tighter limits, more responsive to short-term regime shifts.
CUSUM Parameters
Volume-Weighted CUSUM
NOTE : Uses price length if 'Confirm Price with Volume' is disabled, otherwise will use volume length.
Amplifies CUSUM price responses during high-volume bars and reduces them during low-volume bars. This links trend detection to market participation strength.
Volume-Weighted CUSUM doesn’t replace price confirmation with volume; it modulates it by volume intensity, amplifying price signals when participation is strong and suppressing them when weak.
Recommended when analyzing assets with consistent volume patterns (e.g., stocks, major futures).
Disable for low-liquidity or irregular-volume instruments (e.g., crypto pairs, small-cap stocks).
ATR Confirmation
Enable this feature to confirm CUSUM signals only when price deviations are accompanied by higher-than-normal volatility. The indicator compares current ATR to a smoothed ATR to detect volatility expansion. This helps distinguish true breakouts from low-volatility noise and reduces false signals during quiet periods.
Adjust the ATR lookback length, smoothing length, and expansion factor to control sensitivity. Rule of thumb:
ATR Length ≈ 0.5 × differenced price length to 1.5 × differenced price length gives balanced sensitivity.
ATR Smoothing 5–10 bars.
ATR Expansion 5% to 50%.
CUSUM Input Mode
Select how CUSUM processes differenced price and log-normalized volume — either directly (Txfrm Data) or as deviations from a short-term EMA baseline (Residuals):
Txfrm Data = transformed input: differenced price & log-normalized volume as input for CUSUM (larger swings, more frequent control limit breaches)
Residuals = deviation from short-term EMA baseline (smaller swings, fewer control limit breaches, but higher signal quality).
Residual EMA Length: Defines how quickly the residual baseline adapts to recent differenced price moves. Shorter = more reactive; longer = smoother baseline. Keep EMA length moderate; over-smoothing can distort timing.
Control Sensitivity (K)
Increase K → Less sensitive → CUSUM accumulates slower → Fewer signals, captures only major trends.
Decrease K → More sensitive → CUSUM accumulates faster → More signals, captures minor swings too.
Reset Mode : Method of resetting CUSUM values.
Immediate Reset: Reset both immediately after any signal breach. Traditional SPC.
Opposite-Side Reset: Reset only the opposite side when a valid signal fires. Best for ongoing trend tracking.
Decay Reset: Gradually reduce CUSUM values toward zero with a decay factor each bar. Maintains trend memory but allows slow “forgetting.”
Threshold Reset: Reset only if CUSUM returns below a small threshold (10 % of H). Filters noise without full wipe.
No Reset / Continuous: Never reset; instead track running totals. Long-term cumulative bias measurement.
Conflict Handling : Method of handling conflicting signals.
Ignore Both: Discards both when overlap occurs.
Prioritize Latest: Chooses the direction implied by the most recent close.
Prioritize Stronger: Compares absolute magnitudes of CU Price vs CL Price.
Average Resolve: Looks at the difference; small overlap → ignore, otherwise pick direction by sign.
Sequential Confirm: Requires N consecutive same-direction signals before confirmation.
Volume Parameters (Optional)
Amplification Factor
Adjusts volume sensitivity and effectively rescales the log series of volume to a comparable magnitude with price changes.
Since price and volume are normalized in a compatible way, the amplification factor is used instead of independent K and H values for volume.
Bollinger Bands (Optional)
Lookback Synchronization
BB Lookback (for CUSUM): Number of bars that define a window for the BB signal to look back for the CUSUM signal.
CUSUM Lookback (for BB): Number of bars that define a window for the CUSUM signal to look back for the BB signal.
Both can be enabled for stricter alignment.
Relationship Between K, H, ARL₀ and ARL₁
H (max) is usually the only H you need to adjust. With everything else being constant, increasing either K or H (max) generally increases both ARL₀ and ARL₁ : higher thresholds reduce false alarms but slow detection, and lower thresholds do the opposite.
Increase Min Target ARL ratio →
ARL₀ increases (safer, fewer false alarms)
ARL₁ decreases or stays small (faster detection)
Control limits slightly expand to achieve separation
Strategy becomes more selective and stable
Decrease Min Target ARL ratio →
ARL₀ decreases (more false alarms tolerated)
ARL₁ increases (slower detection tolerated)
Control limits tighten
Strategy becomes more sensitive but lower quality
The ARL Ratio of ARL₀ / ARL₁ is typically between 3 and 8. This implies you want your ARL₀ (false-alarm interval) ≈ 'Min Target ARL ratio' × differenced price length window.
Example:
"Min Target ARL ratio = 4.0"
⇒ implies you want your ARL₀ (false-alarm interval) ≈ 4 × differenced price length.
Assume price length = 50 (typical differencing window).
ARL ratio = 4.0 → target ARL = 4 × 50 = 200 bars.
● On a 6-hour chart (≈4 bars/day) → ~50 days between expected false alarms (on average).
● On a daily chart → ~200 trading days between false alarms (very conservative).
ARL ratio = 8.0 → target ARL = 400 bars → twice as infrequent signals vs ratio=4.
ARL ratio = 2.0 → target ARL = 100 bars → about half the inter-signal interval.
Another way to think about it: probability of a false alarm on any bar ≈ 1 / target ARL. If you want ~1% of bars producing alarms, target ARL ≈ 100.
QUICK START
Start with the defaults.
Set price series → length/order/lag
Configure CUSUM thresholds → K, H min/max
1. Adjust the price differencing lag/window.
2. Verify that it captures real price inflection points without overreacting to bar noise.
Enable optional filters → Volume, ATR, BB
The optional Bollinger Bands squeeze usually works best if used with CUSUM Input Mode = Txfrm Data.
Monitor CUSUM chart → CU Price, CL Price, thresholds, zero line
Act on signals → data window / chart triangles
Adjust sensitivity → H (max), K, lengths
Monitor ARL ratio and CUSUM behavior for fine-tuning
Note : When you’ve finalized the length, lag, and order of the Price Difference, as well as the Ln(Vol) Series of “Confirm Price with Volume” if enabled, then pass both through the Augmented Dickey–Fuller (ADF) mean reversion test to ensure they are stationary, i.e., mean reverting. You can find a ready-made indicator for such use at . Many thanks to tbtkg for this indicator.
SUMMARY
CUSUM VB combines CUSUM statistical control, volatility-adaptive thresholds, volume weighting, and optional BB breakout confirmation to provide robust, actionable signals across a wide variety of trading instruments.
Why traders use it : Fast detection of shifts, reduced false alarms, versatile across markets.
Ideal for : Futures (continuous contracts), forex, crypto, stocks, ETFs, and commodity/index CFDs, especially where:
● Price and volume data exist
● Breakouts and volatility shifts are tradable
● There’s enough liquidity for meaningful signals
Visualization : Upper/lower CUSUM circles, UCL/LCL thresholds, optional highlight traded background, optional volume and BB overlays on the chart, optional entry/exit labels on the price chart, as well as entry/exit signals in the data window.
Alerts : For entry/exit labels when trades are actually filled.
CUSUM VB is designed for traders who want statistically grounded trend detection with configurable sensitivity, visual clarity, and multi-market versatility.
DISCLAIMER
This software and documentation are provided “as is” without any warranties of any kind, express or implied. CoinOperator assumes no responsibility or liability for any errors, omissions, or losses arising from the use or interpretation of this software or its outputs. Trading and investing carry inherent risks, and users are solely responsible for their own decisions and results.
SCOTTGO - Liquidity Zones (Sweeps + Tethers)
SCOTTGO - Liquidity Zones is a high-performance technical analysis tool designed to identify and track Institutional Liquidity Zones, Price Sweeps, and Pivot Levels with a clean, professional-grade interface.
Key Features
Dynamic Liquidity Zones: Automatically identifies Bullish and Bearish zones based on customizable pivot lookbacks.
Identify Liquidity Sweeps: Detects when price "pokes" through a zone but fails to close beyond it, marking the event with a distinct label and a visual tether line.
Active Tracking: Zones and LIQ lines track price in real-time until they are mitigated (broken by a candle close), at which point they visually "deactivate" to reduce clutter.
Professional UI: Features a compact, single-row styling menu (Color, Thickness, and Line Style) that mirrors TradingView’s native design.
Visual Elements
LIQ Lines: Solid or dashed lines tracking the exact pivot price within active zones.
Sweep Tethers: Vertical lines connecting the candle extreme to the "SWEEP" label for precise visual confirmation.
Detailed Tooltips: Hover over LIQ labels or Sweep tags to view specific price data and zone context.
Zone Titles: Clearly labeled "BULL ZONE" and "BEAR ZONE" tags with independent font size controls.
How to Use
Core Logic: Adjust the Pivot Lookback to define the strength of the levels you want to track.
Styling: Use the Inputs Tab for compact, specialized styling of Lines, Borders, and Sweeps.
Analysis: Look for "Sweeps" at zone boundaries as potential signs of reversal or stop-running.
Liquidity Trap Detector Pro [PyraTime]The Problem: Why You Get Stopped Out
90% of retail traders place their stop-losses at obvious swing highs and lows. Institutional algorithms ("Smart Money") are programmed to push price through these levels to trigger liquidity, fill their heavy orders, and then immediately reverse the market.
If you have ever had your stop hit right before the market moves exactly where you predicted—you were the victim of a Liquidity Trap.
The Solution: Visualizing the "Stop Hunt"
Liquidity Trap Detector Pro is not just a support/resistance indicator. It is a comprehensive Reversal Scoring Engine.
Unlike standard indicators that spam signals on every wick, this tool uses a proprietary 5-Star Scoring System to analyze the quality of the trap. It validates every signal using Wick Symmetry, RSI Divergence, and Volume Analysis to separate a true reversal from a trend continuation.
Key Features (USP)
- 5-Star Scoring Engine: Every signal is rated from 1 to 5 stars. Stop guessing if a signal is valid; let the algorithm check the confluence for you.
- Glassmorphism Visuals: Gone are the messy lines. We use modern, semi-transparent "Liquidity Zones" that keep your chart clean and professional.
- Smart Terminology: Automatically identifies Bull Traps (Buyers trapped at highs) and Bear Traps (Sellers trapped at lows).
- Heads-Up Display (HUD): A professional dashboard monitors the market state, active filters, and recent trap statistics in real-time.
- Strict Non-Repainting: (Technical Note) This script uses strict non-repainting logic. All Higher Timeframe (HTF) data is confirmed and closed before a signal is generated, ensuring historical accuracy.
---
Tutorial: How to Trade This Indicator
1. Understanding the Signals
We use correct institutional terminology to describe the market mechanics:
GREEN Signal (BEAR TRAP):
- What happened: Price swept a Swing Low, enticing sellers (Bears) to enter. The candle then reversed and closed back inside the range, trapping those sellers.
- The Trade: This is a Bullish Reversal setup (Long).
RED Signal (BULL TRAP):
- What happened: Price swept a Swing High, enticing buyers (Bulls) to breakout. The candle reversed and closed lower, trapping the buyers.
- The Trade: This is a Bearish Reversal setup (Short).
2. The 5-Star Scoring System
Not all traps are created equal. The stars tell you how much "Confluence" exists:
- 1 Star: A basic structure sweep. Risky.
- 3 Stars: A solid setup backed by either Volume or Divergence.
- 5 Stars: The "Perfect" Trap. Structure Sweep + RSI Divergence + Volume Spike + Wick Symmetry. High Probability.
3. The Strategy
- Wait for the Zone: Watch price approach a coloured Liquidity Zone.
- Observe the Reaction: Do not trade blindly. Wait for the candle to close.
- Check the Stars: Look for at least 3 Stars before considering an entry.
- Confirm with HUD: Glance at the Dashboard to ensure the "RSI Filter" and "Vol Filter" agree with your analysis.
---
Settings Guide
Structure Settings:
- Pivot Lookback: Adjusts how sensitive the zones are (Default: 10/5).
- HTF Confirmation: Optional filter to only show traps that align with Higher Timeframe structure (e.g., 1H or 4H).
Quality Filters:
- RSI Divergence: Requires momentum to disagree with price (classic reversal sign).
- Volume Spike: Requires volume to be higher than average (Smart Money footprint).
Visuals:
- Clean Mode: A presenter-favorite feature. Hides all historical zones and leaves only the active setup—perfect for taking screenshots or sharing analysis.
Disclaimer
This tool is designed to assist with technical analysis and identifying potential areas of interest. It does not guarantee profits. Trading involves significant risk; always use proper risk management.
Candle Boxes (Border + Midline + Open level)📦 Candle Boxes (Border + Midline + Open Level)
Candle Boxes is a visual multi-timeframe (HTF) tool designed to display higher-timeframe candle structure directly on a lower-timeframe chart.
It helps traders understand HTF context without constantly switching between timeframes.
🔍 What this indicator displays
For each HTF candle, the indicator draws:
HTF Box
Top = HTF High
Bottom = HTF Low
Horizontal span = full HTF candle duration
Border color
Bullish HTF candle → bullish color
Bearish HTF candle → bearish color
Midline (50%) – optional
Exact midpoint of the HTF range: (High + Low) / 2
HTF Open level – optional
Horizontal line at the HTF candle open price
All elements are drawn without background fill to keep the chart clean and readable.
⏱ Multi-Timeframe logic
HTF is selected using the HTF (box timeframe) input
Data is retrieved via request.security() with no repainting
Levels update only while the HTF candle is forming
Once the HTF candle closes, its box and lines remain fixed
🧠 Intended use
This indicator is designed for:
visualizing higher-timeframe context on lower charts
analyzing HTF structure without changing timeframe
supporting:
support & resistance analysis
price action studies
intraday and swing trading context
This tool does not generate buy/sell signals and is not a trading strategy.
⚙️ Settings
HTF & history
HTF (box timeframe) – higher timeframe used to build boxes
Keep last HTF boxes – number of most recent HTF boxes to keep
used to comply with TradingView object limits
the script automatically removes the oldest boxes and lines
Visual options
Border (on/off, width, transparency, colors)
Midline (on/off, colors, transparency)
HTF Open line (on/off, color, width, transparency)
⚠️ Important notes
TradingView enforces strict limits on drawn objects (boxes and lines)
This indicator is optimized to:
display as much historical data as technically possible
automatically manage and delete older objects
Higher HTF → fewer boxes visible in history
Lower HTF → more boxes, faster object-limit usage
🔁 Suggested Timeframe Combinations
This indicator is designed to work best when the selected HTF is significantly higher than the chart timeframe.
Below are practical, commonly used combinations:
Intraday trading
Chart: 5m → HTF: 1H
Chart: 15m → HTF: 4H
Useful for identifying higher-timeframe structure during active trading sessions.
Swing trading
Chart: 30m → HTF: 4H
Chart: 1H → HTF: Daily
Helps visualize major HTF ranges and key levels while managing trades over multiple days.
Higher-timeframe analysis
Chart: 1H → HTF: Weekly
Chart: 4H → HTF: Weekly
Best suited for understanding broader market context, range behavior, and HTF price positioning.
General guideline
A 4× to 8× ratio between chart timeframe and HTF is usually a good starting point
Larger ratios provide cleaner structure but fewer visible boxes
Smaller ratios provide more detail but consume object limits faster
These combinations are guidelines only and can be adjusted based on personal trading style and market conditions.
📌 Disclaimer
This indicator is a visual analysis tool only.
It does not provide financial advice or guarantee any trading outcome.
All trading decisions are made at your own risk.
Always combine this tool with your own analysis and risk management rules.
Auto Liquidity Sweep Trendlines With BuySell alerts By V JhaThis automatic trendline system gives buy and sell alerts as well. But you must choose to buy at bottom and sell at top, or in tune with high time frame. This works perfect when used in alignment with HTF.
Points used to draw these trendlines are not ordinary wicks, rather they are liquidity points of huge importance. This trendline system removes any need for mannual tredline drawing.
Hero Zero+ Gamma (False Breakout Filter)Hero Zero – EMA + VWAP + Gamma (Strong Candle)
Purpose:
This script is designed to capture high-momentum intraday moves (Gamma Blasts / Hero Zero trades) by combining:
Trend strength (EMA stack)
Institutional reference (VWAP)
Momentum candle quality (Full Body / Marubozu)
Participation confirmation (Volume burst – OI proxy)
It avoids weak breakouts and focuses only on decisive price expansion candles.
1️⃣ EMA STRUCTURE – TREND FILTER
emaFast = ta.ema(close, 9)
emaMid = ta.ema(close, 20)
emaSlow = ta.ema(close, 50)
📈 Why EMAs?
EMAs react faster to price → ideal for intraday momentum
The script uses EMA stacking, not just crossovers
Bullish EMA Stack
emaFast > emaMid > emaSlow
✔ Indicates strong uptrend
✔ Buyers are in control across short, medium & intraday timeframes
Bearish EMA Stack
emaFast < emaMid < emaSlow
✔ Indicates strong downtrend
✔ Sellers dominate
🔒 No EMA stack = no trade
This removes sideways and choppy markets.
2️⃣ VWAP – INSTITUTIONAL BIAS
vwapVal = ta.vwap(hlc3)
Why VWAP?
Used by institutions, algos, prop desks
Acts as a fair value line
Conditions
Bullish trade: close > VWAP
Bearish trade: close < VWAP
📌 This ensures:
You trade with smart money
You avoid mean-reversion traps
3️⃣ VOLUME BURST – GAMMA / OI PROXY
avgVol = ta.sma(volume, 20)
volBurst = volume > avgVol * 1.5
What this represents
Sudden increase in participation
Acts as a proxy for OI build-up / Gamma activity
✔ No volume = no follow-through
✔ Volume burst confirms real interest, not fake moves
4️⃣ STRONG CANDLE LOGIC – CORE EDGE 🔥
Candle Anatomy
bodySize = abs(close - open)
upperWick = high - max(close, open)
lowerWick = min(close, open) - low
A) FULL BODY CANDLE
Meaning:
Price moves strongly in one direction with minimal rejection.
Bullish Full Body
bodySize > upperWick
✔ Buyers pushed price up and held it
Bearish Full Body
bodySize > lowerWick
✔ Sellers dominated without pullback
B) MARUBOZU CANDLE (Institutional Candle)
upperWick <= mintick*2
lowerWick <= mintick*2
✔ Almost no wicks
✔ Pure aggression
✔ Typically seen during:
Option Gamma expansion
Index hero moves
Breakout candles
C) STRONG CANDLE (Final Filter)
Strong Candle = Full Body OR Marubozu
📌 This is powerful because:
Full Body → strong but normal momentum
Marubozu → explosive institutional move
Weak candles are fully filtered out.
5️⃣ HERO ZERO (GAMMA BLAST) CONDITIONS
Bullish Gamma Blast
EMA Stack + Price above VWAP +
Strong Bull Candle + Volume Burst
Bearish Gamma Blast
EMA Stack + Price below VWAP +
Strong Bear Candle + Volume Burst
💥 When all align → probability spike
💥 Designed for fast 1–3 candle expansion
6️⃣ SIGNAL VISUALS
Green “GAMMA BUY” → below candle
Red “GAMMA SELL” → above candle
EMAs + VWAP plotted for context
Signals are rare but high-quality.
7️⃣ ALERT SYSTEM
alertcondition(bullGamma)
alertcondition(bearGamma)
✔ Use for:
Bank Nifty / Nifty
Option buying
Scalping during power hours
8️⃣ BEST USAGE (IMPORTANT)
✅ Recommended Timeframes
3-min → Best balance
5-min → Safer
1-min → Aggressive scalping only
✅ Best Time Window (IST)
9:20 – 11:00 AM
2:30 – 3:15 PM (Hero Zero zone)
9️⃣ WHAT THIS SCRIPT AVOIDS ❌
Sideways chop
Low volume traps
Wicky fake breakouts
EMA crossover noise
🧠 TRADER MINDSET
This is not a signal-spamming indicator.
It is a confirmation engine for:
Index options
Momentum scalps
Gamma expansion trades
Liquidity Retest Strategy (Apicode) - TP/SL Lines FixedTechnical Documentation:
1. Purpose and underlying concept
This strategy targets a common behavior in liquid markets: liquidity sweeps around meaningful support/resistance levels, followed by a retest and rejection (reversal) with confirmation.
The core thesis is that many initial “breaks” are not continuation moves, but rather stop-runs and order harvesting. After the sweep, price reclaims the level and closes back on the opposite side, offering a structured entry with defined risk.
The strategy includes:
Support/Resistance detection via pivots
Dynamic selection of the “working” level using an ATR-based proximity window
Rejection validation via candle structure (wick + close)
Optional filters: volume, VWAP-like bias, and EMA trend
Risk management with static TP/SL (ATR-based or %), plus trailing stop (ATR-based or %), with per-trade lines plotted
2. Main components
2.1. Volatility metric: ATR
atr = ta.atr(atrLength) is used in two essential places:
Level selection (proximity to S/R): prevents trading levels that are too far from current price.
Sweep validation (minimum wick size): requires the wick to extend beyond the level by a volatility-relative amount.
Optionally, ATR can also be used for:
Static TP/SL (when usePercent = false)
Trailing stop (when useTrailPercent = false)
2.2. Building S/R levels with pivots
Pivots are detected using:
pivotHigh = ta.pivothigh(pivotLookback, rightBars)
pivotLow = ta.pivotlow(pivotLookback, rightBars)
Each confirmed pivot is stored in arrays:
resistanceLevels for resistance
supportLevels for support
The array size is capped by maxLevels, which reduces noise and manages chart resource usage (lines).
2.3. Selecting the “best” level each bar
On each bar, a single support S and/or resistance R candidate is chosen:
Support: nearest level below price (L < price)
Resistance: nearest level above price (L > price)
Only levels within atr * maxDistATR are considered
This produces dynamic “working levels” that adapt to price location and volatility.
2.4. Rejection pattern (retest + sweep)
After selecting the working level:
Support rejection (long setup)
Conditions:
Low touches/crosses support: low <= S
Close reclaims above: close > S
Bullish candle: close > open
Sufficient wick below the level (liquidity sweep): (S - low) >= atr * minWickATR
This aims to capture a stop sweep below support followed by immediate recovery.
Resistance rejection (short setup)
Symmetric conditions:
High touches/crosses resistance: high >= R
Close rejects back below: close < R
Bearish candle: close < open
Sufficient wick above the level: (high - R) >= atr * minWickATR
2.5. Optional filters
Final signals are the rejection pattern AND enabled filters:
1.- Volume filter
High volume is defined as: volume > SMA(volume, 20) * volMult
When useVolFilter = true, setups require relatively elevated participation
2.- VWAP-like bias filter
A VWAP-like series is computed over vwapLength (typical price weighted by volume)
When useVWAPFilter = true:
- Longs only if close > vwap
- Shorts only if close < vwap
3.- EMA trend filter
Uptrend if EMA(fast) > EMA(slow)
When useTrendFilter = true:
- Longs only in uptrend
- Shorts only in downtrend
2.6. Backtest time window (time filter)
To keep testing focused and reduce long-history noise:
useMaxLookbackDays enables the filter
maxLookbackDays defines how many days back from timenow entries are allowed
Entries are permitted only when time >= startTime.
3. Entry rules and position control
3.1. Entries
strategy.entry('Long', strategy.long) when longSetup and no long position is open
strategy.entry('Short', strategy.short) when shortSetup and no short position is open
No pyramiding is allowed (pyramiding = 0). Position gating is handled by:
Long allowed if strategy.position_size <= 0
Short allowed if strategy.position_size >= 0
4. Risk management: TP/SL and trailing (with plotted lines)
4.1. Detecting entry/exit events
Events are identified via changes in strategy.position_size:
LongEntry: transition into a long
shortEntry: transition into a short
flatExit: transition back to flat
This drives per-trade line creation, updates, and cleanup of state variables.
4.2. Static TP/SL
On entry, entryPrice := strategy.position_avg_price is stored.
Percent mode (usePercent = true)
Long:
staticSL = entryPrice*(1 - slPerc/100)
staticTP = entryPrice*(1 + tpPerc/100)
Short:
staticSL = entryPrice*(1 + slPerc/100)
staticTP = entryPrice*(1 - tpPerc/100)
ATR mode (usePercent = false)
Long:
staticSL = entryPrice - atrAtEntry*slATR
staticTP = entryPrice + atrAtEntry*tpATR
Short:
staticSL = entryPrice + atrAtEntry*slATR
staticTP = entryPrice - atrAtEntry*tpATR
4.3. Trailing stop (custom)
While a position is open, the script tracks the most favorable excursion:
Long: hhSinceEntry = highest high since entry
Short: llSinceEntry = lowest low since entry
A trailing candidate is computed:
Percent trailing (useTrailPercent = true)
Long: trailCandidate = hhSinceEntry*(1 - trailPerc/100)
Short: trailCandidate = llSinceEntry*(1 + trailPerc/100)
ATR trailing (useTrailPercent = false)
Long: trailCandidate = hhSinceEntry - atr*trailATR
Short: trailCandidate = llSinceEntry + atr*trailATR
Then the effective stop is selected:
Long: slUsed = max(staticSL, trailCandidate) when useTrail is enabled
Short: slUsed = min(staticSL, trailCandidate) when useTrail is enabled
If useTrail is disabled, slUsed remains the static stop.
Take profit remains static:
tpUsed = staticTP
Exit orders are issued via:
strategy.exit(..., stop=slUsed, limit=tpUsed)
4.4. Per-trade TP/SL lines
On each entry, two lines are created (SL and TP) via f_createLines().
During the trade, the SL line updates when trailing moves the stop; TP remains fixed.
On exit (flatExit), both lines are finalized on the exit bar and left on the chart as historical references.
This makes it straightforward to visually audit each trade: entry context, intended TP, and trailing evolution until exit.
5. Visualization and debugging
BUY/SELL labels with configurable size (xsize)
Debug mode (showDebug) plots the chosen working support/resistance level each bar
Stored pivot levels are drawn using reusable line slots, projected a fixed 20 bars to the right to keep the chart readable and efficient
6. Parameter guidance and practical notes
pivotLookback / rightBars: controls pivot significance vs responsiveness. Lower rightBars confirms pivots earlier but can increase noise.
maxDistATR: too low may reject valid levels; too high may select distant, less relevant levels.
minWickATR: key quality gate for “real” sweeps. Higher values reduce frequency but often improve signal quality.
Filters:
Volume filter tends to help in ranges and active sessions.
VWAP bias is useful intraday to align trades with session positioning.
EMA trend filter is helpful in directional markets but may remove good mean-reversion setups.
Percent TP/SL: provides consistent behavior across assets with variable volatility, but is less adaptive to sudden regime shifts.
Percent trailing: can capture extensions well; calibrate trailPerc per asset/timeframe (too tight = premature exits).
7. Known limitations
Pivot-derived levels are a heuristic; in strong trends, valid retests may be limited.
The time filter uses timenow; behavior may vary depending on historical context and how the platform evaluates “current time.”
TP/SL and trailing are computed from bar OHLC; in live trading, intrabar sequencing and fills may differ from bar-close simulation.
Yearly Projection ExplorerThis indicator helps you understand how the current market period has behaved historically by overlaying the same date window from previous years and projecting it forward from today’s price.
The script works the following way:
Aligns past years to today’s calendar date
Normalizes all paths to the last close at the start
Projects historical performance X bars forward
Displays each year as a separate performance path
Calculates and plots the mean (average) projection for quick reference
🔧 How It Works
Number of Years: choose how many past years to include (e.g. last 10, 20, or 25 years)
Projection Length: choose how many bars (days) ahead to project
Each line shows how the market moved during the same period in a specific year
Labels show the year and total return at the projection end
The mean line highlights the average historical outcome
🧠 Why This Is Useful
Identify seasonal tendencies
Compare current price action to historical analogs
Visualize best / worst historical outcomes
Set realistic expectations for short-term moves
Add context to discretionary or systematic decisions
This tool does not predict the future, but it provides a powerful historical framework to assess what has been typical, rare, or extreme for the current market window.
⚠️ Notes
Script works on timenow variable for now, and you might see unexpected periods if today is a day off.
Results depend on the selected timeframe and instrument
Past performance is not a guarantee of future results
Designed for analysis and context, not standalone signals
Dimensional Support ResistanceDimensional Support Resistance
Overview
Dimensional Support Resistance is an open-source overlay indicator that automatically detects and displays clean, non-overlapping support and resistance levels using pivot-based analysis with intelligent filtering. It identifies significant swing highs and lows, filters them by minimum distance to prevent visual clutter, and provides volume-confirmed bounce signals.
What This Indicator Does
The indicator calculates and displays:
Dynamic Pivot Levels - Automatically detected swing highs and lows based on configurable pivot strength
Distance Filtering - Ensures levels are spaced apart by a minimum percentage to prevent overlap
S/R Zones - Visual zones around each level showing the price area of significance
Bounce Detection - Identifies when price reverses at support or resistance levels
Volume Confirmation - Strong signals require above-average volume for confirmation
How It Works
Pivot detection scans for swing highs and lows using a configurable strength parameter. A pivot low requires the low to be lower than all surrounding bars within the strength period.
Signal Generation
The indicator generates bounce signals using TradingView's built-in pivot detection combined with candle reversal confirmation:
Support Bounce: Pivot low forms with bullish close (close > open)
Resistance Bounce: Pivot high forms with bearish close (close < open)
Strong Bounce: Bounce occurs with volume 1.5x above 20-period average
A cooldown period of 15 bars prevents signal spam.
Dashboard Panel
A compact dashboard displays:
Support - Count of active support levels
Resistance - Count of active resistance levels
Dashboard position is configurable (Top Left, Top Right, Bottom Left, Bottom Right).
Visual Elements
Support Lines - Green horizontal lines at support levels
Resistance Lines - Red horizontal lines at resistance levels
S/R Zones - Semi-transparent boxes around levels showing zone width
Price Labels - S: and R: labels showing exact price of nearest levels
BOUNCE Markers - Triangle shapes with text when price bounces at a level
STRONG Markers - Label shapes when bounce occurs with high volume
Input Parameters
Lookback Period (default: 100) - Historical bars to scan for pivots
Pivot Strength (default: 8) - Bars on each side required for valid pivot (higher = fewer but stronger levels)
Max Levels Each Side (default: 2) - Maximum support and resistance levels displayed
Zone Width % (default: 0.15) - Width of zones around each level as percentage of price
Min Distance Between Levels % (default: 1.0) - Minimum spacing between levels to prevent overlap
Show S/R Zones (default: true) - Toggle zone visualization
Show Bounce Signals (default: true) - Toggle signal markers
Support Color (default: #00ff88) - Color for support elements
Resistance Color (default: #ff3366) - Color for resistance elements
Suggested Use Cases
Identify key support and resistance levels for entry and exit planning
Use bounce signals as potential reversal confirmation
Combine with other indicators for confluence-based trading decisions
Monitor strong signals for high-probability setups with volume confirmation
Timeframe Recommendations
Works on all timeframes. Higher timeframes (4H, Daily) provide more significant levels with fewer signals. Lower timeframes show more granular structure but may produce more noise.
Limitations
Pivot detection requires lookback bars, so very recent pivots may not be immediately visible
Bounce signals are based on pivot formation and may lag by the pivot strength period
Levels are recalculated on each bar, so they may shift as new pivots form
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes. It does not constitute financial advice. Past performance does not guarantee future results. Always use proper risk management and conduct your own analysis before trading.
- Made with passion by officialjackofalltrades
Advanced algo [For Indian market]🙏 Gratitude to the TradingView Community
Before anything else, I would like to sincerely thank the TradingView community. I have learned immensely from the shared ideas, scripts, and discussions here over time. This indicator is my small way of giving back to the community that has helped me grow as a trader and developer.
📌 Indicator Overview
Advanced Algo is a non-repainting, rule-based trading indicator designed primarily for Indian indices and stocks, while remaining equally effective on other liquid instruments.
The script focuses on clean trend identification, disciplined entries, and well-defined risk management, making it suitable for intraday as well as positional analysis depending on the timeframe used.
✅ Key Highlights
100% Non-Repainting Logic
All signals are generated only after bar confirmation using a delay mechanism, ensuring reliability and backtesting accuracy.
Clear BUY / SELL Signals
Signals are plotted only on trend reversals, avoiding noise and repeated entries.
Automatic TP & SL Levels
Entry, Take-Profit, and Stop-Loss levels are calculated at the time of trade entry and remain fixed throughout the trade.
Intrabar TP / SL Detection
Profit targets and stop-losses are detected as soon as price touches them, providing realistic trade behavior.
Visual Risk-Reward Zones
Entry, TP, and SL lines with color-filled zones make trade structure easy to read at a glance.
Built-in Statistics Table
Displays Buy TP, Sell TP, Buy SL, and Sell SL counts for quick performance tracking.
⚙️ Logic (Brief & High-Level)
A smoothed range-based trend filter is used to identify directional bias.
Consecutive directional strength confirms trend continuation.
BUY or SELL signals are generated only when the trend state flips, reducing false signals.
A delay offset is applied to ensure non-repainting behavior.
Once a trade is triggered:
Entry is fixed
TP and SL are calculated using user-defined percentages
No new trade is allowed until the current trade exits or reverses
🟢 BUY / 🔴 SELL Logic (Brief)
BUY Signal
Triggered when price confirms a bullish trend shift after a bearish phase.
SELL Signal
Triggered when price confirms a bearish trend shift after a bullish phase.
Only one trade is active at a time to maintain clarity and discipline.
🎯 Take-Profit & 🛑 Stop-Loss
TP & SL are percentage-based and configurable via inputs.
Levels are calculated at entry and do not trail or repaint.
TP and SL exits are marked clearly on the chart with labels.
Trades are force-reset before allowing a new entry.
🔔 Alerts Included
Built-in alerts are available for:
Long Entry
Short Entry
Long Exit (TP / SL)
Short Exit (TP / SL)
These alerts can be easily connected to automation or webhook-based execution systems.
⚠️ Disclaimer
This indicator is provided for educational and informational purposes only.
It is not financial advice. Trading in stocks, indices, and derivatives involves risk, and past performance does not guarantee future results.
Always:
Use proper risk management
Confirm signals with additional analysis
Test thoroughly before using in live markets
The author is not responsible for any financial losses incurred while using this script.
⭐ If you find this indicator useful, your feedback and support are always appreciated.
Happy trading and all the best!
Auto Liquidity Sweep Trendlines with automation feature by V JhaThis is not an ordinary trendline, in fact high impact ones, passing through liquidity points of huge significance.
In setting of indicator you can choose to have multiple consecutive buys or sells for delayed entry. For automation you can deselect this option so that you get single buy or sell.
What is more, for Green and Red lines you can choose different bars. For instance if htf trend is bearish choose 14 bars for red, so you need to sell on rise therefore make 1 bar for green. Similar for opposite.
You will have an awe feeling for sure. Enjoy Trading.
SMC Ultra-Fast: ALL-IN & Auto-Signal [Fixed]Entry Points: 🔥 signals occur when buying and selling pressure is 1.5 times stronger than normal and breaks through a key resistance level.
Dynamic S/R Box: This box displays the price at the right edge and will "disappear immediately" if the closing price breaks through the zone, showing only the active support and resistance levels.
TP/SL Targets: Lines are drawn to the right to indicate clear entry and exit points.
Large Marks: When the price hits the target, the system will display large text 🎯 TP SUCCESS or ❌ SL HIT to summarize the trade result.
Fractal Market Geometry [JOAT]
Fractal Market Geometry
Overview
Fractal Market Geometry is an open-source overlay indicator that combines fractal analysis with harmonic pattern detection, Fibonacci retracements and extensions, Elliott Wave concepts, and Wyckoff phase identification. It provides traders with a geometric framework for understanding market structure and identifying potential reversal patterns with multi-factor signal confirmation.
What This Indicator Does
The indicator calculates and displays:
Fractal Detection - Identifies fractal highs and lows using Williams-style pivot analysis with configurable period
Fractal Dimension - Calculates market complexity using range-based dimension estimation
Harmonic Patterns - Detects Gartley, Butterfly, Bat, Crab, Shark, Cypher, and ABCD patterns using Fibonacci ratios
Fibonacci Retracements - Key levels at 38.2%, 50%, and 61.8%
Fibonacci Extensions - Projection level at 161.8%
Elliott Wave Count - Simplified wave counting based on pivot detection (1-5)
Wyckoff Phase - Volume-based phase identification (Accumulation, Markup, Distribution, Neutral)
Golden Spiral Levels - ATR-based support and resistance levels using phi (1.618) ratio
Trend Detection - EMA crossover trend identification (20/50 EMA)
How It Works
Fractal detection uses a configurable period to identify swing points:
detectFractalHigh(simple int period) =>
bool result = true
float centerVal = high
for i = 0 to period - 1
if high >= centerVal or high >= centerVal
result := false
break
Harmonic pattern detection uses Fibonacci ratio analysis between swing points. Each pattern has specific ratio requirements:
Gartley: AB 0.382-0.618, BC 0.382-0.886, CD 1.27-1.618
Butterfly: AB 0.382-0.5, BC 0.382-0.886, CD 1.618-2.24
Bat: AB 0.5-0.618, BC 1.13-1.618, CD 1.618-2.24
Crab: AB 0.382-0.618, BC 0.382-0.886, CD 2.24-3.618
Shark: AB 0.382-0.618, BC 1.13-1.618, CD 1.618-2.24
Cypher: AB 0.382-0.618, BC 1.13-1.414, CD 0.786-0.886
Wyckoff phase detection analyzes volume relative to price movement:
wyckoffPhase(simple int period) =>
float avgVol = ta.sma(volume, period)
float priceChg = ta.change(close, period)
string phase = "NEUTRAL"
if volume > avgVol * 1.5 and math.abs(priceChg) < close * 0.02
phase := "ACCUMULATION"
else if volume > avgVol * 1.5 and math.abs(priceChg) > close * 0.05
phase := "MARKUP"
else if volume < avgVol * 0.7
phase := "DISTRIBUTION"
phase
Signal Generation
Signals use multi-factor confirmation for accuracy:
BUY Signal: Fractal low + Uptrend (EMA20 > EMA50) + RSI 30-55 + Bullish candle + Volume confirmation
SELL Signal: Fractal high + Downtrend (EMA20 < EMA50) + RSI 45-70 + Bearish candle + Volume confirmation
Pattern Detection: Label appears when harmonic pattern completes at current bar
Dashboard Panel (Top-Right)
Dimension - Fractal dimension value (market complexity measure)
Last High - Most recent fractal high price
Last Low - Most recent fractal low price
Pattern - Current harmonic pattern name or NONE
Elliott Wave - Current wave count (Wave 1-5) or OFF
Wyckoff - Current market phase or OFF
Trend - BULLISH, BEARISH, or NEUTRAL based on EMA crossover
Signal - BUY, SELL, or WAIT status
Visual Elements
Fractal Markers - Small triangles at fractal highs (down arrow) and lows (up arrow)
Geometry Lines - Dashed lines connecting the most recent fractal high and low
Fibonacci Levels - Clean horizontal lines at 38.2%, 50%, and 61.8% retracement levels
Fibonacci Extension - Horizontal line at 161.8% extension level
Golden Spiral Levels - Support and resistance lines based on ATR x 1.618
3D Fractal Field - Optional depth layers around swing levels (OFF by default)
Harmonic Pattern Markers - Small diamond shapes when Crab, Shark, or Cypher patterns detected
Pattern Labels - Text label showing pattern name when detected
Signal Labels - BUY/SELL labels on confirmed multi-factor signals
Input Parameters
Fractal Period (default: 5) - Bars on each side for fractal detection
Geometry Depth (default: 3) - Complexity of geometric calculations
Pattern Sensitivity (default: 0.8) - Tolerance for pattern ratio matching
Show Fibonacci Levels (default: true) - Display retracement levels
Show Fibonacci Extensions (default: true) - Display extension level
Elliott Wave Detection (default: true) - Enable wave counting
Wyckoff Analysis (default: true) - Enable phase detection
Golden Spiral Levels (default: true) - Display spiral support/resistance
Show Fractal Points (default: true) - Display fractal markers
Show Geometry Lines (default: true) - Display connecting lines
Show Pattern Labels (default: true) - Display pattern name labels
Show 3D Fractal Field (default: false) - Display depth layers
Show Harmonic Patterns (default: true) - Display pattern markers
Show Buy/Sell Signals (default: true) - Display signal labels
Suggested Use Cases
Identify potential reversal zones using harmonic pattern completion
Use Fibonacci levels for entry, stop-loss, and target planning
Monitor Wyckoff phases for accumulation/distribution awareness
Track Elliott Wave counts for trend structure analysis
Use fractal dimension to gauge market complexity
Wait for multi-factor signal confirmation before entering trades
Timeframe Recommendations
Best on 1H to Daily charts. Lower timeframes produce more fractals but with less significance. Higher timeframes provide stronger levels and more reliable signals.
Limitations
Harmonic pattern detection uses simplified ratio ranges and may not match all textbook definitions
Elliott Wave counting is basic and does not include all wave rules
Wyckoff phase detection is volume-based approximation
Fractal dimension calculation is simplified
Signals require fractal confirmation which has inherent lag equal to the fractal period
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes. It does not constitute financial advice. Past performance does not guarantee future results. Always use proper risk management.
- Made with passion by officialjackofalltrades
Turki alghamdiThis indicator is an advanced Pivot-based SuperTrend designed to provide maximum clarity for traders. It visually displays: - Exact entry candle - Dynamic stop loss - Up to 3 R-based profit targets - Clear trend direction
Wedge Pattern [Kodexius]Wedge Pattern is a chart-overlay indicator designed to detect and manage classic Rising Wedge (bearish) and Falling Wedge (bullish) structures using strict, rules-based validation. The script focuses on producing clean, tradable wedge prints by building both boundaries from confirmed pivot swings, enforcing a mandatory “no closes outside the wedge” condition during formation, and requiring the wedge apex to be projected into the future to avoid premature or distorted patterns.
This implementation is built for practical execution charts. It continuously updates the active wedge boundaries in real time, clearly labels the pattern type, and reacts decisively when price confirms a valid breakout. When enabled, it also projects a measured-move target derived from the wedge geometry, so the trader can quickly evaluate reward potential without manual projection.
The detection logic is intentionally conservative. Rather than printing every possible converging structure, it aims to identify wedges that respect structural integrity: multiple touches on each boundary, controlled price action inside the converging range, and a valid convergence point (apex) ahead of the current bar. The result is a wedge tool that prioritizes quality, readability, and consistent behavior across symbols and timeframes.
🔹 Features
🔸 Rising and Falling Wedge Detection (Trendline Based)
The indicator detects two wedge types by constructing an upper trendline from pivot highs and a lower trendline from pivot lows:
Rising Wedge (Bearish): both lines slope upward, and the lower line rises faster than the upper line, creating a tightening upward channel that typically resolves with a downside break.
Falling Wedge (Bullish): both lines slope downward, and the upper line falls faster than the lower line, producing a tightening downward channel that typically resolves with an upside break.
This slope relationship is the core wedge classifier. It ensures the script is not just drawing random converging lines, but explicitly requires the characteristic “compression” geometry that defines wedges.
🔸 Pivot-Confirmed Structure with User Control
Wedges are built from confirmed pivots using:
Pivot Left and Pivot Right inputs to control how “strict” a pivot must be.
Min. Touches per Line to enforce multiple confirmations on each boundary.
Standard technical analysis commonly requires at least three touches to validate a trendline. This script supports that workflow by requiring a minimum number of pivot points before a wedge is eligible for drawing.
🔸 Mandatory Integrity Rule: No Closes Outside the Boundaries
A key quality filter is applied before a wedge can be accepted:
During formation, no candle close is allowed outside the upper or lower boundary.
If any close is detected above the upper line or below the lower line (with tick tolerance), the candidate wedge is rejected. This prevents patterns that already “broke” before they were formally detected and reduces false positives caused by messy price action.
🔸 Apex Validation to Avoid Distorted Prints
The wedge apex (the projected intersection point of the two trendlines) must be in the future. This avoids degenerate cases where lines intersect behind current price, which often indicates the structure is not a valid wedge or is already past its useful phase.
🔸 Live Updating Boundaries for Active Patterns
Once a wedge becomes active, its upper and lower lines are extended forward bar by bar. The script recalculates the boundary price at the current bar index using the stored slope, then updates the line endpoints so the wedge remains visually accurate as time advances.
🔸 Breakout Engine with Directional Confirmation
The script differentiates between:
Correct breakout: the wedge breaks in the expected direction.
Rising wedge breaks downward (close below the lower boundary).
Falling wedge breaks upward (close above the upper boundary).
When this happens, the wedge is marked as broken and labeled as BREAKOUT on the chart.
🔸 Invalidation and Failure Handling
If price violates the wedge in the wrong direction, or if the wedge collapses into an impossible structure (upper boundary falls below or equals the lower boundary), the wedge is flagged as FAILED. This keeps signals honest and prevents lingering drawings that no longer represent a valid pattern.
🔸 Optional Target Projection (Measured Move)
When Show Target Projection is enabled, the script plots a dashed target line and a target label after a valid breakout. The target is computed as a measured move using the wedge height, projected from the breakout boundary in the breakout direction. This provides an immediate objective reference for potential continuation.
🔸 Clean Object Management and Chart Readability
To maintain clarity, the script manages the “active” wedge per type:
If a new wedge is detected while an older one is still active and not broken or failed, the old drawings are removed and replaced with the newer valid pattern.
This prevents chart clutter and keeps the display focused on the most relevant wedge structures.
🔹 Calculations
1) Pivot Collection
The script uses pivot functions to confirm swing points:
float ph = ta.pivothigh(high, INPUT_PIVOT_LEFT, INPUT_PIVOT_RIGHT)
float pl = ta.pivotlow(low, INPUT_PIVOT_LEFT, INPUT_PIVOT_RIGHT)
if not na(ph)
pivot_highs.push(Coordinate.new(bar_index - INPUT_PIVOT_RIGHT, ph))
if not na(pl)
pivot_lows.push(Coordinate.new(bar_index - INPUT_PIVOT_RIGHT, pl))
Each pivot is stored as a Coordinate containing:
index: the bar index where the pivot is confirmed
price: the pivot high or pivot low value
The arrays are capped (for example, last 20 pivots) to control memory and keep selection relevant.
2) Trendline Construction and Slope
A wedge candidate uses the earliest and latest required pivot points for each line. For each boundary, slope is computed as:
method calc_slope(Trendline this) =>
(this.end.price - this.start.price) / (this.end.index - this.start.index)
With slope known, the trendline value at any bar index is:
method get_price_at(Trendline this, int bar_idx) =>
this.start.price + this.slope * (bar_idx - this.start.index)
This approach allows the script to update wedge boundaries consistently without re-fitting lines on every bar.
3) Wedge Type Classification (Geometry Rules)
After both slopes are calculated, wedge type is determined by slope direction and relative steepness:
Rising wedge requires both slopes positive and lower slope greater than upper slope.
Falling wedge requires both slopes negative and upper slope more negative than lower slope (upper line falls faster).
In code logic:
if tl_up.slope > 0 and tl_lo.slope > 0 and tl_lo.slope > tl_up.slope
w_type := 1 // Rising
if tl_up.slope < 0 and tl_lo.slope < 0 and tl_up.slope < tl_lo.slope
w_type := 2 // Falling
This enforces converging boundaries and avoids simple parallel channels.
4) Apex Projection (Trendline Intersection)
The apex is the projected intersection x-coordinate of the two trendlines:
method get_apex_index(Wedge this) =>
float m1 = this.upper.slope
float m2 = this.lower.slope
float y1 = this.upper.start.price
float y2 = this.lower.start.price
int x1 = this.upper.start.index
int x2 = this.lower.start.index
float apex_x = (y2 - y1 + m1 * x1 - m2 * x2) / (m1 - m2)
math.round(apex_x)
Validation requires:
apex_idx > bar_index (apex must be in the future)
This prevents late or structurally invalid wedges from being activated.
5) Mandatory “No Close Outside” Validation
Before activation, the script verifies the pattern has not been violated by candle closes:
method check_violation(Wedge this, int from_idx, int to_idx) =>
bool violated = false
for i = from_idx to to_idx
float up_p = this.upper.get_price_at(i)
float lo_p = this.lower.get_price_at(i)
float c_p = close
if c_p > up_p + syminfo.mintick or c_p < lo_p - syminfo.mintick
violated := true
break
violated
Interpretation:
For every bar from wedge start to current bar, the close must remain between the projected upper and lower boundary prices.
A tick tolerance (syminfo.mintick) is used to reduce micro false violations.
6) Live Update and Breakout Detection
Once active, lines are extended to the current bar and boundary prices are computed:
float u_p = w.upper.get_price_at(bar_index)
float l_p = w.lower.get_price_at(bar_index)
bool b_up = close > u_p
bool b_dn = close < l_p
Correct breakout conditions:
Rising wedge breakout: close below lower boundary.
Falling wedge breakout: close above upper boundary.
if (w.is_rising and b_dn) or (not w.is_rising and b_up)
w.is_broken := true
Invalidation rules include:
wrong-direction break
boundary crossover (upper <= lower)
7) Target Projection (Measured Move)
If target display is enabled, the script calculates wedge height and projects a target from the breakout side:
float m = math.abs(w.upper.start.price - w.lower.get_price_at(w.upper.start.index))
float t = w.is_rising ? l_p - m : u_p + m
Interpretation:
m represents the wedge height near the start of the formation.
t is the target price, projected in the breakout direction.
Rising wedge: target below the lower boundary.
Falling wedge: target above the upper boundary.
A dashed target line and label are then placed forward in time for readability.
VWAP Stdev Bands optional buy/sell signals by MaxNStandard Deviation Bands with Optional Buy/Sell Signals
This indicator is fully customizable, allowing buy and sell signals to be generated on any standard deviation band from 1 through 5.
For practical use, signals are typically enabled only on deviation bands 4 and 5. This approach helps reduce market noise and focuses signals on extreme price deviations.
Users may wish to adjust the colour of the buy and sell markers to improve visibility, depending on their chart theme.
An adjustable “dead zone” is also included to prevent false signals during VWAP session resets. This feature suppresses signal generation during specified times, which in this configuration is set between 9:00 PM GMT and 1:00 AM GMT, helping avoid premature or delayed signals around the trading day transition.
Golden Vector Trend Orchestrator (GVTO)Golden Vector Trend Orchestrator (GVTO) is a composite trend-following strategy specifically engineered for XAUUSD (Gold) and volatile assets on H4 (4-Hour) and Daily timeframes.
This script aims to solve a common problem in trend trading: "Whipsaws in Sideways Markets." Instead of relying on a single indicator, GVTO employs a Multi-Factor Confluence System that filters out low-probability trades by requiring alignment across Trend Structure, Momentum, and Volatility.
🛠 Methodology & Logic
The strategy executes trades only when four distinct technical conditions overlap (Confluence). If any single condition is not met, the trade is filtered out to preserve capital.
1. Market Structure Filter (200 EMA)
Indicator: Exponential Moving Average (Length 200).
Logic: The 200 EMA acts as the baseline for the long-term trend regime.
Bullish Regime: Price must close above the 200 EMA.
Bearish Regime: Price must close below the 200 EMA.
Purpose: Prevents counter-trend trading against the macro direction.
2. Signal Trigger & Trailing Stop (Supertrend)
Indicator: Supertrend (ATR Length 14, Factor 3.5).
Logic: Uses Average True Range (ATR) to detect trend reversals while accounting for volatility.
Purpose: Provides the specific entry signal and acts as a dynamic trailing stop-loss to let profits run while cutting losses when the trend invalidates.
3. Volatility Gatekeeper (ADX Filter)
Indicator: Average Directional Index (Length 14).
Threshold: > 25.
Logic: A high ADX value indicates a strong trend presence, regardless of direction.
Purpose: This is the most critical filter. It prevents the strategy from entering trades during "choppy" or ranging markets (consolidation zones) where trend-following systems typically fail.
4. Momentum Confirmation (DMI)
Indicator: Directional Movement Index (DI+ and DI-).
Logic: Checks if the buying pressure (DI+) is physically stronger than selling pressure (DI-), or vice versa.
Purpose: Ensures that the price movement is backed by genuine momentum, not just a momentary price spike.
📋 How to Use This Strategy
🟢 LONG (BUY) Setup
A Buy signal is generated only when ALL of the following occur simultaneously:
Price Action: Price closes ABOVE the 200 EMA (Orange Line).
Trigger: Supertrend flips to GREEN (Bullish).
Strength: ADX is greater than 25 (Strong Trend).
Momentum: DI+ (Plus Directional Indicator) is greater than DI- (Minus).
🔴 SHORT (SELL) Setup
A Sell signal is generated only when ALL of the following occur simultaneously:
Price Action: Price closes BELOW the 200 EMA (Orange Line).
Trigger: Supertrend flips to RED (Bearish).
Strength: ADX is greater than 25 (Strong Trend).
Momentum: DI- (Minus Directional Indicator) is greater than DI+ (Plus).
🛡 Exit Strategy
Stop Loss / Take Profit: The strategy utilizes the Supertrend Line as a dynamic Trailing Stop.
Exit Long: When Supertrend turns Red.
Exit Short: When Supertrend turns Green.
Note: Traders can also use the real-time P/L Dashboard included in the script to manually secure profits based on their personal Risk:Reward ratio.
📊 Included Features
Real-Time P/L Dashboard: A table in the top-right corner displays the current trend status, ADX strength, and the Unrealized Profit/Loss % of the current active position.
Smart Labeling: Buy/Sell labels are coded to appear only on the initial entry trigger. They do not repaint and do not spam the chart if the trend continues (no pyramiding visualization).
Visual Aids: Background color changes (Green/Red) to visually represent the active trend based on the Supertrend status.
⚠️ Risk Warning & Best Practices
Asset Class: Optimized for XAUUSD (Gold) due to its high volatility nature. It also works well on Crypto (BTC, ETH) and Major Forex Pairs.
Timeframe: Highly recommended for H4 (4 Hours) or D1 (Daily). Using this on lower timeframes (M5, M15) may result in false signals due to market noise.
News Events: Automated strategies cannot predict economic news (CPI, NFP). Exercise caution or pause trading during high-impact economic releases.
Yivgeny Decision ScoreYivgeny Decision Score is a technical indicator that provides two objective scores (0–10) to support trading decisions:
ENTRY Score – evaluates the quality of a potential entry
HOLD Score – evaluates whether to hold or exit an existing position
The score is based on trend direction (SMA150), EMA20 behavior, volume confirmation, MACD momentum, breakout or bounce signals, and price action structure.
Designed for discretionary traders who want a clear, rule-based decision aid without automatic buy/sell signals.
MoBo Bands - Momentum Breakout IndicatorDESCRIPTION
MoBo Bands (Momentum Breakout Bands) is a volatility-based breakout detection indicator that helps traders identify potential momentum shifts in the market. The indicator uses dynamic bands calculated from standard deviation to signal when price breaks above or below established ranges, indicating potential bullish or bearish momentum changes.
═════════════════════════════════════════════════════════════
KEY FEATURES
═════════════════════════════════════════════════════════════
- Dynamic upper and lower bands based on standard deviation
- Color-coded bands that change based on breakout direction (green for bullish, red for bearish)
- Visual breakout arrows marking entry points above/below bands
- Optional colored fill zones between bands showing current momentum state
- Customizable displacement for band projection
- Built-in alert system for breakout and breakdown signals
═════════════════════════════════════════════════════════════
HOW IT WORKS
═════════════════════════════════════════════════════════════
The indicator calculates a middle line using a Simple Moving Average (SMA) with upper and lower bands positioned using standard deviation multipliers. When price closes above the upper band, a bullish breakout (green) is signaled. When price closes below the lower band, a bearish breakdown (red) is signaled. The bands and fill zones remain colored until the opposite signal occurs, providing clear visual confirmation of the current momentum state.
═════════════════════════════════════════════════════════════
CUSTOMIZABLE INPUTS
═════════════════════════════════════════════════════════════
CALCULATION PARAMETERS:
- Price Source - Select which price data to use (default: close)
- Length - Period for SMA and standard deviation calculation (default: 10)
- Num Dev Up - Standard deviation multiplier for upper band (default: 0.8)
- Num Dev Down - Standard deviation multiplier for lower band (default: -0.8)
- Displace - Shift bands forward for projection analysis (default: 0)
DISPLAY OPTIONS:
- Colored Mobo - Enable/disable color-coded bands
- Colored Fill - Enable/disable fill zones between bands
- Break Arrows - Show/hide breakout and breakdown arrows
ALERT OPTIONS:
- Show Alerts - Enable/disable alert conditions
═════════════════════════════════════════════════════════════
USAGE GUIDE
═════════════════════════════════════════════════════════════
Watch for price to close outside the bands as potential breakout signals:
BULLISH BREAKOUT: Green arrow appears below the lower band when price closes above the upper band, indicating upward momentum shift.
BEARISH BREAKDOWN: Red arrow appears above the upper band when price closes below the lower band, indicating downward momentum shift.
The bands also serve as dynamic support and resistance levels. When bands are green, momentum is bullish. When bands are red, momentum is bearish.
═════════════════════════════════════════════════════════════
BEST PRACTICES
═════════════════════════════════════════════════════════════
- This indicator works well on liquid futures contracts (MNQ, MES, MYM, MGC, MCL) and major
currency pairs across multiple timeframes
- Lower deviation values (0.5-1.0) produce more frequent signals suitable for scalping
- Higher deviation values (1.5-2.5) filter for stronger breakouts ideal for swing trading
- Combine with volume indicators for additional confirmation
- Use with momentum oscillators to validate breakout strength
- Best results in trending market conditions
- Consider the overall market context and trend direction
════════════════════════════════════════════════════════════
ALERT CONFIGURATION
═════════════════════════════════════════════════════════════
Configure custom alerts for automated notifications:
- "MoBo BreakOUT" - Triggers on bullish breakout signals
- "MoBo BreakDOWN" - Triggers on bearish breakdown signals
Set alerts to "Once Per Bar Close" for confirmed signals and avoid false triggers during bar development.
═════════════════════════════════════════════════════════════
IDEAL FOR
═════════════════════════════════════════════════════════════
- Day traders and scalpers on futures markets
- Swing traders looking for momentum shifts
- Breakout trading strategies
- Trend following systems
- Works on stocks, forex, crypto, and commodities
- Effective across multiple timeframes (1min to daily)
═════════════════════════════════════════════════════════════
Perfect for traders seeking clear visual breakout signals with minimal lag. The color-coded system and arrow markers make it easy to identify momentum changes at a glance.
© 2024 NPR21 | Mozilla Public License 2.0
Open-source script
NPR21
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by
Open Interest Weighted Average Price [Arjo]Open Interest Weighted Average Price , or OIWAP , is a simple visual indicator that shows the average price of an asset based on changes in open interest .
Instead of using trading volume like VWAP, this indicator gives more weight to prices where new futures contracts are being added or removed . This helps highlight the price levels where traders are actively building or closing positions.
The indicator shows:
A main line that represents the average price weighted by open interest changes.
Upper and lower bands (standard deviation bands) that show how far the price moves away from this average.
OIWAP is mainly useful for NSE futures markets , where open interest data is available. It helps traders visually understand where most market participation and positioning are taking place relative to price .
Concepts:
Applies statistical concepts, including weighted averaging and standard deviation, to open interest data
Uses the absolute change in open interest as a weighting factor for each price point
Creates a dynamic average that reflects where significant open interest activity has occurred during a given period
Standard deviation bands are computed from this weighted average to show the statistical spread of prices around the OIWAP line
Resets calculations based on user-selected time periods (daily, weekly, monthly, or session-based)
Allows for fresh analysis at regular intervals
Similar concept to volume-weighted average price (VWAP) indicators, but uses open interest changes as the weighting component
Features:
Weighted Average: Calculates a central line based on contract activity.
Flexible Anchors: Allows users to choose the reset period for the calculation.
Volatility Bands: Displays outer and mid-bands to visualize price stretches.
Data Check: Built-in alerts notify you if Open Interest data is missing for a symbol.
Visual Zones: Color-coded areas help identify price location at a glance.
How To Use
When you add the indicator to your chart, you will see:
A main OIWAP line — the open-interest-weighted price level
Mid-bands around the line (±0.5 standard deviations)
Outer bands farther away (±2.0 standard deviations)
Shaded background zones between these lines
You can:
Change the reset period to see how the average behaves over different time ranges
Adjust the timeframe for open-interest data
Turn mid-bands on or off
Adjust colors and styles to improve readability
Conclusion
The OIWAP indicator serves as an educational tool for visualizing the relationship between price movements and open interest activity in futures markets
Presents a weighted average price line along with statistical deviation bands
Offers a structured framework for chart analysis
Customizable settings allow users to adapt the display to their analytical preferences
Maintains focus on visual interpretation rather than directional predictions
Functions as a supplementary charting overlay that may complement other forms of technical and fundamental analysis
Disclaimer
This indicator is for educational and visual-analysis purposes only. It does not provide trading signals, financial advice, or guaranteed outcomes . You should perform your own research and consult a licensed financial professional when needed. All trading decisions are solely the responsibility of the user.






















