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
Cerca negli script per "乌德勒支+VS+赫拉克勒斯"
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
Ultimate Global Trading Hours📊 Global Markets Pro - Summary
What it does:
Shows real-time trading hours for 11 major stock markets worldwide
Displays countdown timers for when each market opens/closes
Includes Forex sessions and US extended hours (pre-market/after-hours)
Features advanced market sentiment analysis with Fear/Greed indicators
Key Features:
✅ Chronological market order (Sydney → Tokyo → London → NYSE, etc.)
✅ Customisable times for each market in HH:MM format
✅ Multi-factor sentiment (VIX, Bonds vs Stocks, Weekly trends, Volume)
✅ Clean interface with emoji indicators and colour coding
✅ Your timezone display with GMT+/- options
Perfect for:
Day traders tracking global market sessions
Swing traders gauging market sentiment
Anyone wanting to know when major markets are active
Result: One comprehensive dashboard showing when to trade and market mood across all time zones!
Elliott Wave Probability System Pro v2🎯 Major Improvements Made to Elliott Wave Script
Key Changes:
1. Advanced Trend Detection (Lines 55-82)
Uses 5 different methods to determine trend over last 75 bars:
Price position in range
Linear regression slope
Moving average alignment
Higher highs/lows pattern
Up vs down bar count
Combines all methods into a trendScore for accurate direction
2. Adaptive Target Direction
New input: adaptiveTargets (line 28) - can toggle on/off
When ON: Targets follow the 75-bar trend regardless of short-term indicators
When OFF: Works like original (based on current momentum)
3. Improved Target Calculation
Bullish targets use extensions from current price to recent high
Bearish targets use retracements from current price to recent low
More realistic price levels based on actual market structure
4. Enhanced Status Display
Added "Trend (75 bars)" row showing BULLISH/BEARISH/NEUTRAL
Helps you see why targets are pointing a certain direction
5. Better Probability Calculation
Base probability adjusts with trend strength (70% if strong trend, 50% if not)
Gradual probability decay with distance
Minimum 15% probability (more realistic than 10%)
New Features:
Trend-Based Alerts
Alerts when 75-bar trend changes from bullish to bearish (or vice versa)
Trend Weight in Scoring
Added trendWeight to the total score calculation
Makes signals more aligned with larger trend
Visual Improvements
Projection lines now show at 40% probability (was 50%)
Better visibility of likely targets
How It Works Now:
If last 75 bars show a downtrend , targets will be bearish (even if RSI is oversold)
If last 75 bars show an uptrend , targets will be bullish (even if RSI is overbought)
The probability adjusts based on trend strength
This solves the issue where the script was showing bullish targets in a clear downtrend. Now it properly reflects the dominant trend direction while still considering short-term indicators for probability calculations.
Volume vs Volatility Trend Signal1 is increasing volume decreasing volatility -1 is decreasing volume increasing volatility 0 is neither
Corys Buy and SellThe Cory’s Buy and Sell indicator is an advanced, all-in-one trading toolkit that combines dynamic trend detection, volatility breakout alerts, and visual EMA strength to help traders confidently identify high-probability buy and sell opportunities.
🔍 Key Features:
Adaptive Supertrend Engine
Powered by a modified Keltner Channel, this trend-following algorithm generates timely BUY 🚀 and SELL 😡 signals based on market momentum and volatility, with adjustable sensitivity and factor settings for full control.
EMA Energy Bands (Optional)
A cascade of 15 EMAs (from 9 to 51 periods) visually maps market energy. Colours shift from green (bullish) to red (bearish), showing short- to medium-term trend strength at a glance.
Trend Catcher Overlay
Highlights major shifts in trend using a fast/slow EMA crossover (10 vs 20 EMA). Bars are coloured to reflect bullish reversals for added confidence.
Pullback Signal Detection
Identifies bullish pullback opportunities when price reclaims key EMA levels after a crossover, marked with a green triangle for entry timing.
Built-in Range Detection System
Automatically highlights price consolidation zones using ATR-based logic. When price breaks above or below the detected range, the zone changes colour (green for breakout up, red for breakdown), helping traders spot breakout opportunities.
Smart Labels & Alerts
Instant BUY/SELL labels on the chart and built-in alert conditions make this indicator suitable for both discretionary and automated trading strategies.
⚙️ Customisable Inputs:
Sensitivity (for trend signals)
EMA Energy toggle
Keltner & ATR Lengths
Range Detection parameters and styling
Best For: Trend traders, breakout traders, and swing traders looking for a clean, powerful overlay that combines momentum, structure, and volatility in one tool.
Stochastic Z-Score [AlgoAlpha]🟠 OVERVIEW
This indicator is a custom-built oscillator called the Stochastic Z-Score , which blends a volatility-normalized Z-Score with stochastic principles and smooths it using a Hull Moving Average (HMA). It transforms raw price deviations into a normalized momentum structure, then processes that through a stochastic function to better identify extreme moves. A secondary long-term momentum component is also included using an ALMA smoother. The result is a responsive oscillator that reacts to sharp imbalances while remaining stable in sideways conditions. Colored histograms, dynamic oscillator bands, and reversal labels help users visually assess shifts in momentum and identify potential turning points.
🟠 CONCEPTS
The Z-Score is calculated by comparing price to its mean and dividing by its standard deviation—this normalizes movement and highlights how far current price has stretched from typical values. This Z-Score is then passed through a stochastic function, which further refines the signal into a bounded range for easier interpretation. To reduce noise, a Hull Moving Average is applied. A separate long-term trend filter based on the ALMA of the Z-Score helps determine broader context, filtering out short-term traps. Zones are mapped with thresholds at ±2 and ±2.5 to distinguish regular momentum from extreme exhaustion. The tool is built to adapt across timeframes and assets.
🟠 FEATURES
Z-Score histogram with gradient color to visualize deviation intensity (optional toggle).
Primary oscillator line (smoothed stochastic Z-Score) with adaptive coloring based on momentum direction.
Dynamic bands at ±2 and ±2.5 to represent regular vs extreme momentum zones.
Long-term momentum line (ALMA) with contextual coloring to separate trend phases.
Automatic reversal markers when short-term crosses occur at extremes with supporting long-term momentum.
Built-in alerts for oscillator direction changes, zero-line crosses, overbought/oversold entries, and trend confirmation.
🟠 USAGE
Use this script to track momentum shifts and identify potential reversal areas. When the oscillator is rising and crosses above the previous value—especially from deeply negative zones (below -2)—and the ALMA is also above zero, this suggests bullish reversal conditions. The opposite holds for bearish setups. Reversal labels ("▲" and "▼") appear only when both short- and long-term conditions align. The ±2 and ±2.5 thresholds act as momentum warning zones; values inside are typical trends, while those beyond suggest exhaustion or extremes. Adjust the length input to match the asset’s volatility. Enable the histogram to explore underlying raw Z-Score movements. Alerts can be configured to notify key changes in momentum or zone entries.
Synthetic VX3! & VX4! continuous /VX futuresTradingView is missing continuous 3rd and 4th month VIX (/VX) futures, so I decided to try to make a synthetic one that emulates what continuous maturity futures would look like. This is useful for backtesting/historical purposes as it enables traders to see how their further out VX contracts would've performed vs the front month contract.
The indicator pulls actual realtime data (if you subscribe to the CBOE data package) or 15 minute delayed data for the VIX spot (the actual non-tradeable VIX index), the continuous front month (VX1!), and the continuous second month (VX2!) continually rolled contracts. Then the indicator's script applies a formula to fairly closely estimate how 3rd and 4th month continuous contracts would've moved.
It uses an exponential mean‑reversion to a long‑run level formula using:
σ(T) = θ+(σ0−θ)e−kT
You can expect it to be off by ~5% or so (in times of backwardation it might be less accurate).