Crypto Mean Reversion System (Pullback & Bounce)Mean Reversion Theory
The indicator operates on the principle that extreme price movements in crypto markets tend to revert toward their mean over time.
Consider this a valuable aid for your dollar-cost averaging strategy, effectively identifying periods ripe for accumulating or divesting from the market.
Research shows that:
Short-term momentum often persists briefly after surges, but extreme moves trigger mean reversion
Sharp drops exhibit strong bounce patterns, especially after capitulation events
Longer timeframes (7-day) show stronger mean reversion tendencies than shorter ones (1-day)
Timeframe Analysis
1-Day Timeframe
Pullback probabilities: 45-85% depending on surge magnitude
Bounce probabilities: 55-95% depending on drop severity
Captures immediate overextension and panic selling
More volatile but faster signal generation
7-Day Timeframe
Pullback probabilities: 50-90% (higher confidence)
Bounce probabilities: 50-90% (slightly moderated)
Filters out noise and identifies sustained trends
Stronger mean reversion signals due to extended moves
Probability Tiers
Pullback Risk (After Surges)
Moderate (45-60%): 5-10% surge → Expected -3% to -12% pullback
High (55-70%): 10-15% surge → Expected -5% to -18% pullback
Very High (65-80%): 15-25% surge → Expected -10% to -25% pullback
Extreme (75-90%): 25%+ surge → Expected -15% to -40% pullback
Bounce Probability (After Drops)
Moderate (55-65%): -5% to -10% drop → Expected +3% to +10% bounce
High (65-75%): -10% to -15% drop → Expected +6% to +18% bounce
Very High (75-85%): -15% to -25% drop → Expected +10% to +30% bounce
Extreme (85-95%): -25%+ drop → Expected +18% to +45% bounce
The probability ranges are derived from:
Crypto volatility patterns: Higher volatility than traditional assets creates stronger mean reversion
Behavioral finance: Extreme moves trigger emotional trading (FOMO/panic) that reverses
Historical backtesting: Probability estimates based on typical reversion patterns in crypto markets
Timeframe correlation: Longer timeframes show increased reversion probability due to reduced noise
Key Features
Dual-direction signals: Identifies both overbought (pullback) and oversold (bounce) conditions
Multi-timeframe confirmation: 1D and 7D analysis for different trading styles
Customizable thresholds: Adjust sensitivity based on asset volatility
Visual alerts: Color-coded labels and table for quick assessment
Risk categorization: Clear severity levels for position sizing
Volatilidad
Uptrick: Volatility Adjusted TrailIntroduction
The "Uptrick: Volatility Adjusted Trail" is a dynamic trailing band indicator. It adapts in real time to changing market conditions by adjusting both to volatility and trend consistency. Inspired by Supertrend-style logic, it enhances traditional approaches by introducing adaptive mechanisms for more context-sensitive behavior in both trending and consolidating environments.
Overview
This indicator combines an exponential moving average (EMA) as its basis with an Average True Range (ATR)-derived multiplier that adjusts dynamically. Unlike fixed-multiplier tools, this indicator modifies its band distances in real time according to volatility expansion and trend persistence. The result is a trailing system that adapts to the prevailing market regime, providing traders with clearer signals for trend bias, stop placement, and potential momentum shifts.
Originality
The script’s originality lies in its multi-layered approach to trail calculation. It introduces a real-time ATR multiplier adjustment driven by two factors: a volatility expansion ratio and a trend persistence model. The expansion ratio compares the current ATR to its moving average, making the indicator more sensitive during volatile conditions and less sensitive during quieter periods. The trend persistence model assesses directional consistency to widen the bands during sustained trends. This dual adjustment method creates a system that evolves with market behavior, making it more responsive and adaptive than static-band or fixed-multiplier alternatives.
Components & Inspiration
This indicator was designed with specific components that work together:
Exponential Moving Average (EMA): Chosen as the central baseline because it responds faster to recent price changes than a simple moving average, providing a more current reference for trailing bands.
Average True Range (ATR): Used as the volatility measure because it accounts for both intraday and gap movement, making it a robust and widely accepted standard for market volatility.
Dynamic Multiplier: The multiplier is adjusted by both volatility expansion and trend persistence to produce bands that tighten during low volatility and widen during consistent trends. This combination was chosen to give the indicator the ability to self-regulate across different market regimes.
Trend Persistence Model: Integrated to assess directional consistency, ensuring the bands expand during strong trends, which can prevent premature stop-outs.
Flip Confirmation Logic: Added to filter out noise by requiring multiple bar closes beyond a band before confirming a state change, reducing false reversals.
For inspiration, the indicator draws on the core idea behind Supertrend—using a baseline and volatility-derived bands to define trailing stop levels. However, while Supertrend uses a fixed ATR multiplier, this indicator introduces a dynamic multiplier system and persistence weighting, making it more adaptive and suited for varying conditions.
Inputs and Parameters
Basis EMA Length
Defines the period for the EMA that serves as the core price reference.
ATR Length
Sets the lookback period for the Average True Range calculation used in band spacing.
Base ATR Mult
The base multiplier applied to ATR before adjustments. Forms the starting scale of the band offset.
Volatility Expansion Sensitivity
Controls how strongly the band spacing reacts to short-term volatility bursts. Higher values create more pronounced band expansions or contractions.
Trend Persistence Window
Determines how many bars are used to calculate directional trend consistency using a smoothed step function.
Persistence Impact
Scales how much influence the trend persistence has on band widening. Values range from 0 (no effect) to 1 (maximum effect).
Min Effective Mult
Sets the minimum value that the adjusted multiplier can reach. Prevents the bands from becoming too narrow.
Max Effective Mult
Sets the maximum value the adjusted multiplier can reach. Prevents the bands from over-expanding during high volatility.
Bars Above/Below to Confirm Flip
Number of consecutive bars required to close above or below the opposing trail before confirming a bullish or bearish flip. Helps reduce noise and false signals.
Show Flip Labels
Enables or disables the display of flip markers on the chart.
Label Size
Allows users to adjust the size of flip labels from Tiny to Huge.
Label ATR Offset
Adjusts the vertical placement of flip labels in relation to the trail using an ATR-based offset.
Features and Logic
EMA Basis: All calculations stem from an EMA that tracks the centerline of price action.
Dynamic ATR Multiplier: The ATR multiplier adjusts in real time based on volatility expansion and trend persistence.
Clamped Multiplier: The adjusted multiplier is limited between user-defined minimum and maximum values to keep the band scale practical.
Upper and Lower Bands: Bands are plotted above and below the EMA using the dynamic multiplier and ATR values.
Trailing Logic: The script uses Supertrend-style trailing logic, updating the active band in the current trend direction and resetting the opposite band.
Trend State Detection: A state variable tracks the current market regime (bullish, bearish, or neutral). Transitions are confirmed only after a user-specified number of bars close beyond the respective bands.
Visual Elements: Trail lines and fill zones are color-coded (bullish cyan, bearish magenta). Candlestick and bar colors match the trend state. Optional flip labels mark confirmed transitions.
Alerts: Built-in alert conditions allow users to receive real-time notifications for bullish or bearish flips.
Usage Guidelines
This indicator can be used for:
Defining context-aware dynamic stop levels that adjust with market behavior.
Identifying trend direction and reversal points based on adaptive logic.
Filtering entry or exit signals during trending vs. consolidating conditions.
Supplementing trade management strategies with responsive visual markers.
Entering long or short positions based on the appearance of flip labels and managing stop losses by following the adaptive trail.
Traders may tune the parameters to suit different trading styles or timeframes. For example, lower ATR and EMA values may suit intraday setups, while longer settings may benefit swing or positional trading.
Summary
The "Uptrick: Volatility Adjusted Trail" provides a flexible, adaptive trailing band system that accounts for both volatility and directional consistency. By combining an EMA baseline with a dynamic ATR multiplier influenced by volatility expansion and trend persistence, it creates a context-sensitive trailing system that aligns with changing market conditions. Customizable confirmation, flip labels, alerts, and dynamic visual cues make it a versatile tool for trend-following, breakout filtering, and trailing stop logic.
Disclaimer
This indicator is provided for educational and research purposes only. It does not constitute financial advice. Trading involves risk, and past performance does not guarantee future results. Always conduct your own analysis and risk management before making trading decisions.
Continuation Suite v1 — 5m/15mContinuation Suite v1 — 5m/15m (Non-Repainting, S/R + Trend Continuation)
What it does
Continuation Suite v1 is a practical intraday toolkit that combines non-repainting trend-continuation signals with auto-built Support/Resistance (S/R) from confirmed pivots. It’s designed for fast, liquid names on 5m charts with an optional 15m higher-timeframe (HTF) overlay. You get: stacked-EMA bias, disciplined pullback+reclaim entries, optional volume/volatility gates, a “Strong” signal tier, solid S/R lines or zones, and a compact dashboard for fast reads.
⸻
Why traders use it
• Clear bias using fast/mid/slow EMA stacking.
• Actionable entries that require a pullback, a reclaim, and (optionally) a minor break of prior extremes.
• Signal quality gates (volume vs SMA, ATR%, ADX/DI alignment, EMA spacing, slope).
• Non-repainting logic when “Confirm on Close” = ON. Intrabar previews show what’s forming, but confirmed signals only print on bar close.
• S/R that matters: confirmed-pivot lines or ATR-sized zones, optional HTF overlay, and auto de-dup to avoid clutter.
⸻
Signal construction (no magic, just rules)
Bullish continuation (base):
1. Trend: EMA fast > EMA mid > EMA slow
2. Pullback: price pulls into the stack (lowest low or close vs EMA fast/mid over a lookback)
3. Reclaim: close > EMA fast and close > open
4. Break filter (optional): current bar takes out the prior bar’s high
5. Filters: volume > SMA (if enabled) and ATR% ≤ max (if enabled)
6. Cooldown: a minimum bar gap between signals
Bearish continuation (base): mirror of the above.
Strong signals: base conditions plus ADX ≥ threshold, DI alignment (DI+>DI- for longs; DI->DI+ for shorts), minimum EMA-spacing %, and minimum fast-EMA slope.
Reference stops:
• Longs: lowest low over the pullback lookback
• Shorts: highest high over the pullback lookback
Alerts are included for: Bullish Continuation, Bearish Continuation, STRONG Bullish, STRONG Bearish.
⸻
S/R engine (current TF + optional HTF)
• Builds S/R from confirmed pivots only (left/right bars).
• Choose Lines (midlines) or Zones (ATR-sized).
• Zones merge when a new pivot lands near an existing zone’s mid (ATR-scaled epsilon).
• Touches counter tracks significance; you can require a minimum to draw.
• HTF overlay (default 15m) draws separate lines/zones with tiny TF tags on the right.
• De-dup option hides current-TF zones that sit too close to HTF zones (ATR-scaled), reducing overlap.
• Freeze on Close (optional) keeps arrays stable intrabar; snapshots show levels immediately as bars open.
⸻
Presets
• Auto: Detects QQQ-like tickers (QQQ, QLD, QID) or SoFi; else defaults to Custom.
• QQQ: Tighter ATR% and EMA settings geared to index-ETF behavior.
• SoFi: Wider ATR allowances and longer mid/slow for single-name behavior.
• Custom: Expose all key inputs to tune for your product.
⸻
Dashboard (top-right)
• Preset in use
• Bias (Bullish CONT / Bearish CONT / Neutral)
• Strong (Yes/No)
• Volatility (ATR% bucket)
• Trend (ADX bucket)
• HTF timeframe tag
• Volume (bucket or “off”)
• Signals mode (Close-Confirmed vs Intrabar)
⸻
Inputs you’ll actually adjust
Trend/Signals
• Fast/Mid/Slow EMA lengths
• Pullback lookback, Min bars between signals
• Volume filter (vol > SMA N)
• ATR% max filter (cap excessive volatility)
• Require break of prior bar’s high/low
• “Strong” gates: min EMA slope, min EMA spacing %, ADX length & threshold
Support/Resistance
• Lines vs Zones
• Pivot left/right bars
• Extend left/right (bars)
• Max pivots kept (current & HTF)
• Zone width (× ATR), Merge epsilon (× ATR), Min gap (× ATR)
• Min touches, Max zones per side near price
• De-dup current TF vs HTF (× ATR)
Repainting control
• Confirm on Close: when ON, signals/SR finalize on bar close (non-repainting)
• Freeze on Close: freeze S/R intrabar with snapshot updates
• Show previews: translucent intrabar labels for what’s forming
⸻
How to use it (straightforward)
1. Load on 5-minute chart (baseline). Keep Confirm on Close ON if you hate repainting.
2. Use Bias + Strong + S/R context. If a long prints into HTF resistance, you have information.
3. Manage risk off the reference stop (pullback extreme). If ATR% reads “Great,” widen expectations; if “Poor,” size down or pass.
4. Alerts: wire the four alert types to your workflow.
⸻
Notes and constraints
• Designed for liquid symbols. Thin books and synthetic “volume” will degrade the volume gate.
• S/R is pivot-based. On very choppy tape, touch counts help. Increase min touches or switch to Lines to declutter.
• If your chart timeframe isn’t 5m, behavior changes because lengths are in bars, not minutes. Tune lengths accordingly.
⸻
Disclaimers
This is a research tool. No signals are guaranteed. Markets change, outliers happen, slippage is real. Nothing here is financial advice—use your own judgment and risk management.
⸻
Author: DaddyScruff
License: MPL-2.0 (Mozilla Public License 2.0)
Trailing Stop + Profit TargetTrailing Stop + Exit Confirmation is a manual-entry tool designed to help traders visually manage trades with dynamic trailing stops and profit targets, based on ATR projections with a toggle button to reset calculations in real-time. Contains a “Short” toggle to work for short positions as well, which automatically inverses the PT and SL lines when toggled on.
Primary Calculations: Utilizes a manually adjustable entry price (default: $5 — ideal for options traders) that (when adjusted and recalculated) populates the chart with an adaptive ATR-based trailing stop line, dynamic profit target line, and optional 21-day EMA for directional context.
Below the Entry Price is a fully functional, manual reset toggle to reset all parameters mid-session to assess risk-reward based on entry price, risk tolerance, etc. followed by the “Short” toggle.
Primary Directions/Functions:
Enter your trade price in the “Manual Entry Price” field.
The script will begin plotting a dynamic trailing stop and profit target based on current market conditions.
Use the reset toggle to clear all calculations and start a new position at any time.
Customizable Settings:
ATR Length and Multiplier
Risk/Reward Profit Target Multiplier
Toggle to show/hide trailing stop, target, and EMA lines
Options Trading Use Case:
This tool is especially useful for options traders looking to manage premium-based entries (e.g., $5.00) on intraday or swing trades. The dynamic stop and target lines provide clear visual cues for scaling out or exiting based on price action, while allowing for tighter or looser risk depending on volatility (ATR).
This tool does not auto-detect entries or backtest positions. It is intended to complement your entry signals, not generate them. I've written an Options Momentum Signal indicator you can find right here which functions well in tandem with this tool.
Made for traders who execute trades manually and want typical preset guidelines for profit and stop loss signals but lets you recalculate them by simply clicking a button, especially if any major news or downturn causes a big change in market conditions so you can make adjustments in real time.
MTRADE ATR SL FINDERAverage True Range Stop Loss Finder (ATR)
This indicator automatically calculates dynamic stop-loss levels based on market volatility using the Average True Range (ATR) formula.
It provides both Long and Short stop levels derived from ATR values and adapts them in real time as volatility changes.
🔍 Features
Adjustable ATR Length (default: 20)
Four smoothing methods: RMA, SMA, EMA, WMA
Configurable Multiplier (default: 1.5× ATR)
Real-time High (Short Stop) and Low (Long Stop) lines on the chart
A clean on-chart table displaying:
ATR value
High stop level (H)
Low stop level (L)
— all shown with 7-decimal precision for accurate readings
⚙️ Use Cases
Volatility-based stop-loss and take-profit placement
Risk management and trailing-stop automation
Intraday and swing trading systems using ATR-driven exits
🧠 Technical Details
Built in Pine Script v5
Supports up to 7 decimal precision (precision=7)
Works as an overlay, displaying ATR bands directly on price action
Fully customizable colors and smoothing logic
by fiyatherseydir
Advanced Chandelier Exit with S/R [Alpha Extract]Advanced Chandelier Exit with S/R is a precision-crafted trailing stop and market structure detection system that fuses advanced Chandelier Exit logic with intelligent, multi-timeframe support and resistance tracking. This indicator delivers adaptive trend detection, volatility-aware exit positioning, and real-time structural mapping in a clean, responsive format. By combining directional filtering, pivot zone detection, and customizable styling, Advanced Chandelier Exit with S/R is designed to give traders reliable context, strong risk management, and visually intuitive confirmation signals across all timeframes and asset classes.
🔶 Adaptive Trailing Stop Architecture
At the core of Advanced Chandelier Exit with S/R is a refined Chandelier Exit mechanism that dynamically calculates trailing stops based on recent highs and lows, ATR volatility, and trend sensitivity. The system features directional memory, anchoring the stop to maintain position until a confirmed trend break occurs. This method prevents premature flips and keeps the trade aligned with sustained momentum.
longStop := close > longStop ? math.max(longStop, longStop ) : longStop
shortStop := close < shortStop ? math.min(shortStop, shortStop ) : shortStop
🔶 Volatility-Weighted Filtering
To reduce noise and improve reaction quality, Advanced Chandelier Exit with S/R includes an optional volatility normalization filter. This system adjusts ATR output based on how elevated it is relative to its own average, effectively down-weighting erratic price moves while maintaining responsiveness in directional phases.
volatilityFilter = enableVolatilityFilter ? ta.sma(baseATR, length) / baseATR : 1.0
atr = mult * baseATR * sensitivity * volatilityFilter
🔶 Trend Strength-Aware State Transitions
Trend flips in Advanced Chandelier Exit with S/R are not based solely on price crossing the stop level. Instead, the system includes a momentum-derived trend strength filter that validates the legitimacy of directional shifts. This guards against weak reversals and gives stronger confidence in breakout moves.
priceChange = math.abs(close - close )
avgPriceChange = ta.sma(priceChange, length)
trendStrength = math.min(priceChange / avgPriceChange * 100, 200)
🔶 Multi-Timeframe Support & Resistance Zones
Advanced Chandelier Exit with S/R embeds a sophisticated pivot-based structure mapping engine that automatically identifies significant price reaction levels and tracks their validity over time. It filters redundant zones, removes invalidated levels, and renders real-time support and resistance overlays based on market structure.
if isUniqueLevel(ph, resistanceLevels)
array.unshift(resistanceLevels, ph)
if isUniqueLevel(pl, supportLevels)
array.unshift(supportLevels, pl)
🔶 Dynamic Visual Encoding
The indicator uses strength-scaled fills, customizable colors, and line styling to convey directional bias with clarity. Color opacity intensifies as trend strength increases, offering intuitive context at a glance. Dynamic background fills mark trend states, while S/R zones are rendered with user-defined transparency for clean integration.
🔶 Signal Detection and Alerts
Directional signals are generated upon confirmed flips between long and short regimes, validated by stop crosses and strength filters. Additionally, the indicator provides S/R breakout alerts, identifying when price breaks through a key structural level.
🔶 Performance and Customization Optimizations
Advanced Chandelier Exit with S/R is built with modularity and efficiency in mind. It supports full customization of stop logic, volatility sensitivity, structural lookback, S/R zone filtering, and visual display. The use of array-based data structures for S/R levels ensures consistent performance even across high-activity assets and longer lookback periods.
Advanced Chandelier Exit with S/R represents the next evolution in trailing stop and structure-aware trading tools. By blending the proven logic of the Chandelier Exit system with intelligent trend strength filters and robust S/R detection, it becomes more than just a stop indicator—it becomes a complete trade management companion. Traders benefit from fewer false flips, clearer directional bias, and precise structural overlays that reinforce both breakout and reversal strategies. Whether used for swing entries, intraday positioning, or zone-based re-entries, Advanced Chandelier Exit with S/R empowers traders with responsive, intelligent logic that adapts to market conditions without compromise.
1m Scalping ATR (with SL & Zones)A universal ATR indicator that anchors volatility to your stop-loss.
Read any market (FX, JPY pairs, Gold/Silver, indices, crypto) consistently—regardless of pip/point conventions and timeframe.
Why this indicator?
Classic ATR is absolute (pips/points) and feels different across markets/TFs. ATR Takeoff normalizes ATR to your stop-loss in pips and highlights clear zones for “quiet / ideal / too volatile,” so you instantly know if a 10-pip SL fits current conditions.
Key features
Auto pip detection (FX, JPY, XAU/XAG, indices, BTC/ETH).
Selectable ATR source: chart timeframe or fixed ATR TF (e.g., “15”, “30”, “60”).
Display modes:
Percent of SL – ATR relative to SL in %, great for M1 (typical 10–30%).
Multiple of SL – ATR as a multiple of SL (e.g., 0.6× / 1.0× / 1.2×).
Panel zones:
Green = “Ready for takeoff” (≤ Low), Yellow = reference (Mid), Red = too volatile (≥ High).
Status badge (top-right): Quiet / ATR ok / Wild, current ATR/SL value, ATR TF used.
Direction-agnostic: Works the same for longs and shorts.
Inputs (at a glance)
Length / Smoothing (RMA/SMA/EMA/WMA): ATR base settings.
Your Stop-Loss (Pips): Reference SL (e.g., 10).
ATR Timeframe (empty = chart): Use chart TF or a fixed TF.
Display Mode: “Percent of SL” or “Multiple of SL.”
Low/Mid/High (Percent Mode): Zone thresholds in % of SL.
Low/Mid/High (Multiple Mode): Zone thresholds in ×SL.
Recommended defaults
Length 14, Smoothing RMA, SL 10 pips
Display Mode: Percent of SL
Low/Mid/High (%): 15 / 20 / 25
ATR Timeframe: empty (= chart) for reactive, or “30” for smoother M30 context with M1 entries.
How to use
Set SL (pips). 2) Choose display mode. 3) Optionally pick ATR TF.
Interpretation:
≤ Low (green): setups allowed.
≈ Mid (yellow): neutral reference.
≥ High (red): too volatile → adjust SL/size or wait.
Note: Auto-pip relies on common ticker naming; verify on exotic symbols.
Disclaimer: For research/education. Not financial advice.
RMBS Smart Detector - Multi-Factor Momentum System
# RMBS Smart Detector - Multi-Factor Momentum System
## Overview
RMBS (Smart Detector - Multi-Factor Momentum System) is a proprietary scoring method developed by Ario, combining normalized RSI and Bollinger band positioning into a single composite metric.
---
## Core Methodology
### Buy/Sell Logic
Marker (green or red )appear when **all four filters** pass:
**1. RMBS Score (Momentum Strength)**
From the formula Bellow
Combined Range: -10 (extreme bearish) to +10 (extreme bullish)
Signal Thresholds:
• BUY: Score > +3.0
• SELL: Score < -3.0
2. EMA Trend Filter
BUY: EMA(21) > EMA(55) → Uptrend confirmed
SELL: EMA(21) < EMA(55) → Downtrend confirmed
3. ADX Strength Filter
Minimum ADX: 25 (adjustable 20-30)
ADX > 25: Trending market → Signal allowed
ADX < 25: Range-bound → Signal blocked
4. Alternating Logic
Prevents signal spam by requiring alternation:
✓ BUY → SELL → BUY (allowed)
✗ BUY → BUY → BUY (blocked)
________________________________________
Mathematical Foundation
RMBS Formula: scoring method developed by Ario
RMBS = (RSI – 50) / 10 + ((BB_pos – 50) / 10)
where:
• RSI = Relative Strength Index (close, L)
• BB_pos = (Close – (SMA – 2 σ)) / ((SMA + 2 σ) – (SMA – 2 σ)) × 100
• σ = standard deviation of close over lookback L
• SMA = simple moving average of close over lookback L
• L = rmbs_length (period setting)
This produces a normalized composite score around zero:
• Positive → bullish momentum and upper band dominance
• Negative → bearish momentum and lower band pressure
• Near 0 → neutral or transitional zone
Input Parameters
ADX Threshold (default: 25)
• Lower (20-23): More signals, less filtering
• Higher (28-30): Fewer signals, stronger trends
• Recommended: 25 for balanced filtering
Signal Thresholds
• BUY: +3.0 (adjustable)
• SELL: -3.0 (adjustable)
Visual Options
• Marker colors
• Background highlights
• Alert settings
________________________________________
Usage Guidelines
How to Interpret
• 🟢 Green Marker: All conditions met for Bull condition
• 🔴 Red Marker: All conditions met for Bear condition
• No Marker: Waiting for confirmation
________________________________________
Important Disclaimers
⚠️ Educational Purpose Only
• This tool demonstrates multi-factor technical analysis concepts
• Not financial advice or trade recommendations
• No guarantee of profitability
⚠️ Known Limitations
• Less effective in ranging/choppy markets
• Requires proper risk management (stop-loss, position sizing)
• Should be combined with fundamental analysis
⚠️ Risk Warning
Trading involves substantial risk of loss. Past performance does not indicate future results. Always conduct your own research and consult professionals before trading.
________________________________________
Open Source
Full Pine Script code available for educational study and modification. Feedback and improvement suggestions welcome.
“All logic is presented for research and educational visualization.”
---
**Attribution & Fair Use Notice**
The RMBS scoring framework (Multi-Factor Momentum System) was originally designed and formulated by *Ahmadrezarahmati( Ario or Ario_ Pine Lab)*.
If you build upon, modify, or republish this logic—please include proper attribution to the original author. This request is made under a spirit of open collaboration and educational fairness.
Oscillator CandlesticksI've always wondered why we don't use candlesticks for oscillators...then I stopped wondering and made an oscillator with candlesticks.
The following oscillators are available as a proof of concept:
* Consumer Channel Index (CCI)
* Rate of Change (ROC)
* Relative Strength Index (RSI)
* Trend Strength Index (TSI)
You can add a moving average to the ohlc4 value of the oscillator and choose the type of the moving average and whether it should be influenced by volume.
Session-Conditioned Regime ATRWhy this exists
Classic ATR is great—until the open. The first few bars often inherit overnight gaps and 24-hour noise that have nothing to do with the intraday regime you actually trade. That inflates early ATR, scrambles thresholds, and invites hyper-recency bias (“today is crazy!”) when it’s just the open being the open.
This tool was built to:
Separate session reality from 24h noise. Measure volatility only inside your defined session (e.g., NYSE 09:30–16:00 ET).
Judge candles against the current regime, not the last 2–3 bars. A rolling statistic from the last N completed sessions defines what “typical” means right now.
Label “large” and “small” objectively. Bars are colored only when True Range meaningfully departs from the session regime—no gut feel, no open-bar distortion (gap inclusion optional).
Overview
Purpose: objectively identify unusually big or small candles within the active trading session, compared to the recent session regime.
Use cases: volatility filters, entry/exit confirmation, session bias detection, adaptive sizing.
This indicator replaces generic ATR with a session-conditioned, regime-aware measure. It colors candles only when their True Range (TR) is abnormally large/small versus the last N completed sessions of the same session window.
How it works
Session gating: Only bars inside the selected session are evaluated (presets for NYSE, CME RTH, FX NY; custom supported).
Per-bar TR: TR = max(high, prevRef) − min(low, prevRef).
prevRef is the prior close for in-session bars.
First bar of the session can include the overnight gap (optional; default off).
Regime statistic: For any bar in session k, aggregate all in-session TRs from the previous N completed sessions (k−N … k−1), then compute Median (default) or Mean.
Today’s anchor: Running statistic from today’s session start → current bar (for context and the on-chart ratio).
Color logic:
Big if TR ≥ bigMult × RegimeStat
Small if TR ≤ smallMult × RegimeStat
Colored states: big bull, big bear, small bull, small bear.
Non-triggering bars retain the chart’s native colors.
Panel (top-right by default)
Regime ATR (Nd): session-conditioned statistic over the past N completed sessions.
Today ATR (anchored): running statistic for the current session.
Ratio (Today/Regime): intraday volatility vs regime.
Sample size n: number of bars used in the regime calculation.
Inputs
Session Preset: NYSE (09:30–16:00 ET), CME RTH (08:30–15:00 CT), FX NY (08:00–17:00 ET), Custom (session + IANA timezone).
Regime Window: number of completed sessions (default 5).
Statistic: Median (robust) or Mean.
Include Open Gap: include overnight gap in the first in-session bar’s TR (default off).
Big/Small thresholds: multipliers relative to RegimeStat (defaults: Big=1.5×, Small=0.67×).
Colors: four independent colors for big/small × bull/bear.
Panel position & text size.
Hidden outputs: expose RegimeStat, TodayStat, Ratio, and Z-score to other scripts.
Alerts
RegimeATR: BIG bar — triggers when a bar meets the “Big” condition.
RegimeATR: SMALL bar — triggers when a bar meets the “Small” condition.
Hidden outputs (for strategies/screeners)
RegimeATR_stat, TodayATR_stat, Today_vs_Regime_Ratio, BarTR_Zscore.
Notes & limitations
No look-ahead: calculations only use information available up to that bar. Historical colors reflect what would have been known then.
Warm-up: colors begin once there are at least N completed sessions; before that, regime is undefined by design.
Changing inputs (session window, multipliers, median/mean, gap toggle) recomputes the full series using the same rolling regime logic per bar.
Designed for standard candles. Styling respects existing chart colors when no condition triggers.
Practical tips
For a broader or tighter notion of “unusual,” adjust Big/Small multipliers.
Prefer Median in markets prone to outliers; use Mean if you want Z-score alignment with the panel’s regime mean/std.
Use the Ratio readout to spot compression/expansion days quickly (e.g., <0.7× = compressed session, >1.3× = expanded).
Roadmap
More session presets:
24h continuous (crypto, index CFDs).
23h/Globex futures (CME ETH with a 60-minute maintenance break).
Regional equities (LSE, Xetra, TSE), Asia/Europe/NY overlaps for FX.
Half-day/holiday templates and dynamic calendars.
Multi-regime comparison: track multiple overlapping regimes (e.g., RTH vs ETH for futures) and show separate stats/ratios.
Robust stats options: trimmed mean, MAD/Huber alternatives; optional percentile thresholds instead of fixed multipliers.
Subpanel visuals: rolling TodayATR and Ratio plots; optional Z-score ribbon.
Screener/strategy hooks: export boolean series for BIG/SMALL, plus a lightweight strategy template for backtesting entries/exits conditioned on regime volatility.
Performance/QOL: per-symbol presets, smarter warm-up, and finer control over sample caps for ultra-low TF charts.
Changelog
v0.9b (Beta)
Session presets (NYSE/CME RTH/FX NY/Custom) with timezone handling.
Panel enhancements: ratio + sample size n.
Four-state bar coloring (big/small × bull/bear).
Alerts for BIG/SMALL bars.
Hidden Z-score stream for downstream use.
Gap-in-TR toggle for the first in-session bar.
Disclaimer
For educational purposes only. Not investment advice. Validate thresholds and session settings across symbols/timeframes before live use.
ADAM Projection - Efficiency Ratio Adaptive)Overview
The ADAM Projection is a visualization of how a price path might extend from its recent motion, expressed as a continuation (trend reflection) or anti-trend (mean reversion) pattern. This indicator expands upon Jim Sloman’s original ADAM projection—introduced in “The Adam Theory of Markets or What Matters Is Profit” (1983)—by adding a modern quantitative framework for Efficiency Ratio (ER) weighting, time-scaled path normalization, and smooth blending between continuation and anti-trend projections.
What Is the ADAM Theory?
Jim Sloman’s original ADAM projection was designed to model pure trend continuation. He proposed that every market motion could be mirrored around a central anchor price (the “Adam line”), effectively reflecting past price movements forward in time to visualize what a continuation of the same geometric path would look like. This reflection concept captured the idea that market structure exhibits self-similarity and that price trends often extend symmetrically beyond recent pivots.
How This Script Extends It
This version generalizes Sloman’s concept by introducing an adjustable blend between continuation (reflection) and anti-trend (forward paste) behavior, weighted by an adaptive ER domain.
Anchor Axis
The reflection axis (anchorPrice) can be Close, HL2, HLC3, or OHLC4.
The projection is drawn forward from this anchor for a user-defined horizon (len bars).
Dual Paths
Continuation (Reflection): Mirrors historical closes across the anchor.
Anti-trend (Forward Paste): Extends historical closes directly forward without inversion.
Efficiency Ratio (ER)
The Efficiency Ratio measures how directional recent price movement has been: ER = |Net Change| / Σ|Δi|
Values near +1 indicate strong directionality (favoring continuation); values near 0 indicate noise or consolidation (favoring anti-trend behavior).
Signed ER Normalization
ER values are mapped into a user-defined domain between erMin and erMax, with:
erSharp (γ) controlling the steepness of the blend curve
erFloor providing stability when ER ≈ 0
beta (β) weighting volatility across time (β = 0.5 approximates √time scaling)
Blended Projection
Each projected point is a weighted combination of the two paths: y_proj = (1 − w) * y_fade + w * y_cont
The blend factor w is derived from the normalized ER domain and gamma shaping, producing a smooth morph between the anti-trend and continuation geometries.
Visualization
The teal projection line shows the dynamically blended continuation/anti-trend forecast for the next len bars.
The gray anchor line marks the reflection axis.
Each segment adapts in real time based on ER magnitude and recent path structure.
Key Parameters
Core: len, anchorPrice, lineThin — projection horizon and appearance
Lines: showProj, colProj — show or recolor projection
ER Domain: erMin, erMax, erSharp, erFloor, beta — control domain scaling, shaping, and time weighting
Practical Use
High ER values emphasize continuation (trend-following behavior).
Low or negative ER values emphasize fading or mean reversion.
The projection helps visualize whether recent structure supports trend persistence or weakening.
Interpretation
The ADAM Projection is not a predictive indicator but a geometric tool for studying market symmetry and efficiency. It provides a structured way to visualize how recent movements would look if extended forward under both continuation and anti-trend assumptions. This blends Sloman’s original reflection concept with modern ER-based adaptivity.
Summary
Origin: Jim Sloman (1983) — trend continuation via reflection symmetry.
Extension: Adds ER-driven blending to model both continuation and anti-trend regimes.
Concept: Price reflection vs. direct forward extension.
Purpose: Study of geometric price symmetry and efficiency, not a trade signal.
Options Momentum SignalCustomizable Intraday Options Scalping Alert.
Several important, complementary indicators combined into one simple signal that pops up under a bar to indicate sustained momentum on a trend. It uses a combination of calculations based on the 1m VWAP, price increase in contrast to previous day's close, and customizable Volatility and Volume Data.
It has adjustable values for the % increase from last close (labeled as Pre-Mkt % Threshold), minimal candle body % to filter out weaker signals, RVOL threshold, minimum CVD (it's rolling, so functions in tandem with the CVD lookback value for the number of bars.)
It offers individual boxes that can be checked on or off to help filter out noise. Boxes are: Use 1m VWAP, Use CVD, 3-bar cooldown (reduces back-to-back signals, especially on shorter (1m, 2m, and 5m) charts), VWAP bounce option to catch bounces happening in real time before the candle closes, Use RVOL, and Use Rolling CVD. These can all be checked on or off and will create vastly different signals depending on what you are filtering for.
These indicators were chosen specifically as I feel they help most with option scalping and is intended to be used alongside a few other indicators for confirmation. Personally, I use a couple anchored VWAPs (highest high, session) as well as a FRAMA channel for confirmation. I also use the following to further confirm trends: TradingView’s RVOL, CVD, and Price Pattern Oscillators, in addition to Beardy Fred's TTM Squeeze Pro.
Hope this helps some people!
Rolling Midpoint of Price & VWAP with ATR BandsThe Rolling Midpoint of Price & VWAP with ATR Bands indicator is a dual-equilibrium concept that fuses price-range structure and traded-volume flow into one continuously updating hybrid model. Traditional VWAPs reset each session and reflect where trading occurred by volume, while midpoints used here reveal where price has structurally balanced between extremes. This script merges both ideas into a cohesive, dynamic system. The Rolling Price Midpoint (50 % of range) represents the structural fair-value line, calculated as the average of the highest high and lowest low over a selected window. The Rolling VWAP (Volume-Weighted Window) tracks the flow-based fair-value line by weighting each bar’s typical price by its volume. Together, these components form the Hybrid Equilibrium — the adaptive center of gravity that shifts as price and volume evolve. Surrounding this equilibrium, ATR Bands at ± 2.226 ATR and ± 5.382 ATR define volatility envelopes that expand and contract with market energy. The result is a living cloud that breathes with the market: compressing during phases of balance and widening during impulsive movements, offering traders a clear visual framework for understanding equilibrium, volatility, and directional bias in real time.
➖
⚙️ Auto-Preset System
The Auto-Preset System intelligently adjusts lookback windows for both the Price Midpoint and VWAP calculations according to the active chart timeframe.
This ensures that the indicator automatically adapts to any trading style — from scalping on 1-minute charts to swing trading on daily or weekly charts — without manual tuning.
🔹 How It Works
When Auto-Preset mode is enabled, the script dynamically selects the most effective lookback lengths for each timeframe.
These presets are optimized to balance responsiveness and stability, maintaining consistent real-world coverage (e.g., the same approximate duration of price data) across all intervals.
📊 Preset Mapping Table
| Chart Timeframe | Price Midpoint Lookback | VWAP Lookback |
|:----------------:|:-----------------------:|:--------------:|
| 1–3m | 13 bars | 21 bars
| 5–10m | 21 bars | 34 bars
| 15–30m | 34 bars | 55 bars
| 1–2 hr | 55 bars | 89 bars
| 4 hr-1D | 89 bars | 144 bars
| 1W | 144 bars | 233 bars
| 1M | 233 bars | 377 bars
⚡ Notes & Customization
- Manual Override: Turn off Auto-Preset Mode to specify your own custom lookback lengths.
- Consistency Across Scales: These adaptive values keep the indicator visually coherent when switching between timeframes — avoiding distortions that can occur with static lengths.
- Practical Benefit: Traders can maintain a single chart layout that self-tunes seamlessly, removing the need to manually recalibrate settings when shifting from short-term to long-term analysis.
In short, the Auto-Preset System is designed to make this hybrid equilibrium tool timeframe-aware — automatically scaling its logic so that the cloud behaves consistently, regardless of chart resolution.
➖
🌐 Hybrid Equilibrium Envelope
The core hybrid midpoint acts as the mean of structural (price) and volumetric (VWAP) balance.
ATR-based bands project natural expansion zones:
🔸+2.226 / –2.226 ATR → inner equilibrium (controlled trend)
*🔸+5.382 / –5.382 ATR → outer volatility extension (over-stretch / reversion zones)
Color-coded fills show regime strength:
* 🟧 Upper Outer (+5.382) – strong bullish expansion
* 🟩 Upper Inner (+2.226) – trending equilibrium
* 🔴 Lower Inner (–2.226) – mild bearish control
* 🟣 Lower Outer (–5.382) – volatility exhaustion
➖
🧭 Higher-Timeframe Framework
Two macro anchors — Price length of 144 and VWAP length of 233 — outline higher-timeframe bias zones. These help confirm when local momentum aligns with (or fades against) long-term structure.
Labels on the right show active lookback values for quick readout:
`$(13) V(21)` → current rolling pair
`$144 / V233` → macro anchors
➖
🧩 Chart Examples
**AMD 15m (Equilibrium Expansion)**
Price steadily rides above the hybrid midpoint as teal and orange (bullish) ATR zones widen, confirming a phase of controlled bullish volatility and healthy trend expansion.
BTCUSD 1m (Volatility Compression)
Bitcoin coils tightly inside the teal-to-maroon equilibrium bands before breaking out.
The hybrid midpoint flattens and ATR envelopes contract, signaling a state of balance before volatility expansion.
ETHUSD 15m (Transition from Compression → Impulse)
Ethereum transitions from purple-zone compression into a clear upper-band expansion.
The hybrid midpoint breaks above the macro VWAP 233, confirming the shift from equilibrium to directional momentum.
SOFI 1m (Micro Bias Reversal)
SOFI’s intraday structure flips as price reclaims the hybrid midpoint.
The macro VWAP 233 flattens, signaling a transition from oversold lower bands back toward equilibrium and early trend recovery.
➖
🎯 How to Use
1. Bias Detection – Price > Hybrid Midpoint → bullish; < → bearish.
2. Volatility Gauge – Watch band spacing for compression / expansion cycles.
3. Confluence Checks – Align Hybrid Midpoint with HTF 233 VWAP for strong continuation signals.
4. Mean Reversion Zones – Outer bands highlight areas where probability of snap-back increases.
➖
🔧 Inputs & Customization
Auto Presets toggle
🔸Manual Lookback Overrides** for fine-tuning
🔸Plot Window Length** (show recent vs full history)
🔸ATR Sensitivity & Fill Opacity** controls
🔸Label Padding / Font Size** for cleaner overlay visuals
➖
🧮 Formula Highlights
➖Rolling Midpoint = (highest(high,N) + lowest(low,N)) / 2
➖Rolling VWAP = Σ(Typical Price×Vol) / Σ(Vol)
➖Hybrid = (PriceMid + VWAP) / 2
➖Upper₂ = Hybrid + ATR×2.226
➖Lower₂ = Hybrid − ATR×2.226
➖Upper₅ = Hybrid + ATR×5.382
➖Lower₅ = Hybrid − ATR×5.382
➖
🎯 Ideal For
➡️ Traders who want adaptive fair-value zones that evolve with both price and volume.
➡️ Analysts who shift between scalping, swing, and position timeframes, and need a tool that self-adjusts.
➡️ Those who rely on visual structure clarity to confirm setups across changing volatility conditions.
➡️ Anyone seeking a hybrid model that unites structural range logic (midpoint) and flow-based balance (VWAP).
➖
🏁 Final Word
This script is more than a visual overlay — it’s a complete trend and structure framework built to adapt with market rhythm. It helps traders visualize equilibrium, momentum, and volatility as one cohesive system. Whether you’re seeking clean trend alignment, dynamic support/resistance, or early warning signs of reversals, this indicator is tuned to help you react with confidence — not hindsight.
➖
Remember — no single indicator should ever stand alone. For best results, pair it with price action context, higher-timeframe structure, and complementary tools such as moving averages or trendlines. Use it to confirm setups, not define them in isolation.
💡 Turn logic into clarity, structure into trades, and uncertainty into confidence.
Round Numbers (Plotter) v2The *Round Numbers (Plotter) v2* indicator highlights key psychological price levels on the chart — the so-called *round numbers* (e.g. 1.1000 on EURUSD or23,000 on NASDAQ).
These levels often act as **natural support or resistance zones**, where price tends to react, consolidate, or reverse.
Version 2 introduces the concept of **gravitational zones**, which define a price range surrounding each round level — visualizing how price “gravitates” around these equilibrium areas.
---
### 🧩 **Main Features**
* 🔹 **Dynamic round levels:** plotted automatically based on user-defined *step size* (in points or pips).
* 🔹 **Custom step mode:** switch between “Points” (for indices, commodities, crypto) and “Pips” (for Forex pairs).
* 🔹 **Configurable appearance:** color, width, and line style (solid, dashed, dotted).
* 🔹 **Gravitation zones:** optional secondary lines plotted above and below each round level.
* Distance adjustable as a **percentage of the step size** (default = 25%).
* Help visualize “magnet areas” where price tends to slow down or oscillate before crossing a level.
* 🔹 **Optional fill:** softly shaded area between the upper and lower gravitation lines for clearer visualization of each zone.
* You can enable or disable this with the *“Show gravitation fill”* toggle.
* Fill color and transparency fully customizable.
---
### 📈 **Use Cases**
* Identify **psychological support/resistance** levels on any instrument or timeframe.
* Observe **market equilibrium zones** where price tends to cluster or hesitate before continuing.
* Combine with oscillators or volume indicators to confirm reaction strength near round numbers.
* Use the **gravitational zones** to refine stop-loss or take-profit placement near high-impact levels.
---
### 💡 **Notes**
* The indicator does **not repaint** and updates levels dynamically based on the latest price.
* Works on all asset classes: **Forex, Indices, Crypto, Commodities, Stocks.**
* Designed to be **lightweight** — no accumulation of historical objects.
* Combine this with *Round Number Analyzer* for complete analysis of round numbers level
50% Fib Trend Cloud + ATR BandsThis indicator plots two structural 50% fibonacci midpoints from recent confirmed 'left/right' swings that form a *cloud* of equilibrium, then adds a rolling 50% fibonacci range midpoint based on a lookback window that's wrapped in ATR bands. Importantly, it solves a specific trading problem:
Structural midpoints (macro context) are powerful but can lag when price escapes prior ranges. Enter rolling 50% fib + ATR ➡️ which restores real-time balance & tolerance (micro context). Together they show where price is balanced structurally, where it’s balanced right now, and how much volatility to tolerate before acting.
➖➖➖
🔑 Why this is different
Most tools either draw a single midpoint (ex., daily 50%) or ATR bands around a moving average. This script fuses dual swing-based 50% midpoints (structure) + a rolling 50% with ATR (flow), so you don’t lose context when price escapes prior ranges. The cloud tells you who’s in control (fast vs. slow structure). The rolling 50% + ATR tells you how far is “too far” now.
➖➖➖
🧠 What it does (at a glance)
🔸Structural Equilibrium × 2 (Fib1/Fib2)
Two independent 50% midpoints formed from swing pivots (configurable Left/Right bars + optional smoothing). Their gap is the Midpoint Cloud = structural “fair value” zone.
🔸Rolling 50% + ATR Bands
A rolling highest/lowest window computes an always-current 50% rolling midpoint plot; ±ATR × length envelopes define a soft value area and over-stretch boundaries.
🔸Actionable Visuals
Optional fill between Fib1/Fib2, labels, and candle-overlay modes to instantly read regime (above both / below both / between).
🔸Smart Defaults
Timeframe-aware presets for L/R pivots & smoothing; full manual overrides available.
➖➖➖
⚙️ Calculations (plain-English)
🔸Pivot midpoints (Fib1 & Fib2):
1) Detect a swing using `Left/Right` bars
2) Take the swing’s high/low → compute 50%
3) (Optional) Smooth the line (SMA) to stabilize on noisy TFs
4) Repeat with a different sensitivity to get two distinct midpoints
🔸Rolling midpoint:
Highest High / Lowest Low over the last *N* bars → (HH + LL) / 2
🔸ATR levels:
`Upper = Rolling50 + ATR × Mult`, `Lower = Rolling50 − ATR × Mult`
(Typical: ATR length 14–21; Multipliers 2.236 for L1, 5.382 for L2)
➖➖➖
🤖 Auto-Configured Presets (with Manual Override)
💡Goal: make the midpoints “just work” on common timeframes while still letting you dial them in.
💡How Auto Presets work
When Auto Presets = ON, the script picks sensible L/R/S (Left bars / Right bars / Smoothing) for Fib Trend 1 and Fib Trend 2 based on chart timeframe.
🔸Fib 1 (fast) emphasizes *micro-structure* for quicker bias shifts.
🔸Fib 2 (slow) emphasizes *macro-structure* for anchor/bias context.
These defaults keep Fib 1 responsive without jitter and Fib 2 stable without lag.
➡️ Turn Auto Presets = OFF to take full control with the manual inputs described below.
➖➖➖
🛠 Manual Fib Midpoint Settings (when Auto = OFF)
💡Each midpoint uses three knobs:
🔸Pivot Left (L): bars to the left that must be lower/higher to qualify a swing
🔸Pivot Right (R): bars to the right that must be lower/higher to confirm the swing
🔸Smoothing (S): SMA period applied to the raw 50% midpoint (stabilizes noise)
5-Minute optimized defaults
🔸Fib Trend 1: `L21 / R5 / S55` → responsive local structure (entries/exits, re-balancing zones)
🔸Fib Trend 2: `L55 / R13 / S89` → broader structure (trend context, anchors/stops)
Timeframe guidance
🔸1m–3m: may feel a touch laggy → consider ~`L13 / R3 / S34`
🔸15m–1h: defaults remain strong → optionally ~`L34 / R8 / S89`
🔸4h+ : increase span for stability → `L89–144 / R13–21 / S144–233`
➡️ Rule of thumb: shorter L/R = faster detection, longer S = smoother line. Tune until Fib 1 captures the “active swing” and Fib 2 captures the “dominant swing” without whipsaw.
➖➖➖
🎛 Inputs (quick reference)
🔸Fib Trend 1/2: Source (High/Low/Close), Left/Right bars, Smoothing length, Show/Hide, Cloud fill toggle
🔸Rolling 50%: Lookback length, Price basis (Wicks/Close/HLC3/OHLC4), Plot scope (Full / Last N / None)
🔸ATR Bands: ATR length, Multipliers (L1/L2), Plot scope, Line width/colors
🔸Overlay & Labels: Candle overlay mode, Label padding/size, 50% centerline toggle, Plot widths
➖➖➖
🖍️ Candle Coloring & Overlay Modes
💡Purpose: make trend instantly visible on the candles and ATR levels.
1) Color Logic (dropdown)
🔸 Fib Midpoints — Colors by position of price vs. Fib 1 & Fib 2
🔸ATR Zones — Colors by which ATR zone price is in relative to the Rolling 50%
➡️ Price Reference: Choose the input used for the decision (Close, HL2, OHLC3, OHLC4).
➡️Tip: Close is crisp; HL2/OHLC variants are smoother.
2) Overlay Style (dropdown)
🔸 None — No visual change to candles
🔸 Bar Color — Uses `barcolor()` to tint built-in candles (this takes into account your Trading View settings, for instance if you have wicks set to white, they will show up as white with this setting)
🔸 PlotCandles — Draws unified custom candles (body, wick, border) with the same color for maximum clarity
💡Practical use
🔸 Pick Fib Midpoints to read structural bias at a glance (above/below/between the cloud).
🔸 Pick ATR Zones to read value vs. stretch around the Rolling 50% (mean-reversion vs. trend extension).
➖➖➖
📘 How to use
A) Trend confirmation
- Strong bullish bias when price holds above both structural mids; strong bearish when below both.
- Use the Rolling 50% + ATR as a dynamic re-entry zone: pullbacks that respect ATR(L1) often continue the prevailing trend.
B) Transition / mean reversion
- Inside the Cloud (between Fib1 & Fib2) treat behavior as neutralization/re-balancing; range tactics tend to outperform momentum plays.
- In ranges, fades near ±ATR around the rolling 50% can mark short-term edges.
C) Breakout context
- When price leaves the Cloud, the Rolling 50% keeps you anchored so price never feels “floating.” A clean hold outside ATR(L1/L2) suggests regime strength; quick re-entries hint at traps.
➖➖➖
🖼 Chart examples
➡️ Each snapshot shows how the Cloud (structure) and the Rolling 50% + ATR (flow) work together.
1) 1-Minute Downtrend – Cloud as Dynamic Ceiling
- The Cloud slopes down; pullbacks repeatedly fail under the Cloud’s underside.
- Rolling 50% (dashed mid) + ATR(L1) act as a reversion band: rallies stall near upper ATR and rotate lower.
2) 15-Minute Persistent Drift – Structure Guides, Flow Times Entries
- Long drift lower with Cloud overhead.
- Consolidations near the rolling mid resolve in the trend direction; ATR bands frame risk on each attempt.
3) 15-Minute Uptrend (BTC) – From Cloud Escape to Value Stair-Step
- After escaping the prior Cloud, rolling 50% + ATR establish a new higher value area.
- Pullbacks into ATR(L1) produce orderly stair-steps; Cloud remains supportive on deeper dips
4) 5-Minute BTC – Pullback to Value then Rotate
- Strong leg up; retrace tags lower ATR band and rotates back toward the rolling mid.
- Labels (Fib1/Fib2) make the structural context explicit for decision-making.
➖➖➖
🧪 Starter presets
- Intraday (5–15m): Fib1 ~ L21/R5 (smooth 5), Fib2 ~ L55/R13 (smooth 9) • Rolling = 55 • ATR = 14 • L1 = 2.5x, L2 = 5.0x
- Scalping: Shorten lookbacks & smoothing; keep ATR multipliers similar, or tighten L1.
- Swing: Lengthen all lookbacks; consider ATR length 21–28.
➖➖➖
🏁Final Word
This script is not just a visual tool, it’s a complete trend and structure framework. Whether you're looking for clean trend alignment, dynamic support/resistance, or early warning signs of a reversal, this system is tuned to help you react with confidence — not hindsight.
Rembember, no single indicator should be used in isolation. For best results, combine it with price action analysis, higher-timeframe context, and complementary tools like trendlines, moving averages etc Use it as part of a well-rounded trading approach to confirm setups — not to define them alone.
---
💡Turn logic into clarity. Structure into trades. And uncertainty into confidence.
Risk Recommender — (Heatmap)📊 Risk Recommender — Per-Trade & Annualized (Heatmap Columns)
Estimate the optimal risk percentage for any market regime.
This tool dynamically recommends how much of your account equity to risk — either per trade or at a portfolio (annualized) level — using volatility as the guide.
⚙️ How it works
Two distinct modes give you flexibility:
1️⃣ Per-Trade (ATR-based)
• Calculates the current Average True Range (ATR) compared to its long-term baseline.
• When volatility is high (ATR ↑), risk per trade decreases to maintain constant dollar risk.
• When volatility is low (ATR ↓), risk per trade increases within your defined floor and ceiling.
• The display is normalized by stop distance (× ATR) and smoothed to avoid noise.
2️⃣ Annualized (Volatility Targeting)
• Computes realized volatility (standard deviation of log returns) and an EWMA forecast of future volatility.
• Blends current and forecast volatilities to estimate “effective” volatility.
• Scales your base risk so that portfolio volatility converges toward your chosen annual target (e.g., 20%).
• Useful for portfolio-level or systematic strategies that maintain constant volatility exposure.
🎨 Heatmap Visualization
The vertical column graph acts like a thermometer:
• 🟥 Red → “Reduce risk” (volatility high).
• 🟩 Green → “Increase risk” (volatility low).
• Smoothed and bounded between your Floor and Ceiling risk levels.
• Optional dotted guides mark those bounds.
• Label shows the current mode, recommended risk %, and key metrics (ATR ratio or effective volatility).
🔧 Key Inputs
• Base max risk per trade (%) — your normal per-trade risk budget.
• ATR length / Baseline ATR length — control sensitivity to short- vs. long-term volatility.
• Target annualized volatility (%) — portfolio volatility target for quant mode.
• λ (lambda) — smoothing factor for the EWMA volatility forecast (0.90–0.99 typical).
• Floor & Ceiling — clamps the output to avoid extreme sizing.
• Smoothing & Hysteresis — prevent rapid changes in risk recommendations.
🧮 Interpreting the Output
• “Recommended Risk (%)” = suggested portion of equity to risk on the next trade (or current exposure).
• In Per-Trade mode: reflects current ATR ÷ baseline ATR .
• In Annualized mode: reflects target volatility ÷ effective volatility .
• Use the color and height of the column as a quick visual cue for aggressiveness.
💡 Typical Use Cases
• Position-sizing overlay for discretionary traders.
• Volatility-targeting component for algorithmic or multi-asset systems.
• Educational tool to understand how volatility governs prudent risk management.
📘 Notes
• This indicator provides risk suggestions only ; it does not place trades.
• Works on any symbol or timeframe.
• Combine with your own strategy or alerts for full automation.
• All calculations use built-in Pine functions; no proprietary logic.
Tags:
#RiskManagement #ATR #Volatility #Quant #PositionSizing #SystematicTrading #AlgorithmicTrading #Portfolio #TradingStrategy #Heatmap #EWMA #Risk
Market Pressure Differential (MPD) [SharpStrat]Market Pressure Differential (MPD)
Concept & Purpose
The Market Pressure Differential (MPD) is a proprietary indicator designed to measure the internal balance of buying and selling pressure directly on the price chart.
Unlike standard momentum or trend indicators, MPD analyzes the structural behavior of each candle—its body, wicks, and overall range—to determine whether the market is dominated by expansion (buying aggression) or contraction (selling absorption).
This indicator provides a visual overlay of market pressure that adapts dynamically to volatility, helping traders see real-time shifts in participation intensity without using oscillators.
In simple terms:
When MPD expands upward → buyer pressure dominates.
When MPD contracts downward → seller pressure dominates.
Calculation Overview
MPD uses a structural candle formula to compute directional pressure:
Body Ratio = (Close − Open) / (High − Low)
Wick Differential = (Lower Wick − Upper Wick) / (High − Low)
Raw Pressure = (Body Ratio × Body Weight) + (Wick Differential × Wick Weight)
Then it applies:
EMA smoothing (to stabilize short-term noise)
Standard deviation normalization (to maintain consistent scaling)
ATR projection (to adapt the signal visually to volatility)
This produces the MPD projection line and the pressure ribbon, drawn directly on the main chart.
Customizable Inputs
Users can adjust color schemes, EMA smoothing length, ATR parameters, normalization length, and body/wick weighting to adapt the indicator’s sensitivity and aesthetic to different markets or chart themes.
How to Use
The Market Pressure Differential (MPD) visualizes the real-time balance between buying and selling pressure. It should be used as a contextual bias tool, not a standalone signal generator.
The white line represents the MPD projection, showing how market pressure evolves in real time based on candle structure and volatility.
The red line represents the ATR envelope, which defines the market’s expected volatility range.
MPD reacts quickly to candle structure, so trend bias is based on how its projection behaves relative to the ATR envelope:
Above the ATR band → positive pressure and bullish bias.
Below the ATR band → negative pressure and bearish bias.
Hovering near the ATR band → neutral or indecisive conditions.
The MPD percentage in the label represents the normalized strength of pressure relative to recent volatility.
Positive % = buying dominance.
Negative % = selling dominance.
Higher absolute values = stronger momentum compared to volatility.
To trade with MPD:
Watch candle colors and the projection line — green or positive % shows buyer control, red or negative % shows seller control.
Note transitions above or below the ATR level for early signs of momentum shifts.
Combine MPD signals with price structure, key levels, or volume for confirmation.
This helps reveal which side controls the market and whether that pressure is strong enough to overcome typical volatility.
Disclaimer
It introduces a novel structural–pressure approach to visualizing market dynamics.
For educational and analytical purposes only; this does not constitute financial advice.
US Opening 5-Minute Candle HighlighterUS Opening 5-Minute Candle Highlighter — True RVOL (Two-Tier + Label)
What it does (in plain English)
This indicator finds the first 5-minute bar of the US cash session (09:30–09:35 ET) and highlights it when the candle has the specific “strong open” look you want:
Opens near the low of its own range, and
Closes near the high of its own range, and
Has a decisive real body (not a wick-y doji), and
(Optionally) is a green candle, and
Meets a TRUE opening-bar RVOL filter (compares today’s 09:30–09:35 volume only to prior sessions’ 09:30–09:35 volumes).
You get two visual intensities based on opening RVOL:
Tier-1 (≥ threshold 1, default 1.0×) → light green highlight + lime arrow
Tier-2 (≥ threshold 2, default 1.5×) → darker green highlight + green arrow
An RVOL label (e.g., RVOL 1.84x) can be shown above or below the opening bar.
Designed for 5-minute charts. On other timeframes the “opening bar” will be the bar that starts at 09:30 on that timeframe (e.g., 15-minute 09:30–09:45). For best results keep the chart on 5m.
How the pattern is defined
For the opening 5-minute bar, we compute:
Range = high − low
Body = |close − open|
Then we measure where the open and close sit within the bar’s own range on a 0→1 scale:
0 means exactly at the low
1 means exactly at the high
Using two quantiles:
Open ≤ position in range (0–1) (default 0.20)
Example: 0.20 means “open must be in the lowest 20% of the bar’s range.”
Close ≥ position in range (0–1) (default 0.80)
Example: 0.80 means “close must be in the top 20% of the bar’s range.”
This keeps the logic range-normalized so it adapts across different tickers and vol regimes (you’re not using fixed cents or % of price).
Body ≥ fraction of range (0–1) (default 0.55)
Requires the real body to be at least that fraction of the total range.
0.55 = body fills ≥ 55% of the candle.
Purpose: filter out indecisive, wick-heavy bars.
Raise to 0.7–0.8 for only the fattest thrusts; lower to 0.3–0.4 to admit more bars.
Require green candle? (default ON)
If ON, close > open must be true. Turn OFF if you also want to catch strong red opens for shorts.
Minimum range (ticks)
Ignore tiny, illiquid opens: e.g., set to 2–5 ticks to suppress micro bars.
TRUE Opening-Bar RVOL (why it’s “true”)
Most “RVOL” compares against any recent bars, which isn’t fair at the open.
This indicator calculates only against prior opening bars:
At 09:30–09:35 ET, take today’s opening 5-minute volume.
Compare it to the average of the last N sessions’ opening 5-minute volumes.
RVOL = today_open_volume / average_prior_open_volumes.
So:
1.0× = equal to average prior opens.
1.5× = 150% of average prior opens.
2.0× = double the typical opening participation.
A minimum prior samples guard (default 10) ensures you don’t judge with too little history. Until enough samples exist, the RVOL gate won’t pass (you can disable RVOL temporarily if needed).
Visuals & tiers
Light green highlight + lime arrow → price filters pass and RVOL ≥ Tier-1 (default 1.0×)
Dark green highlight + green arrow → price filters pass and RVOL ≥ Tier-2 (default 1.5×)
Optional bar paint in matching green tones for extra visibility.
Optional RVOL label (e.g., RVOL 1.84x) above or below the opening bar.
You can show the label only when the candle qualifies, or on every open.
Inputs (step-by-step)
Price-action filters
Open ≤ position in range (0–1): default 0.20. Smaller = stricter (must open nearer the low).
Close ≥ position in range (0–1): default 0.80. Larger = stricter (must close nearer the high).
Body ≥ fraction of range (0–1): default 0.55. Raise to demand a “fatter” body.
Require green candle?: default ON. Turn OFF to also mark bearish thrusts.
Minimum range (ticks): default 0. Set to 2–5 for liquid mid/large caps.
Time settings
Timezone: default America/New_York. Leave as is for US equities.
Start hour / minute: defaults 09:30. The bar that starts at this time is evaluated.
TRUE Opening-Bar RVOL (two-tier)
Require TRUE opening-bar RVOL?: ON = must pass Tier-1 to highlight; OFF = price filters alone can highlight (still shows Tier-2 when hit).
RVOL lookback (prior opens count): default 20. How many prior openings to average.
Min prior opens required: default 10. Warm-up guard.
Tier-1 RVOL threshold (× avg): default 1.00× (light green).
Tier-2 RVOL threshold (× avg): default 1.50× (dark green).
Display
Also paint candle body?: OFF by default. Turn ON for instant visibility on a chart wall.
Arrow size: tiny/small/normal/large.
Light/Dark opacity: tune highlight strength.
Show RVOL label?: ON/OFF.
Show label only when candle qualifies?: ON by default; OFF to see RVOL every open.
Label position: Above candle or Below candle.
Label size: tiny/small/normal/large.
How to use (quick start)
Apply to a 5-minute chart.
Keep defaults: Open ≤ 0.20, Close ≥ 0.80, Body ≥ 0.55, Require green ON.
Turn RVOL required ON, with Tier-1 = 1.0×, Tier-2 = 1.5×, Lookback = 20, Min prior = 10.
Optional: enable Paint bar and set Arrow size = large for monitor-wall visibility.
Optional: show RVOL label below the bar to keep wicks clean.
Interpretation:
Dark green = A+ opening thrust with strong participation (≥ Tier-2).
Light green = Valid opening thrust with at least average participation (≥ Tier-1).
No highlight = one or more filters failed (quantiles, body, green, range, or RVOL if required).
Alerts
Two alert conditions are included:
Opening 5m Match — Tier-2 RVOL → fires when the opening candle passes price filters and RVOL ≥ Tier-2.
Opening 5m Match — Tier-1 RVOL → fires when the opening candle passes price filters and RVOL ≥ Tier-1 (but < Tier-2).
Recommended alert settings
Condition: choose the script + desired tier.
Options: Once Per Bar Close (you want the confirmed 09:30–09:35 bar).
Set your watchlist to symbols of interest (themes/sectors) and let the alerts pull you to the right charts.
Recommended starting values
Quantiles: Open ≤ 0.20, Close ≥ 0.80
Body fraction: 0.55
Require green: ON
RVOL: Required ON, Tier-1 = 1.0×, Tier-2 = 1.5×, Lookback 20, Min prior 10
Display: Paint bar ON, Arrow large, Label ON, Below candle
Tune tighter for A-plus selectivity:
Open ≤ 0.15, Close ≥ 0.85, Body ≥ 0.65, Tier-2 2.0×.
Notes, tips & limitations
5-minute timeframe is the intended use. On higher TFs, the 09:30 bar spans more than 5 minutes; geometry may not reflect the first 5 minutes alone.
RTH only: The opening detection looks at the clock (09:30 ET). Pre-market bars are ignored for the signal and for RVOL history.
Warm-up period: Until you have Min prior opens required samples, the RVOL gate won’t pass. You can temporarily toggle RVOL off.
DST & timezone: Leave timezone on America/New_York for US equities. If you trade non-US exchanges, set the appropriate TZ and opening time.
Illiquid tickers: Use Minimum range (ticks) and require RVOL to reduce noise.
No strategy orders: This is a visual/alert tool. Combine with your execution and risk plan.
Why this is useful on multi-monitor setups
Instant pattern recognition: the two-shade green makes A vs A+ opens pop at a glance.
Adaptive thresholds: quantiles & body are within-bar, so it works across $5 and $500 names.
Fair volume test: TRUE opening RVOL avoids comparing to pre-market or midday bars.
Optional labels: glanceable RVOL x-value helps triage the strongest themes quickly.
Squeeze Backtest by Shaqi v2.0Script to backtest price squeeze's. Works on long and short directions
Dominant DATR [CHE] Dominant DATR — Directional ATR stream with dominant-side EMA, bands, labels, and alerts
Summary
Dominant DATR builds two directional volatility streams from the true range, assigns each bar’s range to the up or down side based on the sign of the close-to-close move, and then tracks the dominant side through an exponential average. A rolling band around the dominant stream defines recent extremes, while optional gradient coloring reflects relative magnitude. Swing-based labels mark new higher highs or lower lows on the dominant stream, and alerts can be enabled for swings, zero-line crossings, and band breakouts. The result is a compact pane that highlights regime bias and intensity without relying on price overlays.
Motivation: Why this design?
Conventional ATR treats all range as symmetric, which can mask directional pressure, cause late regime shifts, and produce frequent false flips during noisy phases. This design separates the range into up and down contributions, then emphasizes whichever side is stronger. A single smoothed dominant stream clarifies bias, while the band and swing markers help distinguish continuation from exhaustion. Optional normalization by close makes the metric comparable across instruments with different price scales.
What’s different vs. standard approaches?
Reference baseline: Classic ATR or a basic EMA of price.
Architecture differences:
Directional weighting of range using positive and negative close-to-close moves.
Separate moving averages for up and down contributions combined into one dominant stream.
Rolling highest and lowest of the dominant stream to form a band.
Optional normalization by close, window-based scaling for color intensity, and gamma adjustment for visual contrast.
Event logic for swing highs and lows on the dominant stream, with label buffering and pruning.
Configurable alerts for swings, zero-line crossings, and band breakouts.
Practical effect: You see when volatility is concentrated on one side, how strong that bias currently is, and when the dominant stream pushes through or fails at its recent envelope.
How it works (technical)
Each bar’s move is split into an up component and a down component based on whether the close increased or decreased relative to the prior close. The bar’s true range is proportionally assigned to up or down using those components as weights.
Each side is smoothed with a Wilder-style moving average. The dominant stream is the side with the larger value, recorded as positive for up dominance and negative for down dominance.
The dominant stream is then smoothed with an exponential moving average to reduce noise and provide a responsive yet stable signal line.
A rolling window tracks the highest and lowest values of the dominant EMA to form an envelope. Crossings of these bounds indicate unusual strength or weakness relative to recent history.
For visualization, the absolute value of the dominant EMA is scaled over a lookback window and passed through a gamma curve to modulate gradient intensity. Colors are chosen separately for up and down regimes.
Swing events are detected by comparing the dominant EMA to its recent extremes over a short lookback. Labels are placed when a prior bar set an extreme and the current bar confirms it. A managed array prunes older labels when the user-defined maximum is exceeded.
Alerts mirror these events and also include zero-line crossings and band breakouts. The script does not force closed-bar confirmation; users should configure alert execution timing to suit their workflow.
There are no higher-timeframe requests and no security calls. State is limited to simple arrays for labels and persistent color parameters.
Parameter Guide
Parameter — Effect — Default — Trade-offs/Tips
ATR Length — Smoothing of directional true range streams — fourteen — Longer reduces noise and may delay regime shifts; shorter increases responsiveness.
EMA Length — Smoothing of the dominant stream — twenty-five — Lower values react faster; higher values reduce whipsaw.
Band Length — Window for recent highs and lows of the dominant stream — ten — Short windows flag frequent breakouts; long windows emphasize only exceptional moves.
Normalize by Close — Divide by close price to produce a percent-like scale — false — Useful across assets with very different price levels.
Enable gradient color — Turn on magnitude-based coloring — true — Visual aid only; can be disabled for simplicity.
Gradient window — Lookback used to scale color intensity — one hundred — Larger windows stabilize the color scale.
Gamma (lines) — Adjust gradient intensity curve — zero point eight — Lower values compress variation; higher values expand it.
Gradient transparency — Transparency for gradient plots — zero, between zero and ninety — Higher values mute colors.
Up dark / Up neon — Base and peak colors for up dominance — green tones — Styling only.
Down dark / Down neon — Base and peak colors for down dominance — red tones — Styling only.
Show zero line / Background tint — Visual references for regime — true and false — Background tint can help quick scanning.
Swing length — Bars used to detect swing highs or lows — two — Larger values demand more structure.
Show labels / Max labels / Label offset — Label visibility, cap, and vertical offset — true, two hundred, zero — Increase cap with care to avoid clutter.
Alerts: HH/LL, Zero Cross, Band Break — Toggle alert rules — true, false, false — Enable only what you need.
Reading & Interpretation
The dominant EMA above zero indicates up-side dominance; below zero indicates down-side dominance.
Band lines show recent extremes of the dominant EMA; pushes through the band suggest unusual momentum on the dominant side.
Gradient intensity reflects local magnitude of dominance relative to the chosen window.
HH/LL labels appear when the dominant stream prints a new local extreme in the current regime and that extreme is confirmed on the next bar.
Zero-line crosses suggest regime flips; combine with structure or filters to reduce noise.
Practical Workflows & Combinations
Trend following: Consider entries when the dominant EMA is on the regime side and expands away from zero. Band breakouts add confirmation; structure such as higher highs or lower lows in price can filter signals.
Exits and stops: Tighten exits when the dominant stream stalls near the band or fades toward zero. Opposite swing labels can serve as early caution.
Multi-asset and multi-timeframe: Works across liquid assets and common timeframes. For lower noise instruments, reduce smoothing slightly; for high noise, increase lengths and swing length.
Behavior, Constraints & Performance
Repaint and confirmation: No security calls and no future-looking references. Swing labels confirm one bar later by design. Real-time crosses can change intra-bar; use bar-close alerts if needed.
Resources: `max_bars_back` is two thousand. The script uses an array for labels with pruning, gradient color computations, and a simple while loop that runs only when the label cap is exceeded.
Known limits: The EMA can lag at sharp turns. Normalization by close changes scale and may affect thresholds. Extremely gappy data can produce abrupt shifts in the dominant side.
Sensible Defaults & Quick Tuning
Starting point: ATR Length fourteen, EMA Length twenty-five, Band Length ten, Swing Length two, gradient enabled.
Too many flips: Increase EMA Length and swing length, or enable only swing alerts.
Too sluggish: Decrease EMA Length and Band Length.
Inconsistent scales across symbols: Enable Normalize by Close.
Visual clutter: Disable gradient or reduce label cap.
What this indicator is—and isn’t
This is a volatility-bias visualization and signal layer that highlights directional pressure and intensity. It is not a complete trading system and does not produce position sizing or risk management. Use it with market structure, context, and independent risk controls.
Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Do not use this indicator on Heikin-Ashi, Renko, Kagi, Point-and-Figure, or Range charts, as these chart types can produce unrealistic results for signal markers and alerts.
Best regards and happy trading
Chervolino
First Passage Time - Distribution AnalysisThe First Passage Time (FPT) Distribution Analysis indicator is a sophisticated probabilistic tool that answers one of the most critical questions in trading: "How long will it take for price to reach my target, and what are the odds of getting there first?"
Unlike traditional technical indicators that focus on what might happen, this indicator tells you when it's likely to happen.
Mathematical Foundation: First Passage Time Theory
What is First Passage Time?
First Passage Time (FPT) is a concept in stochastic processes that measures the time it takes for a random process to reach a specific threshold for the first time. Originally developed in physics and mathematics, FPT has applications in:
Quantitative Finance: Option pricing, risk management, and algorithmic trading
Neuroscience: Modeling neural firing patterns
Biology: Population dynamics and disease spread
Engineering: Reliability analysis and failure prediction
The Mathematics Behind It
This indicator uses Geometric Brownian Motion (GBM), the same stochastic model used in the Black-Scholes option pricing formula:
dS = μS dt + σS dW
Where:
S = Asset price
μ = Drift (trend component)
σ = Volatility (uncertainty component)
dW = Wiener process (random walk)
Through Monte Carlo simulation, the indicator runs 1,000+ price path simulations to statistically determine:
When each threshold (+X% or -X%) is likely to be hit
Which threshold is hit first (directional bias)
How often each scenario occurs (probability distribution)
🎯 How This Indicator Works
Core Algorithm Workflow:
Calculate Historical Statistics
Measures recent price volatility (standard deviation of log returns)
Calculates drift (average directional movement)
Annualizes these metrics for meaningful comparison
Run Monte Carlo Simulations
Generates 1,000+ random price paths based on historical behavior
Tracks when each path hits the upside (+X%) or downside (-X%) threshold
Records which threshold was hit first in each simulation
Aggregate Statistical Results
Calculates percentile distributions (10th, 25th, 50th, 75th, 90th)
Computes "first hit" probabilities (upside vs downside)
Determines average and median time-to-target
Visual Representation
Displays thresholds as horizontal lines
Shows gradient risk zones (purple-to-blue)
Provides comprehensive statistics table
📈 Use Cases
1. Options Trading
Selling Options: Determine if your strike price is likely to be hit before expiration
Buying Options: Estimate probability of reaching profit targets within your time window
Time Decay Management: Compare expected time-to-target vs theta decay
Example: You're considering selling a 30-day call option 5% out of the money. The indicator shows there's a 72% chance price hits +5% within 12 days. This tells you the trade has high assignment risk.
2. Swing Trading
Entry Timing: Wait for higher probability setups when directional bias is strong
Target Setting: Use median time-to-target to set realistic profit expectations
Stop Loss Placement: Understand probability of hitting your stop before target
Example: The indicator shows 85% upside probability with median time of 3.2 days. You can confidently enter long positions with appropriate position sizing.
3. Risk Management
Position Sizing: Larger positions when probability heavily favors one direction
Portfolio Allocation: Reduce exposure when probabilities are near 50/50 (high uncertainty)
Hedge Timing: Know when to add protective positions based on downside probability
Example: Indicator shows 55% upside vs 45% downside—nearly neutral. This signals high uncertainty, suggesting reduced position size or wait for better setup.
4. Market Regime Detection
Trending Markets: High directional bias (70%+ one direction)
Range-bound Markets: Balanced probabilities (45-55% both directions)
Volatility Regimes: Compare actual vs theoretical minimum time
Example: Consistent 90%+ bullish bias across multiple timeframes confirms strong uptrend—stay long and avoid counter-trend trades.
First Hit Rate (Most Important!)
Shows which threshold is likely to be hit FIRST:
Upside %: Probability of hitting upside target before downside
Downside %: Probability of hitting downside target before upside
These always sum to 100%
⚠️ Warning: If you see "Low Hit Rate" warning, increase this parameter!
Advanced Parameters
Drift Mode
Allows you to explore different scenarios:
Historical: Uses actual recent trend (default—most realistic)
Zero (Neutral): Assumes no trend, only volatility (symmetric probabilities)
50% Reduced: Dampens trend effect (conservative scenario)
Use Case: Switch to "Zero (Neutral)" to see what happens in a pure volatility environment, useful for range-bound markets.
Distribution Type
Percentile: Shows 10%, 25%, 50%, 75%, 90% levels (recommended for most users)
Sigma: Shows standard deviation levels (1σ, 2σ)—useful for statistical analysis
⚠️ Important Limitations & Best Practices
Limitations
Assumes GBM: Real markets have fat tails, jumps, and regime changes not captured by GBM
Historical Parameters: Uses recent volatility/drift—may not predict regime shifts
No Fundamental Events: Cannot predict earnings, news, or macro shocks
Computational: Runs only on last bar—doesn't give historical signals
Remember: Probabilities are not certainties. Use this indicator as part of a comprehensive trading plan with proper risk management.
Created by: Henrique Centieiro. feedback is more than welcome!
Williams Alligator Spread Oscillator (WASO)Short description (About box)
Williams Alligator Spread Oscillator (WASO) converts Bill Williams’ Alligator into a 0–100 oscillator that measures the average distance between Lips/Teeth/Jaw relative to ATR. High = expansion/trend (default), low = compression/range — making sideways markets easier to spot. Includes adaptive normalization, configurable thresholds, background shading, and alerts.
Full description (Description field)
What it does
The Williams Alligator Spread Oscillator (WASO) transforms Bill Williams’ Alligator into a single, adaptive 0–100 scale. It computes the average pairwise distance among the Alligator lines (Lips/Teeth/Jaw), normalizes it by ATR and a rolling min–max window, and smooths the result. This makes the signal robust across symbols and timeframes and explicitly improves detection of sideways (ranging) conditions by highlighting compression regimes.
Why it helps
Sideways detection made easier: Low WASO marks compressed regimes that commonly align with consolidation/range phases, helping you identify chop and plan breakout strategies.
Trend/expansion clarity: High WASO indicates the Alligator lines are widening relative to volatility, pointing to trending or expanding conditions.
You can flip the direction if you prefer “High = Range.”
How it is calculated (plain English)
Smooth price with RMA (SMMA-like) to get Jaw, Teeth, Lips.
Compute the average pairwise distance between these three lines.
Divide by ATR to remove price-scale effects.
Normalize with a rolling min–max window to map values to 0–100.
Optionally apply EMA smoothing to the oscillator.
Key settings
Jaw/Teeth/Lips Lengths: Alligator periods (SMMA-like via ta.rma).
ATR Length: Volatility benchmark for scaling.
Normalization Lookback: Longer = steadier; shorter = more responsive.
Smoothing (EMA): Evens out noise.
High Value = Large Spread (Trend): Toggle to invert semantics.
Upper/Lower Thresholds: 70/30 are practical starting points.
Signals / interpretation
Sideways / Compression (easier to spot):
Default direction: WASO below Lower Threshold (e.g., <30).
With inverted direction OFF: WASO above Upper Threshold (e.g., >70).
Trend / Expansion:
Default direction: WASO above Upper Threshold (e.g., >70).
With inverted direction OFF: WASO below Lower Threshold (e.g., <30).
Midline (50): Neutral zone; flips around 50 can hint at regime shifts.
Alerts included
Range Start (sideways/compression)
Trend Start (expansion/trend)
Notes & limitations
This implementation omits the classic forward shift of Alligator lines to keep signals usable on live bars.
If market behavior shifts (very quiet or very volatile), tune Lookback and ATR Length.
Combine WASO with breakout levels or momentum filters for entries/exits.
Credits & disclaimer
Inspired by Bill Williams’ Alligator.
For educational purposes only. Not financial advice.
Release Notes (v1.0):
Initial release of Williams-Alligator Spread Oscillator (WASO) with ATR-based scaling and adaptive 0–100 normalization.
Direction toggle (High = Trend by default), adjustable thresholds, background shading, and two alert conditions.






















