Trend Pulse Channel StrategyOverview
Trend Pulse Channel Strategy is a long-only trend-following breakout strategy built around an adaptive multi-pole smoothing filter and a volatility-adjusted price channel.
The strategy is designed to participate in sustained directional moves by entering only when price confirms momentum strength beyond a dynamic upper boundary, while avoiding mean-reversion and low-quality consolidation phases.
This script is published as a strategy and includes realistic backtesting assumptions for position sizing, commissions, and slippage.
Core Concept
At the heart of the strategy is a multi-pole adaptive EMA-based filter, inspired by advanced digital signal smoothing techniques.
Using multiple poles allows the filter to reduce noise while preserving responsiveness to genuine trend changes.
To adapt the channel width to changing market conditions, the strategy applies the same filtering logic to True Range, producing a volatility-aware envelope rather than a static or fixed-percentage band.
This combination allows the strategy to:
Track directional bias using a smoothed central filter
Adjust channel width dynamically based on market volatility
Trigger entries only when price expansion confirms trend strength
Entry Logic
A long position is opened when:
Price crosses above the upper channel band
The signal occurs within the user-defined date range
This condition represents a volatility-confirmed breakout aligned with the prevailing directional filter.
Exit Logic
The long position is closed when:
Price crosses back below the upper band
This exit logic aims to stay in trending moves while exiting when upside momentum weakens.
The strategy does not open short positions by design.
Inputs and Defaults
The default inputs are selected to balance smoothness, responsiveness, and stability:
Source (HLC3): Reduces single-price noise by averaging high, low, and close
Period (144): Defines the primary smoothing horizon of the adaptive filter
Poles (4): Controls the smoothness vs. responsiveness trade-off
Range Multiplier (1.414): Scales the volatility envelope using filtered True Range
Reduced Lag (optional): Applies lag compensation to improve responsiveness
Fast Response (optional): Blends multi-pole and single-pole filters for quicker reaction at the cost of smoothness
All inputs are fully configurable and can be adjusted to suit different instruments and timeframes.
Risk Management & Position Sizing
The strategy uses:
Position size: 10% of equity per trade
No pyramiding
Long positions only
This sizing approach is intended to reflect sustainable risk exposure rather than aggressive capital deployment. Users may further adjust position size based on their own risk tolerance.
Backtesting Assumptions
The strategy is tested using :
Initial capital: 10,000
Commission: 0.1%
Slippage: 1 tick
Order fill model: Standard OHLC
These settings are chosen to provide more realistic performance estimates compared to idealized backtests.
This strategy is best suited for :
Trend-oriented markets
Higher timeframes where breakouts are more reliable
Users seeking systematic trend participation rather than frequent scalping
In sideways or range-bound market conditions, price may cross the channel boundaries frequently.
This can result in a higher number of entry and exit signals that do not develop into sustained trends.
For this reason, the strategy should be used with an understanding of basic technical analysis concepts, including market structure, trend identification, and consolidation behavior.
It is intended as a decision-support tool, not a standalone trading system.
Users—whether beginners or experienced traders—should avoid relying solely on this strategy and are encouraged to combine it with broader market context and additional analysis methods.
Disclaimer
This script is provided for educational and analytical purposes only. It does not constitute financial advice. Past performance does not guarantee future results.
Indikator dan strategi
SMH DualMomentum Signals (ROC + Volume)SMH Dual Momentum (ROC + Volume Confirmation)
This indicator identifies high-quality bullish trends by combining price momentum (Rate of Change) with volume confirmation, and exits when momentum structurally fails.
Core Logic
BUY signal
Rate of Change (ROC) over N periods is above a positive threshold (strong upside momentum)
Current volume is above its moving average (rising market participation)
SELL signal
ROC crosses below zero, indicating loss of bullish momentum
Why It Works
ROC measures the speed and strength of price movement, filtering out weak or drifting trends
Volume confirmation ensures momentum is supported by real capital flow, reducing false breakouts
Momentum-based exit avoids prolonged drawdowns and capital stagnation
Key Advantages
Focuses on trend continuation, not prediction
Filters out low-quality price moves and range-bound markets
Captures long, high-conviction trends with relatively few trades
Simple, robust rules using only price and volume
Best Use Cases
Designed for trend-driven ETFs such as SMH (Semiconductors)
Suitable for swing to position trading on daily charts
Works best in markets with strong sector rotation and institutional participation
Notes
This is a trend-following momentum tool, not a mean-reversion indicator
No stop-loss is built in; risk management should be handled externally if required
Parameters can be adjusted to match different timeframes or assets
Williams %RDescription
This is a modified version of the classic Williams %R oscillator, adapted for markets with defined trading sessions (e.g., FTSEMIB, DAX, US stocks, etc.). It adjusts the lookback period based on the actual trading session length, making it more accurate on intraday timeframes.
Key Features
Session Adjustment:
Automatically scales the period to trading days (default: 8.5 hours for FTSEMIB, DAX, CAC; customizable for any market).
Formula (classic Williams %R):
%R = 100 × (Close - Highest High) / (Highest High - Lowest Low)
over a user-defined period (default 14 days).
Standard Levels:
-20 (overbought)
-50 (middle line)
-80 (oversold)
Visual Enhancements:
- Customizable colors for the line, levels, and background fill
- Shaded overbought/oversold zone
How to Use:
Overbought (above -20):
Potential sell signal or reversal (especially after a prolonged uptrend).
Oversold (below -80):
Potential buy signal or reversal (especially after a downtrend).
Divergences:
Look for bullish/bearish divergences between price and %R for early reversal warnings.
Best Markets:
Indices (FTSEMIB, DAX, SPX), stocks, futures. For 24/7 markets (crypto), set session duration to 24 hours.
Timeframes:
Works on intraday (15m, 1h, etc.) and daily charts.
Customization Tips:
- Adjust the period (shorter = more sensitive, longer = smoother).
- Change session duration for different markets.
- Customize colors to match your chart theme.
Note: Williams %R is a momentum oscillator and should be used in combination with other tools (trendlines, support/resistance, volume). Always practice proper risk management.
Friday Statistical Zones - Last 30 Fridays Only BTC 📊 Friday Statistical Zones (Pre / Dump / After)
This indicator highlights statistical risk zones for Fridays, based on the last 30 completed Fridays.
It analyzes historical price and volume behavior to determine:
• When a Pre-Dump phase typically starts
• When selling pressure statistically peaks
• When the After-Dump phase usually occurs
The result is a time-based overlay with three zones:
🟡 Pre-Dump · 🔴 Dump · 🟡 After-Dump
⚠️ This is not a signal indicator.
It does not predict price direction.
It provides risk-timing context only.
Best used for risk management and situational awareness on Fridays, not as a standalone trading strategy.
Volume OscillatorDescription
The Volume Oscillator measures the momentum of trading volume by calculating the percentage difference between a fast and a slow Simple Moving Average (SMA) of daily volume. It helps traders identify periods of increasing or decreasing market participation, often signaling potential trend strength or exhaustion.
Key Features:
Adaptive to Trading Session:
Automatically adjusts SMA periods based on the actual trading session length (default: 8.5 hours for FTSEMIB, customizable for any market — e.g., 6.5h for US stocks, 24h for crypto).
Fast & Slow SMAs:
Compares a short-term SMA (default 10 days) with a longer-term SMA (default 25 days) of volume.
Oscillator Formula:
100 × (Fast SMA / Slow SMA - 1)
→ Positive values = increasing volume momentum (bullish)
→ Negative values = decreasing volume momentum (bearish)
Signal Line (optional):
A moving average of the oscillator (default 7 days) for smoother trend identification and crossover signals.
Overbought/Oversold Levels:
User-defined horizontal lines (default +40 / -40) to highlight extreme volume conditions.
Customizable Colors:
Change the oscillator and signal line colors to match your chart style.
How to Interpret:
Bullish Conditions:
Oscillator crosses above the zero line
Oscillator crosses above the signal line
Readings near or above +40 may indicate strong buying pressure (watch for possible exhaustion if too extreme)
Bearish Conditions:
Oscillator crosses below the zero line
Oscillator crosses below the signal line
Readings near or below -40 may indicate selling pressure or capitulation
Divergences:
Look for divergences between price and the Volume Oscillator (e.g., price makes new highs but oscillator fails to confirm with higher highs) — a classic sign of weakening momentum.
Best Use Cases:
Indices (FTSEMIB, DAX, CAC, SPX, etc.), stocks and futures with defined trading hours, crypto (set session duration to 24 hours).
Works well on intraday (e.g., 15m, 30m, 1h) and daily charts.
Customization Tips:
- Shorten fast/slow lengths for faster signals (more noise)
- Lengthen them for smoother, longer-term analysis
- Adjust session duration for non-standard market hours
- Enable/disable the signal line in the settings
Note: Volume data quality can vary by symbol and exchange. Always combine this indicator with price action and other tools. Use proper risk management.
Volume ROC (smoothed)Description
The Volume ROC (Rate of Change) indicator is designed to measure the momentum of trading volume over a user-defined period, adjusted for the trading session length of the symbol (e.g., 8.5 hours for the FTSEMIB index). This makes it particularly useful for intraday charts where standard daily calculations might not align with actual trading days.
By focusing on volume changes rather than price, it helps identify potential shifts in market participation, such as accumulation, distribution, or unusual activity that could precede price movements.
How It Works:
Session Adjustment:
The indicator calculates the number of candles per trading day based on the input session duration (in hours) and the chart's timeframe. This ensures that the ROC and other calculations are based on "trading days" rather than calendar days, making it adaptable to markets with non-standard hours like European indices (e.g., FTSEMIB).
Daily Data Fetch:
It retrieves daily high, low, close, and volume data using "request.security" to ensure consistency across timeframes.
ROC Calculation:
The Rate of Change (ROC) is computed on volume using "ta.change" over the specified length (in days), multiplied by the candles-per-day factor for timeframe independence. By chosing the subtraction method instead of the division method we avoid distortions of the ROC below the zero line (method ok for timespans inferior to two years).
Smoothing with SMA:
A Simple Moving Average (SMA) is applied to the ROC to reduce noise and highlight trends in volume momentum.
Standard Deviation Bands:
The standard deviation of the smoothed ROC is calculated over a lookback period. Bands are plotted at +2σ (overbought) and -2σ (oversold) to provide context for extreme volume changes, similar to Bollinger Bands but applied to volume ROC.
Key Plots:
SMA Line (Orange): The smoothed ROC value. Positive values indicate increasing volume momentum; negative values suggest decreasing momentum.
Zero Line (Black Dotted): A reference line at 0, separating positive and negative ROC territories.
+2σ Band (Red Dotted): Upper overbought threshold. Crossings above this may signal excessive buying volume.
-2σ Band (Green Dotted): Lower oversold threshold. Dips below this could indicate capitulation or low interest.
Usage and Interpretation:
Trend Confirmation:
Use the SMA crossing above/below zero to confirm price trends with volume backing. For example, a rising price with positive Volume ROC suggests strong conviction.
Divergences:
Look for divergences between price and Volume ROC (e.g., price making new highs but ROC weakening), which can signal reversals.
Overbought/Oversold Signals:
The ±2σ bands act as dynamic levels. Volume ROC spiking above +2σ might precede pullbacks, while below -2σ could indicate buying opportunities.
Best Applied To:
European indices (like FTSEMIB or DAX), stocks, or futures with defined session hours. Test on intraday (e.g., 2h) and combine with price-based indicators like RSI or MACD for confluence.
Customization:
Adjust the ROC/SMA lengths for sensitivity (shorter for scalping, longer for swings). The STDEV lookback affects band width—longer periods create smoother bands.
Limitations:
Volume data can be noisy in low-liquidity symbols. This indicator assumes consistent session lengths; irregular holidays may affect accuracy. Always backtest and use with risk management.
This indicator is original and built for educational/trading purposes.
llama fixed-length moving averages [SMA, WMA]Llama Moving Averages
I needed moving averages on my charts, but I wanted them hardcoded based on the following values:
timframe --- MA length
Daily --- 20D (==1 trading month)
Weekly --- 30W (30W moving averages for assessing long term trends)
15m --- 1W (or 5 days)
Two averages:
EMA and WMA: fast moving and slow moving based on closes.
In addition to this, I needed the following things:
1. MAs ONLY on 15m, 1D and 1W timeframes.
2. Consistent colors.
3. for 15m chart, we want a 5D SMA, so 1D = 15m * 25(±1); times 5; 25*5 = 125
4. Option to configure different values for the daily chart, since I trade the daily chart. Defaults: 20.
If you were looking for something similar, enjoy!
3MA Alignment Ribbon [AlgoTraderPro]3MA Alignment Ribbon is a clean, visual trend-structure indicator based on the alignment of three moving averages.
Instead of focusing on crossovers, it highlights trend quality and direction by dynamically coloring the moving averages and the ribbon between them.
The goal is simple : See at a glance whether the market structure is bullish, bearish, or neutral.
⸻
How It Works
The indicator plots three moving averages (Fast, Medium, Slow) and evaluates their alignment:
Bullish → Fast > Medium > Slow
Bearish → Fast < Medium < Slow
Neutral → Any other configuration
The moving averages and the filled ribbon between them are automatically colored based on this alignment, making trend conditions immediately visible.
⸻
Key Features
✅Multi-MA Support
Choose between:
EMA (default)
SMA
WMA
VWMA
RMA
HMA
✅ Alignment Modes
Strict: classic Fast > Medium > Slow logic
Tolerant: requires a minimum percentage separation between averages to reduce noise in ranging markets
✅ Optional Slope Filter
Filter signals by requiring the slow MA to be rising or falling, helping avoid false trend states during flat conditions.
✅ Higher Timeframe (HTF) Ribbon
Overlay the same 3MA alignment logic from a higher timeframe on your current chart:
Fully optional
Correctly calculated on the HTF itself
Option to use confirmed HTF bars only (reduces repaint confusion)
✅ Alerts & Visual Signals
Alerts when alignment turns Bullish, Bearish, or Neutral
Optional on-chart markers when the alignment flips
✅ Custom Styling
Fully customizable colors and transparency
Designed to remain readable without cluttering the chart
⸻
How to Use It
This indicator works best as:
A trend filter for discretionary trading
A context tool for entries using other setups
A market structure overlay for scalping, swing trading, or position trading
It does not generate buy/sell signals by itself — instead, it helps you trade aligned with market structure.
⸻
Default Settings
The default lengths (50 / 100 / 200 EMA) are suitable for most markets and timeframes, including crypto, forex, indices, and equities.
sullaojo 3mHere is the English translation for the alert setup instructions:
**How to Set Up Alerts (After Adding the Code)**
1. Click the **Add to chart** button to apply the indicator to your graph.
2. Click the **Alarm Clock icon (Alerts)** on the top right toolbar of TradingView, or press `Alt + A`.
3. In the **Condition** field:
* Select the indicator named **"MA Crossover Buy Alert..."**
* Select **"แจ้งเตือนซื้อ (Buy Alert)"** to receive only buy signals.
4. In the **Trigger** (or Options) section: Select **Once per bar close**.
*(This is recommended per the textbook to confirm that the closing price actually crossed the line, avoiding false signals during intraday volatility.)*
5. Check **Notify on App** (for mobile) or **Show pop-up** as desired, then click **Create**.
Now, when the moving averages cross according to the textbook's conditions, the system will send you an alert immediately!
Market Efficiency DashboardDescription
This indicator is an analytical tool designed to visualize the relationship between price action and market efficiency. Based on the Choppiness Index (CI), this indicator identifies whether the market is in a state of Range Contraction (Consolidation) or Range Expansion (Trending) . This implementation introduces a unique 50-pivot baseline to better differentiate between these two market characters, providing traders with an objective view of volatility cycles.
Key Features
Volatility Cycle Logic: A refined implementation of the Choppiness Index that assists in filtering market noise during low-volatility periods.
Pivot-50 Visualization: A custom geometric layout that separates range contraction from trend expansion for faster visual interpretation.
Multi-Timeframe (MTF) Data Handling: Enables the monitoring of higher-timeframe efficiency cycles without switching charts.
Trend Context Filter: Integrates a 200-period EMA to provide a directional baseline relative to the current market state.
Real-Time Status Dashboard: A real-time data table providing a summary of current market efficiency and trend bias.
Signal Refinement: Includes optional smoothing (EMA/SMA/WMA) to reduce calculation "jitter" and provide clearer structural signals.
Inputs Overview
Choppiness Length: Sets the lookback period for the efficiency calculation (Default: 14).
Calculation Timeframe: Allows the user to select the source timeframe for the index data.
Smoothing Method: Users can choose between multiple moving average types to filter the raw index output.
Threshold Levels: Customizable Fibonacci-based levels (61.8 and 38.2) used to define the boundaries of "Choppy" and "Trending" environments.
EMA Filter: Toggle for the 200-period Exponential Moving Average used for directional bias.
How to Use
Context Identification: Observe the histogram’s position relative to the 50-pivot. Bars expanding upward toward the 61.8 level indicate the market is coiling/congested.
Trend Confirmation: Bars expanding downward toward the 38.2 level indicate the market is moving efficiently in a specific direction.
Bias Alignment: When the Trend Bias is Bullish and the state is Trending, price discovery is likely occurring to the upside. Conversely, a Bearish bias in a Trending state suggests efficient movement to the downside.
Risk Management: Rising choppiness levels often precede a period of trend exhaustion or reversal, signaling a potential time to reduce exposure.
How it Helps
This tool is designed to assist in objective decision-making by identifying the current "market character." By distinguishing between trending and non-trending environments, it helps traders select the appropriate strategy for the current context—avoiding trend-following entries during sideways markets and identifying when a market has entered a period of price expansion.
Alerts
Trend Starting: Triggers when the index crosses below the lower threshold, suggesting a transition into an efficient trend.
Squeeze/Consolidation: Notifies the user when the index crosses above the upper threshold, indicating range contraction.
Midpoint Cross: Signals when the index crosses the 50-level, marking a shift in market momentum.
⚠️ Disclaimer:
This script/indicator is not endorsed by, affiliated with, sponsored by, or connected to TradingView in any manner. The author is not a TradingView partner.
This script/indicator and all related content are provided “as is” and “as available,” without any warranties of any kind, express or implied. The content is strictly for educational and informational purposes and does not constitute financial, investment, trading, or legal advice.
The author makes no representations or guarantees regarding accuracy, reliability, profitability, or future performance. Use of this script/indicator is entirely at the user’s own risk, and the author assumes no liability for any losses, damages, or financial consequences arising from its use.
Structure Lite - Automatic Major Trend LinesStructure Lite – Pivot-Based Market Structure Visualization
OVERVIEW
Structure Lite is an open-source charting tool designed to assist traders in visualizing higher-timeframe market structure. The script identifies major swing points using high-period pivot analysis and projects structural support and resistance lines directly on the chart. Its purpose is to highlight persistent market structure while minimizing visual noise.
CORE CONCEPTS & CALCULATIONS
Pivot Identification
The script uses Pine Script’s built-in ta.pivothigh() and ta.pivotlow() functions to identify confirmed swing highs and lows. A pivot is only validated after a user-defined number of bars (Major Pivot Lookback) have formed on both sides of the price extreme, ensuring that only structurally significant pivots are selected.
Structural Pairing
Each structural line is created only after two consecutive pivots of the same type are confirmed (high-to-high or low-to-low). The script stores the price and bar index of these pivots and uses them as fixed anchor points.
Line Projection
Once a valid pivot pair is formed, the script draws a line between the two points using line.new() and extends it forward using extend.right. These lines represent projected structural boundaries rather than trade signals.
Object Management
To maintain chart clarity and performance, the script manages all drawn objects through a line array. A FIFO (First-In, First-Out) method is applied so that only the three most recent structural lines remain visible. Older lines are automatically deleted as new ones are created.
DESIGN PHILOSOPHY & ORIGINALITY
While many indicators plot frequent swing points or short-term pivots, Structure Lite focuses on structural persistence. By filtering for higher-period pivots and limiting the number of displayed projections, the script emphasizes dominant market structure rather than short-term fluctuations. This approach is intended to support discretionary analysis, not replace it.
HOW TO USE
Major Pivot Lookback
Increase the value to focus on higher-timeframe structure (e.g., swing or position trading).
Decrease the value to visualize intraday structural levels.
Visual Encoding
Green lines represent projected structural support
Red lines represent projected structural resistance
Visibility Control
A boolean input allows all structure lines to be hidden instantly to restore a clean price chart.
LIMITATIONS & DISCLAIMER
This script is a visualization tool only. It does not generate trade signals, entry or exit points, alerts, or directional forecasts. All plotted levels are derived from historical price action and may change as new pivots form. The script is provided for educational and analytical purposes and should be used in conjunction with other forms of market analysis
Flux Portfolio Visualizer | GL0WDASHFlux Portfolio Visualizer | GL0WDASH
Flux Portfolio Visualizer lets you simulate and track the performance of a multi-asset portfolio directly on the chart.
Choose up to 10 assets, assign custom allocation weights, and set a start date to generate a real-time equity curve based on historical price data.
The script performs one-time proportional allocation at the start date and then tracks equity forward without rebalancing, giving you a realistic view of how your portfolio would have evolved over time. It also includes a maximum equity drawdown tracker and an optional level line for reference.
Features:
• Allocate to up to 10 assets with custom weight percentages
• Specify initial capital and simulation start date
• Real-time equity curve based on confirmed bars
• Maximum equity drawdown tracking + table display
• Optional horizontal reference line
• Designed for long-horizon allocation experiments
Great for:
• Passive portfolio stress-testing
• Comparing allocation strategies
• Evaluating long-term crypto/asset mixes
• Visualizing risk via max drawdowns
This tool does not execute trades or rebalance—its purpose is pure visualization, giving traders clarity about how portfolios behave under different allocation assumptions.
If you expand or modify the indicator, please credit the original author.
BTC Gann Harmonics Weighted + Phase + EMA OptimizedBTC Gann Harmonics Weighted + Phase + EMA Optimized
Volatility State Index [Interakktive]The Volatility State Index (VSI) classifies market volatility into three behavioral states: Expansion, Decay, and Transition. It answers one question visually: Is volatility supporting price movement, withdrawing, or unstable?
Unlike traditional volatility indicators that show levels or bands, VSI diagnoses the current volatility regime so traders can adapt their approach accordingly.
█ WHAT IT DOES
• Classifies volatility into three states: Expansion (teal), Decay (grey), Transition (amber)
• Measures volatility momentum as a percentage rate-of-change
• Applies stability filtering to detect unstable/choppy conditions
• Uses persistence logic to prevent state flickering
• Exports state data for use in alerts and strategies
█ WHAT IT DOES NOT DO
• NO buy/sell signals
• NO entry/exit recommendations
• NO alerts (v1 is diagnostic only)
• NO performance claims
This is a volatility diagnostic tool, not a trading system.
█ HOW IT WORKS
The VSI processes volatility through a five-stage pipeline:
STAGE 1 — Base Volatility
Calculates ATR as the foundation for volatility measurement.
STAGE 2 — Smoothing
Applies EMA smoothing to reduce noise in the volatility series.
STAGE 3 — Volatility Momentum
Computes the percentage rate-of-change of smoothed volatility:
Volatility Momentum (%) = ((Current ATR - Previous ATR) / Previous ATR) × 100
Positive values indicate expanding volatility; negative values indicate contracting volatility.
STAGE 4 — Stability Filter
Tracks how frequently volatility momentum changes direction. Frequent sign changes indicate unstable, choppy conditions.
Stability Score = 1 - (Average Flip Rate)
Low stability forces the Transition state regardless of momentum level.
STAGE 5 — State Classification
Combines momentum thresholds and stability to determine the final state:
• Expansion: Momentum ≥ +5% (default threshold)
• Decay: Momentum ≤ -5% (default threshold)
• Transition: Between thresholds OR low stability
A persistence filter requires states to hold for multiple bars before confirming, preventing visual noise.
█ INTERPRETATION
EXPANSION (Teal)
Volatility is increasing in a sustained way. Price moves are becoming larger.
What it suggests:
• Breakouts are more likely to follow through
• Stops may need wider placement
• Trend-following approaches tend to work better
• Mean-reversion weakens
DECAY (Grey)
Volatility is decreasing. Price is compressing into tighter ranges.
What it suggests:
• Breakouts are more likely to fail
• Ranges tend to hold
• Trend-following underperforms
• Mean-reversion strengthens
TRANSITION (Amber)
Volatility behavior is unclear or unstable. This is NOT neutral — it is uncertainty.
What it suggests:
• Mixed signals — one bar huge, next bar dead
• Higher whipsaw risk
• Reduced conviction in either direction
• Consider waiting for clarity
The key insight: Amber is a warning, not a middle ground. It appears when volatility cannot decide what it wants to do.
█ VISUAL DESIGN
The indicator uses a state-first histogram design:
• Histogram height shows volatility momentum percentage
• Histogram color shows the classified state
• Zero line provides visual anchor
• Optional momentum line for confirmation
• Optional background tint (default OFF for clean charts)
The visual hierarchy prioritizes instant state recognition. A trader should understand the volatility environment in under one second without reading numbers.
█ INPUTS
Core Settings
• ATR Length: Base volatility measurement period (default: 14)
• Smoothing Length: EMA smoothing applied to ATR (default: 10)
• Momentum Length: Rate-of-change lookback (default: 10)
State Classification
• Expansion Threshold (%): Momentum above this = Expansion (default: 5.0)
• Decay Threshold (%): Momentum below this = Decay (default: -5.0)
• Persistence Bars: Bars required to confirm state change (default: 3)
• Stability Lookback: Window for stability calculation (default: 20)
• Stability Threshold: Below this = forced Transition (default: 0.5)
Visual Settings
• Show State Histogram: Toggle main display (default: ON)
• Show Momentum Line: Thin confirmation line (default: OFF)
• Show Zero Line: Baseline reference (default: ON)
• Show Background Tint: Subtle state coloring (default: OFF)
█ DATA WINDOW EXPORTS
When enabled, the following values are exported:
• ATR (Raw)
• ATR (Smoothed)
• Volatility Momentum (%)
• Stability Score (0-1)
• State (-1/0/1): Decay = -1, Transition = 0, Expansion = 1
• Is Expansion (0/1)
• Is Decay (0/1)
• Is Transition (0/1)
These exports allow VSI to be used as a filter in Pine Script strategies or alert conditions.
█ ORIGINALITY
While ATR and volatility indicators are common, VSI is original because it:
1. Classifies volatility into behavioral states rather than showing raw levels
2. Applies momentum analysis to volatility itself (rate-of-change of ATR)
3. Uses stability filtering to detect genuinely unstable conditions
4. Implements persistence logic to prevent state flickering
5. Provides a state-first visual design optimized for instant recognition
VSI is state-first: it classifies volatility regimes (Expansion/Decay/Transition) rather than plotting volatility level alone, using momentum and stability to reduce false regime reads.
This is not a modified ATR or Bollinger Band — it is a volatility regime classifier.
█ SUITABLE MARKETS
Works on: Stocks, Futures, Forex, Crypto
Timeframes: All timeframes — state classification adapts accordingly
Best on: Instruments with consistent volatility patterns
█ RELATED
• Market Efficiency Ratio — measures price path efficiency
• Effort-Result Divergence — compares volume effort to price result
█ DISCLAIMER
This indicator is for educational purposes only. It does not constitute financial advice. Past performance does not guarantee future results. Always conduct your own analysis before making trading decisions.
OKXJsonLibrary "OKXJson"
f_buildId(prefix, instrument)
Parameters:
prefix (string)
instrument (string)
f_utcTimestamp()
f_investmentType(internalAction, entryType, closeType)
Parameters:
internalAction (string)
entryType (string)
closeType (string)
f_build(id, okxAction, marketPosition, prevMarketPosition, instrument, signalToken, timestampUtc, investmentType, amount, maxLagSeconds)
Parameters:
id (string)
okxAction (string)
marketPosition (string)
prevMarketPosition (string)
instrument (string)
signalToken (string)
timestampUtc (string)
investmentType (string)
amount (string)
maxLagSeconds (string)















