Smart Bar Coloring: Tight Closes & Volume BreakoutsAdvanced Bar Coloring Indicator for Price Action and Volume Analysis
This sophisticated indicator automatically colors price bars based on two key market conditions: tight closing ranges and significant volume activity, helping traders quickly identify consolidation periods and potential breakout setups.
Key Features:
Tight Close Detection:
ATR-Based Analysis: Uses 14-period ATR to define "tight" price movement
Dual-Bar Confirmation: Requires both current and previous bar to have closing ranges ≤ 20% of ATR
Consolidation Identification: Highlights periods of reduced volatility that often precede significant moves
Customizable Color: Default amber/orange highlighting for easy visual identification
Volume Breakout Detection:
Multi-Criteria Volume Analysis: Triggers when volume exceeds any of three thresholds:
150% of 20-period volume SMA
150% of recent 3-bar average volume
150% of 50-period volume SMA
Price Action Filter: Requires bullish price action (close > previous close OR close in upper 75% of range)
Smart Volume Handling: Automatically detects and works only with instruments that have volume data
Customizable Color: Default teal highlighting for volume-driven moves
Technical Analysis Applications:
Consolidation Patterns: Identify tight trading ranges before potential breakouts
Volume Confirmation: Spot high-volume moves with supportive price action
Entry Timing: Use tight closes to identify potential accumulation zones
Breakout Validation: Volume-colored bars confirm legitimate breakout attempts
Risk Management: Tight closes often indicate lower immediate volatility
How to Use:
Amber/Orange Bars: Indicate tight closing ranges - potential accumulation or consolidation
Teal Bars: Show significant volume with bullish price action - potential breakout confirmation
Normal Bars: Standard market conditions without special highlighting
Pattern Recognition: Look for clusters of tight closes followed by volume breakouts
Technical Requirements:
Works on any timeframe
Automatically adapts to instruments with or without volume data
Compatible with all chart types and drawing tools
Indicatori e strategie
Average True Ranges with IBD RSAdvanced ATR Analysis with IBD Relative Strength
This comprehensive indicator combines Average True Range (ATR) analysis with IBD (Investor's Business Daily) Relative Strength calculation, providing both volatility measurement and momentum analysis in one powerful tool.
Key Features:
ATR Analysis:
Standard ATR: Customizable period (default 14) with multiple smoothing options
1.5x ATR: Extended range for wider stop-loss and target calculations
Smoothing Options: Choose between RMA, SMA, EMA, or WMA for ATR calculation
Customizable Colors: Distinct colors for easy visual identification
IBD Relative Strength:
Professional RS Formula: Uses the same calculation method as Investor's Business Daily
Multi-Timeframe Analysis: Compares current price to 3, 6, 9, and 12-month performance
Weighted Calculation: 40% weight on 3-month, 20% each on 6, 9, and 12-month performance
Zero-Based Scale: Values above 0 indicate outperformance, below 0 indicate underperformance
Trading Applications:
Volatility-Based Stops: Use ATR and 1.5x ATR for dynamic stop-loss placement
Position Sizing: ATR helps determine appropriate position size based on volatility
Relative Strength Analysis: IBD RS identifies stocks with superior momentum
Market Timing: High RS values often precede strong price moves
Risk Management: Combine volatility (ATR) with momentum (RS) for comprehensive analysis
Technical Details:
ATR Calculation: True Range smoothed over selected period with chosen method
IBD RS Formula: (40% × 3M) + (20% × 6M) + (20% × 9M) + (20% × 12M) - 100
Display: Separate pane indicator with customizable colors for each component
How to Interpret:
High ATR: Increased volatility, wider stops needed
Low ATR: Reduced volatility, tighter stops possible
Positive IBD RS: Stock outperforming market over measured periods
Negative IBD RS: Stock underperforming market over measured periods
Customizable Parameters:
ATR calculation length
Smoothing method for ATR
Individual colors for ATR, 1.5x ATR, and IBD RS lines
Perfect for swing traders and position traders who want to combine volatility analysis with relative strength momentum in their decision-making process. Particularly useful for stock selection and risk management.
Market Structure: HH/HL/LH/LL (v6, simple)What it does
Labels swing High/Low and classifies structure as HH / HL / LH / LL after confirmation.
Uses confirmed fractals (pivothigh/pivotlow) → no repaint after confirmation (there is a right-bar confirmation delay).
Optional swing connectors (lines), optional plain H/L when structure label is not applicable.
Plots last confirmed High/Low levels as reference.
Alerts when a new HH/HL/LH/LL is formed.
How it works
Swings are detected with ta.pivothigh() / ta.pivotlow() using user-defined left and right.
A pivot is confirmed only after right bars on the right—this is the only delay. Once confirmed, the label does not repaint.
Inputs
Left bars & Right bars – fractal sensitivity.
Connect swings with lines – draw lines between consecutive swings.
Show bullish (HH/HL) / Show bearish (LH/LL) – filter what to display.
Show plain H/L – draw H/L when classification is not HH/HL/LH/LL yet.
Recommended settings
1H–4H: left=2, right=2 (responsive).
1D+: left=3, right=3 (cleaner swing map).
Alerts provided
HH formed – new Higher High confirmed.
HL formed – new Higher Low confirmed.
LH formed – new Lower High confirmed.
LL formed – new Lower Low confirmed.
Use them to automate structure tracking or feed your strategy rules.
Tips
Trend up: a sequence of HH + HL; Trend down: LH + LL.
Combine with VWAP/EMA, liquidity zones, or volume/CVD to avoid chasing late signals.
The script is intentionally simple and lightweight; BOS/CHoCH can be added in a future update.
Limitations / Notes
Because the tool relies on confirmed pivots, signals are delayed by right bars.
This is not financial advice and not a buy/sell system on its own.
Changelog
v1.0 – Initial public release (Pine v6). Structure labels, swing connectors, last levels, and alert set.
Keywords
market structure, hh hl lh ll, swing, fractal, pivothigh, pivotlow, trend, structure labels, price action
SPX → NQ Levels ConverterSPX → NQ Levels Converter is a Pine Script indicator that projects key S&P 500 (SPX) levels onto the NASDAQ 100 (NQ) chart using a configurable conversion ratio.
• Dynamic ratio: calculates the live SPX/NQ ratio in real time.
• Static ratio: allows manual input of a fixed ratio.
• Supports up to 10 custom SPX levels, automatically converted into their equivalent NQ values.
• Each level is displayed with a line and label (SPX → NQ) with independent color settings.
• Advanced visualization controls:
• line extension (right, left, both, or fixed)
• line length & placement
• label side & offset.
• Lines and labels auto-update on every bar to stay accurate over time.
Use case: particularly useful for traders who track SPX option levels or support/resistance zones but execute trades on the NQ.
FlowShift OscillatorFlowShift Oscillator
Overview
The FlowShift Oscillator is a sophisticated momentum indicator designed to capture short-term shifts in market strength, identify trend acceleration, and highlight potential reversals. Combining baseline trend analysis with normalized momentum displacement and volatility-adjusted thresholds, FlowShift provides traders with a responsive, adaptive, and visually intuitive tool suitable for multiple timeframes and asset classes. Whether used for intraday scalping or longer-term trend following, FlowShift helps traders make informed decisions with precision and confidence.
Features
Customizable Baseline Moving Average : Select from SMA, EMA, SMMA (RMA), WMA, or VWMA to define the underlying trend. Adjustable length allows for tuning to specific market conditions.
Normalized Momentum Calculation : Measures price displacement relative to the baseline MA, removing minor fluctuations while preserving meaningful momentum shifts.
Volatility-Adjusted Thresholds : Dynamic upper and lower bounds adapt to market volatility, helping identify overextended bullish or bearish conditions.
Optional Signal Markers : Buy/Sell triangles indicate potential turning points when momentum reaches critical levels, aiding trade timing and decision-making.
Visual Enhancements : Customizable area fills, line colors, and optional candle tinting allow traders to quickly interpret momentum, bias, and trend direction.
Flexible Timeframe Compatibility : Effective across all timeframes, from 1-minute intraday charts to daily and weekly analysis.
How It Works
FlowShift calculates the displacement of price from a baseline moving average to identify deviations from the prevailing trend. This displacement is normalized and smoothed using exponential moving averages, producing a clean oscillator line that highlights genuine momentum changes. The oscillator’s dynamic thresholds are determined by a percentile of recent absolute values, providing an adaptive reference for extreme conditions in both bullish and bearish markets.
Signals
Buy Signal : Triggered when the oscillator crosses above prior lows in an oversold region, suggesting potential upward momentum.
Sell Signal : Triggered when the oscillator crosses below prior highs in an overbought region, indicating potential downward momentum.
Signals are optional and can be displayed as triangles on the chart to clearly mark potential entry and exit points.
Visual Interpretation
FlowShift Line & Area : The oscillator line and area highlight momentum direction and intensity. Upward momentum is shown in green tones, downward momentum in red.
Baseline MA & Glow : Displays the selected baseline moving average with optional glow for trend reference.
Candle Tinting : Optionally tints bars based on the baseline MA bias, providing an at-a-glance view of market sentiment.
Usage Notes
FlowShift is best used in conjunction with other trend confirmation tools or support/resistance analysis.
Dynamic thresholds help identify potential reversal points, but traders should consider overall market context and not rely solely on signals.
Customize the baseline MA type and length to fit your trading style; shorter lengths increase sensitivity, while longer lengths provide smoother trend representation.
Use the optional signal markers as guidance for trade timing, combining with risk management strategies for optimal results.
Conclusion
FlowShift Oscillator delivers a powerful, adaptive, and visually intuitive approach to momentum analysis. By combining baseline trend assessment, normalized momentum, and dynamic volatility scaling, it enables traders to anticipate market shifts, spot trend accelerations, and make timely trading decisions across a wide range of markets and timeframes.
Deviation from Mid MA5 & MA10 (%)Title:
Deviation from Mid-Price MA5 & MA10 (%)
Description:
This script calculates and displays the percentage deviation of the current mid-price from its 5-day and 10-day simple moving averages.
The mid-price is defined as the average of the open and close prices: (Open + Close) / 2
Instead of relying on traditional close-based MAs, this version uses mid-price to better reflect actual price flow by incorporating both the opening and closing values.
Main features:
Displays % deviation from both 5-day and 10-day mid-price moving averages
Better alignment with intraday reality due to gap-sensitive mid-price base
Smooths out erratic closing spikes for clearer signals
Helps identify overextended moves and potential pullback zones
Included lines:
Deviation from 5-day Mid MA
Deviation from 10-day Mid MA
Zero baseline for reference
Recommended for:
Traders seeking a cleaner measure of price deviation
Short-term pullback or re-entry strategy users
Anyone analyzing steady, low-volatility uptrends
Buy Sell Volume with delta value📄 Script Description
This indicator decomposes total traded volume into buying and selling volume, and displays their relative ratios.
🔎 Key Features
Buying vs. Selling Volume Separation
Uses the candle’s high, low, and close to split total volume into buying volume and selling volume.
Formula:
Buy = volume * (close - low) / (high - low)
Sell = volume * (high - close) / (high - low)
Volume Histogram Visualization
Plots overall volume (upper/lower) and separated buy/sell volumes as color-coded columns.
UPPER V / LOWER V: total volume
BUY V: buying volume (teal)
SELL V: selling volume (red)
Buy/Sell Ratio Calculation
Computes the percentage of buy and sell volume relative to total volume.
Buy Ratio = buyVolume / totalVolume * 100
Sell Ratio = sellVolume / totalVolume * 100
Ratio Display
Shows the latest Buy Ratio in a table (top-right corner of the chart).
Adds a label above the most recent bar displaying:
"Buy XX% / Sell YY%"
Historical ratios can be inspected through the TradingView Data Window or tooltip.
🛠️ Usage
Quickly identify whether volume during each candle is dominated by buyers or sellers.
Helps to assess market pressure and confirm potential trend direction, entries, or exits.
⚠️ Notes
Labels are shown only on the most recent bar (Pine cannot track mouse cursor events).
To see historical values, use the TradingView Data Window or hover tooltips.
This method provides an approximate split of volume and does not perfectly capture all market order flows.
Auto-Fit Growth Trendline# **Theoretical Algorithmic Principles of the Auto-Fit Growth Trendline (AFGT)**
## **🎯 What Does This Algorithm Do?**
The Auto-Fit Growth Trendline is an advanced technical analysis system that **automates the identification of long-term growth trends** and **projects future price levels** based on historical cyclical patterns.
### **Primary Functionality:**
- **Automatically detects** the most significant lows in regular periods (monthly, quarterly, semi-annually, annually)
- **Constructs a dynamic trendline** that connects these historical lows
- **Projects the trend into the future** with high mathematical precision
- **Generates Fibonacci bands** that act as dynamic support and resistance levels
- **Automatically adapts** to different timeframes and market conditions
### **Strategic Purpose:**
The algorithm is designed to identify **fundamental value zones** where price has historically found support, enabling traders to:
- Identify optimal entry points for long positions
- Establish realistic price targets based on mathematical projections
- Recognize dynamic support and resistance levels
- Anticipate long-term price movements
---
## **🧮 Core Mathematical Foundations**
### **Adaptive Temporal Segmentation Theory**
The algorithm is based on **dynamic temporal partition theory**, where time is divided into mathematically coherent uniform intervals. It uses modular transformations to create bijective mappings between continuous timestamps and discrete periods, ensuring each temporal point belongs uniquely to a specific period.
**What does this achieve?** It allows the algorithm to automatically identify natural market cycles (annual, quarterly, etc.) without manual intervention, adapting to the inherent periodicity of each asset.
The temporal mapping function implements a **discrete affine transformation** that normalizes different frequencies (monthly, quarterly, semi-annual, annual) to a space of unique identifiers, enabling consistent cross-temporal comparative analysis.
---
## **📊 Local Extrema Detection Theory**
### **Multi-Point Retrospective Validation Principle**
Local minima detection is founded on **relative extrema theory with sliding window**. Instead of using a simple minimum finder, it implements a cross-validation system that examines the persistence of the extremum across multiple historical periods.
**What problem does this solve?** It eliminates false minima caused by temporal volatility, identifying only those points that represent true historical support levels with statistical significance.
This approach is based on the **statistical confirmation principle**, where a minimum is only considered valid if it maintains its extremum condition during a defined observation period, significantly reducing false positives caused by transitory volatility.
---
## **🔬 Robust Interpolation Theory with Outlier Control**
### **Contextual Adaptive Interpolation Model**
The mathematical core uses **piecewise linear interpolation with adaptive outlier correction**. The key innovation lies in implementing a **contextual anomaly detector** that identifies not only absolute extreme values, but relative deviations to the local context.
**Why is this important?** Financial markets contain extreme events (crashes, bubbles) that can distort projections. This system identifies and appropriately weights them without completely eliminating them, preserving directional information while attenuating distortions.
### **Implicit Bayesian Smoothing Algorithm**
When an outlier is detected (deviation >300% of local average), the system applies a **simplified Kalman filter** that combines the current observation with a local trend estimation, using a weight factor that preserves directional information while attenuating extreme fluctuations.
---
## **📈 Stabilized Extrapolation Theory**
### **Exponential Growth Model with Dampening**
Extrapolation is based on a **modified exponential growth model with progressive dampening**. It uses multiple historical points to calculate local growth ratios, implements statistical filtering to eliminate outliers, and applies a dampening factor that increases with extrapolation distance.
**What advantage does this offer?** Long-term projections in finance tend to be exponentially unrealistic. This system maintains short-to-medium term accuracy while converging toward realistic long-term projections, avoiding the typical "exponential explosions" of other methods.
### **Asymptotic Convergence Principle**
For long-term projections, the algorithm implements **controlled asymptotic convergence**, where growth ratios gradually converge toward pre-established limits, avoiding unrealistic exponential projections while preserving short-to-medium term accuracy.
---
## **🌟 Dynamic Fibonacci Projection Theory**
### **Continuous Proportional Scaling Model**
Fibonacci bands are constructed through **uniform proportional scaling** of the base curve, where each level represents a linear transformation of the main curve by a constant factor derived from the Fibonacci sequence.
**What is its practical utility?** It provides dynamic resistance and support levels that move with the trend, offering price targets and profit-taking points that automatically adapt to market evolution.
### **Topological Preservation Principle**
The system maintains the **topological properties** of the base curve in all Fibonacci projections, ensuring that spatial and temporal relationships are consistently preserved across all resistance/support levels.
---
## **⚡ Adaptive Computational Optimization**
### **Multi-Scale Resolution Theory**
It implements **automatic multi-resolution analysis** where data granularity is dynamically adjusted according to the analysis timeframe. It uses the **adaptive Nyquist principle** to optimize the signal-to-noise ratio according to the temporal observation scale.
**Why is this necessary?** Different timeframes require different levels of detail. A 1-minute chart needs more granularity than a monthly one. This system automatically optimizes resolution for each case.
### **Adaptive Density Algorithm**
Calculation point density is optimized through **adaptive sampling theory**, where calculation frequency is adjusted according to local trend curvature and analysis timeframe, balancing visual precision with computational efficiency.
---
## **🛡️ Robustness and Fault Tolerance**
### **Graceful Degradation Theory**
The system implements **multi-level graceful degradation**, where under error conditions or insufficient data, the algorithm progressively falls back to simpler but reliable methods, maintaining basic functionality under any condition.
**What does this guarantee?** That the indicator functions consistently even with incomplete data, new symbols with limited history, or extreme market conditions.
### **State Consistency Principle**
It uses **mathematical invariants** to guarantee that the algorithm's internal state remains consistent between executions, implementing consistency checks that validate data structure integrity in each iteration.
---
## **🔍 Key Theoretical Innovations**
### **A. Contextual vs. Absolute Outlier Detection**
It revolutionizes traditional outlier detection by considering not only the absolute magnitude of deviations, but their relative significance within the local context of the time series.
**Practical impact:** It distinguishes between legitimate market movements and technical anomalies, preserving important events like breakouts while filtering noise.
### **B. Extrapolation with Weighted Historical Memory**
It implements a memory system that weights different historical periods according to their relevance for current prediction, creating projections more adaptable to market regime changes.
**Competitive advantage:** It automatically adapts to fundamental changes in asset dynamics without requiring manual recalibration.
### **C. Automatic Multi-Timeframe Adaptation**
It develops an automatic temporal resolution selection system that optimizes signal extraction according to the intrinsic characteristics of the analysis timeframe.
**Result:** A single indicator that functions optimally from 1-minute to monthly charts without manual adjustments.
### **D. Intelligent Asymptotic Convergence**
It introduces the concept of controlled asymptotic convergence in financial extrapolations, where long-term projections converge toward realistic limits based on historical fundamentals.
**Added value:** Mathematically sound long-term projections that avoid the unrealistic extremes typical of other extrapolation methods.
---
## **📊 Complexity and Scalability Theory**
### **Optimized Linear Complexity Model**
The algorithm maintains **linear computational complexity** O(n) in the number of historical data points, guaranteeing scalability for extensive time series analysis without performance degradation.
### **Temporal Locality Principle**
It implements **temporal locality**, where the most expensive operations are concentrated in the most relevant temporal regions (recent periods and near projections), optimizing computational resource usage.
---
## **🎯 Convergence and Stability**
### **Probabilistic Convergence Theory**
The system guarantees **probabilistic convergence** toward the real underlying trend, where projection accuracy increases with the amount of available historical data, following **law of large numbers** principles.
**Practical implication:** The more history an asset has, the more accurate the algorithm's projections will be.
### **Guaranteed Numerical Stability**
It implements **intrinsic numerical stability** through the use of robust floating-point arithmetic and validations that prevent overflow, underflow, and numerical error propagation.
**Result:** Reliable operation even with extreme-priced assets (from satoshis to thousand-dollar stocks).
---
## **💼 Comprehensive Practical Application**
**The algorithm functions as a "financial GPS"** that:
1. **Identifies where we've been** (significant historical lows)
2. **Determines where we are** (current position relative to the trend)
3. **Projects where we're going** (future trend with specific price levels)
4. **Provides alternative routes** (Fibonacci bands as alternative targets)
This theoretical framework represents an innovative synthesis of time series analysis, approximation theory, and computational optimization, specifically designed for long-term financial trend analysis with robust and mathematically grounded projections.
Support Vs Reward RvCSupport Vs Reward RvC
The Support Vs Reward RvC indicator is a simple yet effective tool that analyzes candle strength relative to both price movement and trading volume. Highlights candles where both body size and volume expand or contract, helping traders spot momentum shifts and weakening moves.
📌 How it works:
- “C” expect a Continuation of Trend in the next one or two candles;
- “R” expect a Reverse of Trend in the next one or two candles.
Works well on bigger time candles like 10-15 minutes but also gives important info in day-trading or scalping.
Marks candles where both body size and volume increase or decrease, making momentum shifts easy to spot. This smart candle analyzer reveals momentum surges and fading moves through body size and volume dynamics.
It compares each candle’s body size (open-to-close range) and its volume against the previous candle.
If both the body and volume are greater than the previous candle, a green “C” from Continuation of Trend is displayed under the bar.
If both the body and volume are smaller than the previous candle, a red “R” from Reverse of Trend is displayed under the bar.
Custom filters allow users to ignore insignificant moves by setting a minimum body size (as % of price) and a minimum volume threshold.
📌 Use cases:
Spot momentum shifts when price and volume expand together.
Identify weakening moves when both price action and volume contract.
Can be combined with other strategies for confirmation of entries or exits.
⚙️ Inputs:
Minimum Body Size % (of price): Filters out small candles.
Minimum Volume: Ensures only significant moves are marked.
This indicator is best used as a confirmation tool within a larger trading strategy, rather than as a standalone buy/sell signal.
Market Outlook Score (MOS)Overview
The "Market Outlook Score (MOS)" is a custom technical indicator designed for TradingView, written in Pine Script version 6. It provides a quantitative assessment of market conditions by aggregating multiple factors, including trend strength across different timeframes, directional movement (via ADX), momentum (via RSI changes), volume dynamics, and volatility stability (via ATR). The MOS is calculated as a weighted score that ranges typically between -1 and +1 (though it can exceed these bounds in extreme conditions), where positive values suggest bullish (long) opportunities, negative values indicate bearish (short) setups, and values near zero imply neutral or indecisive markets.
This indicator is particularly useful for traders seeking a holistic "outlook" score to gauge potential entry points or market bias. It overlays on a separate pane (non-overlay mode) and visualizes the score through horizontal threshold lines and dynamic labels showing the numeric MOS value along with a simple trading decision ("Long", "Short", or "Neutral"). The script avoids using the plot function for compatibility reasons (e.g., potential TradingView bugs) and instead relies on hline for static lines and label.new for per-bar annotations.
Key features:
Multi-Timeframe Analysis: Incorporates slope data from 5-minute, 15-minute, and 30-minute charts to capture short-term trends.
Trend and Strength Integration: Uses ADX to weight trend bias, ensuring stronger signals in trending markets.
Momentum and Volume: Includes RSI momentum impulses and volume deviations for added confirmation.
Volatility Adjustment: Factors in ATR changes to assess market stability.
Customizable Inputs: Allows users to tweak periods for lookback, ADX, and ATR.
Decision Labels: Automatically classifies the MOS into actionable categories with visual labels.
This indicator is best suited for intraday or swing trading on volatile assets like stocks, forex, or cryptocurrencies. It does not generate buy/sell signals directly but can be combined with other tools (e.g., moving averages or oscillators) for comprehensive strategies.
Inputs
The script provides three user-configurable inputs via TradingView's input panel:
Lookback Period (lookback):
Type: Integer
Default: 20
Range: Minimum 10, Maximum 50
Purpose: Defines the number of bars used in slope calculations for trend analysis. A shorter lookback makes the indicator more sensitive to recent price action, while a longer one smooths out noise for longer-term trends.
ADX Period (adxPeriod):
Type: Integer
Default: 14
Range: Minimum 5, Maximum 30
Purpose: Sets the smoothing period for the Average Directional Index (ADX) and its components (DI+ and DI-). Standard value is 14, but shorter periods increase responsiveness, and longer ones reduce false signals.
ATR Period (atrPeriod):
Type: Integer
Default: 14
Range: Minimum 5, Maximum 30
Purpose: Determines the period for the Average True Range (ATR) calculation, which measures volatility. Adjust this to match your trading timeframe—shorter for scalping, longer for positional trading.
These inputs allow customization without editing the code, making the indicator adaptable to different market conditions or user preferences.
Core Calculations
The MOS is computed through a series of steps, blending trend, momentum, volume, and volatility metrics. Here's a breakdown:
Multi-Timeframe Slopes:
The script fetches data from higher timeframes (5m, 15m, 30m) using request.security.
Slope calculation: For each timeframe, it computes the linear regression slope of price over the lookback period using the formula:
textslope = correlation(close, bar_index, lookback) * stdev(close, lookback) / stdev(bar_index, lookback)
This measures the rate of price change, where positive slopes indicate uptrends and negative slopes indicate downtrends.
Variables: slope5m, slope15m, slope30m.
ATR (Average True Range):
Calculated using ta.atr(atrPeriod).
Represents average volatility over the specified period. Used later to derive volatility stability.
ADX (Average Directional Index):
A detailed, manual implementation (not using built-in ta.adx for customization):
Computes upward movement (upMove = high - high ) and downward movement (downMove = low - low).
Derives +DM (Plus Directional Movement) and -DM (Minus Directional Movement) by filtering non-relevant moves.
Smooths true range (trur = ta.rma(ta.tr(true), adxPeriod)).
Calculates +DI and -DI: plusDI = 100 * ta.rma(plusDM, adxPeriod) / trur, similarly for minusDI.
DX: dx = 100 * abs(plusDI - minusDI) / max(plusDI + minusDI, 0.0001).
ADX: adx = ta.rma(dx, adxPeriod).
ADX values above 25 typically indicate strong trends; here, it's normalized (divided by 50) to influence the trend bias.
Volume Delta (5m Timeframe):
Fetches 5m volume: volume_5m = request.security(syminfo.tickerid, "5", volume, lookahead=barmerge.lookahead_on).
Computes a 12-period SMA of volume: avgVolume = ta.sma(volume_5m, 12).
Delta: (volume_5m - avgVolume) / avgVolume (or 0 if avgVolume is zero).
This measures relative volume spikes, where positive deltas suggest increased interest (bullish) and negative suggest waning activity (bearish).
MOS Components and Final Calculation:
Trend Bias: Average of the three slopes, normalized by close price and scaled by 100, then weighted by ADX influence: (slope5m + slope15m + slope30m) / 3 / close * 100 * (adx / 50).
Emphasizes trends in strong ADX conditions.
Momentum Impulse: Change in 5m RSI(14) over 1 bar, divided by 50: ta.change(request.security(syminfo.tickerid, "5", ta.rsi(close, 14), lookahead=barmerge.lookahead_on), 1) / 50.
Captures short-term momentum shifts.
Volatility Clarity: 1 - ta.change(atr, 1) / max(atr, 0.0001).
Measures ATR stability; values near 1 indicate low volatility changes (clearer trends), while lower values suggest erratic markets.
MOS Formula: Weighted average:
textmos = (0.35 * trendBias + 0.25 * momentumImpulse + 0.2 * volumeDelta + 0.2 * volatilityClarity)
Weights prioritize trend (35%) and momentum (25%), with volume and volatility at 20% each. These can be adjusted in code for experimentation.
Trading Decision:
A variable mosDecision starts as "Neutral".
If mos > 0.15, set to "Long".
If mos < -0.15, set to "Short".
Thresholds (0.15 and -0.15) are hardcoded but can be modified.
Visualization and Outputs
Threshold Lines (using hline):
Long Threshold: Horizontal dashed green line at +0.15.
Short Threshold: Horizontal dashed red line at -0.15.
Neutral Line: Horizontal dashed gray line at 0.
These provide visual reference points for MOS interpretation.
Dynamic Labels (using label.new):
Placed at each bar's index and MOS value.
Text: Formatted MOS value (e.g., "0.2345") followed by a newline and the decision (e.g., "Long").
Style: Downward-pointing label with gray background and white text for readability.
This replaces a traditional plot line, showing exact values and decisions per bar without cluttering the chart.
The indicator appears in a separate pane below the main price chart, making it easy to monitor alongside price action.
Usage Instructions
Adding to TradingView:
Copy the script into TradingView's Pine Script editor.
Save and add to your chart via the "Indicators" menu.
Select a symbol and timeframe (e.g., 1-minute for intraday).
Interpretation:
Long Signal: MOS > 0.15 – Consider bullish positions if supported by other indicators.
Short Signal: MOS < -0.15 – Potential bearish setups.
Neutral: Between -0.15 and 0.15 – Avoid trades or wait for confirmation.
Watch for MOS crossings of thresholds for momentum shifts.
Combine with price patterns, support/resistance, or volume for better accuracy.
Limitations and Considerations:
Lookahead Bias: Uses barmerge.lookahead_on for multi-timeframe data, which may introduce minor forward-looking bias in backtesting (use with caution).
No Alerts Built-In: Add custom alerts via TradingView's alert system based on MOS conditions.
Performance: Tested for compatibility; may require adjustments for illiquid assets or extreme volatility.
Backtesting: Use TradingView's strategy tester to evaluate historical performance, but remember past results don't guarantee future outcomes.
Customization: Edit weights in the MOS formula or thresholds to fit your strategy.
This indicator distills complex market data into a single score, aiding decision-making while encouraging users to verify signals with additional analysis. If you need modifications, such as restoring plot functionality or adding features, provide details for further refinement.
MMA, Mid-Price Moving Averages (Open + Close Based MAs)📝 Script Description
This script introduces a custom set of moving averages based on the mid-price, calculated as the average of the open and close prices:
Mid Price = (Open + Close) / 2
Instead of traditional close-based MAs, this approach reflects the average sentiment throughout the trading session, offering a smoother and more realistic view of price action.
🔍 Key Features:
✅ Gap-aware smoothing
Captures opening gaps, offering a better representation of intraday shifts.
✅ Reduced noise
Less vulnerable to sharp closing moves or one-off spikes, making it easier to identify true trend breaks or supports.
✅ Closer to actual flow
Reflects a more natural midline of price movement, ideal for traders who prioritize clean, sustained trends.
✅ Better support/resistance alignment
Especially useful for identifying stable uptrends and minimizing false breakout signals.
📐 Included Moving Averages:
MA 5
MA 10
MA 20
MA 60
MA 120
MA 200
(All based on mid-price, not close)
🎯 Recommended For:
Traders seeking smoother and more reliable trendlines
Those who want a more realistic depiction of support and resistance
Ideal for filtering out noisy movements while focusing on clean, straight-moving charts
VWAP For Loop [BackQuant]VWAP For Loop
What this tool does—in one sentence
A volume-weighted trend gauge that anchors VWAP to a calendar period (day/week/month/quarter/year) and then scores the persistence of that VWAP trend with a simple for-loop “breadth” count; the result is a clean, threshold-driven oscillator plus an optional VWAP overlay and alerts.
Plain-English overview
Instead of judging raw price alone, this indicator focuses on anchored VWAP —the market’s average price paid during your chosen institutional period. It then asks a simple question across a configurable set of lookback steps: “Is the current anchored VWAP higher than it was i bars ago—or lower?” Each “yes” adds +1, each “no” adds −1. Summing those answers creates a score that reflects how consistently the volume-weighted trend has been rising or falling. Extreme positive scores imply persistent, broad strength; deeply negative scores imply persistent weakness. Crossing predefined thresholds produces objective long/short events and color-coded context.
Under the hood
• Anchoring — VWAP using hlc3 × volume resets exactly when the selected period rolls:
Day → session change, Week → new week, Month → new month, Quarter/Year → calendar quarter/year.
• For-loop scoring — For lag steps i = , compare today’s VWAP to VWAP .
– If VWAP > VWAP , add +1.
– Else, add −1.
The final score ∈ , where N = (end − start + 1). With defaults (1→45), N = 45.
• Signal logic (stateful)
– Long when score > upper (e.g., > 40 with N = 45 → VWAP higher than ~89% of checked lags).
– Short on crossunder of lower (e.g., dropping below −10).
– A compact state variable ( out ) holds the current regime: +1 (long), −1 (short), otherwise unchanged. This “stickiness” avoids constant flipping between bars without sufficient evidence.
Why VWAP + a breadth score?
• VWAP aggregates both price and volume—where participants actually traded.
• The breadth-style count rewards consistency of the anchored trend, not one-off spikes.
• Thresholds give you binary structure when you need it (alerts, automation), without complex math.
What you’ll see on the chart
• Sub-pane oscillator — The for-loop score line, colored by regime (long/short/neutral).
• Main-pane VWAP (optional) — Even though the indicator runs off-chart, the anchored VWAP can be overlaid on price (toggle visibility and whether it inherits trend colors).
• Threshold guides — Horizontal lines for the long/short bands (toggle).
• Cosmetics — Optional candle painting and background shading by regime; adjustable line width and colors.
Input map (quick reference)
• VWAP Anchor Period — Day, Week, Month, Quarter, Year.
• Calculation Start/End — The for-loop lag window . With 1→45, you evaluate 45 comparisons.
• Long/Short Thresholds — Default upper=40, lower=−10 (asymmetric by design; see below).
• UI/Style — Show thresholds, paint candles, background color, line width, VWAP visibility and coloring, custom long/short colors.
Interpreting the score
• Near +N — Current anchored VWAP is above most historical VWAP checkpoints in the window → entrenched strength.
• Near −N — Current anchored VWAP is below most checkpoints → entrenched weakness.
• Between — Mixed, choppy, or transitioning regimes; use thresholds to avoid reacting to noise.
Why the asymmetric default thresholds?
• Long = score > upper (40) — Demands unusually broad upside persistence before declaring “long regime.”
• Short = crossunder lower (−10) — Triggers only on downward momentum events (a fresh breach), not merely being below −10. This combination tends to:
– Capture sustained uptrends only when they’re very strong.
– Flag downside turns as they occur, rather than waiting for an extreme negative breadth.
Tuning guide
Choose an anchor that matches your horizon
– Intraday scalps : Day anchor on intraday charts.
– Swing/position : Month or Quarter anchor on 1h/4h/D charts to capture institutional cycles.
Pick the for-loop window
– Larger N (bigger end) = stronger evidence requirement, smoother oscillator.
– Smaller N = faster, more reactive score.
Set achievable thresholds
– Ensure upper ≤ N and lower ≥ −N ; if N=30, an upper of 40 can never trigger.
– Symmetric setups (e.g., +20/−20) are fine if you want balanced behavior.
Match visuals to intent
– Enabling VWAP coloring lets you see regime directly on price.
– Background shading is useful for discretionary reading; turn it off for cleaner automation displays.
Playbook examples
• Trend confirmation with disciplined entries — On Month anchor, N=45, upper=38–42: when the long regime engages, use pullbacks toward anchored VWAP on the main pane for entries, with stops just beyond VWAP or a recent swing.
• Downside transition detection — Keep lower around −8…−12 and watch for crossunders; combine with price losing anchored VWAP to validate risk-off.
• Intraday bias filter — Day anchor on a 5–15m chart, N=20–30, upper ~ 16–20, lower ~ −6…−10. Only take longs while score is positive and above a midline you define (e.g., 0), and shorts only after a genuine crossunder.
Behavior around resets (important)
Anchored VWAP is hard-reset each period. Immediately after a reset, the series can be young and comparisons to pre-reset values may span two periods. If you prefer within-period evaluation only, choose end small enough not to bridge typical period length on your timeframe, or accept that the breadth test intentionally spans regimes.
Alerts included
• VWAP FL Long — Fires when the long condition is true (score > upper and not in short).
• VWAP FL Short — Fires on crossunder of the lower threshold (event-driven).
Messages include {{ticker}} and {{interval}} placeholders for routing.
Strengths
• Simple, transparent math — Easy to reason about and validate.
• Volume-aware by construction — Decisions reference VWAP, not just price.
• Robust to single-bar noise — Needs many lags to agree before flipping state (by design, via thresholds and the stateful output).
Limitations & cautions
• Threshold feasibility — If N < upper or |lower| > N, signals will never trigger; always cross-check N.
• Path dependence — The state variable persists until a new event; if you want frequent re-evaluation, lower thresholds or reduce N.
• Regime changes — Calendar resets can produce early ambiguity; expect a few bars for the breadth to mature.
• VWAP sensitivity to volume spikes — Large prints can tilt VWAP abruptly; that behavior is intentional in VWAP-based logic.
Suggested starting profiles
• Intraday trend bias : Anchor=Day, N=25 (1→25), upper=18–20, lower=−8, paint candles ON.
• Swing bias : Anchor=Month, N=45 (1→45), upper=38–42, lower=−10, VWAP coloring ON, background OFF.
• Balanced reactivity : Anchor=Week, N=30 (1→30), upper=20–22, lower=−10…−12, symmetric if desired.
Implementation notes
• The indicator runs in a separate pane (oscillator), but VWAP itself is drawn on price using forced overlay so you can see interactions (touches, reclaim/loss).
• HLC3 is used for VWAP price; that’s a common choice to dampen wick noise while still reflecting intrabar range.
• For-loop cap is kept modest (≤50) for performance and clarity.
How to use this responsibly
Treat the oscillator as a bias and persistence meter . Combine it with your entry framework (structure breaks, liquidity zones, higher-timeframe context) and risk controls. The design emphasizes clarity over complexity—its edge is in how strictly it demands agreement before declaring a regime, not in predicting specific turns.
Summary
VWAP For Loop distills the question “How broadly is the anchored, volume-weighted trend advancing or retreating?” into a single, thresholded score you can read at a glance, alert on, and color through your chart. With careful anchoring and thresholds sized to your window length, it becomes a pragmatic bias filter for both systematic and discretionary workflows.
Trading Rules Panel BJTRADESFXA Simple Panel for Your Trading Rules
Trading can quickly get overwhelming if you’re juggling multiple strategies, indicators, and market conditions. A simple Trading Rules Panel on your chart helps you stay disciplined by keeping your strategy visible at all times. Instead of relying on memory or flipping through notes, the panel displays your personal trading checklist right where you need it — on your screen.
The panel can be customized to show:
✅ Entry conditions (e.g., trend direction, candle patterns, breakout levels)
✅ Exit rules (take profit, stop loss, or trailing stop logic)
✅ Risk management (lot size, max risk %, reward-to-risk ratio)
✅ Trading session reminders (only trade London/New York overlap, etc.)
✅ Personal rules (no revenge trading, stop after 2 losses, follow your plan)
This kind of panel doesn’t place trades for you; rather, it acts as a visual reminder to keep you consistent and accountable. It prevents emotional decisions and reinforces your discipline, especially during high-pressure moments.
A well-placed panel can also:
Reduce mistakes caused by forgetting steps
Keep your focus on the bigger picture
Improve backtesting and journaling since your rules are clearly visible
Help new traders stick to structure instead of chasing trades
Imbalance RSI Divergence Strategy# Imbalance RSI Divergence Strategy - User Guide
## What is This Strategy?
This strategy identifies **imbalance** zones in the market and combines them with **RSI divergence** to generate trading signals. It aims to capitalize on price gaps left by institutional investors and large volume movements.
### Main Settings
- **RSI Period (14)**: Period used for RSI calculation. Lower values = more sensitive, higher values = more stable signals.
- **ATR Period (10)**: Period for volatility measurement using Average True Range.
- **ATR Stop Loss Multiplier (2.0)**: How many ATR units to use for stop loss calculation.
- **Risk:Reward Ratio (4.0)**: Risk-reward ratio. 2.0 = 2 units of reward for 1 unit of risk.
- **Use RSI Divergence Filter (true)**: Enables/disables the RSI divergence filter.
### Imbalance Filters
- **Minimum Imbalance Size (ATR) (0.3)**: Minimum imbalance size in ATR units to filter out small imbalances.
- **Enable Lookback Limit (false)**: Activates historical lookback limitations.
- **Maximum Lookback Bars (300)**: Maximum number of bars to look back.
### Visual Settings
- **Show Imbalance Size**: Displays imbalance size in ATR units.
- **Show RSI Divergence Lines**: Shows/hides divergence lines.
- **Divergence Line Colors**: Colors for bullish/bearish divergence lines.
### Volatility-Based Adjustments
- **Low volatility markets**:
- Minimum Imbalance Size: 0.2-0.4 ATR
- ATR Stop Loss Multiplier: 1.5-2.0
- **High volatility markets**:
- Minimum Imbalance Size: 0.5-1.0 ATR
- ATR Stop Loss Multiplier: 2.5-3.5
### Risk Tolerance
- **Conservative approach**:
- Risk:Reward Ratio: 2.0-3.0
- RSI Divergence Filter: Enabled
- Minimum Imbalance Size: Higher (0.5+ ATR)
- **Aggressive approach**:
- Risk:Reward Ratio: 4.0-6.0
- Minimum Imbalance Size: Lower (0.2-0.3 ATR)
###Market Conditions
- **Trending markets**: Higher RSI Period (21-28)
- **Sideways markets**: Lower RSI Period (10-14)
- **Volatile markets**: Higher ATR Multiplier
## Recommended Testing Procedure
1. **Start with default settings** and backtest on 3-6 months of historical data
2. **Adjust RSI Period** to see which value produces better results
3. **Optimize ATR Multiplier** for stop loss levels
4. **Test different Risk:Reward ratios** comparatively
5. **Fine-tune Minimum Imbalance Size** to improve signal quality
## Important Considerations
- **False positive signals**: Imbalances may be less reliable during low volatility periods
- **Market openings**: First hours often produce more imbalances but can be riskier
- **News events**: Consider disabling strategy during major news releases
- **Backtesting**: Test across different market conditions (trending, sideways, volatile)
## Recommended Settings for Beginners
**Safe settings for new users:**
- RSI Period: 14
- ATR Period: 14
- ATR Stop Loss Multiplier: 2.5
- Risk:Reward Ratio: 3.0
- Minimum Imbalance Size: 0.5 ATR
- RSI Divergence Filter: Enabled
## Advanced Tips
### Signal Quality Improvement
- **Combine with market structure**: Look for imbalances near key support/resistance levels
- **Volume confirmation**: Higher volume during imbalance formation increases reliability
- **Multiple timeframe analysis**: Confirm signals on higher timeframes
### Risk Management
- **Position sizing**: Never risk more than 1-2% of account per trade
- **Maximum drawdown**: Set overall stop loss for the strategy
- **Market hours**: Consider avoiding low liquidity periods
### Performance Monitoring
- **Win rate**: Track percentage of profitable trades
- **Average R:R**: Monitor actual risk-reward achieved vs. target
- **Maximum consecutive losses**: Set alerts for strategy review
This strategy works best when combined with proper risk management and market analysis. Always backtest thoroughly before using real money and adjust parameters based on your specific market and trading style.
samc's - Keltner OscillatorThe KELTNER CHANNEL is a widely used technical indicator developed in the 60's by Chester W. Keltner who described it in his 1960 book How To Make Money in Commodities.
so i took the logic, simplified the code and made into an oscillator.
to add a flavor of modern times you can choose among 10 different colorways themes in the settings. (so traders can adjust it for dark or light charts)
Although the initial idea was developed for stocks and commodities, I've carefully back tested this as an oscillator across FX MAJORS , MINORS and high liquidity stocks for the use case of scalping and Medium term trade ideas.
now, this indicator works successfully over all time frames, custom time frames and all assets.
This script builds on the same approach as my earlier session tool — keeping things clean, visual, and easy to read.
I intend to publish more of my work as i develop them from Beta ideas into stable scripts, and i welcome feedback.
samc's FX SESSIONS - on candles So, based on my 8 yrs of experience and over a 2 decade worth of back testing on FX majors pairs one thing i can univocally affirm to the fact that Timing is everything especially in the currency markets.
so i made this indicator to help reduce the noise and focus on signals which is coded by time,
now i made this as GMT+8 in focus but you can adjust based on your requirements.
I classified my indicator colors according to the inter-SESSION High Impact areas only as following :
Primary session colors:
ASIAN - YELLOW
EU - BLUE
US - Magenta (light)
and every first 10 mins of the hour (Great for scalping)
i marked them in a shade of grey.
secondary sessions i marked them as minor sessions.
PRE-EU 1hr of expected trend i marked in color green
and
after hours in a shade of color violet.
so i usually make my candles into light grey by default and remove the body and wicks to minimize the visual stimulus so that this indicator will work great with both dark and light themes and does not obstruct other indicators.
also i made an option to uncheck my naming scheme of session on the top right.
Range Percent Histogram📌 Range Percent Histogram – Indicator Description
The Range Percent Histogram is a custom indicator that behaves like a traditional volume histogram, but instead of showing traded volume it displays the percentage range of each candle.
In other words, the height of each bar represents how much the price moved (in percentage terms) within that candle, from its low to its high.
🔧 What it shows
The indicator has two main components:
Component Description
Histogram Bars Columns plotted in red or green depending on the candle direction (green = bullish candle, red = bearish). The height of each bar = (high - low) / low * 100. That means a candle that moved, for example, 1 % from its lowest point to its highest point will show a bar with 1 % height.
Moving Average (optional) A 20-period Simple Moving Average applied directly to the bar values. It can be turned ON/OFF via a checkbox and helps you detect whether current range activity is above or below the average range of the past candles.
⚙️ How it works
Every time a new candle closes, the indicator calculates its range and converts it into a percentage.
This value is drawn as a column under the chart.
If the closing price is above the opening price → the bar is green (bullish range).
If the closing price is below the opening price → the bar is red (bearish range).
When the Show Moving Average option is enabled, a smooth line is plotted on top of the histogram representing the average percentage range of the last 20 candles.
📈 How to use it
This indicator is very helpful for detecting moments of range expansion or contraction.
One powerful way to use it is similar to a volume exhaustion / low-volume pattern:
Situation Interpretation
Consecutive bars with very low height Price is in a period of low volatility → possible accumulation or "pause" phase.
A sudden large bar after a series of small ones Indicates a strong pickup in volatility → often marks the start of a new impulse in the direction of the breakout.
Trading Macro Windows by BW v2
Trading Macros by BW: Integrating ICT Concepts for Session Analysis
This indicator combines two key Inner Circle Trader (ICT) concepts—Change in State of Delivery (CISD) or Inverted Fair Value Gap (IFVG) signals with Macro Time Windows—to provide a unified tool for analyzing intraday price action, particularly during Pacific Time (PT) sessions. Rather than simply merging existing scripts, this integration creates a cohesive visual framework that highlights how macro consolidation periods interact with potential reversal or continuation signals like CISD or IFVG. By overlaying macro candle styling and borders on the chart alongside selectable signal lines, traders can better contextualize setups within ICT's macro narrative, where price often manipulates liquidity during these windows before displacing toward higher-timeframe objectives.
Core Components and How They Work Together:
Macro Time Windows (Inspired by ICT's Macro Periods):
ICT emphasizes "macro" as 30-minute windows (e.g., 06:45–07:15 PT, 07:45–08:15 PT, up to 11:45–12:15 PT) where price tends to consolidate, sweep liquidity, or form key structures like Fair Value Gaps (FVGs). These periods set the stage for the session's directional bias.
The indicator styles candles within these windows using a user-defined color for wicks, borders, and bodies (translucent for visibility). This visual emphasis helps traders focus on activity inside macros, where reversals or continuations often originate.
Borders are drawn as vertical lines at the start and end of each window (with a +5 minute buffer to capture related activity), using a dotted style by default. This creates a "study zone" that encapsulates macro events, allowing traders to assess if price is respecting or violating these zones in alignment with broader ICT models like the Power of 3 (AMD cycle).
Toggle: "Macro Candles Enabled" (default: true) – Turn off to disable styling and borders if focusing solely on signals.
CISD or IFVG Signals (Selectable Mode):
Mode Selection: Choose between "Change in the State of Delivery" (CISD) or "IFVG" (default: IFVG). Both detect shifts in market delivery during specific 30-minute slices (15–45 or 17–45 minutes past the hour in PT sessions).
CISD Mode: Based on ICT's definition of a sudden directional shift, this identifies aggressive displacements after sweeping recent highs/lows. It uses a rolling reference high/low over 6 bars, checks for sweeps (penetrating by at least 2 ticks in the last 2-3 bars), reclamation (closing beyond the reference with at least 50% body), and displacement (50% of prior range or an immediate FVG of 6+ ticks). Signals plot a horizontal line from the close, extending 24 bars right, labeled "CISD."
IFVG Mode: Focuses on Inverted Fair Value Gaps, where a bullish FVG (low > high by 13+ ticks) forms but is inverted (closed below) in the same slice, signaling bearish intent (or vice versa). This targets violations against opposing liquidity, often leading to raids on external ranges. Signals plot similarly, labeled "IFVG."
Shared Logic: Both modes enforce a 55-bar cooldown to prevent clustering, operate only during PT sessions (06:30–13:00), and use tick-based thresholds for precision across instruments. The integration with macros allows traders to see if signals occur within or at the edges of macro windows, enhancing confirmation—for example, a CISD inside a macro might indicate a manipulated reversal toward the session's true objective.
Toggle: "Signals Enabled" (default: true) – Turn off to hide all signal lines and labels, isolating the macro visualization.
How Components Interact:
Macro windows provide the "narrative context" (consolidation/manipulation), while CISD/IFVG signals detect the "delivery shift" (displacement). Together, they form a mashup that justifies publication: isolated signals can be noisy, but when filtered by macro periods, they align with ICT's session model. For instance, an IFVG inversion during a macro might confirm a liquidity sweep before targeting PD arrays or order blocks.
No external dependencies; all calculations are self-contained using Pine's built-in functions like ta.highest/lowest for references and time-based sessions for windows.
Usage Guidelines:
Apply to intraday charts (e.g., 1-5 min) or stocks during PT hours.
Look for confluence: A bull IFVG signal post-macro low sweep might target the next macro high or daily bias.
Customize colors/styles for signals (solid/dashed/dotted lines) and macros to suit your chart.
Backtest in replay mode to observe how macros frame signals—e.g., price often respects macro borders as S/R.
Limitations: Timezone-fixed to PT (America/Los_Angeles); signals are directional hints, not trade entries. Combine with ICT tools like order blocks or liquidity pools for full setups.
This script draws from community ICT implementations but refines them into a single, purpose-built tool for macro-driven trading, reducing chart clutter while emphasizing interconnected concepts. Feedback welcome!
Advanced Volume Profile Pro Delta + POC + VAH/VAL# Advanced Volume Profile Pro - Delta + POC + VAH/VAL Analysis System
## WHAT THIS SCRIPT DOES
This script creates a comprehensive volume profile analysis system that combines traditional volume-at-price distribution with delta volume calculations, Point of Control (POC) identification, and Value Area (VAH/VAL) analysis. Unlike standard volume indicators that show only total volume over time, this script analyzes volume distribution across price levels and estimates buying vs selling pressure using multiple calculation methods to provide deeper market structure insights.
## WHY THIS COMBINATION IS ORIGINAL AND USEFUL
**The Problem Solved:** Traditional volume indicators show when volume occurs but not where price finds acceptance or rejection. Standalone volume profiles lack directional bias information, while basic delta calculations don't provide structural context. Traders need to understand both volume distribution AND directional sentiment at key price levels.
**The Solution:** This script implements an integrated approach that:
- Maps volume distribution across price levels using configurable row density
- Estimates delta (buying vs selling pressure) using three different methodologies
- Identifies Point of Control (highest volume price level) for key support/resistance
- Calculates Value Area boundaries where 70% of volume traded
- Provides real-time alerts for key level interactions and volume imbalances
**Unique Features:**
1. **Developing POC Visualization**: Real-time tracking of Point of Control migration throughout the session via blue dotted trail, revealing institutional accumulation/distribution patterns before they complete
2. **Multi-Method Delta Calculation**: Price Action-based, Bid/Ask estimation, and Cumulative methods for different market conditions
3. **Adaptive Timeframe System**: Auto-adjusts calculation parameters based on chart timeframe for optimal performance
4. **Flexible Profile Types**: N Bars Back (precise control), Days Back (calendar-based), and Session-based analysis modes
5. **Advanced Imbalance Detection**: Identifies and highlights significant buying/selling imbalances with configurable thresholds
6. **Comprehensive Alert System**: Monitors POC touches, Value Area entry/exit, and major volume imbalances
## HOW THE SCRIPT WORKS TECHNICALLY
### Core Volume Profile Methodology:
**1. Price Level Distribution:**
- Divides price range into user-defined rows (10-50 configurable)
- Calculates row height: `(Highest Price - Lowest Price) / Number of Rows`
- Distributes each bar's volume across price levels it touched proportionally
**2. Delta Volume Calculation Methods:**
**Price Action Method:**
```
Price Range = High - Low
Buy Pressure = (Close - Low) / Price Range
Sell Pressure = (High - Close) / Price Range
Buy Volume = Total Volume × Buy Pressure
Sell Volume = Total Volume × Sell Pressure
Delta = Buy Volume - Sell Volume
```
**Bid/Ask Estimation Method:**
```
Average Price = (High + Low + Close) / 3
Buy Volume = Close > Average ? Volume × 0.6 : Volume × 0.4
Sell Volume = Total Volume - Buy Volume
```
**Cumulative Method:**
```
Buy Volume = Close > Open ? Volume : Volume × 0.3
Sell Volume = Close ≤ Open ? Volume : Volume × 0.3
```
**3. Point of Control (POC) Identification:**
- Scans all price levels to find maximum volume concentration
- POC represents the price level with highest trading activity
- Acts as significant support/resistance level
- **Developing POC Feature**: Tracks POC evolution in real-time via blue dotted trail, showing how institutional interest migrates throughout the session. Upward POC migration indicates accumulation patterns, downward migration suggests distribution, providing early trend signals before price confirmation.
**4. Value Area Calculation:**
- Starts from POC and expands up/down to encompass 70% of total volume
- VAH (Value Area High): Upper boundary of value area
- VAL (Value Area Low): Lower boundary of value area
- Expansion algorithm prioritizes direction with higher volume
**5. Adaptive Range Selection:**
Based on profile type and timeframe optimization:
- **N Bars Back**: Fixed lookback period with performance optimization (20-500 bars)
- **Days Back**: Calendar-based analysis with automatic timeframe adjustment (1-365 days)
- **Session**: Current trading session or custom session times
### Performance Optimization Features:
- **Sampling Algorithm**: Reduces calculation load on large datasets while maintaining accuracy
- **Memory Management**: Clears previous drawings to prevent performance degradation
- **Safety Constraints**: Prevents excessive memory usage with configurable limits
## HOW TO USE THIS SCRIPT
### Initial Setup:
1. **Profile Configuration**: Select profile type based on trading style:
- N Bars Back: Precise control over data range
- Days Back: Intuitive calendar-based analysis
- Session: Real-time session development
2. **Row Density**: Set number of rows (30 default) - more rows = higher resolution, slower performance
3. **Delta Method**: Choose calculation method based on market type:
- Price Action: Best for trending markets
- Bid/Ask Estimate: Good for ranging markets
- Cumulative: Smoothed approach for volatile markets
4. **Visual Settings**: Configure colors, position (left/right), and display options
### Reading the Profile:
**Volume Bars:**
- **Length**: Represents relative volume at that price level
- **Color**: Green = net buying pressure, Red = net selling pressure
- **Intensity**: Darker colors indicate volume imbalances above threshold
**Key Levels:**
- **POC (Blue Line)**: Highest volume price - major support/resistance
- **VAH (Purple Dashed)**: Value Area High - upper boundary of fair value
- **VAL (Orange Dashed)**: Value Area Low - lower boundary of fair value
- **Value Area Fill**: Shaded region showing main trading range
**Developing POC Trail:**
- **Blue Dotted Lines**: Show real-time POC evolution throughout the session
- **Migration Patterns**: Upward trail indicates bullish accumulation, downward trail suggests bearish distribution
- **Early Signals**: POC movement often precedes price movement, providing advance warning of institutional activity
- **Institutional Footprints**: Reveals where smart money concentrated volume before final POC establishment
### Trading Applications:
**Support/Resistance Analysis:**
- POC acts as magnetic price level - expect reactions
- VAH/VAL provide intermediate support/resistance levels
- Profile edges show areas of low volume acceptance
**Developing POC Analysis:**
- **Upward Migration**: POC moving higher = institutional accumulation, bullish bias
- **Downward Migration**: POC moving lower = institutional distribution, bearish bias
- **Stable POC**: Tight clustering = balanced market, range-bound conditions
- **Early Trend Detection**: POC direction change often precedes price breakouts
**Entry Strategies:**
- Buy at VAL with POC as target (in uptrends)
- Sell at VAH with POC as target (in downtrends)
- Breakout plays above/below profile extremes
**Volume Imbalance Trading:**
- Strong buying imbalance (>60% threshold) suggests continued upward pressure
- Strong selling imbalance suggests continued downward pressure
- Imbalances near key levels provide high-probability setups
**Multi-Timeframe Context:**
- Use higher timeframe profiles for major levels
- Lower timeframe profiles for precise entries
- Session profiles for intraday trading structure
## SCRIPT SETTINGS EXPLANATION
### Volume Profile Settings:
- **Profile Type**: Determines data range for calculation
- N Bars Back: Exact number of bars (20-500 range)
- Days Back: Calendar days with timeframe adaptation (1-365 days)
- Session: Trading session-based (intraday focus)
- **Number of Rows**: Profile resolution (10-50 range)
- **Profile Width**: Visual width as chart percentage (10-50%)
- **Value Area %**: Volume percentage for VA calculation (50-90%, 70% standard)
- **Auto-Adjust**: Automatically optimizes for different timeframes
### Delta Volume Settings:
- **Show Delta Volume**: Enable/disable delta calculations
- **Delta Calculation Method**: Choose methodology based on market conditions
- **Highlight Imbalances**: Visual emphasis for significant volume imbalances
- **Imbalance Threshold**: Percentage for imbalance detection (50-90%)
### Session Settings:
- **Session Type**: Daily, Weekly, Monthly, or Custom periods
- **Custom Session Time**: Define specific trading hours
- **Previous Sessions**: Number of historical sessions to display
### Days Back Settings:
- **Lookback Days**: Number of calendar days to analyze (1-365)
- **Automatic Calculation**: Script automatically converts days to bars based on timeframe:
- Intraday: Accounts for 6.5 trading hours per day
- Daily: 1 bar per day
- Weekly/Monthly: Proportional adjustment
### N Bars Back Settings:
- **Lookback Bars**: Exact number of bars to analyze (20-500)
- **Precise Control**: Best for systematic analysis and backtesting
### Visual Customization:
- **Colors**: Bullish (green), Bearish (red), and level colors
- **Profile Position**: Left or Right side of chart
- **Profile Offset**: Distance from current price action
- **Labels**: Show/hide level labels and values
- **Smooth Profile Bars**: Enhanced visual appearance
### Alert Configuration:
- **POC Touch**: Alerts when price interacts with Point of Control
- **VA Entry/Exit**: Alerts for Value Area boundary interactions
- **Major Imbalance**: Alerts for significant volume imbalances
## VISUAL FEATURES
### Profile Display:
- **Horizontal Bars**: Volume distribution across price levels
- **Color Coding**: Delta-based coloring for directional bias
- **Smooth Rendering**: Optional smoothing for cleaner appearance
- **Transparency**: Configurable opacity for chart readability
### Level Lines:
- **POC**: Solid blue line with optional label
- **VAH/VAL**: Dashed colored lines with value displays
- **Extension**: Lines extend across relevant time periods
- **Value Area Fill**: Optional shaded region between VAH/VAL
### Information Table:
- **Current Values**: Real-time POC, VAH, VAL prices
- **VA Range**: Value Area width calculation
- **Positioning**: Multiple table positions available
- **Text Sizing**: Adjustable for different screen sizes
## IMPORTANT USAGE NOTES
**Realistic Expectations:**
- Volume profile analysis provides structural context, not trading signals
- Delta calculations are estimations based on price action, not actual order flow
- Past volume distribution does not guarantee future price behavior
- Combine with other analysis methods for comprehensive market view
**Best Practices:**
- Use appropriate profile types for your trading style:
- Day Trading: Session or Days Back (1-5 days)
- Swing Trading: Days Back (10-30 days) or N Bars Back
- Position Trading: Days Back (60-180 days)
- Consider market context (trending vs ranging conditions)
- Verify key levels with additional technical analysis
- Monitor profile development for changing market structure
**Performance Considerations:**
- Higher row counts increase calculation complexity
- Large lookback periods may affect chart performance
- Auto-adjust feature optimizes for most use cases
- Consider using session profiles for intraday efficiency
**Limitations:**
- Delta calculations are estimations, not actual transaction data
- Profile accuracy depends on available price/volume history
- Effectiveness varies across different instruments and market conditions
- Requires understanding of volume profile concepts for optimal use
**Data Requirements:**
- Requires volume data for accurate calculations
- Works best on liquid instruments with consistent volume
- May be less effective on very low volume or exotic instruments
This script serves as a comprehensive volume analysis tool for traders who need detailed market structure information with integrated directional bias analysis and real-time POC development tracking for informed trading decisions.
Six Meridian Divine Swords [theUltimator5]The Six Meridian Divine Sword is a legendary martial arts technique in the classic wuxia novel “Demi-Gods and Semi-Devils” (天龙八部) by Jin Yong (金庸). The technique uses powerful internal energy (qi) to shoot invisible sword-like energy beams from the six meridians of the hand. Each of the six fingers/meridians corresponds to a “sword,” giving six different sword energies.
The Six Meridian Divine Swords indicator is a compact “signal dashboard” that fuses six classic indicators (fingers)—MACD, KDJ, RSI, LWR (Williams %R), BBI, and MTM—into one pane. Each row is a traffic-light dot (green/bullish, red/bearish, gray/neutral). When all six align, the script draws a confirmation line (“All Bullish” or “All Bearish”). It’s designed for quick consensus reads across trend, momentum, and overbought/oversold conditions.
How to Read the Dashboard
The pane has 6 horizontal rows (explained in depth later):
MACD
KDJ
RSI
LWR (Larry Williams %R)
BBI (Bull & Bear Index)
MTM (Momentum)
Each tick in the row is a dot, with sentiment identified by a color.
Green = bullish condition met
Red = bearish condition met
Gray = inside a neutral band (filtering chop), shown when Use Neutral (Gray) Colors is ON
There are two lines that track the dots on the top or bottom of the pane.
All Bullish Signal Line: appears only if all 6 are strongly bullish (default color = white)
All Bearish Signal Line: appears only if all 6 are strongly bearish (default color = fuchsia)
The Six Meridians (Indicators) — What They Mean:
1) MACD — Trend & Momentum
What it is: A trend-following momentum indicator based on the relationship between two moving averages (typically 12-EMA and 26-EMA)
Logic used: Classic MACD line (EMA12−EMA26) vs its 9-EMA signal.
Bullish: MACD > Signal and |MACD−Signal| > Neutral Threshold
Bearish: MACD < Signal and |diff| > threshold
Neutral: |diff| ≤ threshold
Why: Small crosses can whipsaw. The neutral band ignores tiny separations to reduce noise.
Inputs: Fast/Slow/Signal lengths, Neutral Threshold.
2) KDJ — Stochastic with J-line boost
What it is: A variation of the stochastic oscillator popular in Chinese trading systems
Logic used: K = SMA(Stochastic, smooth), D = SMA(K, smooth), J = 3K − 2D.
Bullish: K > D and |K−D| > 2
Bearish: K < D and |K−D| > 2
Neutral: |K−D| ≤ 2
Why: K–D separation filters tiny wiggles; J offers an “extreme” early-warning context in the value label.
Inputs: Length, Smoothing.
3) RSI — Momentum balance (0–100)
What it is: A momentum oscillator measuring speed and magnitude of price changes (0–100)
Logic used: RSI(N).
Bullish: RSI > 50 + Neutral Zone
Bearish: RSI < 50 − Neutral Zone
Neutral: Between those bands
Why: Centerline/adaptive bands (around 50) give a directional bias without relying on fixed 70/30.
Inputs: Length, Neutral Zone (± around 50).
4) LWR (Williams %R) — Overbought/Oversold
What it is: An oscillator similar to stochastic, measuring how close the close is to the high-low range over N periods
Logic used: %R over N bars (0 to −100).
Bullish: %R > −50 + Neutral Zone
Bearish: %R < −50 − Neutral Zone
Neutral: Between those bands
Why: Uses a centered band around −50 instead of only −20/−80, making it act like a directional filter.
Inputs: Length, Neutral Zone (± around −50).
5) BBI (Bull & Bear Index) — Smoothed trend bias
What it is: A composite moving average, essentially the average of several different moving averages (often 3, 6, 12, 24 periods)
Logic used: Average of 4 SMAs (3/6/12/24 by default):
BBI = (MA3 + MA6 + MA12 + MA24) / 4
Bullish: Close > BBI and |Close−BBI| > 0.2% of BBI
Bearish: Close < BBI and |diff| > threshold
Neutral: |diff| ≤ threshold
Why: Multiple MAs blended together reduce single-MA whipsaw. A dynamic 0.2% band ignores tiny drift.
Inputs: 4 lengths (default 3/6/12/24). Threshold is auto-scaled at 0.2% of BBI.
6) MTM (Momentum) — Rate of change in price
What it is: A simple measure of rate of change
Logic used: MTM = Close − Close
Bullish: MTM > 0.5% of Close
Bearish: MTM < −0.5% of Close
Neutral: |MTM| ≤ threshold
Why: A percent-based gate adapts across prices (e.g., $5 vs $500) and mutes insignificant moves.
Inputs: Length. Threshold auto-scaled to 0.5% of current Close.
Display & Inputs You Can Tweak
🎨 Use Neutral (Gray) Colors
ON (default): 3-color mode with clear “no-trade”/“weak” states.
OFF: classic binary (green/red) without neutral filtering.
Daily Seasonality Strength + Prediction TableDaily Seasonality Strength + Prediction Table
Return Estimates:
This indicator uses historical price data to calculate average returns for each day (of the week or month) and uses these to predict the next day’s return.
Seasonality Strength:
It measures seasonality strength by comparing predicted returns with actual returns, using the inverse of MSE (higher values mean stronger seasonality).
supports up to 10 assets
This script is for informational and educational purposes only. It does not constitute financial, investment, or trading advice. I am not a financial advisor. Any decisions you make based on this indicator are your own responsibility. Always do your own research and consult with a qualified financial professional before making any investment decisions.
Past performance is no guarantee of future results. The value of the instruments may fluctuate and is not guaranteed
Multi-Timeframe 200 EMAMulti-Timeframe 200 EMA Indicator
This indicator plots five 200-period Exponential Moving Averages (EMAs) on your chart, each from a different timeframe: 1-hour, 2-hour, 4-hour, 8-hour, and 1-day.
What It Does:
Analyzes Higher Timeframes: It uses the request.security() function to fetch data from higher timeframes. This allows you to see significant long-term support and resistance levels from higher timeframes, all on your current chart.
Customizable: You can easily turn each EMA line on or off individually in the indicator's settings. By default, the 1-hour and 1-day EMAs are off, so you can focus on the intermediate timeframes right away.
Clean and Simple: The indicator is designed to be clean and easy to read, with different colors for each EMA line to help you quickly identify the different timeframes at a glance.
This is a powerful tool for trend analysis and identifying key price levels, helping you make more informed trading decisions.
XMR Divergences vs KrakenSUMMARY
This script finds the percentage difference between Kraken, and multiple other exchanges, for the price of XMRUSD, and then runs a variable length moving average of those differences. Optionally, you can multiply by the reported volume of the exchange in question. Skip to "USAGE" at the bottom for a quick view of the settings. But I recommend reading DETAILED DESCRIPTION as well.
PURPOSE
The purpose of this script is to get a look into the relative funds flows of XMR between Kraken and the other exchanges. So long as an exchange withdraws are open: 1) Negative divergences indicate XMR outflows from the exchange under consideration, 2) Postive divergences indicate XMR inflows from Kraken to the exchange.
This appears to be moderately correlated with price movements in Monero (but not always). There is also the theory that positive accumulation is a leading indication of a growing probability of postive price action in the general crypto market, and negative accumulation is a leading indicator of an upcoming peak. In other words, exchanges like to accumulate Monero quietly during calm downtimes, and they like to manage its price from gaining too much attention (pump) during broad market positivity.
BACKGROUND
It's well known among XMR traders that most exchanges are operating on a heavy fractional reserve basis as regards Monero. The past 2 years have seen regular and repeated withdraw freezes, sometimes for weeks/months at a time. Occasionally, liquidity stress tests have been performed, with predictable results - none of these exchanges are able to continue supporting withdraws.
Kraken is the only exchange of meaningful volume that has never frozen withdraws for more than an hour or so. Thus, we theorize that Kraken is operating with all, or most of the XMR they claim to have.
Furthermore, we have seen in the past, large price negative price divergences of these fractional reserve exchanges relative to Kraken. As the social outcry grew stronger for this malfeasance, these exchanges have gone to greater lengths to hide their price divergences.
On minute-by-minute ; hour-by-hour basis, typically, a look with the naked eye would show oscillation around the zero point. But when you average it out, especially on lower timeframes (like the 1 and 5 min candles), you can very clearly see that when withdraws are shut down, these exchanges simultaneously diverge their prices downwards as well.
DETAILED DESCRIPTION
The ideal view of price divergence would compare second-by-second prices, and then run something like a rolling 4-hr or 1-day SMA to average out the overall divergences. However, due to limitations of TradingView, this is impractical/impossible for actual usage/viewing. As a result, a balance must be struck, when selecting the combination of the candle period, and the SMA lookback length.
I find that 5min candles, with a 48-period lookback (that equates to a rolling 4-hour SMA), offers the best view of recent and historical price divergence activity. This of course means that we're only sampling price divergences once every 5 minutes, but it still provides a decent look at what's happening. If this script gets popular, I wouldn't be surprised if these exchanges start timing their candle closes to mask their misdeeds, but that's of course speculative on my part.
The other important factor here, *IS TO MULTIPLY BY VOLUME*. Some of these no-volume exchanges have large price divergences. But if they're not doing any real volume, then it doesn't really have any real market impact. Thus, I recommend keeping the "Make volume adjustment" option on.
If that ends up happening, we'll have to infer that by comparing the difference in close prices, vs the difference in the highest or lowest intra-candle prices (wicks). Typically a divergence should have all 3 showing similar results.
Notes regarding "Sum_of_All": This only makes sense when multiplying by volume. So only check this if you also made the volume adjustment. Generally I believe that *Binance* sets the tone. However, we have seen numerous occasions where Binance diverges down, and the others diverge up. I believe this is a social influence tactic, since most people look at Binance price. Meanwhile, they're trying to accumulate some small amount on the other exchanges to minimize their overall loss. This of course assumes collusion by these exchanges, which is a high likely hood, seeing as how in May 2021, they all diverged together simultaneously (among other evidence).
USAGE
I recommend using your browser zoom, to see data beyond 1 month in the past.
Lookback - The number of candles over which to conduct a moving average. On 5-min candles for example, here's how the math works out:
12 - Equates to a 1 hr MA
24 - 2 hrs
48 - 4 hrs (default)
288 - 1 day
2880 - 10 days
Make Volume Adjustment - Recommend that you usually keep this on.
Line Widths - Set to preference
Show_Close_Price? - You can compute the difference at candle close. Or you can check the other boxes to compare the highest/lowest prices for intra candle prices (wicks).
Show Sum_of_All? - You can sum all of the differences, which only makes sense if you're making the volume adjustement. Default is off. Below, you can also choose which exchanges to include in the sum.
This works best on lower timeframes, like the 1m, 5, and 15m charts. I personally use 5m, with 48 or 96 length lookback. You get a better view of the real time price divergences that way.