Reversal Detection v3.0 - Real-Time Pro (Non-Repainting)═══════════════════════════════════════════════════════
REVERSAL DETECTION PRO v3.0 - NON-REPAINTING
Adaptive Zigzag Reversal Detection for Scalpers & Day Traders
═══════════════════════════════════════════════════════
WHY I BUILT THIS
Most reversal indicators out there repaint like crazy, flipping signals after the fact and making you second-guess every trade. Plus they're too noisy in choppy markets or way too laggy in trends, so I kept missing entries or getting faked out. I wanted something solid that sticks to its guns without repainting and adapts to volatility without me tweaking it every 5 minutes.
This indicator solves those problems by using an adaptive zigzag algorithm that adjusts to market volatility automatically. Once a reversal signal appears, it's locked in place - no repainting, no disappearing signals. The ATR-based sensitivity system means it works across different market conditions without constant adjustment.
WHAT YOU'LL SEE ON YOUR CHART
When you add this indicator, here's what shows up:
- GREEN LABELS with "REVERSAL" and price level = Bullish reversal confirmed at swing low
- RED LABELS with "REVERSAL" and price level = Bearish reversal confirmed at swing high
- HORIZONTAL LINES extending from each reversal = Reference for stops and targets
- PREVIEW LABELS (lighter colors) = Potential reversals forming in real-time (optional)
- CANDLE COLORS: Green for bullish trends, red for bearish, purple for neutral
- PURPLE BOXES = Supply/demand zones marking reversal areas
- INFO TABLE (top corner) = Shows sensitivity, current ATR, threshold, and trend status
The indicator uses three EMAs (9/14/21 periods) to determine trend direction, which drives the candle coloring system. This helps you see whether you're in a bullish, bearish, or choppy market at a glance.
HOW IT WORKS
The core reversal detection uses a zigzag calculation that tracks price swings and identifies reversals when price moves by a dynamically calculated threshold. The reversal amount is determined by taking the maximum of three values:
1. Percentage-based threshold (adjusts to instrument price level)
2. Absolute price movement threshold (minimum move required)
3. ATR-based threshold (adapts to current volatility)
This multi-factor approach ensures the indicator works consistently across different assets and market conditions. The non-repainting mechanism uses confirmed bar data - once a pivot is detected at a swing high or low, the label and horizontal line are permanently locked at that exact wick price.
Five sensitivity presets automatically adjust the ATR multiplier:
- Very High (0.8x ATR) = More signals, captures small moves
- High (1.2x ATR) = Active trading
- Medium (2.0x ATR) = Balanced (default)
- Low (2.8x ATR) = Filters noise
- Very Low (3.5x ATR) = Only major reversals
Advanced users can select "Custom" to manually tune ATR multiplier, percentage threshold, and calculation method.
HOW I USE IT
I mainly trade /MNQ futures on 1-5 minute charts for scalping - that's my bread and butter. The indicator works decent on other stuff like stocks or forex too, but I dial sensitivity up for faster scalps during volatile sessions.
My typical trade setup:
1. Wait for a confirmed REVERSAL label (green for long, red for short)
2. Check that it lines up with the EMA trend color (bullish candles for longs, bearish for shorts)
3. If it's a "strong" signal where the reversal hits during a trend flip, that's my green light
4. Quick check for nearby supply/demand zones to avoid fighting them
5. Enter with a tight stop below/above the reversal line
6. Target 1:1 or 2:1 risk/reward, usually out in 5-10 minutes
The horizontal lines from each reversal give me logical stop placement levels, and the supply/demand zones help identify potential profit targets or areas to avoid.
SETTINGS & CUSTOMIZATION
Signal Modes:
- Confirmed Only = Most reliable, only shows locked-in signals (recommended)
- Confirmed + Preview = Shows both confirmed and potential signals
- Preview Only = For testing/development
Sensitivity Presets:
Start with "Medium" and adjust based on your trading style:
- Scalping volatile sessions = "High" or "Very High"
- Day trading = "Medium"
- Swing trading = "Low" or "Very Low"
Display Options:
- Choose candle display type (Solid, Trend, Bars, Volume, None)
- Show/hide supply/demand zones
- Adjust zone box extension length
- Customize info table position and size
- Control maximum lines displayed
Alert System:
- Bullish/Bearish reversal alerts
- EMA trend change alerts
- Strong signal alerts (reversal + trend alignment)
- "Any reversal" catch-all alert
IMPORTANT - READ THIS FIRST
Don't rely on this indicator alone. Always pair it with your own price action or volume confirmation, because no indicator is perfect. Avoid cranking sensitivity too high in ranging markets or you'll get whipped. Test on demo first, and remember it's non-repainting so signals are final, but preview mode can tease you into early entries if you're not patient.
Risk management is key - don't size up just because a signal looks good. This indicator helps identify potential reversals, but YOU still need to manage your trades, set proper stops, and control position size based on your account risk tolerance.
WHAT MAKES THIS DIFFERENT
Unlike simple pivot indicators or manual support/resistance drawing:
- Adapts automatically to volatility changes (ATR-based)
- Never repaints - signals lock in place permanently
- Reversal detection works with trend context (EMAs)
- Supply/demand zones mark key structural levels
- One-click sensitivity adjustment via presets
- Works across multiple timeframes and instruments
The zigzag reversal algorithm adapts to volatility using ATR, while the EMA system provides trend context so you're not trading reversals blindly against the trend. The supply/demand zones help identify key levels where price has reversed before. It's built specifically for active traders who need reliable, non-repainting signals.
BEST PRACTICES
✅ DO:
- Start with "Medium" sensitivity on demo account
- Wait for confirmed signals before entering
- Use horizontal lines for stop placement
- Check trend context (candle colors) before trading reversals
- Combine with volume analysis or price action
- Test different sensitivity settings for your instrument
❌ DON'T:
- Trade every signal blindly without context
- Use "Very High" sensitivity in choppy/ranging markets
- Ignore the trend direction (candle colors)
- Enter on preview labels (they can disappear)
- Skip proper risk management
- Overtrade just because signals appear
TECHNICAL SPECIFICATIONS
- Pine Script Version: v6
- Non-Repainting: Yes (confirmed signals only)
- Uses security(): No (no higher timeframe data)
- Uses non-standard chart types: No (all calculations on real OHLC)
- Alert Compatible: Yes (7 alert types)
- Calculations: Current timeframe only, no lookahead bias
DISCLAIMER
This indicator is for educational purposes only and does not constitute financial advice. Trading futures, stocks, and forex involves substantial risk of loss and is not suitable for all investors. Past performance is not indicative of future results. Always use proper risk management, never risk more than you can afford to lose, and test thoroughly on demo accounts before live trading.
═══════════════════════════════════════════════════════
© 2025 NPR21 - Reversal Detection Pro v3.0
Built by a trader, for traders
═══════════════════════════════════════════════════════
指标和策略
ORB Breakout Strategy📊 Overview
📈 Systematic intraday Opening Range Breakout (ORB) strategy
🧭 Designed for index CFDs (e.g. US500)
⏱️ Optimized for 5-minute charts during regular trading hours
🛡️ Strict risk management and position sizing
🚦 Maximum one trade per day
💡 Core Idea
🌅 The market establishes a key price range shortly after the open
🚀 A confirmed breakout from this opening range can signal directional momentum
🎯 The strategy trades only confirmed breakouts with predefined risk
📐 Opening Range Definition
⏰ Opening range is defined between 09:30 and 09:45 (exchange time)
🕯️ Uses the first three 5-minute candles of the session
⬆️ Opening Range High is the highest high of those candles
⬇️ Opening Range Low is the lowest low of those candles
🟢 Long Trade
📊 A 5-minute candle closes above the Opening Range High
🟩 A Fair Value Gap (FVG) exists relative to the candle 10 minutes earlier
🧲 A buy limit order is placed at the Opening Range High
🔴 Short Trade
📉 A 5-minute candle closes below the Opening Range Low
🟥 A Fair Value Gap (FVG) exists relative to the candle 10 minutes earlier
🧲 A sell limit order is placed at the Opening Range Low
🛑 Stop Loss
📉 Long trades use the low of the candle 10 minutes before the breakout
📈 Short trades use the high of the candle 10 minutes before the breakdown
🎯 Take Profit
⚖️ Fixed reward-to-risk ratio of 2:1
📏 Take profit distance equals two times the stop loss distance
💰 Position Sizing
💵 Fixed dollar risk per trade (default: $2,000)
📐 Position size is calculated dynamically based on stop loss distance
🔁 Risk remains consistent across changing volatility conditions
⏳ Trade Management Rules
🚦 Maximum one trade per day, including same-bar entries and exits
🕛 No new entries after 12:00 (exchange time)
⏰ All open positions are closed at 15:50
❌ Pending orders are cancelled after the entry cutoff or at session end
⚙️ Execution & Costs
💸 Commission model can be configured in the strategy settings
🧪 Backtests use TradingView Strategy Tester mechanics
📝 Notes
📚 This is a rules-based trading strategy, not a signal service
🔍 Results depend on instrument, broker feed, spreads, and commissions
🧠 Forward testing is strongly recommended before live trading
⚠️ Disclaimer
📖 This script is provided for educational and research purposes only
🚫 It does not constitute financial advice
🔥 Trading leveraged instruments involves significant risk
First FVG per Session - Big Boss Traders)First FVG per Session - Big Boss Traders)
All persistent variables (fvgTop, fvgBottom, boxes) declared with var at the top.
No assignment to na without var → compiles error-free.
FVG boxes and levels are dark orange.
First FVG per session is drawn and prolonged dynamically.
Background colors per session remain.
ICT First FVG Per Session - Big Boss TradersICT First FVG Per Session like per session FVG Asia FVG london First P FVG and New york first P FVG
Order Blocks ScannerHighlights order blocks with inneficiencies onto the chart, while removing mitigated blocks if price has touched that supply or demand area.
Also by default changes the candle color of the order block origin candle to make it easier to see already mitigated blocks for potential breaker block zones.
ABCD Strategy (v7 Ready)//@version=6
indicator("ABCD Strategy v7 – MTF S/R Filter", overlay=true, max_lines_count=300, max_labels_count=300)
//━━━━━━━━━━━━━━━━━━━━━
// INPUTS
//━━━━━━━━━━━━━━━━━━━━━
pivotLen = input.int(5, "Swing Strength", minval=2)
bcMin = input.float(0.618, "BC Min Fib")
bcMax = input.float(0.786, "BC Max Fib")
cdMin = input.float(1.272, "CD Min Extension")
cdMax = input.float(1.618, "CD Max Extension")
htfTF = input.timeframe("240", "Higher Timeframe (S/R)")
srLookback = input.int(200, "HTF S/R Lookback")
srTolerance = input.float(0.002, "S/R Zone Tolerance (0.2%)")
showSR = input.bool(true, "Show HTF S/R Zones")
showTargets = input.bool(true, "Show Targets")
//━━━━━━━━━━━━━━━━━━━━━
// HIGHER TF SUPPORT / RESISTANCE
//━━━━━━━━━━━━━━━━━━━━━
htfHigh = request.security(syminfo.tickerid, htfTF, ta.highest(high, srLookback))
htfLow = request.security(syminfo.tickerid, htfTF, ta.lowest(low, srLookback))
srHighZoneTop = htfHigh * (1 + srTolerance)
srHighZoneBottom = htfHigh * (1 - srTolerance)
srLowZoneTop = htfLow * (1 + srTolerance)
srLowZoneBottom = htfLow * (1 - srTolerance)
//━━━━━━━━━━━━━━━━━━━━━
// DRAW HTF ZONES
//━━━━━━━━━━━━━━━━━━━━━
if showSR
box.new(bar_index - 5, srHighZoneTop, bar_index + 5, srHighZoneBottom,
bgcolor=color.new(color.red, 85), border_color=color.red)
box.new(bar_index - 5, srLowZoneTop, bar_index + 5, srLowZoneBottom,
bgcolor=color.new(color.green, 85), border_color=color.green)
//━━━━━━━━━━━━━━━━━━━━━
// SWING DETECTION
//━━━━━━━━━━━━━━━━━━━━━
ph = ta.pivothigh(high, pivotLen, pivotLen)
pl = ta.pivotlow(low, pivotLen, pivotLen)
var float A = na
var float B = na
var float C = na
var float D = na
var int Ab = na
var int Bb = na
var int Cb = na
var int Db = na
if not na(pl)
A := B
Ab := Bb
B := C
Bb := Cb
C := low
Cb := bar_index
if not na(ph)
A := B
Ab := Bb
B := C
Bb := Cb
C := high
Cb := bar_index
//━━━━━━━━━━━━━━━━━━━━━
// ABCD LOGIC
//━━━━━━━━━━━━━━━━━━━━━
ab = math.abs(B - A)
bc = math.abs(C - B)
bcFib = bc / ab
validBC = bcFib >= bcMin and bcFib <= bcMax
bull = C > B
cdMinPrice = bull ? C - bc * cdMin : C + bc * cdMin
cdMaxPrice = bull ? C - bc * cdMax : C + bc * cdMax
inDzone = low <= cdMaxPrice and high >= cdMinPrice
//━━━━━━━━━━━━━━━━━━━━━
// MTF STRUCTURE FILTER
//━━━━━━━━━━━━━━━━━━━━━
nearResistance = close <= srHighZoneTop and close >= srHighZoneBottom
nearSupport = close <= srLowZoneTop and close >= srLowZoneBottom
structureOK =
(bull and nearSupport) or
(not bull and nearResistance)
//━━━━━━━━━━━━━━━━━━━━━
// FINAL D CONFIRMATION
//━━━━━━━━━━━━━━━━━━━━━
if validBC and inDzone and structureOK
D := close
Db := bar_index
//━━━━━━━━━━━━━━━━━━━━━
// TARGETS
//━━━━━━━━━━━━━━━━━━━━━
tp1 = bull ? D + math.abs(D - C) * 0.382 : D - math.abs(D - C) * 0.382
tp2 = bull ? D + math.abs(D - C) * 0.618 : D - math.abs(D - C) * 0.618
//━━━━━━━━━━━━━━━━━━━━━
// DRAW PATTERN
//━━━━━━━━━━━━━━━━━━━━━
if not na(D)
line.new(Ab, A, Bb, B, width=2, color=color.blue)
line.new(Bb, B, Cb, C, width=2, color=color.orange)
line.new(Cb, C, Db, D, width=2, color=color.green)
label.new(Db, D, "D (HTF CONFIRMED)", style=label.style_label_down, color=color.yellow)
if showTargets
line.new(Db, tp1, Db + 12, tp1, color=color.green)
line.new(Db, tp2, Db + 12, tp2, color=color.teal)
alertcondition(validBC and inDzone and structureOK,
"ABCD v7 Confirmed",
"ABCD Pattern confirmed at Higher-Timeframe Support/Resistance — wait for price action.")
First FVG per Session - Big boss traders First FVG per Session like Asia first Persented FVG London and Ny
ABCD Strategy (v6 Ready)//@version=6
indicator("ABCD Strategy v7 – MTF S/R Filter", overlay=true, max_lines_count=300, max_labels_count=300)
//━━━━━━━━━━━━━━━━━━━━━
// INPUTS
//━━━━━━━━━━━━━━━━━━━━━
pivotLen = input.int(5, "Swing Strength", minval=2)
bcMin = input.float(0.618, "BC Min Fib")
bcMax = input.float(0.786, "BC Max Fib")
cdMin = input.float(1.272, "CD Min Extension")
cdMax = input.float(1.618, "CD Max Extension")
htfTF = input.timeframe("240", "Higher Timeframe (S/R)")
srLookback = input.int(200, "HTF S/R Lookback")
srTolerance = input.float(0.002, "S/R Zone Tolerance (0.2%)")
showSR = input.bool(true, "Show HTF S/R Zones")
showTargets = input.bool(true, "Show Targets")
//━━━━━━━━━━━━━━━━━━━━━
// HIGHER TF SUPPORT / RESISTANCE
//━━━━━━━━━━━━━━━━━━━━━
htfHigh = request.security(syminfo.tickerid, htfTF, ta.highest(high, srLookback))
htfLow = request.security(syminfo.tickerid, htfTF, ta.lowest(low, srLookback))
srHighZoneTop = htfHigh * (1 + srTolerance)
srHighZoneBottom = htfHigh * (1 - srTolerance)
srLowZoneTop = htfLow * (1 + srTolerance)
srLowZoneBottom = htfLow * (1 - srTolerance)
//━━━━━━━━━━━━━━━━━━━━━
// DRAW HTF ZONES
//━━━━━━━━━━━━━━━━━━━━━
if showSR
box.new(bar_index - 5, srHighZoneTop, bar_index + 5, srHighZoneBottom,
bgcolor=color.new(color.red, 85), border_color=color.red)
box.new(bar_index - 5, srLowZoneTop, bar_index + 5, srLowZoneBottom,
bgcolor=color.new(color.green, 85), border_color=color.green)
//━━━━━━━━━━━━━━━━━━━━━
// SWING DETECTION
//━━━━━━━━━━━━━━━━━━━━━
ph = ta.pivothigh(high, pivotLen, pivotLen)
pl = ta.pivotlow(low, pivotLen, pivotLen)
var float A = na
var float B = na
var float C = na
var float D = na
var int Ab = na
var int Bb = na
var int Cb = na
var int Db = na
if not na(pl)
A := B
Ab := Bb
B := C
Bb := Cb
C := low
Cb := bar_index
if not na(ph)
A := B
Ab := Bb
B := C
Bb := Cb
C := high
Cb := bar_index
//━━━━━━━━━━━━━━━━━━━━━
// ABCD LOGIC
//━━━━━━━━━━━━━━━━━━━━━
ab = math.abs(B - A)
bc = math.abs(C - B)
bcFib = bc / ab
validBC = bcFib >= bcMin and bcFib <= bcMax
bull = C > B
cdMinPrice = bull ? C - bc * cdMin : C + bc * cdMin
cdMaxPrice = bull ? C - bc * cdMax : C + bc * cdMax
inDzone = low <= cdMaxPrice and high >= cdMinPrice
//━━━━━━━━━━━━━━━━━━━━━
// MTF STRUCTURE FILTER
//━━━━━━━━━━━━━━━━━━━━━
nearResistance = close <= srHighZoneTop and close >= srHighZoneBottom
nearSupport = close <= srLowZoneTop and close >= srLowZoneBottom
structureOK =
(bull and nearSupport) or
(not bull and nearResistance)
//━━━━━━━━━━━━━━━━━━━━━
// FINAL D CONFIRMATION
//━━━━━━━━━━━━━━━━━━━━━
if validBC and inDzone and structureOK
D := close
Db := bar_index
//━━━━━━━━━━━━━━━━━━━━━
// TARGETS
//━━━━━━━━━━━━━━━━━━━━━
tp1 = bull ? D + math.abs(D - C) * 0.382 : D - math.abs(D - C) * 0.382
tp2 = bull ? D + math.abs(D - C) * 0.618 : D - math.abs(D - C) * 0.618
//━━━━━━━━━━━━━━━━━━━━━
// DRAW PATTERN
//━━━━━━━━━━━━━━━━━━━━━
if not na(D)
line.new(Ab, A, Bb, B, width=2, color=color.blue)
line.new(Bb, B, Cb, C, width=2, color=color.orange)
line.new(Cb, C, Db, D, width=2, color=color.green)
label.new(Db, D, "D (HTF CONFIRMED)", style=label.style_label_down, color=color.yellow)
if showTargets
line.new(Db, tp1, Db + 12, tp1, color=color.green)
line.new(Db, tp2, Db + 12, tp2, color=color.teal)
alertcondition(validBC and inDzone and structureOK,
"ABCD v7 Confirmed",
"ABCD Pattern confirmed at Higher-Timeframe Support/Resistance — wait for price action.")
SB - Print MachineIntraday Trading, Observation - Nifty 50, Trade - Nifty Options, Buying only
Rules for Call Options Buying - Observe Nifty 50 Index
1. VWDEMA turns Green (Bullish).
2. VDema turns Green and crossing VWDEMA upside (Bullish).
3. ATR turns Green (Bullish)
4. VPC background turns Green (Bullish). Now Enter Call Side and enjoy the day....
Rules for Put Options Buying - Observe Nifty 50 Index
1. VWDEMA turns Red (Bearish).
2. VDema turns Red and crossing VWDEMA Downside (Bearish).
3. ATR turns Green (Bearish)
4. VPC background turns Red (Bearish). Now Enter Put Side and enjoy the day.....
Exit Rules - As per your own appitite :)
Settings :
VWDEMA Length - 44
VDEMA Length - 21
ATR Length - 14
ATR Multiplier - 1.5
BB - Ignore (Disable/Hide)
Pivot Calculation Method - Wick
Pivot Left Length (Low/High) - 4
Pivot Right Length (Low/High) - 1
Pivot Lebels - Enable All
Pivot Markers - Disable All
Pivot Values - Disable All
VPC Length - 14
VPC Time Frame - 3 Minutes
Main Chart Time Frame - 5 Minutes
Display Settings - As per your own eye comfort
Note - All/Many parameters used here are customisable and come with a dynamic colour coding(Different colour code for uptrend and downtrend)
Settings shared here are best suited to me in terms of output. You can check for your own the settings which suits you the best.
Good Luck !!
Ichimoku Cloud Breakout [Full System + Black Labels]Ichimoku Cloud Breakout & Twist System This indicator implements a disciplined Ichimoku Cloud Breakout strategy designed to filter noise and capture high-probability trends. Unlike simple crossovers, it enforces a "Triple Confluence" setup: price must break the Cloud, the Future Cloud must match the trend direction, and the Chikou Span (Lagging Span) must be free of past price traffic to confirm momentum. To keep your charts clean, it features a State Filter that blocks repetitive alerts (alternating Buy/Sell signals only) and includes a predictive "Twist Ahead" warning system, which visually alerts you to future Cloud twists, often a precursor to reversals or volatility, 26 periods in advance.
Cloud Donchian + Keltner + Bollinger**XAUUSD M1 - Upper, Middle & Lower Combination Clouds**
This indicator combines three widely used volatility channels — Donchian, Keltner, and Bollinger Bands — into a single, clear cloud overlay optimized for the XAUUSD 1-minute chart.
**What it does:**
- Calculates upper, middle, and lower volatility zones by combining the three channels.
- The **Upper Cloud** shows the potential upper price boundary based on the highest highs of the combined indicators.
- The **Lower Cloud** shows the potential lower price boundary from the lowest lows of the combined indicators.
- The **Middle Cloud** fills the area between the upper cloud’s bottom and lower cloud’s top, colored dynamically: green for rising trends and red for falling trends.
- Visible lines highlight the upper and lower cloud boundaries for precise reference.
**Why it’s useful:**
- Helps traders identify support and resistance zones based on multiple volatility measures.
- The dynamic middle cloud coloring provides intuitive visual cues on trend direction and strength.
- Designed specifically for scalpers and short-term traders focused on fast-moving gold markets (XAUUSD, 1-minute timeframe).
- Fully customizable input parameters allow users to adjust channel lengths and sensitivities to fit their trading style.
**Inputs:**
- Donchian channel length
- Keltner channel EMA length and ATR multiplier
- Bollinger Bands length and multiplier
- Customizable cloud colors and line colors
**Usage notes:**
- This is a tool to support decision-making — it should be used in conjunction with other analysis techniques.
- It does not provide explicit buy or sell signals but highlights key volatility zones and trend shifts.
- Performance depends on market conditions; backtest results do not guarantee future outcomes.
- The indicator is open-source and configurable to fit individual preferences.
**Important:**
- No guaranteed profits — trade responsibly.
- Always combine this tool with sound risk management.
Weekly Regime Filter - Trend + Momentum + Structure (MTF)A multi-timeframe weekly regime indicator that classifies market conditions into BULL , BEAR , or CHOP using three components: trend, momentum, and market structure.
Works on any timeframe while always referencing weekly data — no repainting.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🎯 WHAT IT DOES
Answers one question: What is the weekly regime?
• Trend — EMA hierarchy (Price > EMA Fast > EMA Slow)
• Momentum — DI+ vs DI- with optional ADX filter
• Structure — Break of Structure (BOS) and Change of Character (CHOCH)
BULL = All three bullish
BEAR = All three bearish
CHOP = Mixed signals
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚡ KEY FEATURES
• Multi-Timeframe (MTF) — View on 1H, 4H, Daily; regime stays consistent
• Auto-Detect Asset Type — Automatically applies optimized settings for Crypto, Stocks, Forex, Gold, Silver, Oil, Commodities
• BOS/CHOCH Labels — Visual market structure breaks on chart
• Live Status Panel — Shows regime, components, and active parameters
• Non-Repainting — Uses confirmed weekly closes only
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 ASSET PRESETS
• Crypto — EMA 50/200, ADX Off, Pivot 2
• Stocks/Indices — EMA 50/200, ADX >20, Pivot 3
• Forex — EMA 30/100, ADX >25, Pivot 2
• Gold — EMA 40/150, ADX >20, Pivot 3
• Silver — EMA 40/150, ADX >22, Pivot 3
• Oil — EMA 30/100, ADX >25, Pivot 2
• Commodities — EMA 40/120, ADX >20, Pivot 3
Select "Custom" to use your own values.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📈 HOW TO USE
For Swing Trading:
• Set chart to Daily
• Use Auto-Detect or select preset
• Long only when BULL, short only when BEAR
• Reduce size or avoid when CHOP
Structure Signals:
• CHOCH ↑ after bear regime = Early reversal signal
• CHOCH ↓ after bull regime = Tighten stops
• BOS in regime direction = Trend continuation
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔔 ALERTS
• Regime → BULL
• Regime → BEAR
• CHOCH → Bull
• CHOCH → Bear
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚙️ SETTINGS
Preset: Auto-Detect, Crypto, Stocks, Forex, Gold, Silver, Oil, Commodities, Custom
Custom Settings (when Custom selected):
• EMA Fast/Slow lengths
• ADX Length & Threshold
• ADX Filter toggle
• Pivot Left/Right
Display:
• Plot Weekly EMAs
• Show BOS/CHOCH Labels
• Show Regime Background
• Background Opacity
• Show Status Label
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📝 NOTES
• Needs ~200 weeks of history for full calculation
• Weekly signals are slower by design — filters noise
• Not a standalone system — combine with entries and risk management
• When using presets, Custom input fields won't visually update (Pine limitation) — status label shows actual values
ABCD Strategy (v7 Ready)//@version=6
indicator("ABCD Strategy v7 – MTF S/R Filter", overlay=true, max_lines_count=300, max_labels_count=300)
//━━━━━━━━━━━━━━━━━━━━━
// INPUTS
//━━━━━━━━━━━━━━━━━━━━━
pivotLen = input.int(5, "Swing Strength", minval=2)
bcMin = input.float(0.618, "BC Min Fib")
bcMax = input.float(0.786, "BC Max Fib")
cdMin = input.float(1.272, "CD Min Extension")
cdMax = input.float(1.618, "CD Max Extension")
htfTF = input.timeframe("240", "Higher Timeframe (S/R)")
srLookback = input.int(200, "HTF S/R Lookback")
srTolerance = input.float(0.002, "S/R Zone Tolerance (0.2%)")
showSR = input.bool(true, "Show HTF S/R Zones")
showTargets = input.bool(true, "Show Targets")
//━━━━━━━━━━━━━━━━━━━━━
// HIGHER TF SUPPORT / RESISTANCE
//━━━━━━━━━━━━━━━━━━━━━
htfHigh = request.security(syminfo.tickerid, htfTF, ta.highest(high, srLookback))
htfLow = request.security(syminfo.tickerid, htfTF, ta.lowest(low, srLookback))
srHighZoneTop = htfHigh * (1 + srTolerance)
srHighZoneBottom = htfHigh * (1 - srTolerance)
srLowZoneTop = htfLow * (1 + srTolerance)
srLowZoneBottom = htfLow * (1 - srTolerance)
//━━━━━━━━━━━━━━━━━━━━━
// DRAW HTF ZONES
//━━━━━━━━━━━━━━━━━━━━━
if showSR
box.new(bar_index - 5, srHighZoneTop, bar_index + 5, srHighZoneBottom,
bgcolor=color.new(color.red, 85), border_color=color.red)
box.new(bar_index - 5, srLowZoneTop, bar_index + 5, srLowZoneBottom,
bgcolor=color.new(color.green, 85), border_color=color.green)
//━━━━━━━━━━━━━━━━━━━━━
// SWING DETECTION
//━━━━━━━━━━━━━━━━━━━━━
ph = ta.pivothigh(high, pivotLen, pivotLen)
pl = ta.pivotlow(low, pivotLen, pivotLen)
var float A = na
var float B = na
var float C = na
var float D = na
var int Ab = na
var int Bb = na
var int Cb = na
var int Db = na
if not na(pl)
A := B
Ab := Bb
B := C
Bb := Cb
C := low
Cb := bar_index
if not na(ph)
A := B
Ab := Bb
B := C
Bb := Cb
C := high
Cb := bar_index
//━━━━━━━━━━━━━━━━━━━━━
// ABCD LOGIC
//━━━━━━━━━━━━━━━━━━━━━
ab = math.abs(B - A)
bc = math.abs(C - B)
bcFib = bc / ab
validBC = bcFib >= bcMin and bcFib <= bcMax
bull = C > B
cdMinPrice = bull ? C - bc * cdMin : C + bc * cdMin
cdMaxPrice = bull ? C - bc * cdMax : C + bc * cdMax
inDzone = low <= cdMaxPrice and high >= cdMinPrice
//━━━━━━━━━━━━━━━━━━━━━
// MTF STRUCTURE FILTER
//━━━━━━━━━━━━━━━━━━━━━
nearResistance = close <= srHighZoneTop and close >= srHighZoneBottom
nearSupport = close <= srLowZoneTop and close >= srLowZoneBottom
structureOK =
(bull and nearSupport) or
(not bull and nearResistance)
//━━━━━━━━━━━━━━━━━━━━━
// FINAL D CONFIRMATION
//━━━━━━━━━━━━━━━━━━━━━
if validBC and inDzone and structureOK
D := close
Db := bar_index
//━━━━━━━━━━━━━━━━━━━━━
// TARGETS
//━━━━━━━━━━━━━━━━━━━━━
tp1 = bull ? D + math.abs(D - C) * 0.382 : D - math.abs(D - C) * 0.382
tp2 = bull ? D + math.abs(D - C) * 0.618 : D - math.abs(D - C) * 0.618
//━━━━━━━━━━━━━━━━━━━━━
// DRAW PATTERN
//━━━━━━━━━━━━━━━━━━━━━
if not na(D)
line.new(Ab, A, Bb, B, width=2, color=color.blue)
line.new(Bb, B, Cb, C, width=2, color=color.orange)
line.new(Cb, C, Db, D, width=2, color=color.green)
label.new(Db, D, "D (HTF CONFIRMED)", style=label.style_label_down, color=color.yellow)
if showTargets
line.new(Db, tp1, Db + 12, tp1, color=color.green)
line.new(Db, tp2, Db + 12, tp2, color=color.teal)
alertcondition(validBC and inDzone and structureOK,
"ABCD v7 Confirmed",
"ABCD Pattern confirmed at Higher-Timeframe Support/Resistance — wait for price action.")
SB - Print MachineIntraday Trading (Buying Only), Observation - Nifty 50, Trade - Nifty options (ATM)
Rules Call Options (ATM):
1. VWDEMA turns Green (Bullish)
2. VDema turns Green and crossing VWDema upside (Bullish)
3. ATR turns Green (Bullish)
4. VCP background turns Green (Bullish)
Rules Put Options (ATM):
1. VWDEMA turns Red (Bearish)
2. VDema turns Red and crossing VWDema downside (Bearish)
3. ATR turns Red (Bearish)
4. VCP background turns Red (Bearish)
Indicator Settings :
1. VWDEMA Length - 44
2. VDema Length - 21
3. ATR Length - 14
4. ATR Multiplier - 1.5
5. BB - Ignore and Skip (Hide)
6. Pivot Calculation Method - Wick
7. Pivot Left Length (Low/High) - 4
8. Pivot Right Length (Low/High) - 1
9. Pivot Levels - Enable All
10. Pivot Markers - Disable
11. Pivot Values - Disable
12. VPC Length - 14
13. VPC Time Frame - 3 Minutes
14. Main Chart Time Frame - 5 Minutes
Display Settings : As per your eye comfort
Note - All settings are customisable here and most are with dynamic colour code (Different colours for upside and downside movement)
Setting shown here are used by me and deliver good results to me only, you can find out your own settings which suits you the best.
Good Luck !!
Gold Futures Prop-Firm Strategy (GC) 1-18-2026Overview
This is a long-only, session-based, multi-regime trading strategy designed specifically for Gold futures (GC / GC1!) on intraday timeframes (typically 5–15 minutes).
The strategy aims to capture high-probability moves during the New York and Asian sessions while avoiding major economic news events and enforcing strict daily risk limits — making it suitable for prop firm challenges (e.g. FTMO, FundedNext, Apex, etc.) that require consistent profitability, limited drawdown, and disciplined risk management.
Core Philosophy
Trade longs only (shorts were removed after analysis showed they were consistently unprofitable)
Different logic depending on session and market regime (trending vs ranging)
Heavy filtering using trend strength (ADX), volume confirmation, EMA alignment, Bollinger Bands, and RSI
Strict position sizing, daily loss cap, per-session trade limits, and news blackout periods
Trailing stop mechanism to let winners run while protecting against reversals
Trading Sessions & Time Windows (Eastern Time)
NY Session: 08:30 – 15:00 ET
NY AM (trend/breakout zone): 08:30 – 11:30 ET
NY PM (mean-reversion zone): 11:30 – 15:00 ET
Asia Session (mean-reversion zone): 18:00 – 02:00 ET
News blackouts: short windows around high-impact releases (CPI/NFP, ISM/Fed, FOMC)
Entry Logic (Long Only)
NY AM – Trend Following & Breakouts (strongest trend filter)
ADX > 30 (strong trend)
Price above 200 EMA (bull regime)
Fast EMA (21) crosses above Slow EMA (55) or breakout above 20-bar high
Volume spike (> 1.4 × 20-period SMA)
Max 2 trades per NY session per day
NY PM & Asia – Mean Reversion
ADX ≤ 30 (ranging market)
Price below lower Bollinger Band (20, 2.0)
RSI < 25 (deep oversold)
No volume filter required here
Max 2 trades per Asia session per day
Risk Management Rules
Position size: Fixed 1–2 contracts (user selectable)
Initial stop: 1.7 × ATR(14) below entry (tightened from original)
Trailing stop:
Activates after price moves +1.0 × ATR in profit
Trails by 1.0 × ATR (locked-in profits aggressively)
Daily loss limit: -$600 (stops all trading for the day once hit)
No trading during defined news windows
Pyramiding disabled (only one position at a time)
No short entries (removed after backtest analysis)
Indicators Used
EMA 21 / 55 / 200 (trend direction & filter)
ATR(14) × 0.85 (volatility base)
ADX(14) threshold 30 (strong trend confirmation)
Bollinger Bands (20, 2.0) for mean-reversion entries
RSI(14) with oversold < 25
Volume spike filter (1.4× SMA) for trend/breakout entries
20-bar highest high / lowest low for breakout detection
Visual Elements on Chart
Fast (blue), Slow (orange), and Filter (red) EMAs
Bollinger Bands (gray, semi-transparent fill)
Background coloring:
Red tint during news blackout periods
Purple tint when daily loss limit is hit
Intended Use Case
Prop trading firm evaluation accounts
Conservative intraday gold trading
Focus on high-quality long setups in trending (NY AM) and mean-reverting (Asia/PM) environments
Goal: positive expectancy with controlled drawdown, suitable for passing drawdown and profit targets
[SMC] Binet Nexus Alpha : Institutional Liquidity & Order BlocksBINET™ NEXUS ALPHA : The Institutional SMC Terminal
Overview
The BINET™ NEXUS ALPHA is a professional-grade execution terminal designed to bridge the gap between retail "Smart Money Concepts" and actual institutional data. Built on the proprietary BINET™ Core v17.5 engine, this terminal prioritizes Price Action Narrative over lagging signals.
Unlike basic SMC indicators that clutter charts with unverified boxes, the Nexus Alpha uses an Institutional Confluence Engine to filter out retail "stop-run" noise and identify high-conviction zones where big money is actually positioning.
The Narrative Engine (Visual Intelligence)
The terminal replaces abstract lines with a high-visibility geometric narrative designed for rapid scanning on 4K/high-res monitors:
█ (Solid Blue Block): Institutional Vol Spike. Represents a "Foundation Surge" where volume significantly exceeds retail averages.
◆ (Gold Diamond): Liquidity Hunt. Direct identification of price tapping into resting Order Blocks (OB) or Fair Value Gaps (FVG).
● (Blue Circle): Macro Accumulation. Alerts you to long-term institutional position building.
▲/▼ (Triangles): Market Structure Breaks. Real-time Break of Structure (BOS) tracking.
The Command HUD (Mission Control)
The terminal features a real-time Hierarchical HUD that audits every trade before you enter:
Signal Quality (Sync Score): A 0-100% confluence rating. 85%+ represents "Elite Institutional Sync."
Stop Advisor & Risk Meter: Calculates the highest-volume liquidity bin for stop placement and warns you if the Max Stop Distance (%) is exceeded.
Market Health Engine: Automatically detects the current regime (Scalp, Swing, or Position) to adjust your execution strategy.
Success Probability: A rolling trajectory of the system's performance, showing whether recent win-rates are trending up (▲) or down (▼).
Institutional Workflow
Filter: Check the Trade Bias (Long/Short) on the HUD.
Confirm: Wait for the Sync Score to cross your threshold (Default 65%).
Audit: Verify that the Risk Meter is not in "High Exposure" mode.
Execute: Target the provided TP1/TP2 levels projected on the chart.
Technical Specifications
Language: Pine Script® v6
Logic: Smart Money Concepts (SMC) + Volume Delta Analysis
Core: BINET™ v17.5 Concurrency Engine
Founder's Note
The BINET™ NEXUS ALPHA was designed for traders who demand institutional-grade transparency. It is the final piece of the BINET Suite, designed to be used alongside the Macro Sector Rotation and Trend Matrix tools for a complete Top-Down to Bottom-Up trading workflow.
SB - Print MachineIntraday Trading @ 5 Minutes TF -Observation @ Nifty 50 Index , Trade on - Nifty options
Rules : Call options (ATM) Entry :
1. VWDEMA is Green (Bullish)
2. Vdema is Green and Crossing VWDema upside (Bullish)
3. ATR Turns Green (Bullish)
4. Vwap Channel Background is Green
Put Options (ATM) Entry :
1. VWDEMA is RED (Bearish)
2. Vdema is Red and Crossing VWDema downside(Bearish)
3. ATR Turns Red (Bearish)
4. Vwap Channel Background is red
Settings :
VWDEMA - 44
VDema - 21
ATR - 14
ATR Multiplier - 1.5
BB - Skip
Pivot Calculation Method - Wick
Left length - 4
Right Length - 1
Pivot Lebels - Enable all
Pivot arkers - Skip All
Pivot Values - Skip All
VPC Length - 14
VPC Time Frame - 3 minutes
Main Chart Time Frame - 5 Minutes
Colour Display Settings : As per you eyes comfort. Parameters have dynamic colour coding (different for uptrend and downtrend, use accordingly)
Parameters here are customisable, Shared here is what I am using and getting good results. Test your settings which suits you best. Good Luck !!
BTCUSD 1D Trend Strategy [Gemini]1Dchart
100% of equity per trade
0.1% commission
1 tick slippage
please convert this indicator to a trading strategy as you see fit
find attached the date of the chart and the indicator on BTCUSD 1D chart so you can make a better decision when to buy and sell
avoid forward looking and repainting at all costs.
Don't add tables to the chart
don't ever use line breaks in function calls:
long only
2018-2069
1D chart
100% of
Multi-Data Chart-AnalyticsDynamic Sentiment & Contextual Trend Analysis
Function Description
The Multi-Data Chart-Analytics is a comprehensive market context indicator designed to convert complex technical data into a readable, real-time narrative. Unlike traditional visual-only indicators, this script acts as an on-chart "trading assistant" that evaluates price action, momentum, volatility, and institutional volume simultaneously.
Key Technical Features:
Adaptive Trend Engine: Automatically scales its lookback period based on available historical data (up to 200 periods). This ensures accurate analysis for "young" assets or high timeframes (like BTC on Monthly charts) where standard fixed-length EMAs fail.
Momentum & Feel Tracking: Integrates RSI and DMI (ADX) to determine if the market is overextended (expensive) or undervalued (cheap), and whether the trend has sufficient strength.
Volatility Squeeze Detection: Monitors Bollinger Band width to alert users to "coiling" phases, signaling imminent breakouts.
Institutional Volume Filter: Compares current volume against its 20-period moving average to identify "Smart Money" conviction.
Who is this for?
Discretionary Traders: Who want a quick "second opinion" or sanity check before entering a trade.
Beginners: Who find it difficult to read multiple indicators at once; the terminal translates lines into actionable insights.
Systematic Traders: Who need to maintain awareness of higher-timeframe context without cluttering their main chart window.
How to Use It
Look at the Environment: Start by checking the long-term trend status to ensure you aren't trading against the dominant market force.
Verify Momentum: Check "Market Feel" to avoid buying at exhaustion points (Overbought) or selling at bottoms (Oversold).
Prepare for Breakouts: Keep an eye on the "Volatility" section. If it indicates a "Squeeze," tighten your stops or prepare for a large move.
Confirm with Smart Money: Only trust significant moves if the terminal confirms "Institutional Activity" is present.
Customize: Use the settings menu to adjust the box width, colors, and font size to fit your personal chart layout.
Technical Breakdown (Short Form)
Trend: Adaptive EMA/SMA (max 200).
Momentum: RSI (14) + ADX (14).
Volatility: Bollinger Band Width (20).
Volume: SMA (20) based Volume multiplier.
You might want to use this script in combination with our "Range Indicator Golden Pocket" and "Multi Asset & Multi Timeframe Trend Dashoboard" and the "Risk & Reward Position Planner"
TimeframeAlignTHE PROBLEM THIS LIBRARY SOLVES
When you use `request.security()` to get data from a Higher Timeframe (HTF) and try to draw objects like boxes, lines, or labels, they appear at the wrong horizontal position . This is the "floating in space" problem.
Why does this happen?
The `bar_index` in Pine Script refers to where data was RECEIVED , not where the event OCCURRED .
Consider this scenario:
• You're on a 5-minute chart
• You request 1-hour data for drawing an FVG (Fair Value Gap)
• A 1H candle spans 12 chart bars (60min / 5min = 12)
• But your code draws at `bar_index - 1` or `bar_index - 3`
• The result: your FVG box is only 2-3 bars wide instead of spanning the correct 12-36 bars
This library solves that by tracking where HTF bars actually start and end on your chart timeframe.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HOW TO USE THIS LIBRARY
Step 1: Import the Library
```
import ArunaReborn/TimeframeAlign/1 as tfa
```
Step 2: Create a Tracker for Each HTF
```
var tfa.HTFTracker tracker1H = tfa.createTracker("60")
```
Step 3: Update the Tracker Every Bar
```
tfa.updateTracker(tracker1H, "60")
```
Step 4: Use Synced Drawing Functions
```
if tfa.htfBarChanged(tracker1H)
tfa.syncedBox(tracker1H, 3, 1, topPrice, bottomPrice, color.new(color.green, 80))
```
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
EXPORTED TYPES
TimeframePair
Stores metadata about the relationship between source and chart timeframes.
• sourceTimeframe - The HTF/LTF being compared
• chartTimeframe - Current chart timeframe
• isHTF - True if source is higher than chart
• isLTF - True if source is lower than chart
• barRatio - Chart bars per source bar
• secondsRatio - Time ratio between timeframes
MTFEventData
Stores synchronized event data with correct bar positions.
• price - Price level of the event
• eventTime - Unix timestamp of the event
• chartBarStart - Chart bar_index where event's TF bar started
• chartBarEnd - Chart bar_index where event's TF bar ended
• htfOffset - The HTF offset used
• isValid - True if synchronization succeeded
HTFTracker
Tracks HTF bar boundaries. Create one per timeframe you need to track.
• htfTimeframe - The timeframe being tracked
• currentStartBar - Where current HTF bar started
• currentEndBar - Where current HTF bar ends (provisional)
• startHistory - Array of historical start positions
• endHistory - Array of historical end positions
• lastUpdateBar - Last bar_index when updated
• barJustChanged - True if HTF bar changed on this chart bar (set by updateTracker)
SyncedBox
Managed box with synchronization metadata.
• bx - The Pine Script box object
• htfTimeframe - Source timeframe
• leftHtfOffset / rightHtfOffset - HTF offsets for edges
• topPrice / bottomPrice - Price boundaries
• extendRight - Auto-extend flag
SyncedLine
Managed line with synchronization metadata.
• ln - The Pine Script line object
• htfTimeframe - Source timeframe
• htfOffset - Anchor offset
• price - Price level (horizontal lines)
• isHorizontal - Line orientation
• extendRight - Auto-extend flag
SyncedLabel
Managed label with synchronization metadata.
• lbl - The Pine Script label object
• htfTimeframe - Source timeframe
• htfOffset - Anchor offset
• price - Price level
• anchorPoint - "start", "end", or "middle"
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
EXPORTED FUNCTIONS
━━ CORE FUNCTIONS ━━
getTimeframeInfo(sourceTimeframe)
Analyzes relationship between a source TF and chart TF.
Returns: TimeframePair with comparison metadata
createTracker(htfTimeframe)
Creates a new HTF tracker. Call once per timeframe, store with `var`.
Returns: HTFTracker instance
updateTracker(tracker, htfTimeframe, historyDepth)
Updates tracker with current bar data. Call on every bar.
• htfTimeframe: The timeframe string (must match createTracker)
• historyDepth: Max HTF bars to track (default 500)
Returns: Updated tracker
getStartBar(tracker, htfOffset)
Gets chart bar_index where a specific HTF bar started.
• htfOffset: 0=current, 1=previous, 2=two bars ago, etc.
Returns: bar_index or na
getEndBar(tracker, htfOffset)
Gets chart bar_index where a specific HTF bar ended.
Returns: bar_index or na
htfBarChanged(tracker)
Detects when HTF bar just changed.
Returns: True on first chart bar of new HTF bar
findBarAtTime(timestamp, maxLookback)
Searches backward to find chart bar containing a timestamp.
• maxLookback: How far back to search (default 500)
Returns: bar_index or na
syncEventToChart(tracker, eventPrice, eventTime, anchorPoint)
Generic sync function mapping any event to correct chart position.
• anchorPoint: "start", "end", or "middle"
Returns: MTFEventData
━━ DRAWING CREATION FUNCTIONS ━━
syncedBox(tracker, leftHtfOffset, rightHtfOffset, topPrice, bottomPrice, bgcolor, ...)
Creates a box at correct HTF-aligned position.
• leftHtfOffset: HTF bars back for left edge
• rightHtfOffset: HTF bars back for right edge
• extendRight: Auto-extend to current bar
Returns: SyncedBox or na
syncedHLine(tracker, htfOffset, price, lineColor, lineStyle, lineWidth, extendRight)
Creates horizontal line anchored to HTF bar start.
• extendRight: If true, extends to current bar (default true)
Returns: SyncedLine or na
syncedVLine(tracker, htfOffset, atStart, lineColor, lineStyle, lineWidth)
Creates vertical line at HTF bar boundary.
• atStart: True=start of HTF bar, False=end
Returns: SyncedLine or na
syncedLabel(tracker, htfOffset, price, labelText, anchorPoint, ...)
Creates label at correct HTF-aligned position.
• anchorPoint: "start", "end", or "middle"
Returns: SyncedLabel or na
syncedPlotValue(tracker, value, htfOffset)
Returns value for plotting only at synced positions.
Returns: value if current bar is within HTF range, otherwise na
━━ UPDATE FUNCTIONS ━━
updateSyncedBox(syncedBox, extendToCurrentBar)
Extends existing box's right edge to current bar.
Returns: Updated SyncedBox
updateSyncedLine(syncedLine, extendToCurrentBar)
Extends existing horizontal line to current bar.
Returns: Updated SyncedLine
updateSyncedLabel(syncedLabel, tracker, newText, newPrice)
Updates label text/price while maintaining sync.
Returns: Updated SyncedLabel
━━ CONVENIENCE FUNCTIONS ━━
htfBarStartIndex(htfTimeframe, htfOffset, historyDepth)
Simple function to get HTF bar start without explicit tracker.
⚠️ Only tracks ONE timeframe. For multiple TFs, use createTracker pattern.
Returns: bar_index or na
htfBarEndIndex(htfTimeframe, htfOffset, historyDepth)
Simple function to get HTF bar end without explicit tracker.
⚠️ Only tracks ONE timeframe. For multiple TFs, use createTracker pattern.
Returns: bar_index or na
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
COMPLETE USAGE EXAMPLES
Example 1: FVG Box with Auto-Extend
```
//@version=6
indicator("FVG with Synced Drawing", overlay=true)
import ArunaReborn/TimeframeAlign/1 as tfa
htfInput = input.timeframe("60", "HTF for FVG")
// Create tracker for chosen timeframe
var tfa.HTFTracker fvgTracker = tfa.createTracker(htfInput)
tfa.updateTracker(fvgTracker, htfInput)
// Get FVG data from HTF (confirmed bars with offset)
= request.security(syminfo.tickerid, htfInput,
[low , high , low > high ],
lookahead=barmerge.lookahead_off)
// Store managed box
var tfa.SyncedBox fvgBox = na
// Create synced box when FVG detected
if fvgDetected and tfa.htfBarChanged(fvgTracker)
fvgBox := tfa.syncedBox(fvgTracker, 3, 1, fvgTop, fvgBot,
color.new(color.green, 85), color.green, 1, "FVG", color.white, true)
// Extend box to current bar each tick
if not na(fvgBox)
tfa.updateSyncedBox(fvgBox, true)
```
Example 2: HTF Support/Resistance Lines
```
//@version=6
indicator("HTF S/R Lines", overlay=true)
import ArunaReborn/TimeframeAlign/1 as tfa
htfInput = input.timeframe("240", "HTF for S/R")
// Create and update tracker
var tfa.HTFTracker srTracker = tfa.createTracker(htfInput)
tfa.updateTracker(srTracker, htfInput)
// Get HTF high/low (confirmed with offset)
= request.security(syminfo.tickerid, htfInput,
[high , low ], lookahead=barmerge.lookahead_off)
// Track lines
var tfa.SyncedLine resistanceLine = na
var tfa.SyncedLine supportLine = na
// Create new lines when HTF bar changes
if tfa.htfBarChanged(srTracker)
resistanceLine := tfa.syncedHLine(srTracker, 1, htfHigh, color.red, line.style_solid, 2, true)
supportLine := tfa.syncedHLine(srTracker, 1, htfLow, color.green, line.style_solid, 2, true)
// Auto-extend lines each bar
if not na(resistanceLine)
tfa.updateSyncedLine(resistanceLine, true)
if not na(supportLine)
tfa.updateSyncedLine(supportLine, true)
```
Example 3: Multiple Timeframes
```
//@version=6
indicator("Multi-TF Boxes", overlay=true)
import ArunaReborn/TimeframeAlign/1 as tfa
// Create separate tracker for each timeframe
var tfa.HTFTracker tracker1H = tfa.createTracker("60")
var tfa.HTFTracker tracker4H = tfa.createTracker("240")
var tfa.HTFTracker trackerD = tfa.createTracker("1D")
// Update ALL trackers every bar (pass the same TF string)
tfa.updateTracker(tracker1H, "60")
tfa.updateTracker(tracker4H, "240")
tfa.updateTracker(trackerD, "1D")
// Now use each tracker independently for drawing
// Each tracker maintains its own separate boundary history
```
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
NON-REPAINTING COMPLIANCE
To ensure non-repainting behavior, always use this pattern with request.security:
```
= request.security(syminfo.tickerid, htfTimeframe,
[value1 , value2 ], // Use offset for confirmed data
lookahead=barmerge.lookahead_off) // Never use lookahead_on
```
The ` ` offset ensures you're using the previous completed HTF bar, not the current forming bar.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HISTORY DEPTH PARAMETER
The `historyDepth` parameter controls how many HTF bars are tracked:
• Default: 500 HTF bars
• Maximum: Limited by Pine Script's array constraints
• Higher values = more historical accuracy but more memory usage
• Lower values = less memory but may return `na` for older offsets
Adjust based on your needs:
```
tfa.updateTracker(tracker, 100) // Track 100 HTF bars (light)
tfa.updateTracker(tracker, 1000) // Track 1000 HTF bars (heavier)
```
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
IMPORTANT NOTES
1. One Tracker Per Timeframe : If you need multiple HTFs, create separate trackers for each. The convenience functions (htfBarStartIndex, htfBarEndIndex) only track one TF.
2. Update Every Bar : Always call updateTracker() unconditionally on every bar, not inside conditionals.
3. HTF Only : This library is designed for Higher Timeframe data. For LTF aggregation, use findBarAtTime() for time-based lookups.
4. Drawing Limits : Pine Script has limits on drawing objects. Use box.delete(), line.delete(), label.delete() to clean up old objects.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
TROUBLESHOOTING
Q: My boxes/lines still appear at wrong positions
A: Make sure you're calling updateTracker() on every bar (not inside an if statement) and using the correct htfOffset values.
Q: Functions return na
A: The htfOffset might be larger than available history. Increase historyDepth or use a smaller offset.
Q: Multiple timeframes don't work correctly
A: Don't use the convenience functions for multiple TFs. Create separate HTFTracker instances with createTracker() for each timeframe.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CHANGELOG
v1 - Initial release
• HTFTracker pattern for reliable multi-TF tracking
• Synced drawing functions for boxes, lines, labels
• Update functions for extending drawings
• Convenience functions for simple single-TF use cases
Commodity Channel Index// BUY CONDITION
buySignal = direction < 0 and ta.crossover(cci, -100)
// ENTRY PRICE
entryPrice = close
// STOP LOSS AT SUPERTREND
stopLoss = supertrend
// RISK CALCULATION
risk = entryPrice - stopLoss
// TARGET 1:2
target = entryPrice + (risk * 2)
// ALERT
alertcondition(buySignal, title="BUY", message="Supertrend Green + CCI Cross Above -100 | RR 1:2")
// OPTIONAL PLOTS
plotshape(buySignal, title="BUY Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plot(stopLoss, title="Stop Loss", color=color.red)
plot(target, title="Target 1:2", color=color.green)
Apex Adaptive Trail [Neuro-Core Auto]Self-tuning trend and trade management framework
This version is a major functional upgrade of the original Apex Adaptive Trail.
It introduces an Auto-Pilot engine that dynamically adapts the indicator’s behavior to the active chart timeframe, reducing the need for manual tuning while preserving full transparency and control.
1. What Makes This Version Different
Unlike previous versions, v6 AUTO is not configured manually by default.
When Auto-Pilot is enabled, the script:
Detects the chart timeframe
Automatically adjusts ATR length and multiplier
Dynamically sets confidence thresholds
Modifies decay speed and add cooldowns
The result is a timeframe-aware execution model, not a fixed-parameter indicator.
Manual mode remains available for advanced users.
2. Core Architecture (Not a Simple Mashup)
This script is built as a single, state-driven system where each component influences the others.
Adaptive ATR Trail The trailing level defines both:
Trend direction
Dynamic exit logic
Its sensitivity is adjusted using volatility statistics and Auto-Pilot parameters.
Volatility Regime Detection
An ATR Z-Score is used to identify abnormal volatility conditions:
Expands the trail during high volatility
Restricts position adds when volatility is excessive
3. Confidence-Driven Decision Engine
Instead of binary signals, the script computes a normalized confidence score based on:
EMA distance (trend alignment)
ADX (trend strength)
Choppiness Index (market structure)
Daily higher-timeframe bias
All values are merged into a single confidence metric that controls:
Initial entries
Additional entries (pyramiding)
Emergency exits
4. Auto-Pilot Logic (Timeframe Adaptive)
When Auto-Pilot is active, the script selects a behavioral profile:
Turbo Mode (M1–M5): fast reaction, tight decay
Scalp Mode (M15): balanced sensitivity
Day Mode (M30): moderate trend persistence
Swing Mode (H1+): conservative and stable
This allows the same script to be used across multiple timeframes without retuning inputs.
5. Trade State & Risk Governance
The script internally tracks trade state:
FLAT LONG SHORT
Position adds are allowed only when: Price pulls back toward the adaptive trail
Confidence remains above a dynamic threshold
Volatility and cooldown conditions are respected
A Guardian system can force exits when confidence collapses during active trades.
6. How to Use
Follow the trail for trend direction INIT labels indicate potential trend starts
ADD labels indicate controlled continuation opportunities
Exit occurs on trail breaks or Guardian protection
Designed for trend-following and trade management, not for scalping or signal-only use.
7. Difference vs Previous Apex Adaptive Trail
Compared to earlier versions, update introduces:
Timeframe-aware Auto-Pilot configuration
Dynamic thresholds for entries, adds, and exits
Reduced need for manual parameter optimization
Improved usability for non-programmers
Earlier versions remain suitable for users who prefer full manual control.
8. Open-Source & Credits
This script is published as open-source under the Mozilla Public License 2.0.
© mentalExpert19609






















