ABS Companion Oscillator — Trend / Exhaustion / New Trend (v1.1)
# ABS Companion Oscillator — Trend / Exhaustion / New Trend (v1.1)
## What it is (quick take)
**ABS CO** is a unified **–100…+100 trend oscillator** that fuses:
* **Regime**: EMA stack (fast/slow/long) + **HTF slope** (e.g., 60-minute)
* **Momentum**: **TSI** vs its signal
* **Stretch**: session-anchored **VWAP Z-score** for exhaustion and “fresh-trend” sanity checks
It paints the oscillator with **lime** in upstate, **red** in downstate, **gray** in neutral, and tags:
* **NEW↑ / NEW↓** when a **new trend** likely starts (zero-line cross with acceptable stretch)
* **EXH↑ / EXH↓** when an **existing trend looks exhausted** (large |Z| + momentum rollback)
> Use it as a **direction filter and context layer**. Works great in front of an entry engine and behind an exit tool.
---
## How to use it (operational workflow)
1. **Read the state**
* **Uptrend** when the oscillator is **≥ upThresh** (default +55) → prefer **long-side** plays.
* **Downtrend** when the oscillator is **≤ dnThresh** (default −55) → prefer **short-side** plays.
* **Neutral** between thresholds → be selective or flat; expect chop.
2. **Act on events**
* **NEW↑ / NEW↓**: zero-line cross with acceptable |Z| (not already overstretched). Treat as **trend start** cues.
* **EXH↑ / EXH↓**: trend state with **high |Z|** and TSI rollback versus its signal. Treat as **trend fatigue**; avoid fresh go-with entries and tighten risk.
3. **Practical pairing**
* Use **up/down state** (or above/below **neutralBand**) as your go/no-go filter for entries.
* Prioritize entries **with** NEW↑/NEW↓ and **without** nearby EXH tags.
* Keep holding while the oscillator stays in state and no EXH appears; consider scaling out on EXH or on your exit tool.
---
## Visual semantics & alerts
* **ABS CO line** (–100…+100): lime in upstate, red in downstate, gray in neutral.
* **Horizontal guides**: `Up` threshold, `Down` threshold, `Zero`, and optional **neutral band** lines.
* **Background heat** (optional): shaded when EXH conditions trigger (lime/red tint with intensity scaled by |Z|).
* **Tags**: `NEW↑`, `NEW↓`, `EXH↑`, `EXH↓`.
**Alerts (stable):**
* **ABS CO — New Uptrend** (NEW↑)
* **ABS CO — New Downtrend** (NEW↓)
* **ABS CO — Exhausted Up** (EXH↑)
* **ABS CO — Exhausted Down** (EXH↓)
Set alerts to **“Once per bar close”** for clean signals.
---
## Non-repainting behavior
* HTF queries use **lookahead\_off**.
* With **Strict NR = true**, the HTF slope is taken from the **prior completed** HTF bar; events evaluate on confirmed bars → **safer, fewer, cleaner**.
* NEW/EXH tags finalize at bar close. Disabling strictness yields earlier but noisier responses.
---
## Every input explained (and how it changes behavior)
### A) Trend & HTF structure
* **EMA Fast / Slow / Long (`emaFastLen`, `emaSlowLen`, `emaLongLen`)**
Control the baseline regime. Larger = smoother, fewer flips; smaller = snappier, more flips.
* **HTF EMA Len (`htfLen`)** & **HTF timeframe (`htfTF`)**
HTF slope filter. Longer len or higher TF = steadier bias (fewer state changes); shorter/ lower = more sensitive.
* **Strict NR (`strictNR`)**
`true` uses the **previous** HTF bar for slope and evaluates on confirmed bars → cleaner, slower.
### B) Momentum (TSI)
* **TSI Long / Short / Signal (`tsiLong`, `tsiShort`, `tsiSig`)**
Standard TSI. Larger values = smoother momentum, fewer EXH triggers; smaller = snappier, more EXH sensitivity.
### C) Stretch (VWAP Z-score)
* **VWAP Z-score length (`zLen`)**
Window for Z over session-anchored VWAP distance. Larger = smoother |Z|; smaller = more reactive stretch detection.
* **Exhaustion |Z| (`zHot`)**
Minimum |Z| to flag **EXH**. Raise to demand **bigger** stretch (fewer EXH); lower to catch milder excess.
* **Max |Z| for NEW (`zNewMax`)**
NEW requires |Z| **≤ zNewMax** (avoid “new trend” when already stretched). Lower = stricter; higher = more NEW tags.
### D) States & thresholds
* **Uptrend threshold (`upThresh`)** / **Downtrend threshold (`dnThresh`)**
Where the oscillator flips into trend states. Widen (e.g., +60/−60) to reduce false states; narrow to get earlier signals.
* **Neutral band (`neutralBand`)**
Visual buffer around zero for “meh” momentum. Larger band = fewer go/no-go flips near zero.
### E) Visuals & tags
* **Show New / Show Exhausted (`showNew`, `showExh`)**
Toggle the tag labels.
* **Shade exhaustion heat (`plotHeat`)**
On = color background when EXH fires. Helpful for scanning.
### F) Smoothing
* **Osc smoothing (`smoothLen`)**
EMA over the raw composite. Higher = steadier line (fewer whip flips); lower = faster turns.
---
## Tuning recipes
* **Trend-day bias (follow moves longer)**
* Raise **`upThresh`** to \~60 and **`dnThresh`** to \~−60
* Keep **`zNewMax`** low (1.0–1.2) to avoid “fresh trend” when stretched
* **`smoothLen`** 3–5 to reduce noise
* **Range-day bias (fade edges)**
* Keep thresholds closer (e.g., +50/−50) for quicker state changes
* Lower **`zHot`** slightly (1.6–1.7) to catch earlier exhaustion
* Consider slightly shorter TSI (e.g., 21/9/5) for faster EXH response
* **Scalping LTF (1–3m)**
* TSI 21/9/5, **`smoothLen`** 1–2
* Thresholds +/-50; **`zNewMax`** 1.0–1.2; **`zHot`** 1.6–1.8
* StrictNR **off** if you want earlier calls (accept more noise)
* **Swing / HTF (1h–D)**
* TSI 35/21/9, **`smoothLen`** 4–7
* Thresholds +/-60\~65; **`zNewMax`** 1.2; **`zHot`** 1.8–2.0
* StrictNR **on** for cleaner bias
---
## Playbooks (how to actually trade it)
* **Go/No-Go Filter**
* Only take **long entries** when the oscillator is **above the neutral band** (preferably ≥ `upThresh`).
* Only take **short entries** when **below** the neutral band (preferably ≤ `dnThresh`).
* Avoid fresh go-with entries if an **EXH** tag appears; let the next setup re-arm.
* **Trend Genesis**
* Treat **NEW↑ / NEW↓** as “green light” for **first pullback** entries in the new direction (ideally within acceptable |Z|).
* **Trend Maturity**
* When in a position and **EXH** prints **against** you, tighten stops, take partials, or lean on your exit tool to protect gains.
---
## Suggested starting points
* **Day trading (5–15m):**
* TSI 25/13/7, `smoothLen=3`, thresholds **+55 / −55**, `zNewMax = 1.2`, `zHot = 1.8`, **StrictNR = true**
* **Scalping (1–3m):**
* TSI 21/9/5, `smoothLen=1–2`, thresholds **+50 / −50**, `zNewMax = 1.1–1.2`, `zHot = 1.6–1.8`, **StrictNR = false** (optional)
* **Swing (1h–D):**
* TSI 35/21/9, `smoothLen=4–6`, thresholds **+60 / −60**, `zNewMax = 1.2`, `zHot = 1.9–2.0`, **StrictNR = true**
---
## Notes & best practices
* **Session anchoring**: Z-score is session-anchored (resets by trading date). If you trade outside standard sessions, verify your data session.
* **Instrument specificity**: Tune **`zHot`**, **`zNewMax`**, and thresholds per symbol and timeframe.
* **Bar-close discipline**: Evaluate tags at **bar close** to avoid intrabar flip-flop.
* This is a **context/confirmation tool**, not a broker or strategy. Combine with your entry/exit rules and position sizing.
---
**Tip:** Start with the suggested day-trading profile. Use this oscillator as your **gate** (only trade with it), let your entry engine time executions, and rely on your exit tool for standardized profit-taking.
在腳本中搜尋"西悉尼流浪者VS惠灵顿凤凰"
13/48 EMA Trading Scalper (ATR TP/SL)13/48 EMA Trading Scalper (ATR TP/SL)
What it does:
This tool looks for price “touches” of the 13-EMA, only takes CALL entries when the 13 is above the 48 (uptrend) and PUT entries when the 13 is below the 48 (downtrend), and confirms with a simple candle pattern (green > red with expansion for calls, inverse for puts). Touch sensitivity is ATR-scaled, so signals adapt to volatility. Each trade gets auto-drawn entry, TP, and SL lines, colored labels with $ / % distance from entry, plus optional TP/SL hit alerts. A rotating color palette and per-bar label staggering help keep the chart readable. Old objects are auto-pruned via maxTracked.
How it works
Trend filter: 13-EMA vs 48-EMA.
Entry: ATR-scaled touch of the 13-EMA + candle confirmation.
Risk: TP/SL = ATR multiples you control.
Visuals: Entry/TP/SL lines (extend right), vertical entry marker (optional), multi-line labels.
Hygiene: maxTracked keeps only the last N trades’ objects; labels are staggered to reduce overlap.
Alerts: Buy Call, Buy Put, Take Profit Reached, Stop Loss Hit.
Key Inputs
Fast EMA (13), Trend EMA (48), ATR Length (14)
Touch Threshold (x ATR) – how close price must come to the EMA
Take Profit (x ATR), Stop Loss (x ATR)
maxTracked – number of recent trades to keep on chart
Tips
Start with Touch = 0.10–0.20 × ATR; TP=2×ATR, SL=1×ATR, then tune per symbol/timeframe.
Works on intraday and higher TFs; fewer, cleaner signals on higher TFs.
This is an indicator, not a broker—always backtest and manage risk.
Spice • Micro Suite (T/r & B/r)What it is
A single Pine v5 indicator that stacks:
EMA ribbon + a “special” EMA (11 vs 34) line that flips color on trend.
MTF-RSI “pressure” check with simple up/down arrows.
Bollinger-Band re-entry system with Top/Bottom triggers (T/B) and confirmations (r) in the next N bars.
Classic candlestick add-ons: 3-Line Strike and Leledc exhaustion dots.
Your Micro Dots engine (ATR-based regime + Variable Moving Average filter) + an optional VMA trend line.
Alerts for all the above.
Key signals (what prints on the chart)
EMAs (20/50/100/200): plotted faintly; EMA-34 is drawn and colored by the 11>34 trend.
RSI arrows
Checks RSI(6) on the current TF and (optionally) 5m/15m/30m/1h/4h/1D.
Down arrow: current RSI > 70 and the selected higher TF RSIs are also > 70 (pressure cluster just cooled; barssince(redZone)<2).
Up arrow: current RSI < 30 and selected higher TFs also < 30 (barssince(greenZone)<2).
Bollinger Reversals (your update)
T (Top trigger): first close back inside the upper BB (crossunder(close, upper)).
B (Bottom trigger): first close back inside the lower BB (crossover(close, lower)).
r (Confirm): within the next confirmBars bars (input), price also
closes below the T-bar’s low → top r above bar
closes above the B-bar’s high → bottom r below bar
Bar tinting
Only the T/B trigger bars are tinted (yellow/orange). Everything else stays your normal candle colors (unless you add the optional “trend candles” block I gave you).
3-Line Strike
Prints a small green/red circle when the 3-line strike pattern appears (bull/bear).
Leledc Exhaustion
Calculates a running buy/sell index; prints a small ∘ at major highs/lows when exhaustion conditions hit (major==-1 high, major==1 low).
Micro Dots (your second script, merged)
ATR “micro supertrend” defines regime (up/down).
A fast Variable Moving Average + a simple MA(18) filter.
Green dot below bar when: VMA < price, price > MA(18), regime up, and VMA not pointing down.
Red dot above bar for the bearish mirror.
Separate VMA trend line (length = Fast/Med/Slow) that colors green/red/orange by slope.
Inputs you’ll care about
Top/Bot Reversal → confirmBars (how many bars you allow to confirm the T/B trigger).
RSI Timeframes → toggle which HTFs must agree with the OB/OS condition.
EMAs → show/hide and lengths.
BB → show/hide basis/bands (used for T/B even if hidden).
Micro → show dots, show VMA line, choose intensity (Fast/Med/Slow).
Alerts
Prebuilt alerts for: RSI Up/Down, T/B triggers, T/B confirmations, 3-Line Strike bull/bear, Leledc highs/lows, EMA crosses (20/50/100/200), the special 11/34 trend change, Micro Dots, and VMA price cross. (Alert messages are const strings so they compile cleanly.)
How to read clusters (quick playbook)
Reversal short: see T on/near upper band → get an r within your window → bonus confidence if an RSI down arrow or Leledc ∘ high shows up around the same time.
Reversal long: mirror with B then r, plus RSI up arrow / Leledc ∘ low.
Continuation: ignore lone T/B if Micro Dot stays green (or red) and EMA-11 > EMA-34 remains true.
Why your candles look “normal”
By design, the script only colors bars on T or B trigger bars. If you want always-on trend candles, use the small block I gave you to color by EMA(20/50) (or any rule you like) and let T/B override on trigger bars.
TRI - Smart Zones============================================================================
# TRI - SMART ZONES v2.0
## Professional Smart Money Concepts Indicator for Pine Script v6
============================================================================
## 📊 OVERVIEW
**TRI - Smart Zones** is a comprehensive Smart Money Concepts indicator that
combines multiple institutional trading concepts into a single, powerful tool.
Built with Pine Script v6 for optimal performance and reliability.
## 🎯 CORE FEATURES
### **Fair Value Gaps (FVG)**
- **Detection**: Automatic identification of price imbalances
- **Types**: Bullish and Bearish Fair Value Gaps
- **Threshold**: Customizable gap size requirements (0.1% default)
- **Extension**: Configurable zone projection length
- **Mitigation**: Real-time tracking of gap fills
### **Order Blocks (OB)**
- **Detection**: Volume-based institutional footprint identification
- **Types**: Bullish and Bearish Order Blocks
- **Method**: Pivot-based volume analysis with configurable lookback
- **Validation**: Market structure confirmation required
- **Extension**: Adjustable zone projection
### **BSL/SSL Liquidity Levels**
- **Multi-Timeframe**: Automatic higher timeframe reference
- **Dynamic**: Real-time level updates and extensions
- **Visual**: Clear line markings with timeframe labels
- **Smart**: Adaptive timeframe selection based on current chart
### **Fibonacci Extensions**
- **ZigZag Integration**: Advanced pivot point detection
- **Levels**: Customizable Fibonacci ratios (38.2%, 61.8%, 100%, 161.8%)
- **Projection**: Dynamic extension from swing points
- **Visual**: Subtle dashed lines with level/price labels
### **Smart Dashboard**
- **Zone Statistics**: Real-time FVG and OB counts
- **Success Rates**: Mitigation percentages for each zone type
- **Market Bias**: Intelligent bullish/bearish/neutral assessment
- **Positioning**: Customizable location and size
### **Zone Analysis Engine**
- **Technical Confluence**: RSI, ADX, ATR, Volume analysis
- **VWAP Integration**: Institutional price reference
- **Confidence Scoring**: High/Mid/Low signal classification
- **Signal Arrows**: Visual trade direction indicators
## 🔔 ALERT SYSTEM
### **Market Structure Alerts**
- `Market Bias Changed` - Shift in overall market sentiment
- `BSL Touched` - Buy Side Liquidity level reached
- `SSL Touched` - Sell Side Liquidity level reached
### **Zone Touch Alerts**
- `OB Touched` - Any Order Block interaction
- `Bullish OB Touched` - Bullish Order Block touch
- `Bearish OB Touched` - Bearish Order Block touch
- `FVG Touched` - Any Fair Value Gap interaction
- `Bullish FVG Touched` - Bullish FVG touch
- `Bearish FVG Touched` - Bearish FVG touch
- `Zone Touched` - Any Smart Zone interaction
- `Bullish Zone Touched` - Any bullish zone touch
- `Bearish Zone Touched` - Any bearish zone touch
## ⚙️ CONFIGURATION
### **Zone Detection**
- Enable/disable FVG and OB detection independently
- Maximum zones per type (3-15, default: 8)
- Zone-specific threshold and extension settings
### **Visual Customization**
- Individual color schemes for each zone type
- Adjustable transparency levels
- Configurable line styles and widths
- Dashboard positioning and sizing options
### **Technical Analysis**
- RSI, ADX, ATR period customization
- Volume threshold multipliers
- Confidence level color coding
- Signal display toggle
## 🚀 PINE SCRIPT v6 OPTIMIZATIONS
- **User-Defined Types**: Structured data for zones and statistics
- **Methods**: Type-specific operations for better code organization
- **Enhanced Arrays**: Optimized memory management
- **Switch Statements**: Improved performance for zone classification
- **Error Handling**: Robust input validation and edge case management
- **Performance**: Efficient algorithms for real-time analysis
## 📈 TRADING APPLICATIONS
### **Entry Strategies**
- Zone confluence for high-probability setups
- Multi-timeframe confirmation via BSL/SSL
- Fibonacci extension targets
- Signal arrows for directional bias
### **Risk Management**
- Zone mitigation for stop-loss placement
- Market bias for position sizing
- Dashboard statistics for strategy validation
### **Market Analysis**
- Institutional footprint identification
- Liquidity level mapping
- Market structure assessment
- Trend continuation vs reversal analysis
## 🔧 TECHNICAL SPECIFICATIONS
- **Version**: Pine Script v6
- **Overlay**: True (draws on price chart)
- **Max Objects**: 100 boxes, 100 lines, 50 labels
- **Performance**: Optimized for real-time analysis
- **Compatibility**: All TradingView chart types and timeframes
Inside Bar Coloring (Real-time + Historical) w/ AlertsDescription
This Pine Script v6 indicator identifies and colors inside bars, whose entire range (high and low) stays within the previous bar's range. It gives the option to color the real-time bar as well as historical inside bars.
Inside bars are colored differently based on whether they close above or below their opening price (bullish vs bearish). The indicator offers flexible display options including real-time-only highlighting, historical inside bar visualization with transparency, and optional triangle markers for enhanced visibility.
Utility
Inside bars represent periods of market consolidation and reduced volatility, and are by nature consolidating. During this equilibrium, it can be valuable to observe price development rather than engage with it. Conversely, a break of the equilibrium often marks a shift in volatility and provides opportunity. This indicator provides instant visual identification of this price action on your chart.
Features
Smart Coloring System: Separate colors for bullish (close ≥ open) and bearish (close < open) inside bars
Flexible Display Modes: Show only real-time bar, all historical bars, or customize transparency levels
Visual Markers: Optional triangles above or below inside bars
Real-time Alerts: Configurable alerts notify you when new inside bars form
Optimized Performance: Efficient Pine Script v6 code with minimal resource usage
Open Source: Released under Mozilla Public License 2.0
Settings
Customizable colors for bullish/bearish inside bars (real-time and historical)
Toggle historical inside bar display
Real-time bar only mode for clean charts
Adjustable marker position (above/below bars)
Alert activation with detailed price information
ADR/ATR Session No Probability Table by LKHere you go—clear, English docs you can drop into your script’s description or share with teammates.
ADR/ATR Session by LK — Overview
This indicator summarizes Average Daily Range (ADR) and Average True Range (ATR) for two horizons:
• Session H4 (e.g., 06:00–13:00 on a 4‑hour chart)
• Daily (D)
It shows:
• Current ADR/ATR values (using your chosen smoothing method)
• How much of ADR/ATR today/this bar has already been consumed (% of ADR/ATR)
• ADR/ATR as a percent of price
• Optional probability blocks: likelihood that %ADR will exceed user‑defined thresholds over a lookback window
• Optional on‑chart lines for the current H4 and Daily candles: Open, ADR High, ADR Low
⸻
What the metrics mean
• ADR (H4 / D): Moving average of the bar range (high - low).
• ATR (H4 / D): Moving average of True Range (max(hi-lo, |hi-close |, |lo-close |)).
• % of ADR (curr H4): (H4 range of the current H4 bar) / ADR(H4) × 100. Updates live even if the current time is outside the session.
• % of ADR (Daily): (today’s intra‑day range) / ADR(D) × 100.
• % of ATR (curr H4 / Daily): TR / ATR × 100 for that horizon.
• ADR % of Price / ATR % of Price: ADR or ATR divided by current price × 100 (a quick “volatility vs. price” gauge).
Session logic (H4): ADR/ATR(H4) only update on bars that fall inside the configured session window; outside the window the values hold steady (no recalculation “bleed”).
Daily range tracking: The indicator tracks today’s high/low in real‑time and resets at the day change.
⸻
Inputs (quick reference)
Core
• Length (ADR/ATR): smoothing length for ADR/ATR (default 21).
• Wait for Higher TF Bar Close: if true, updates ADR/ATR only after the higher‑TF bar closes when using request.security.
Timeframes
• Session Timeframe (H4): default 240.
• Daily Timeframe: default D.
Session time
• Session Timezone: “Chart” (default) or a fixed timezone.
• Session Start Hour, End Hour (minutes are fixed to 0 in this version).
Smoothing methods
• H4 ADR Method / H4 ATR Method: SMA/EMA/RMA/WMA.
• Daily ADR Method / Daily ATR Method: SMA/EMA/RMA/WMA.
Table appearance
• Table BG, Table Text, Table Font Size.
Lines (optional)
• Show current H4 segments, Show current Daily segments
• Line colors for Open / ADR High / ADR Low
• Line width
Probability
• H4 Probability Lookback (bars): number of H4 bars to examine (e.g., 300).
• Daily Probability Lookback (days): number of D bars (e.g., 180).
• ADR thresholds (%): CSV list of thresholds (e.g., 25,50,55,60,65,70,75,80,85,90,95,100,125,150).
The table will show the % of lookback bars where %ADR ≥ threshold.
Tip: If you want probabilities only for session H4 bars (not every H4 bar), ask and I can add a toggle to filter by inSess.
⸻
How to read the table
H4 block
• ADR (method) / ATR (method): the session‑aware averages.
• % of ADR (curr H4): live progress of this H4 bar toward the session ADR.
• ADR % of Price: ADR(H4) relative to price.
• % of ATR (curr H4) and ATR % of Price: same idea for ATR.
H4 Probability (lookback N bars)
• Rows like “≥ 80% ADR” show the fraction (in %) of the last N H4 bars that reached at least 80% of ADR(H4).
Daily block
• Mirrors the H4 block, but for Daily.
Daily Probability (lookback M days)
• Rows like “≥ 100% ADR” show the fraction of the last M daily bars whose daily range reached at least 100% of ADR(D).
⸻
Practical usage
• Use % of ADR (curr H4 / Daily) to judge exhaustion or room left in the day/session.
E.g., if Daily %ADR is already 95%, be cautious with momentum continuation trades.
• The probability tables give a quick historical context:
If “≥ 125% ADR” is ~18%, the market rarely stretches that far; your trade sizing/targets can reflect that.
• ADR/ATR % of Price helps normalize volatility between instruments.
⸻
Troubleshooting
• If probability rows are blank: ensure lookback windows are large enough (and that the chart has enough history).
• If ADR/ATR show … (NA): usually you don’t have enough bars for the chosen length/TF yet.
• If line segments are missing: verify you’re on a chart with visible current H4/D bars and the toggles are enabled.
⸻
Notes & customization ideas
• Add a toggle to count only session bars in H4 probability.
• Add separate thresholds for H4 vs Daily.
• Let users pick minutes for session start/end if needed.
• Add alerts when %ADR crosses specified thresholds.
If you want me to bundle any of the “ideas” above into the code, say the word and I’ll ship a clean patch.
XAUUSD 1H – FVG Buy/Sell Signals XAUUSD 1H – Fair Value Gap (FVG) Buy/Sell Signals (No Boxes)
What it is:
A clean, signal-only indicator for Gold on the 1-hour chart. It detects 3-bar Fair Value Gaps, waits for a deep retest, then confirms with strong candle structure + trend + ADX before printing a BUY/SELL arrow. No rectangles or clutter—just selective, high-quality signals.
Why it works:
Instead of chasing breakouts, the script hunts for imbalances (FVGs) where price often returns to “fair value.” It only fires when:
price revisits the gap by a configurable depth,
the candle closes beyond the far edge with a small buffer,
the candle body is ≥ ATR × K (confirms intent),
the broader trend (EMA-50/EMA-200) agrees, and
ADX (Wilder, manual) shows sufficient strength.
Key features
✅ Signal-only: arrows/labels—no boxes on chart.
✅ Deep retest logic (percentage of zone), not just a touch.
✅ Strong close filter (edge + buffer) + ATR body filter.
✅ Trend filter (EMA-50 vs EMA-200) to keep trades with the regime.
✅ ADX strength to avoid chop.
✅ One signal per zone (optional “delete on use”).
✅ Alerts for both BUY and SELL.
✅ Built for Pine v6, non-repainting logic on bar close.
Inputs you can tune
Min FVG size (pts) – ignore tiny gaps.
Retest depth (%) – how deep price must come back into the gap.
Close buffer (pts) – extra confirmation beyond zone edge.
Min body ≥ ATR× – candle strength requirement.
Min ADX – trend strength threshold.
Expire after X bars – keep zones fresh.
Delete zone after signal – true = one-shot signals.
How I use it
Apply to XAUUSD 1H.
Keep default filters for selective signals.
For more setups, lower Min FVG size or ADX and reduce retest depth; for stricter signals, do the opposite.
Combine with S/R or session timing (London/NY) for added confluence.
Notes
Signals are generated on bar close.
Designed for clarity and discipline—fewer, cleaner arrows over constant noise.
Works on other symbols/timeframes, but tuned for Gold 1H.
Tags: #XAUUSD #Gold #FVG #SmartMoney #1H #TrendFollowing #ADX #ATR #PineV6 #TradingView
Recent Range DetectorOverview
The Recent Range Detector is a specialized indicator designed to identify when an asset is currently range-bound, providing traders with clear support and resistance levels for range trading strategies. Unlike traditional indicators that focus on trend detection, this tool specifically answers the question: "Is the price range-bound right now, and what are the exact trading levels?"
Key Features
✅ Smart Range Detection - Uses a multi-factor scoring system to identify legitimate ranges
✅ Dynamic Support/Resistance Levels - Automatically calculates and displays key trading levels
✅ Range Quality Scoring - Provides confidence levels (Strong/Moderate/Weak Range)
✅ Touch Validation - Counts actual price touches to confirm range reliability
✅ Breakout Detection - Alerts when price exits the established range
✅ Visual Clarity - Clean boxes, lines, and labels for easy interpretation
How It Works
The indicator analyses recent price action using three core metrics:
Touch Quality (40%) - How many times price has respected support/resistance levels
Containment Quality (40%) - What percentage of recent bars stayed within the range
Recent Respect (20%) - Whether the latest price action confirms the range
These combine into a Range Score (0-1) that determines range strength and reliability.
Settings & Parameters
Range Lookback Period (Default: 15)
Number of bars to analyse for range detection
Shorter periods = more responsive to recent ranges
Longer periods = more stable, fewer false signals
Range Tolerance (Default: 2.0%)
Tolerance for price touches around exact highs/lows
Lower values = stricter range requirements
Higher values = more flexible range detection
Minimum Touches (Default: 3)
Required number of support/resistance touches for valid range
Higher values = more confirmed ranges, fewer signals
Lower values = more sensitive, earlier detection
Visual Options
Show Range Box: Displays the range boundaries
Show Support/Resistance Lines: Extends levels into the future
Understanding the Output
Range Score (0.000 - 1.000)
0.7+ = Strong Range (Green) - High confidence range trading setup
0.5-0.7 = Moderate Range (Yellow) - Decent range with some caution
0.3-0.5 = Weak Range (Orange) - Low confidence, be careful
<0.3 = Not Ranging - Avoid range trading strategies
Range Status Classifications
Strong Range - Perfect for range trading strategies
Moderate Range - Good range with normal risk
Weak Range - Marginal range, use smaller positions
Not Ranging - Price is trending or too choppy for range trading
Key Metrics in Info Table
Range Size (%) - Size of the range relative to price level
5-15% = Ideal range size for most strategies
<5% = Tight range, lower profit potential
>15% = Wide range, higher profit potential but more risk
Support/Resistance Levels - Exact price levels for entries/exits
Use these as your key trading levels
Support = potential buy zone
Resistance = potential sell zone
Total Touches - Number of times price respected the levels
3-5 touches = Newly formed range
6-10 touches = Well-established range
10+ touches = Very strong, reliable range
Price Position (%) - Current location within the range
0-20% = Near support (potential long opportunity)
80-100% = Near resistance (potential short opportunity)
40-60% = Middle of range (wait for better entry)
Visual Elements
Range Box
Green Box = Strong Range (Score ≥ 0.7)
Yellow Box = Moderate Range (Score 0.5-0.7)
Orange Box = Weak Range (Score 0.3-0.5)
Support/Resistance Lines
- Horizontal lines showing exact trading levels
- Extend into the future for forward guidance
- Colour matches the range strength
Background Colouring
- Subtle background tint during range periods
- Helps quickly identify ranging vs trending markets
Breakout Signals
- 📈 RANGE BREAK UP - Price breaks above resistance
- 📉 RANGE BREAK DOWN - Price breaks below support
- Only appears for confirmed ranges (Score ≥ 0.5)
Trading Applications
Range Trading Strategy
1. Look for Range Score ≥ 0.5
2. Buy near support (Price Position 0-20%)
3. Sell near resistance (Price Position 80-100%)
4. Set stops just outside the range
5. Exit on breakout signals
Breakout Strategy
1. Identify strong ranges (Score ≥ 0.7)
2. Wait for volume-confirmed breakout
3. Enter in breakout direction
4. Use previous resistance as support (or vice versa)
Market Context
- Strong ranges often occur after trending moves
- Use higher timeframes to confirm overall market structure
- Combine with volume analysis for better entries/exits
Best Practices
What to Look For
✅ Range Score ≥ 0.5 for trading consideration
✅ Multiple touches (5+) for confirmation
✅ Clear price rejection at levels
✅ Reasonable range size (5-15% for most assets)
✅ Recent price respect of boundaries
What to Avoid
❌ Trading ranges with Score < 0.3
❌ Very tight ranges (<3% size) - low profit potential
❌ Ranges with only 1-2 touches - not confirmed
❌ Ignoring breakout signals
❌ Trading against the higher timeframe trend
Alerts Available
- Range Detected - New range formation
- Range Break Up - Upward breakout
- Range Break Down - Downward breakout
- Range Ended - Range condition ended
Timeframe Recommendations
- Daily Charts - Best for swing trading ranges
- 4H Charts - Good for intermediate-term ranges
- 1H Charts - Suitable for day trading ranges
- Lower Timeframes - May produce more noise
Conclusion
The Recent Range Detector eliminates guesswork in range identification by providing objective, quantified range analysis. It's particularly valuable for traders who prefer range-bound strategies or need to identify when trending strategies should be avoided.
Remember: No indicator is perfect. Always combine with proper risk management, volume analysis, and broader market context for best results.
Disclaimer
This indicator is for educational purposes only and should not be considered as financial advice. Trading involves risk, and past performance does not guarantee future results. Always conduct your own research and consider your risk tolerance before making any trading decisions.
Signal Stack MeterWhat it is
A lightweight “go or no‑go” meter that combines your manual read of Structure, Location, and Momentum with automatic context from volatility and macro timing. It surfaces a single, tradeable answer on the chart: OK to engage or Standby.
Why traders like it
You keep your discretion and nuance, and the meter adds guardrails. It prevents good trade ideas from being executed in the wrong conditions.
What it measures
Manual buckets you set each day: Structure, Location, Momentum from 0 to 2
Volatility from VIX, term structure, ATR 5 over 60, and session gaps
Time windows for CPI, NFP, and FOMC with ET inputs and an exchange‑offset
Total score and a simple gate: threshold plus a “strong bucket” rule you choose
How to use in 30 seconds
Pick a preset for your market.
Set Structure, Location, Momentum to 0, 1, or 2.
Leave defaults for the auto metrics while you get a feel.
Read the header. When it says OK to engage, you have both your read and the context.
Defaults we recommend
OK threshold: 5
Strong bucket rule: Either Structure or Location equals 2
VIX triggers: 22 and 1.25× the 20‑SMA
Term mode: Diff at 0.00 tolerance. Ratio mode at 1.00+ is available
ATR 5/60 defense: 1.25. Offense cue: 0.85 or lower
ATR smoothing: 1
Gap mode: RTH with 0.60× ATR5 wild gap. ON wild range at 0.80× ATR5
CPI window 08:25 to 08:40 ET. FOMC window 13:50 to 14:30 ET
ET to exchange offset: −60 for CME index futures. Set to 0 for NYSE symbols like SPY
Alert cadence: Once per RTH session. Snooze first 30 minutes optional
New since the last description
Parity with Defense Mode for presets, sessions, ratio vs diff term mode, ATR smoothing, RTH‑key cadence, and snooze options
Event windows in ET with a simple offset to your exchange time
Alternate row backgrounds and full color control for readability
Exposed series for automation: EngageOK(1=yes) plus TotalScore
Debug toggle to see ATR ratio, term, and gap measurements directly
Notes
Dynamic alerts require “Any alert() function call”.
The meter is designed to sit opposite Defense Mode on the chart. Use the position input to avoid overlap.
Painel Técnico (4H x 1D) — Clean UI + Alertas BrenoG📋 Main Functions
1️⃣ Analysis in two fixed timeframes
4 hours and 1 day analyzed in parallel.
Each column in the table displays the data for its respective timeframe.
2️⃣ Entry point based on oversold conditions
The “entry point” is not the current price, but rather the last candle that went into oversold territory (RSI ≤ configured threshold).
If there has been no recent oversold condition, the current price is used as a fallback.
All calculations (Buy Zone, Stops, TPs) are based on this point.
3️⃣ Buy Zone
Defined as:
java
Copiar
Editar
Low Zone = entry * (1 - width%)
High Zone = entry
Always visible in the table, but alerts can be set to trigger only if RSI is oversold at the moment of entry.
4️⃣ Automatic Stops
Moderate Stop and Conservative Stop, calculated as a % below the entry point.
Displayed in the table with black text on a gray background for emphasis.
Alerts trigger when price crosses below these levels.
5️⃣ Take Profits (TP1–TP4)
Calculated from the entry point:
By percentage (usePercentTP = true) or
By fixed prices (usePercentTP = false).
The table displays:
Target price
% gain over the entry point
They only appear when RSI > 50 and EMA50 > EMA200 (the “alignment” condition).
Alerts trigger only on breakouts upward.
6️⃣ Context Indicators
RSI → shows numeric value and green/red color.
MACD → indicates if the MACD line is above or below the signal line.
EMAs 50/200 → indicates “Golden Cross” or “Death Cross”.
Price vs EMA200 → dedicated row showing “Above” or “Below EMA 200” with green/red color.
7️⃣ Visual Panel
Semi–transparent dark gray background, thin borders.
Colored header:
Blue for 4H
Orange for 1D
Rows separated by data type for easy reading.
Configurable font size (tiny to large).
Table position configurable (top_left, top_right, etc.).
8️⃣ Integrated Alerts
Entry/Exit of Buy Zone
Touch of each TP
Touch of each Stop
RSI entering Oversold
All alerts are separated by timeframe with clear, fixed messages.
📌 Simple Summary:
It’s an intelligent panel that combines multi–timeframe technical analysis, automatic calculation of entries/stops/TPs based on oversold conditions, and ready–to–use alerts — all presented in a visual, compact, and fully configurable format.
ADR/ATR Session by LK## **Features**
1. **Custom ADR & ATR Calculation**
* Calculates **Average Daily Range (ADR)** and **Average True Range (ATR)** separately for:
* **Session timeframe** (default H4 / 06:00–13:00)
* **Daily timeframe**
* Independent smoothing method selection (**SMA, EMA, RMA, WMA**) for H4 ADR, H4 ATR, Daily ADR, and Daily ATR.
2. **Percentage Metrics**
* % of ADR / ATR covered by the **current H4 bar**.
* ADR / ATR expressed as a percentage of the **current price**.
* % of ADR already reached for the **current day**.
* % of Daily ATR vs current day’s True Range.
3. **Dynamic Chart Lines**
* Draws **3 lines for H4**: Session Open, ADR High, ADR Low.
* Draws **3 lines for Daily**: Daily Open, ADR High, ADR Low.
* Lines **extend to the right** so they stay visible across the chart.
* Colors and widths are fully customizable.
4. **Real-Time Data Table**
* Compact table displaying all ADR/ATR values and percentages.
* Adjustable table font size (**tiny, small, normal, large, huge**).
* Transparent background option for minimal chart obstruction.
5. **Flexible Session Settings**
* Select session start and end time in hours/minutes.
* Choose session timezone (chart timezone or major financial centers).
* Toggle H4 lines, Daily lines separately.
6. **Lookahead Control**
* Option to wait for higher-timeframe candle close before updating values (more accurate, less repainting).
---
## **How to Use**
### **1. Adding the Indicator**
* Copy and paste the Pine Script into TradingView’s Pine Editor.
* Click **“Add to chart”**.
* Make sure your chart supports the higher timeframes you choose (e.g., H4 and Daily).
### **2. Setting Your Session**
* **Session Start Hour** & **End Hour** → Defines the intraday session to measure ADR/ATR (default: 06:00–13:00).
* **Session Timezone** → Pick “Chart” or a major financial center (e.g., New York, London, Tokyo).
### **3. Choosing Smoothing Methods**
* For each ADR/ATR (H4 and Daily), choose:
* SMA (Simple)
* EMA (Exponential)
* RMA (Wilder’s smoothing)
* WMA (Weighted)
### **4. Adjusting Chart Display**
* **Show H4 Lines** → Displays session open and ADR High/Low for the current H4 session.
* **Show Daily Lines** → Displays daily open and ADR High/Low.
* Customize line colors and widths.
### **5. Reading the Table**
* **H4 Section**
* ADR / ATR values for the selected session.
* % of ADR/ATR covered by the **current H4 bar**.
* ADR/ATR as % of the current price.
* **Daily Section**
* ADR / ATR for the daily timeframe.
* % of ADR already covered by today’s range.
* ADR/ATR as % of price.
### **6. Pro Tips**
* Use **H4 ADR %** to gauge intraday exhaustion — if current range is near 100%, market may slow or reverse.
* Use **Daily ADR %** for swing trade context — if a day has moved beyond its ADR, expect lower continuation probability.
* Combine with support/resistance to identify high-probability reversal zones.
Kalman Supertrend (High vs Low) Bands by Skyito V2Inspired by BackQuant's Kalman Hull Supertrend, this upgraded version replaces the typical Kalman-close method with Kalman-filtered High and Low sources. This approach provides clearer trend visualization and helps confirm potential breakouts or reversals using clean, directional candle signals.
The core logic revolves around BB (Band Buy) and SS (Band Sell) signals:
BB appears only when a candle fully breaks above both Kalman High and Low bands.
SS appears when a candle fully breaks below both bands.
These clean triggers help avoid false signals and are excellent for capturing high-probability trend shifts.
✅ The Supertrend line is also included and can be toggled on or off — useful for those who prefer early trend detection or confirmation.
🆕 Why the SMA Band was Included
To complement the Kalman band system, a Moving Average Band (default: SMA 200) is added:
It helps detect the long-term trend direction.
Candles are colored green when above the SMA band and red when below.
This visual cue strengthens trend confidence and adds an extra layer for filtering trades.
The MA band and coloring can be turned on or off based on preference.
This tool is built for traders who want a clean trend-following and breakout confirmation system. It can be used as a standalone strategy or paired with price action, volume, or support/resistance tools.
BTC/USD Confluence Breakout Pro – IST EditionBTC/USD Confluence Breakout Pro – IST Edition is a multi-factor breakout trading system designed for intraday and swing traders.
It combines trend, momentum, price action, volume, and candlestick analysis with time-based volatility windows to deliver high-probability Buy/Sell signals.
Key Features:
Trend Filters: EMA 9/21 crossover + optional EMA 200 bias filter.
Price Action Breakouts: Detects closes above/below the last N bars’ range.
Candlestick Patterns: Bullish/Bearish engulfing, hammer, and shooting star.
Momentum Indicators: RSI (14) with configurable thresholds, MACD (12/26/9).
Volume Confirmation: Volume spike vs 20-period SMA.
IST Breakout Windows: Highlights Early London, London–US Overlap, and US Open momentum periods (Hyderabad/IST time). Optionally restricts signals to these windows.
Risk Management: ATR-based stop-loss + auto-plotted 1R, 2R, and 3R take-profit levels.
Visual Aids: EMA plots, bar coloring, shaded volatility windows, and clear entry/exit labels.
Alerts: Configurable alerts for both Buy and Sell signals.
Best Use:
Apply on 1m–15m charts for intraday trading or 1H–4H for swings.
Works best during high-volatility IST windows (London–US overlap & US open).
Ideal for BTC/USD but adaptable to other crypto or forex pairs.
Kalman Supertrend (High vs Low) Bands Inspired by BackQuant, this script modifies the original Kalman Hull Supertrend by replacing the close price with High and Low sources. This creates clearer trend definition and better trend tracking.
This is one of the best trend indicators that can be used for trend trading or to capture reversals with high clarity.
Key Features:
Kalman High/Low Bands — Smooths market noise while separating bullish and bearish zones.
BB & SS Alerts — Triggered only when the entire candle closes outside both bands, helping filter out false breakouts.
Supertrend (optional) — Can be toggled on/off to monitor potential short-term or early trend shifts.
Customizable Display — Show/hide bands, fills, and live candle coloring for chart clarity.
Reversal Insight:
For 4H and Daily charts, reversal signals appear to be quite accurate when the price retests the trend bands before continuing the move.
How to Use:
BB appears when a candle fully closes above both High/Low Kalman bands — possible bullish breakout.
SS appears when a candle fully closes below both bands — possible bearish breakdown.
Supertrend toggle can confirm shorter-term moves or early reversals.
Credit to the original script BackQuant
simple trend Scanner Dashboard Script Does
- Calculates key metrics:
- Percent Change from previous day
- Relative Volume (% vs 10-bar average)
- RSI and ADX for strength/trend
- 20 EMA for dynamic support/resistance
- Classifies market condition:
- 🟢 Strong if RSI > 60 and ADX > 25
- 🔴 Weak if RSI < 40 and ADX < 20
- ⚪ Neutral otherwise
- Displays a table dashboard:
- Compact, color-coded summary of all metrics
- Easy to scan visually
- Plots visual signals:
- Arrows and triangles for percent change and volume spikes
- Data window plots for deeper inspection
Dollar Volume + SD [ZTD]### So, What's the Big Deal with SD Dollar Volume?
TL:DR
What you see:
1. $ Volume = (Price * Volume) / 1M (we divide it by 1M by default so you don't have to look at 12 digits but you can select between 100k/1M/10M)
2. User selected M.A. period with difference sources
3. Up to 4 Standard Deviation from that M.A.
4. Color coded (explained below)
That's it, no fancy useless multi color rainbows. Functional, bringing depth and clarity to your analysis based on reality not optical illusion.
--------------
The Long version
You know how we've always looked at volume? It's a classic, but it's got a blind spot. A million shares traded when a stock is at $10 is a completely different ballgame from a million shares traded when it's at $200. The first is $10M in action; the second is $200M. Traditional volume treats them the same, but they are not the same story.
That's the whole idea behind the **Dollar Volume Standard Deviation (SD $VVOLUME)** indicator. Instead of just counting shares, it tracks the **actual dollar amount** ( also refered as Dollar Volume) changing hands. This gives you a much clearer picture of the real financial power behind a price move. It helps you see when the "big money" is truly stepping in or backing off.
Think about it this way: after a 20% drop on earnings, you might see a 10% volume increase and think, "Wow, buyers are stepping in!" But if you look at the *value traded*, it might actually be lower than the day before because the share price is so much cheaper. This indicator cuts through that noise.
What about that smaller stock you bought that suddenly doubles in prices in a matter of months. Do you really thing the volume you are looking at carries any meaning anymore?
On longer time frame? Think about Volume traded vs Value Traded on NVDA for example. Looking at volume alone on those charts is absolutely meaningless. I even wonder why volume alone ever existed in the first place as an indicator.
### How to Use It in Your Trading
This isn't just theory; here’s how you can actually use it to make better decisions.
#### Reading the Indicator
The indicator is designed to be visual and intuitive. Here’s what you're looking at:
* **The Bars:** Each bar on the indicator represents the total dollar value traded during that period. Bigger bar, more money moved.
* **The White Line:** This is your baseline—the moving average of the value traded. It shows you the normal level of money flow for that stock.
* **Bar Colors (The Important Part):**
* **Direction:** **Green** means the stock closed higher in that period. **Red** means it closed lower. Simple enough.
* **Intensity:** This is the real magic. The brightness or intensity of the color tells you how significant that money flow was. A dull, faded bar means the value traded was pretty average. A **bright, intense bar** means the value was way above normal (usually 1 or 2 standard deviations away from the average). *That's* when you need to pay attention.
#### Actionable Signals for Your Strategy
* **Spotting High-Conviction Moves:** When you see a bright, intense red or green bar that towers over the others, that's a signal of major conviction. Big players are making a decisive move, either buying up everything in sight or dumping their positions. This is your cue that something significant is happening.
* **Confirming a Trend's Strength:** Are you in a strong uptrend? Look for a consistent pattern of bright green bars. This tells you that significant capital is flowing in to support the rising price. It's confirmation that the trend has legs.
* **Catching a Weakening Trend (Divergence):** This is a powerful one. Imagine the stock price is grinding out new highs, but on the SD
V
VOLUME
indicator, the bars are getting smaller and less intense. That's a major red flag. It shows that even though the price is inching up, the real money isn't following. There's no conviction, and the trend could be about to reverse.
* **Gauging Liquidity:** If the bars are consistently low and dull, it's a sign that interest in the stock is drying up. It's a good way to spot illiquid conditions and avoid getting trapped in a stock that's hard to get out of.
Ultimately, SD SEED_YASHALGO_NSE_BREADTH:VOLUME helps you see the market from a different angle. It's not just about the noise of shares being traded; it's about following the money.
Time-Price Velocity [QuantAlgo]🟢 Overview
The Time-Price Velocity indicator uses advanced velocity-based analysis to measure the rate of price change normalized against typical market movement, creating a dynamic momentum oscillator that identifies market acceleration patterns and momentum shifts. Unlike traditional momentum indicators that focus solely on price change magnitude, this indicator incorporates time-weighted displacement calculations and ATR normalization to create a sophisticated velocity measurement system that adapts to varying market volatility conditions.
This indicator displays a velocity signal line that oscillates around zero, with positive values indicating upward price velocity and negative values indicating downward price velocity. The signal incorporates acceleration background columns and statistical normalization to help traders identify momentum shifts and potential reversal or continuation opportunities across different timeframes and asset classes.
🟢 How It Works
The indicator's key insight lies in its time-price velocity calculation system, where velocity is measured using the fundamental physics formula:
velocity = priceChange / timeWeight
The system normalizes this raw velocity against typical price movement using Average True Range (ATR) to create market-adjusted readings:
normalizedVelocity = typicalMove > 0 ? velocity / typicalMove : 0
where "typicalMove = ta.atr(lookback)" provides the baseline for normal price movement over the specified lookback period.
The Time-Price Velocity indicator calculation combines multiple sophisticated components. First, it calculates acceleration as the change in velocity over time:
acceleration = normalizedVelocity - normalizedVelocity
Then, the signal generation applies EMA smoothing to reduce noise while preserving responsiveness:
signal = ta.ema(normalizedVelocity, smooth)
This creates a velocity-based momentum indicator that combines price displacement analysis with statistical normalization, providing traders with both directional signals and acceleration insights for enhanced market timing.
🟢 How to Use
1. Signal Interpretation and Threshold Zones
Positive Values (Above Zero): Time-price velocity indicating bullish momentum with upward price displacement relative to normalized baseline
Negative Values (Below Zero): Time-price velocity indicating bearish momentum with downward price displacement relative to normalized baseline
Zero Line Crosses: Velocity transitions between bullish and bearish regimes, indicating potential trend changes or momentum shifts
Upper Threshold Zone: Area above positive threshold (default 1.0) indicating strong bullish velocity and potential reversal point
Lower Threshold Zone: Area below negative threshold (default -1.0) indicating strong bearish velocity and potential reversal point
2. Acceleration Analysis and Visual Features
Acceleration Columns: Background histogram showing velocity acceleration (the rate of change of velocity), with green columns indicating accelerating velocity and red columns indicating decelerating velocity. The interpretation depends on trend context: red columns in downtrends indicate strengthening bearish momentum, while red columns in uptrends indicate weakening bullish momentum
Acceleration Column Height: The height of each column represents the magnitude of acceleration, with taller columns indicating stronger acceleration or deceleration forces
Bar Coloring: Optional price bar coloring matches velocity direction for immediate visual trend confirmation
Info Table: Real-time display of current velocity and acceleration values with trend arrows and change indicators
3. Additional Features:
Confirmed vs Live Data: Toggle between confirmed (closed) bar analysis for stable signals or current bar inclusion for real-time updates
Multi-timeframe Adaptability: Velocity normalization ensures consistent readings across different chart timeframes and asset volatilities
Alert System: Built-in alerts for threshold crossovers and direction changes
🟢 Examples with Preconfigured Settings
Default : Balanced configuration suitable for most timeframes and general trading applications, providing optimal balance between sensitivity and noise filtering for medium-term analysis.
Scalping : High sensitivity setup with shorter lookback period and reduced smoothing for ultra-short-term trades on 1-15 minute charts, optimized for capturing rapid momentum shifts and frequent trading opportunities.
Swing Trading : Extended lookback period with enhanced smoothing and higher threshold for multi-day positions, designed to filter market noise while capturing significant momentum moves on 1-4 hour and daily timeframes.
Market Energy – Trend vs RetestShows who is in control of the market. The red lines are sellers in control and the green are the buyers in control
MERV: Market Entropy & Rhythm Visualizer [BullByte]The MERV (Market Entropy & Rhythm Visualizer) indicator analyzes market conditions by measuring entropy (randomness vs. trend), tradeability (volatility/momentum), and cyclical rhythm. It provides traders with an easy-to-read dashboard and oscillator to understand when markets are structured or choppy, and when trading conditions are optimal.
Purpose of the Indicator
MERV’s goal is to help traders identify different market regimes. It quantifies how structured or random recent price action is (entropy), how strong and volatile the movement is (tradeability), and whether a repeating cycle exists. By visualizing these together, MERV highlights trending vs. choppy environments and flags when conditions are favorable for entering trades. For example, a low entropy value means prices are following a clear trend line, whereas high entropy indicates a lot of noise or sideways action. The indicator’s combination of measures is original: it fuses statistical trend-fit (entropy), volatility trends (ATR and slope), and cycle analysis to give a comprehensive view of market behavior.
Why a Trader Should Use It
Traders often need to know when a market trend is reliable vs. when it is just noise. MERV helps in several ways: it shows when the market has a strong direction (low entropy, high tradeability) and when it’s ranging (high entropy). This can prevent entering trend-following strategies during choppy periods, or help catch breakouts early. The “Optimal Regime” marker (a star) highlights moments when entropy is very low and tradeability is very high, typically the best conditions for trend trades. By using MERV, a trader gains an empirical “go/no-go” signal based on price history, rather than guessing from price alone. It’s also adaptable: you can apply it to stocks, forex, crypto, etc., on any timeframe. For example, during a bullish phase of a stock, MERV will turn green (Trending Mode) and often show a star, signaling good follow-through. If the market later grinds sideways, MERV will shift to magenta (Choppy Mode), warning you that trend-following is now risky.
Why These Components Were Chosen
Market Entropy (via R²) : This measures how well recent prices fit a straight line. We compute a linear regression on the last len_entropy bars and calculate R². Entropy = 1 - R², so entropy is low when prices follow a trend (R² near 1) and high when price action is erratic (R² near 0). This single number captures trend strength vs noise.
Tradeability (ATR + Slope) : We combine two familiar measures: the Average True Range (ATR) (normalized by price) and the absolute slope of the regression line (scaled by ATR). Together they reflect how active and directional the market is. A high ATR or strong slope means big moves, making a trend more “tradeable.” We take a simple average of the normalized ATR and slope to get tradeability_raw. Then we convert it to a percentile rank over the lookback window so it’s stable between 0 and 1.
Percentile Ranks : To make entropy and tradeability values easy to interpret, we convert each to a 0–100 rank based on the past len_entropy periods. This turns raw metrics into a consistent scale. (For example, an entropy rank of 90 means current entropy is higher than 90% of recent values.) We then divide by 100 to plot them on a 0–1 scale.
Market Mode (Regime) : Based on those ranks, MERV classifies the market:
Trending (Green) : Low entropy rank (<40%) and high tradeability rank (>60%). This means the market is structurally trending with high activity.
Choppy (Magenta) : High entropy rank (>60%) and low tradeability rank (<40%). This is a mostly random, low-momentum market.
Neutral (Cyan) : All other cases. This covers mixed regimes not strongly trending or choppy.
The mode is shown as a colored bar at the bottom: green for trending, magenta for choppy, cyan for neutral.
Optimal Regime Signal : Separately, we mark an “optimal” condition when entropy_norm < 0.3 and tradeability > 0.7 (both normalized 0–1). When this is true, a ★ star appears on the bottom line. This star is colored white when truly optimal, gold when only tradeability is high (but entropy not quite low enough), and black when neither condition holds. This gives a quick visual cue for very favorable conditions.
What Makes MERV Stand Out
Holistic View : Unlike a single-oscillator, MERV combines trend, volatility, and cycle analysis in one tool. This multi-faceted approach is unique.
Visual Dashboard : The fixed on-chart dashboard (shown at your chosen corner) summarizes all metrics in bar/gauge form. Even a non-technical user can glance at it: more “█” blocks = a higher value, colors match the plots. This is more intuitive than raw numbers.
Adaptive Thresholds : Using percentile ranks means MERV auto-adjusts to each market’s character, rather than requiring fixed thresholds.
Cycle Insight : The rhythm plot adds information rarely found in indicators – it shows if there’s a repeating cycle (and its period in bars) and how strong it is. This can hint at natural bounce or reversal intervals.
Modern Look : The neon color scheme and glow effects make the lines easy to distinguish (blue/pink for entropy, green/orange for tradeability, etc.) and the filled area between them highlights when one dominates the other.
Recommended Timeframes
MERV can be applied to any timeframe, but it will be more reliable on higher timeframes. The default len_entropy = 50 and len_rhythm = 30 mean we use 30–50 bars of history, so on a daily chart that’s ~2–3 months of data; on a 1-hour chart it’s about 2–3 days. In practice:
Swing/Position traders might prefer Daily or 4H charts, where the calculations smooth out small noise. Entropy and cycles are more meaningful on longer trends.
Day trader s could use 15m or 1H charts if they adjust the inputs (e.g. shorter windows). This provides more sensitivity to intraday cycles.
Scalpers might find MERV too “slow” unless input lengths are set very low.
In summary, the indicator works anywhere, but the defaults are tuned for capturing medium-term trends. Users can adjust len_entropy and len_rhythm to match their chart’s volatility. The dashboard position can also be moved (top-left, bottom-right, etc.) so it doesn’t cover important chart areas.
How the Scoring/Logic Works (Step-by-Step)
Compute Entropy : A linear regression line is fit to the last len_entropy closes. We compute R² (goodness of fit). Entropy = 1 – R². So a strong straight-line trend gives low entropy; a flat/noisy set of points gives high entropy.
Compute Tradeability : We get ATR over len_entropy bars, normalize it by price (so it’s a fraction of price). We also calculate the regression slope (difference between the predicted close and last close). We scale |slope| by ATR to get a dimensionless measure. We average these (ATR% and slope%) to get tradeability_raw. This represents how big and directional price moves are.
Convert to Percentiles : Each new entropy and tradeability value is inserted into a rolling array of the last 50 values. We then compute the percentile rank of the current value in that array (0–100%) using a simple loop. This tells us where the current bar stands relative to history. We then divide by 100 to plot on .
Determine Modes and Signal : Based on these normalized metrics: if entropy < 0.4 and tradeability > 0.6 (40% and 60% thresholds), we set mode = Trending (1). If entropy > 0.6 and tradeability < 0.4, mode = Choppy (-1). Otherwise mode = Neutral (0). Separately, if entropy_norm < 0.3 and tradeability > 0.7, we set an optimal flag. These conditions trigger the colored mode bars and the star line.
Rhythm Detection : Every bar, if we have enough data, we take the last len_rhythm closes and compute the mean and standard deviation. Then for lags from 5 up to len_rhythm, we calculate a normalized autocorrelation coefficient. We track the lag that gives the maximum correlation (best match). This “best lag” divided by len_rhythm is plotted (a value between 0 and 1). Its color changes with the correlation strength. We also smooth the best correlation value over 5 bars to plot as “Cycle Strength” (also 0 to 1). This shows if there is a consistent cycle length in recent price action.
Heatmap (Optional) : The background color behind the oscillator panel can change with entropy. If “Neon Rainbow” style is on, low entropy is blue and high entropy is pink (via a custom color function), otherwise a classic green-to-red gradient can be used. This visually reinforces the entropy value.
Volume Regime (Dashboard Only) : We compute vol_norm = volume / sma(volume, len_entropy). If this is above 1.5, it’s considered high volume (neon orange); below 0.7 is low (blue); otherwise normal (green). The dashboard shows this as a bar gauge and percentage. This is for context only.
Oscillator Plot – How to Read It
The main panel (oscillator) has multiple colored lines on a 0–1 vertical scale, with horizontal markers at 0.2 (Low), 0.5 (Mid), and 0.8 (High). Here’s each element:
Entropy Line (Blue→Pink) : This line (and its glow) shows normalized entropy (0 = very low, 1 = very high). It is blue/green when entropy is low (strong trend) and pink/purple when entropy is high (choppy). A value near 0.0 (below 0.2 line) indicates a very well-defined trend. A value near 1.0 (above 0.8 line) means the market is very random. Watch for it dipping near 0: that suggests a strong trend has formed.
Tradeability Line (Green→Yellow) : This represents normalized tradeability. It is colored bright green when tradeability is low, transitioning to yellow as tradeability increases. Higher values (approaching 1) mean big moves and strong slopes. Typically in a market rally or crash, this line will rise. A crossing above ~0.7 often coincides with good trend strength.
Filled Area (Orange Shade) : The orange-ish fill between the entropy and tradeability lines highlights when one dominates the other. If the area is large, the two metrics diverge; if small, they are similar. This is mostly aesthetic but can catch the eye when the lines cross over or remain close.
Rhythm (Cycle) Line : This is plotted as (best_lag / len_rhythm). It indicates the relative period of the strongest cycle. For example, a value of 0.5 means the strongest cycle was about half the window length. The line’s color (green, orange, or pink) reflects how strong that cycle is (green = strong). If no clear cycle is found, this line may be flat or near zero.
Cycle Strength Line : Plotted on the same scale, this shows the autocorrelation strength (0–1). A high value (e.g. above 0.7, shown in green) means the cycle is very pronounced. Low values (pink) mean any cycle is weak and unreliable.
Mode Bars (Bottom) : Below the main oscillator, thick colored bars appear: a green bar means Trending Mode, magenta means Choppy Mode, and cyan means Neutral. These bars all have a fixed height (–0.1) and make it very easy to see the current regime.
Optimal Regime Line (Bottom) : Just below the mode bars is a thick horizontal line at –0.18. Its color indicates regime quality: White (★) means “Optimal Regime” (very low entropy and high tradeability). Gold (★) means not quite optimal (high tradeability but entropy not low enough). Black means neither condition. This star line quickly tells you when conditions are ideal (white star) or simply good (gold star).
Horizontal Guides : The dotted lines at 0.2 (Low), 0.5 (Mid), and 0.8 (High) serve as reference lines. For example, an entropy or tradeability reading above 0.8 is “High,” and below 0.2 is “Low,” as labeled on the chart. These help you gauge values at a glance.
Dashboard (Fixed Corner Panel)
MERV also includes a compact table (dashboard) that can be positioned in any corner. It summarizes key values each bar. Here is how to read its rows:
Entropy : Shows a bar of blocks (█ and ░). More █ blocks = higher entropy. It also gives a percentage (rounded). A full bar (10 blocks) with a high % means very chaotic market. The text is colored similarly (blue-green for low, pink for high).
Rhythm : Shows the best cycle period in bars (e.g. “15 bars”). If no calculation yet, it shows “n/a.” The text color matches the rhythm line.
Cycle Strength : Gives the cycle correlation as a percentage (smoothed, as shown on chart). Higher % (green) means a strong cycle.
Tradeability : Displays a 10-block gauge for tradeability. More blocks = more tradeable market. It also shows “gauge” text colored green→yellow accordingly.
Market Mode : Simply shows “Trending”, “Choppy”, or “Neutral” (cyan text) to match the mode bar color.
Volume Regime : Similar to tradeability, shows blocks for current volume vs. average. Above-average volume gives orange blocks, below-average gives blue blocks. A % value indicates current volume relative to average. This row helps see if volume is abnormally high or low.
Optimal Status (Large Row) : In bold, either “★ Optimal Regime” (white text) if the star condition is met, “★ High Tradeability” (gold text) if tradeability alone is high, or “— Not Optimal” (gray text) otherwise. This large row catches your eye when conditions are ripe.
In short, the dashboard turns the numeric state into an easy read: filled bars, colors, and text let you see current conditions without reading the plot. For instance, five blue blocks under Entropy and “25%” tells you entropy is low (good), and a row showing “Trending” in green confirms a trend state.
Real-Life Example
Example : Consider a daily chart of a trending stock (e.g. “AAPL, 1D”). During a strong uptrend, recent prices fit a clear upward line, so Entropy would be low (blue line near bottom, perhaps below the 0.2 line). Volatility and slope are high, so Tradeability is high (green-yellow line near top). In the dashboard, Entropy might show only 1–2 blocks (e.g. 10%) and Tradeability nearly full (e.g. 90%). The Market Mode bar turns green (Trending), and you might see a white ★ on the optimal line if conditions are very good. The Volume row might light orange if volume is above average during the rally. In contrast, imagine the same stock later in a tight range: Entropy will rise (pink line up, more blocks in dashboard), Tradeability falls (fewer blocks), and the Mode bar turns magenta (Choppy). No star appears in that case.
Consolidated Use Case : Suppose on XYZ stock the dashboard reads “Entropy: █░░░░░░░░ 20%”, “Tradeability: ██████████ 80%”, Mode = Trending (green), and “★ Optimal Regime.” This tells the trader that the market is in a strong, low-noise trend, and it might be a good time to follow the trend (with appropriate risk controls). If instead it reads “Entropy: ████████░░ 80%”, “Tradeability: ███▒▒▒▒▒▒ 30%”, Mode = Choppy (magenta), the trader knows the market is random and low-momentum—likely best to sit out until conditions improve.
Example: How It Looks in Action
Screenshot 1: Trending Market with High Tradeability (SOLUSD, 30m)
What it means:
The market is in a clear, strong trend with excellent conditions for trading. Both trend-following and active strategies are favored, supported by high tradeability and strong volume.
Screenshot 2: Optimal Regime, Strong Trend (ETHUSD, 1h)
What it means:
This is an ideal environment for trend trading. The market is highly organized, tradeability is excellent, and volume supports the move. This is when the indicator signals the highest probability for success.
Screenshot 3: Choppy Market with High Volume (BTC Perpetual, 5m)
What it means:
The market is highly random and choppy, despite a surge in volume. This is a high-risk, low-reward environment, avoid trend strategies, and be cautious even with mean-reversion or scalping.
Settings and Inputs
The script is fully open-source; here are key inputs the user can adjust:
Entropy Window (len_entropy) : Number of bars used for entropy and tradeability (default 50). Larger = smoother, more lag; smaller = more sensitivity.
Rhythm Window (len_rhythm ): Bars used for cycle detection (default 30). This limits the longest cycle we detect.
Dashboard Position : Choose any corner (Top Right default) so it doesn’t cover chart action.
Show Heatmap : Toggles the entropy background coloring on/off.
Heatmap Style : “Neon Rainbow” (colorful) or “Classic” (green→red).
Show Mode Bar : Turn the bottom mode bar on/off.
Show Dashboard : Turn the fixed table panel on/off.
Each setting has a tooltip explaining its effect. In the description we will mention typical settings (e.g. default window sizes) and that the user can move the dashboard corner as desired.
Oscillator Interpretation (Recap)
Lines : Blue/Pink = Entropy (low=trend, high=chop); Green/Yellow = Tradeability (low=quiet, high=volatile).
Fill : Orange tinted area between them (for visual emphasis).
Bars : Green=Trending, Magenta=Choppy, Cyan=Neutral (at bottom).
Star Line : White star = ideal conditions, Gold = good but not ideal.
Horizontal Guides : 0.2 and 0.8 lines mark low/high thresholds for each metric.
Using the chart, a coder or trader can see exactly what each output represents and make decisions accordingly.
Disclaimer
This indicator is provided as-is for educational and analytical purposes only. It does not guarantee any particular trading outcome. Past market patterns may not repeat in the future. Users should apply their own judgment and risk management; do not rely solely on this tool for trading decisions. Remember, TradingView scripts are tools for market analysis, not personalized financial advice. We encourage users to test and combine MERV with other analysis and to trade responsibly.
-BullByte
✅ VMA Avg ATR + Days to Targets 🎯1) The trend filter: LazyBear VMA
You implement the well‑known “LazyBear” Variable Moving Average (VMA) from price directional movement (pdm/mdm).
Internally you:
Smooth positive/negative one‑bar moves (pdmS, mdmS),
Turn them into relative strengths (pdiS, mdiS),
Measure their difference/total (iS), and
Normalize that over a rolling window to get a scaling factor vI.
The VMA itself is then an adaptive EMA:
vma := (1 - k*vI) * vma + (k*vI) * close, where k = 1/vmaLen.
When vI is larger, VMA hugs price more; when smaller, it smooths more.
Coloring:
Green when vma > vma (rising),
Red when vma < vma (falling),
White when flat.
Candles are recolored to match.
Why this matters: The VMA color is your trend regime; everything else in the script keys off changes in this color.
2) What counts as a “valid” new trend?
A new trend is valid only when the previous bar was white and the current bar turns green or red:
validTrendStart := vmaColor != color.white and vmaColor == color.white.
When that happens, you start a trend segment:
Save entry price (startPrice = close) and baseline ATR (startATR = ATR(atrLen)).
Reset “extreme” trackers: extremeHigh = high, extremeLow = low.
Timestamp the start (trendStartTime = time).
Effect: You only study / trade transitions out of a flat VMA into a slope. This helps avoid chop and reduces false starts.
3) While the trend is active
On each new bar without a color change:
If green trend: update extremeHigh = max(extremeHigh, high).
If red trend: update extremeLow = min(extremeLow, low).
This tracks the best excursion from the entry during that single trend leg.
4) When the VMA color changes (trend ends)
When vmaColor flips (green→red or red→green), you close the prior segment only if it was a valid trend (started after white). Then you:
Compute how far price traveled in ATR units from the start:
Uptrend ended: (extremeHigh - startPrice) / startATR
Downtrend ended: (startPrice - extremeLow) / startATR
Add that result to a running sum and count for the direction:
totalUp / countUp, totalDown / countDown.
Target checks for the ended trend (no look‑ahead):
T1 uses the previous average ATR move before the just‑ended trend (prevAvgUp/prevAvgDown).
Up: t1Up = startPrice + prevAvgUp * startATR
Down: t1Down = startPrice - prevAvgDown * startATR
T2 is a fixed 6× ATR move from the start (up or down).
You increment hit counters and also accumulate time‑to‑hit (ms from trendStartTime) for any target that got reached during that ended leg.
If T1 wasn’t reached, it counts as a miss.
Immediately initialize the next potential trend segment with the current bar’s startPrice/startATR/extremes and set validTrendStart according to the “white → color” rule.
Important detail: Using prevAvgUp/Down to evaluate T1 for the just‑completed trend avoids look‑ahead bias. The current trend’s performance isn’t used to set its own T1.
5) Running statistics & targets (for the current live trend)
After closing/adding to totals:
avgUp = totalUp / countUp and avgDown = totalDown / countDown are the historical average ATR move per valid trend for each direction.
Current plotted targets (only visible while a valid trend is active and in that direction):
T1 Up: startPrice + avgUp * startATR
T2 Up: startPrice + 6 * startATR
T1 Down: startPrice - avgDown * startATR
T2 Down: startPrice - 6 * startATR
The entry line is also plotted at startPrice when a valid trend is live.
If there’s no history yet (e.g., first trend), avgUp/avgDown are na, so T1 is na until at least one valid trend has closed. T2 still shows (6× ATR).
6) Win rate & time metrics
Win % (per direction):
winUp = hitUpT1 / (hitUpT1 + missUp) and similarly for down.
(This is strictly based on T1 hits vs misses; T2 hits don’t affect Win% directly.)
Average days to hit T1/T2:
The script stores milliseconds from trend start to each target hit, then reports the average in days separately for Up/Down and for T1/T2.
7) The dashboard table (bottom‑right)
It shows, side‑by‑side for Up/Down:
Avg ATR: historical average ATR move per completed valid trend.
🎯 Target 1 / Target 2: the current trend’s price levels (T1 = avgATR×ATR; T2 = 6×ATR).
✅ Win %: T1 hit rate so far.
⏱ Days to T1/T2: average days (from valid trend start) for the targets that were reached.
8) Alerts
“New Trend Detected” when a valid trend starts (white → green/red).
Target hits for the active trend:
Uptrend: separate alerts for T1 and T2 (high >= target).
Downtrend: separate alerts for T1 and T2 (low <= target).
9) Inputs & defaults
vmaLen = 17: governs how adaptive/smooth the VMA is (larger = smoother, fewer trend flips).
atrLen = 14: ATR baseline for sizing targets and normalizing moves.
10) Practical read of the plots
When you see white → green: that bar is your valid entry (trend start).
An Entry Line appears at the start price.
Target lines appear only for the active direction. T1 scales with your historical average ATR move; T2 is a fixed stretch (6× ATR).
The table updates as more trends complete, refining:
The average ATR reach (which resets your T1 sizing),
The win rate to T1, and
The average days it typically takes to hit T1/T2.
Subtle points / edge cases
No look‑ahead: T1 for a finished trend is checked against the prior average (not including the trend itself).
First trends: Until at least one valid trend completes, T1 is na (no history). T2 still shows.
Only “valid” trends are counted: Segments must start after a white bar; flips that happen color→color without a white in between don’t start a new valid trend.
Time math: Uses bar timestamps in ms, converted to days; results reflect the chart’s timeframe/market session.
TL;DR
The VMA color defines the regime; entries only trigger when a flat (white) VMA turns green/red.
Each trend’s max excursion from entry is recorded in ATR units.
T1 for current trends = (historical average ATR move) × current ATR from entry; T2 = 6× ATR.
The table shows your evolving edge (avg ATR reach, T1 win%, and days to targets), and alerts fire on new trends and target hits.
If you want, I can add optional features like: per‑ticker persistence of stats, excluding very short trends, or making T2 a user input instead of a fixed 6× ATR.
Divergence Indicator with Multi-Length Pivot DetectionThis Pine Script, titled “Divergence Indicator with Multi-Length Pivot Detection”, tool that detects both regular and hidden divergences between price action and an oscillator (defaulting to close, but configurable). It features multi-length pivot logic, angle-based validation, no-cross filtering, and OB/OS region filtering, making it a robust and precise divergence engine. Below is a detailed breakdown:
⸻
🔧 Inputs and Configuration
• osc_src: Oscillator source (e.g. close, RSI, MACD).
• show_hidden: Toggles detection of hidden divergences.
• min_*_angle settings: Control the minimum angle thresholds (in degrees) for confirming valid divergences (ensures momentum is strong enough).
• validate_no_cross: Ensures oscillator and price slopes don’t “cross” the actual values (i.e. filters out invalid or messy trends).
• oversold_level, overbought_level: Used when use_ob_os_filter is enabled to require oscillator to be in OS/OB zones for regular divergence.
• min_div_length: Minimum distance in bars between previous and current pivot points.
⸻
🔁 Internal Engine Mechanics
1. Pivot Detection Engine (Phase 1: Historical Memory)
• For all combinations of left1 and right1 in the range :
• Records all valid pivot lows and pivot highs.
• Stores their:
• bar index
• price value
• oscillator value
This forms a “memory buffer” of past pivots that future price pivots are compared against.
2. Current Pivot Detection (Phase 2: Scanning)
• Loops through larger pivot configurations (left2 ∈ , right2 = 1) to detect new current pivots.
• For each new pivot, it compares against the historical pivots from phase 1.
⸻
📐 Slope and Angle Calculation
For each matching pivot pair (historical vs current):
• Price and Oscillator Slopes are calculated via linear regression, producing:
• price_angle
• osc_angle
• These are converted using math.atan() and math.todegrees() to get proper angular direction and intensity of trend.
⸻
🧠 Divergence Logic
✅ Bullish Divergence
• Regular Bullish: Price makes a lower low, oscillator makes a higher low.
• Hidden Bullish: Price makes a higher low, oscillator makes a lower low.
• Conditions:
• Must meet minimum angle thresholds.
• Optional: Must be in oversold region (osc_src < oversold_level).
• If validate_no_cross is enabled, linearly interpolated slope must not be violated.
✅ Bearish Divergence
• Regular Bearish: Price makes a higher high, oscillator makes a lower high.
• Hidden Bearish: Price makes a lower high, oscillator makes a higher high.
• Conditions mirror the bullish case (with polarity reversed).
⸻
🖍️ Visualization
• Draws colored lines between pivots for visual clarity:
• Green: Regular Bullish
• Lime: Hidden Bullish
• Red: Regular Bearish
• Maroon: Hidden Bearish
• Uses plotshape() to mark divergence bars:
• Triangle-up for bullish
• Triangle-down for bearish
The lines and shapes help quickly identify divergence zones with strong momentum structure.
⸻
🧪 Filtering Enhancements
• No Cross Slope Filter: Checks that oscillator and price values stay above/below their respective slope lines throughout the interval.
• OB/OS Filter: Restricts divergence signals to occur only in oversold/overbought conditions for regular divergences.
• Signal Thinning: Keeps line count to 100 using array.shift() and line.delete().
⸻
🧬 Design Philosophy
• Built to mimic institutional-grade divergence detection, avoiding common false positives.
• Uses adaptive pivots, rigorous angle validation, and noise filtering.
SMA 9 vs SMA 20 Highlight CrossoverHighlight in green the area in between the two SMA do that when the SMA cross above the SMA 20 periods the area is colored in green and when the SMA cross below the SMA 20 periods the area is colored in red