Fair Value Gap Signals [Kodexius]Fair Value Gap Signals is an advanced market structure tool that automatically detects and tracks Fair Value Gaps (FVGs), evaluates the quality of each gap, and highlights high value reaction zones with visual metrics and signal markers.
The script is designed for traders who focus on liquidity concepts, order flow and mean reversion. It goes beyond basic FVG plotting by continuously monitoring how price interacts with each gap and by quantifying three key aspects of each zone:
-Entry velocity inside the gap
-Volume absorption during tests
-Structural integrity and depth of penetration
The result is a dynamic, information rich visualization of which gaps are being respected, which are being absorbed, and where potential reversals or continuations are most likely to occur.
All visual elements are configurable, including the maximum number of visible gaps per direction, mitigation method (close or wick) and an ATR based filter to ignore insignificant gaps in low volatility environments.
🔹 Features
🔸 Automated Fair Value Gap Detection
The script detects both bullish and bearish FVGs based on classic three candle logic:
Bullish FVG: current low is strictly above the high from two bars ago
Bearish FVG: current high is strictly below the low from two bars ago
🔸 ATR Based Gap Filter
To avoid clutter and low quality signals, the script can ignore very small gaps using an ATR based filter.
🔸Per Gap State Machine and Lifecycle
Each gap is tracked with an internal status:
Fresh: gap has just formed and has not been tested
Testing: price is currently trading inside the gap
Tested: gap was tested and left, waiting for a potential new test
Rejected: price entered the gap and then rejected away from it
Filled: gap is considered fully mitigated and no longer active
This state machine allows the script to distinguish between simple touches, multiple tests and meaningful reversals, and to trigger different alerts accordingly.
🔸 Visual Ranking of Gaps by Metrics
For each active gap, three additional horizontal rank bars are drawn on top of the gap area:
Rank 1 (Vel): maximum entry velocity inside the gap
Rank 2 (Vol): relative test volume compared to average volume
Rank 3 (Dpt): remaining safety of the gap based on maximum penetration depth
These rank bars extend horizontally from the creation bar, and their length is a visual score between 0 and 1, scaled to the age of the gap. Longer bars represent stronger or more favorable conditions.
🔸Signals and Rejection Markers
When a gap shows signs of rejection (price enters the gap and then closes away from it with sufficient activity), the script can print a signal label at the reaction point. These markers summarize the internal metrics of the gap using a tooltip:
-Velocity percentage
-Volume percentage
-Safety score
-Number of tests
🔸 Flexible Mitigation Logic (Close or Wick)
You can choose how mitigation is defined via the Mitigation Method input:
Close: the gap is considered filled only when the closing price crosses the gap boundary
Wick: a full fill is detected as soon as any wick crosses the gap boundary
🔸 Alert Conditions
-New FVG formed
-Price entering a gap (testing)
-Gap fully filled and invalidated
-Rejection signal generated
🔹Calculations
This section summarizes the main calculations used under the hood. Only the core logic is covered.
1. ATR Filter and Gap Size
The script uses a configurable ATR length to filter out small gaps. First the ATR is computed:
float atrVal = ta.atr(atrLength)
Gap size for both directions is then measured:
float gapSizeBull = low - high
float gapSizeBear = low - high
If useAtrFilter is enabled, gaps smaller than atrVal are ignored. This ties the minimum gap size to the current volatility regime.
2. Fair Value Gap Detection
The basic FVG conditions use a three bar structure:
bool fvgBull = low > high
bool fvgBear = high < low
For bullish gaps the script stores:
-top as low of the current bar
-bottom as high
For bearish gaps:
-top as high of the current bar
-bottom as low
This defines the price range that is considered the imbalance area.
3. Depth and Safety Score
Depth measures how far price has penetrated into the gap since its creation. For each bar, the script computes a currentDepth and updates the maximum depth:
float currentDepth = 0.0
if g.isBullish
if l < g.top
currentDepth := g.top - l
else
if h > g.bottom
currentDepth := h - g.bottom
if currentDepth > g.maxDepth
g.maxDepth := currentDepth
The safety score expresses how much of the gap remains intact:
float depthRatio = g.maxDepth / gapSize
float safetyScore = math.max(0.0, 1.0 - depthRatio)
safetyScore near 1: gap is mostly untouched
safetyScore near 0: gap is mostly or fully filled
4. Velocity Metric
Velocity captures how aggressively price moves inside the gap. It is based on the body to range ratio of each bar that trades within the gap and rewards bars that move in the same direction as the gap:
float barRange = h - l
float bodyRatio = math.abs(close - open) / barRange
float directionBonus = 0.0
if g.isBullish and close > open
directionBonus := 0.2
else if not g.isBullish and close < open
directionBonus := 0.2
float currentVelocity = math.min(bodyRatio + directionBonus, 1.0)
The gap keeps track of the strongest observed value:
if currentVelocity > g.maxVelocity
g.maxVelocity := currentVelocity
This maximum is later used as velScore when building the velocity rank bar.
5. Volume Accumulation and Volume Score
While price is trading inside a gap, the script accumulates the traded volume:
if isInside
g.testVolume += volume
It also keeps track of the number of tests and the volume at the start of the first test:
if g.status == "Fresh"
g.status := "Testing"
g.testCount := 1
g.testStartVolume := volume
An average volume is computed using a 20 period SMA:
float volAvg = ta.sma(volume, 20)
The expected volume is approximated as:
float expectedVol = volAvg * math.max(1, (bar_index - g.index) / 2)
The volume score is then:
float volScore = math.min(g.testVolume / expectedVol, 1.0)
This produces a normalized 0 to 1 metric that shows whether the gap has attracted more or less volume than expected over its lifetime.
6. Rank Bar Scaling
All three scores are projected visually along the time axis as horizontal bars. The script uses the age of the gap in bars as the maximum width:
float maxWidth = math.max(bar_index - g.index, 1)
Then each metric is mapped to a bar length:
int len1 = int(math.max(1, maxWidth * velScore))
g.rankBox1.set_right(g.index + len1)
int len2 = int(math.max(1, maxWidth * volScore))
g.rankBox2.set_right(g.index + len2)
int len3 = int(math.max(1, maxWidth * safetyScore))
g.rankBox3.set_right(g.index + len3)
This creates an intuitive visual representation where stronger metrics produce longer rank bars, making it easy to quickly compare the relative quality of multiple FVGs on the chart.
스크립트에서 "top"에 대해 찾기
SMC N-Gram Probability Matrix [PhenLabs]📊 SMC N-Gram Probability Matrix
Version: PineScript™ v6
📌 Description
The SMC N-Gram Probability Matrix applies computational linguistics methodology to Smart Money Concepts trading. By treating SMC patterns as a discrete “alphabet” and analyzing their sequential relationships through N-gram modeling, this indicator calculates the statistical probability of which pattern will appear next based on historical transitions.
Traditional SMC analysis is reactive—traders identify patterns after they form and then anticipate the next move. This indicator inverts that approach by building a transition probability matrix from up to 5,000 bars of pattern history, enabling traders to see which SMC formations most frequently follow their current market sequence.
The indicator detects and classifies 11 distinct SMC patterns including Fair Value Gaps, Order Blocks, Liquidity Sweeps, Break of Structure, and Change of Character in both bullish and bearish variants, then tracks how these patterns transition from one to another over time.
🚀 Points of Innovation
First indicator to apply N-gram sequence modeling from computational linguistics to SMC pattern analysis
Dynamic transition matrix rebuilds every 50 bars for adaptive probability calculations
Supports bigram (2), trigram (3), and quadgram (4) sequence lengths for varying analysis depth
Priority-based pattern classification ensures higher-significance patterns (CHoCH, BOS) take precedence
Configurable minimum occurrence threshold filters out statistically insignificant predictions
Real-time probability visualization with graphical confidence bars
🔧 Core Components
Pattern Alphabet System: 11 discrete SMC patterns encoded as integers for efficient matrix indexing and transition tracking
Swing Point Detection: Uses ta.pivothigh/pivotlow with configurable sensitivity for non-repainting structure identification
Transition Count Matrix: Flattened array storing occurrence counts for all possible pattern sequence transitions
Context Encoder: Converts N-gram pattern sequences into unique integer IDs for matrix lookup
Probability Calculator: Transforms raw transition counts into percentage probabilities for each possible next pattern
🔥 Key Features
Multi-Pattern SMC Detection: Simultaneously identifies FVGs, Order Blocks, Liquidity Sweeps, BOS, and CHoCH formations
Adjustable N-Gram Length: Choose between 2-4 pattern sequences to balance specificity against sample size
Flexible Lookback Range: Analyze anywhere from 100 to 5,000 historical bars for matrix construction
Pattern Toggle Controls: Enable or disable individual SMC pattern types to customize analysis focus
Probability Threshold Filtering: Set minimum occurrence requirements to ensure prediction reliability
Alert Integration: Built-in alert conditions trigger when high-probability predictions emerge
🎨 Visualization
Probability Table: Displays current pattern, recent sequence, sample count, and top N predicted patterns with percentage probabilities
Graphical Probability Bars: Visual bar representation (█░) showing relative probability strength at a glance
Chart Pattern Markers: Color-coded labels placed directly on price bars identifying detected SMC formations
Pattern Short Codes: Compact notation (F+, F-, O+, O-, L↑, L↓, B+, B-, C+, C-) for quick pattern identification
Customizable Table Position: Place probability display in any corner of your chart
📖 Usage Guidelines
N-Gram Configuration
N-Gram Length: Default 2, Range 2-4. Lower values provide more samples but less specificity. Higher values capture complex sequences but require more historical data.
Matrix Lookback Bars: Default 500, Range 100-5000. More bars increase statistical significance but may include outdated market behavior.
Min Occurrences for Prediction: Default 2, Range 1-10. Higher values filter noise but may reduce prediction availability.
SMC Detection Settings
Swing Detection Length: Default 5, Range 2-20. Controls pivot sensitivity for structure analysis.
FVG Minimum Size: Default 0.1%, Range 0.01-2.0%. Filters insignificant gaps.
Order Block Lookback: Default 10, Range 3-30. Bars to search for OB formations.
Liquidity Sweep Threshold: Default 0.3%, Range 0.05-1.0%. Minimum wick extension beyond swing points.
Display Settings
Show Probability Table: Toggle the probability matrix display on/off.
Show Top N Probabilities: Default 5, Range 3-10. Number of predicted patterns to display.
Show SMC Markers: Toggle on-chart pattern labels.
✅ Best Use Cases
Anticipating continuation or reversal patterns after liquidity sweeps
Identifying high-probability BOS/CHoCH sequences for trend trading
Filtering FVG and Order Block signals based on historical follow-through rates
Building confluence by comparing predicted patterns with other technical analysis
Studying how SMC patterns typically sequence on specific instruments or timeframes
⚠️ Limitations
Predictions are based solely on historical pattern frequency and do not account for fundamental factors
Low sample counts produce unreliable probabilities—always check the Samples display
Market regime changes can invalidate historical transition patterns
The indicator requires sufficient historical data to build meaningful probability matrices
Pattern detection uses standardized parameters that may not capture all institutional activity
💡 What Makes This Unique
Linguistic Modeling Applied to Markets: Treats SMC patterns like words in a language, analyzing how they “flow” together
Quantified Pattern Relationships: Transforms subjective SMC analysis into objective probability percentages
Adaptive Learning: Matrix rebuilds periodically to incorporate recent pattern behavior
Comprehensive SMC Coverage: Tracks all major Smart Money Concepts in a unified probability framework
🔬 How It Works
1. Pattern Detection Phase
Each bar is analyzed for SMC formations using configurable detection parameters
A priority hierarchy assigns the most significant pattern when multiple detections occur
2. Sequence Encoding Phase
Detected patterns are stored in a rolling history buffer of recent classifications
The current N-gram context is encoded into a unique integer identifier
3. Matrix Construction Phase
Historical pattern sequences are iterated to count transition occurrences
Each context-to-next-pattern transition increments the appropriate matrix cell
4. Probability Calculation Phase
Current context ID retrieves corresponding transition counts from the matrix
Raw counts are converted to percentages based on total context occurrences
5. Visualization Phase
Probabilities are sorted and the top N predictions are displayed in the table
Chart markers identify the current detected pattern for visual reference
💡 Note:
This indicator performs best when used as a confluence tool alongside traditional SMC analysis. The probability predictions highlight statistically common pattern sequences but should not be used as standalone trading signals. Always verify predictions against price action context, higher timeframe structure, and your overall trading plan. Monitor the sample count to ensure predictions are based on adequate historical data.
Gyspy Bot Trade Engine - V1.2B - Strategy 12-7-25 - SignalLynxGypsy Bot Trade Engine (MK6 V1.2B) - Ultimate Strategy & Backtest
Brought to you by Signal Lynx | Automation for the Night-Shift Nation 🌙
1. Executive Summary & Architecture
Gypsy Bot (MK6 V1.2B) is not merely a strategy; it is a massive, modular Trade Engine built specifically for the TradingView Pine Script environment. While most strategies rely on a single dominant indicator (like an RSI cross or a MACD flip) to generate signals, Gypsy Bot functions as a sophisticated Consensus Algorithm.
The engine calculates data from up to 12 distinct Technical Analysis Modules simultaneously on every bar closing. It aggregates these signals into a "Vote Count" and only executes a trade entry when a user-defined threshold of concurring signals is met. This "Voting System" acts as a noise filter, requiring multiple independent mathematical models—ranging from volume flow and momentum to cyclical harmonics and trend strength—to agree on market direction before capital is committed.
Beyond entries, Gypsy Bot features a proprietary Risk Management suite called the Dump Protection Team (DPT). This logic layer operates independently of the entry modules, specifically scanning for "Moon" (Parabolic) or "Nuke" (Crash) volatility events to force-exit positions, overriding standard stops to preserve capital during Black Swan events.
2. ⚠️ The Philosophy of "Curve Fitting" (Must Read)
One must be careful when applying Gypsy Bot to new pairs or charts.
To be fully transparent: Gypsy Bot is, by definition, a very advanced curve-fitting engine. Because it grants the user granular control over 12 modules, dozens of thresholds, and specific voting requirements, it is extremely easy to "over-fit" the data. You can easily toggle switches until the backtest shows a 100% win rate, only to have the strategy fail immediately in live markets because it was tuned to historical noise rather than market structure.
To use this engine successfully, you must adopt a specific optimization mindset:
Ignore Raw Net Profit: Do not tune for the highest dollar amount. A strategy that makes $1M in the backtest but has a 40% drawdown is useless.
Prioritize Stability: Look for a high Profit Factor (1.5+), a high Percent Profitable, and a smooth equity curve.
Regular Maintenance is Mandatory: Markets shift regimes (e.g., from Bull Trend to Crab Range). Parameters that worked perfectly in 2021 may fail in 2024. Gypsy Bot settings should be reviewed and adjusted at regular intervals (e.g., quarterly) to ensure the voting logic remains aligned with current market volatility.
Timeframe Recommendations:
Gypsy Bot is optimized for High Time Frame (HTF) trend following. It generally produces the most reliable results on charts ranging from 1-Hour to 12-Hours, with the 4-Hour timeframe historically serving as the "sweet spot" for most major cryptocurrency assets.
3. The Voting Mechanism: How Entries Are Generated
The heart of the Gypsy Bot engine is the ActivateOrders input (found in the "Order Signal Modifier" settings).
The engine constantly monitors the output of all enabled Modules.
Long Votes: GoLongCount
Short Votes: GoShortCount
If you have 10 Modules enabled, and you set ActivateOrders to 7:
The engine will ONLY trigger a Buy Entry if 7 or more modules return a valid "Buy" signal on the same closed candle.
If only 6 modules agree, the trade is rejected.
This allows you to mix "Leading" indicators (Oscillators) with "Lagging" indicators (Moving Averages) to create a high-probability entry signal that requires momentum, volume, and trend to all be in alignment.
4. Technical Deep Dive: The 12 Modules
Gypsy Bot allows you to toggle the following modules On/Off individually to suit the asset you are trading.
Module 1: Modified Slope Angle (MSA)
Logic: Calculates the geometric angle of a moving average relative to the timeline.
Function: It filters out "lazy" trends. A trend is only considered valid if the slope exceeds a specific steepness threshold. This helps avoid entering trades during weak drifts that often precede a reversal.
Module 2: Correlation Trend Indicator (CTI)
Logic: Based on John Ehlers' work, this measures how closely the current price action correlates to a straight line (a perfect trend).
Function: It outputs a confidence score (-1 to 1). Gypsy Bot uses this to ensure that we are not just moving up, but moving up with high statistical correlation, reducing fake-outs.
Module 3: Ehlers Roofing Filter
Logic: A sophisticated spectral filter that combines a High-Pass filter (to remove long-term drift) with a Super Smoother (to remove high-frequency noise).
Function: It attempts to isolate the "Roof" of the price action. It is excellent at catching cyclical turning points before standard moving averages react.
Module 4: Forecast Oscillator
Logic: Uses Linear Regression forecasting to predict where price "should" be relative to where it is.
Function: When the Forecast Oscillator crosses its zero line, it indicates that the regression trend has flipped. We offer both "Aggressive" and "Conservative" calculation modes for this module.
Module 5: Chandelier ATR Stop
Logic: A volatility-based trend follower that hangs a "leash" (ATR multiple) from the highest high (for longs) or lowest low (for shorts).
Function: Used here as an entry filter. If price is above the Chandelier line, the trend is Bullish. It also includes a "Bull/Bear Qualifier" check to ensure structural support.
Module 6: Crypto Market Breadth (CMB)
Logic: This is a macro-filter. It pulls data from multiple major tickers (BTC, ETH, and Perpetual Contracts) across different exchanges.
Function: It calculates a "Market Health" percentage. If Bitcoin is rising but the rest of the market is dumping, this module can veto a trade, ensuring you don't buy into a "fake" rally driven by a single asset.
Module 7: Directional Index Convergence (DIC)
Logic: Analyzes the convergence/divergence between Fast and Slow Directional Movement indices.
Function: Identifies when trend strength is expanding. A buy signal is generated only when the positive directional movement overpowers the negative movement with expanding momentum.
Module 8: Market Thrust Indicator (MTI)
Logic: A volume-weighted breadth indicator. It uses Advance/Decline data and Up/Down Volume data.
Function: This is one of the most powerful modules. It confirms that price movement is supported by actual volume flow. We recommend using the "SSMA" (Super Smoother) MA Type for the cleanest signals on the 4H chart.
Module 9: Simple Ichimoku Cloud
Logic: Traditional Japanese trend analysis using the Tenkan-sen and Kijun-sen.
Function: Checks for a "Kumo Breakout." Price must be fully above the Cloud (for longs) or below it (for shorts). This is a classic "trend confirmation" module.
Module 10: Simple Harmonic Oscillator
Logic: Analyzes the harmonic wave properties of price action to detect cyclical tops and bottoms.
Function: Serves as a counter-trend or early-reversal detector. It tries to identify when a cycle has bottomed out (for buys) or topped out (for sells) before the main trend indicators catch up.
Module 11: HSRS Compression / Super AO
Logic: Two options in one.
HSRS: Hirashima Sugita Resistance Support. Detects volatility compression (squeezes) relative to dynamic support/resistance bands.
Super AO: A combination of the Awesome Oscillator and SuperTrend logic.
Function: Great for catching explosive moves that result from periods of low volatility (consolidation).
Module 12: Fisher Transform (MTF)
Logic: Converts price data into a Gaussian normal distribution.
Function: Identifies extreme price deviations. This module uses Multi-Timeframe (MTF) logic to look at higher-timeframe trends (e.g., looking at the Daily Fisher while trading the 4H chart) to ensure you aren't trading against the major trend.
5. Global Inhibitors (The Veto Power)
Even if 12 out of 12 modules vote "Buy," Gypsy Bot performs a final safety check using Global Inhibitors. If any of these are triggered, the trade is blocked.
Bitcoin Halving Logic:
Hardcoded dates for past and projected future Bitcoin halvings (up to 2040).
Trading is inhibited or restricted during the chaotic weeks immediately surrounding a Halving event to avoid volatility crushes.
Miner Capitulation:
Uses Hash Rate Ribbons (Moving averages of Hash Rate).
If miners are capitulating (Shutting down rigs due to unprofitability), the engine flags a "Bearish" regime and can flip logic to Short-only or flat.
ADX Filter (Flat Market Protocol):
If the Average Directional Index (ADX) is below a specific threshold (e.g., 20), the market is deemed "Flat/Choppy." The bot will refuse to open trend-following trades in a flat market.
CryptoCap Trend:
Checks the total Crypto Market Cap chart. If the broad market is in a downtrend, it can inhibit Long entries on individual altcoins.
6. Risk Management & The Dump Protection Team (DPT)
Gypsy Bot separates "Entry Logic" from "Risk Management Logic."
Dump Protection Team (DPT)
This is a specialized logic branch designed to save the account during Black Swan events.
Nuke Protection: If the DPT detects a volatility signature consistent with a flash crash, it overrides all other logic and forces an immediate exit.
Moon Protection: If a parabolic pump is detected that violates statistical probability (Bollinger deviations), DPT can force a profit take before the inevitable correction.
Advanced Adaptive Trailing Stop (AATS)
Unlike a static trailing stop (e.g., "trail by 5%"), AATS is dynamic.
Penthouse Level: If price is at the top of the HSRS channel (High Volatility), the stop loosens to allow for wicks.
Dungeon Level: If price is compressed at the bottom, the stop tightens to protect capital.
Staged Take Profits
TP1: Scalp a portion (e.g., 10%) to cover fees and secure a win.
TP2: Take the bulk of profit.
TP3: Leave a "Runner" position with a loose trailing stop to catch "Moon" moves.
7. Recommended Setup Guide
When applying Gypsy Bot to a new chart, follow this sequence:
Set Timeframe: 4 Hours (4H).
Reset: Turn OFF Trailing Stop, Stop Loss, and Take Profits. (We want to see raw entry performance first).
Tune DPT: Adjust "Dump/Moon Protection" inputs first. These have the highest impact on net performance.
Tune Module 8 (MTI): This module is a heavy filter. Experiment with the MA Type (SSMA is recommended).
Select Modules: Enable/Disable modules 1-12 based on the asset's personality (Trending vs. Ranging).
Voting Threshold: Adjust ActivateOrders. A lower number = More Trades (Aggressive). A higher number = Fewer, higher conviction trades (Conservative).
Final Polish: Re-enable Stop Losses, Trailing Stops, and Staged Take Profits to smooth the equity curve and define your max risk per trade.
8. Technical Specs
Engine Version: Pine Script V6
Repainting: This strategy uses Closed Candle data for all Risk Management and Entry decisions. This ensures that Backtest results align closely with real-time behavior (no repainting of historical signals).
Alerts: This script generates Strategy alerts. If you require visual-only alerts, see the source code header for instructions on switching to "Study" (Indicator) mode.
Disclaimer:
This script is a complex algorithmic tool for market analysis. Past performance is not indicative of future results. Use this tool to assist your own decision-making, not to replace it.
9. About Signal Lynx
Automation for the Night-Shift Nation 🌙
Signal Lynx focuses on helping traders and developers bridge the gap between indicator logic and real-world automation. The same RM engine you see here powers multiple internal systems and templates, including other public scripts like the Super-AO Strategy with Advanced Risk Management.
We provide this code open source under the Mozilla Public License 2.0 (MPL-2.0) to:
Demonstrate how Adaptive Logic and structured Risk Management can outperform static, one-layer indicators
Give Pine Script users a battle-tested RM backbone they can reuse, remix, and extend
If you are looking to automate your TradingView strategies, route signals to exchanges, or simply want safer, smarter strategy structures, please keep Signal Lynx in your search.
License: Mozilla Public License 2.0 (Open Source).
If you make beneficial modifications, please consider releasing them back to the community so everyone can benefit.
Volume Flow Anatomy [Kodexius]Volume Flow Anatomy is a dynamic, multi-dimensional volume map that reconstructs how buy, sell, and “stealth” activity is distributed across price rather than just across time. Instead of relying on a static, session-based volume profile, it uses an exponentially decaying memory of recent bars to build a constantly evolving “anatomy” of the auction, where each price level carries an adaptive history of order flow.
The script separates buy vs. sell pressure, adds a third “Stealth Flow” dimension for low-volume price movement (ease of movement / divergence), and automatically derives POC, Value Area, imbalances, absorption zones, and classic profile shapes (D, P, b, B). This gives the trader a compact but highly information-dense map on the right side of the chart to read control (buyers vs. sellers), structure (balanced vs. trending vs. double distribution), and key reaction levels (support/resistance born from flow, not just wicks).
🔹 Features
🔸 Dynamic Lookback with Decay
- The script computes an effective lookback N from the Decay Factor and caps it with Max Lookback.
- Higher decay keeps more history; lower decay emphasizes the most recent flow.
- The profile continuously adapts as new bars are printed.
🔸 Price-Bucketed Flow Map
Each bucket accumulates:
- Sell Flow (sell pressure)
- Buy Flow (buy pressure)
- Stealth Flow (low-volume price movement)
- Box width at each bucket is proportional to the relative intensity of that component.
🔸 Stealth Flow (Low-Volume Price Movement)
- Measures close to close movement relative to volume, emphasizing price movement that occurs on comparatively low volume.
- Helps reveal hidden participation, inefficient moves, and areas that may be vulnerable to re-tests or reversions.
🔸 POC & 70% Value Area (VA)
- Identifies the Point of Control (price bucket with the highest total volume) over the effective lookback.
- Builds a 70% Value Area by expanding from POC towards the nearest high volume neighbors until 70% of the total volume is included.
- POC is drawn as a line over the analyzed range; VA is displayed as a shaded band in the profile area.
🔸 Market Profile Shape Detection
Splits the profile vertically into three zones (bottom / middle / top) and compares their volume distribution.
Classifies structure as:
- D-Shape (Balanced)
- P-Shape (Short Covering)
- b-Shape (Long Liquidation)
- B-Shape (Double Distribution)
Displays a shape label with color coded bias for quick auction context interpretation.
🔸 Imbalance Zones & Absorption
Imbalance: detects buckets where Buy Flow or Sell Flow exceeds the opposite side by at least Imbalance Ratio.
Absorption: flags zones with high volume but low price “ease”, where price is not moving much despite significant volume.
Extends these levels into horizontal zones, marking potential support/resistance and trap areas.
Bullish Imbalance Zone :
Bearish Imbalance Zone :
Absorption Zone :
🔸 Range Context & On-Chart Legend
Draws a Range Box covering the dynamically determined lookback (N bars), with a label displaying the effective bar count.
A bottom-right legend summarizes:
- Color keys for Buy / Sell / Stealth
- POC / VA status
- Bullish vs. Bearish dominance percentage
- Profile shape classification
- Imbalance and Absorption conventions
🔹 Calculations
1. Dynamic Lookback & Price Buckets
int N = math.min(int(4 / (1 - decayFactor) - 1), maxHistory)
float priceHigh = ta.highest(high, N)
float priceLow = ta.lowest(low, N)
float bucketSize = (priceHigh - priceLow) / bucketCount
The effective lookback N is derived from the Decay Factor, using the approximation 4 / (1 - decay) to capture roughly 99% of the decayed influence, then capped with maxHistory to control performance. Over that adaptive range, the script finds the highest and lowest prices and divides the band into bucketCount equal slices (bucketSize). Each slice is a price bucket that will accumulate volume-flow information.
2. Exponentially Decayed Volume Allocation
addValue(array profile, float weight, float minPrice, float maxPrice) =>
for j = 0 to bucketCount - 1
float bucketMin = priceLow + j * bucketSize
float bucketMax = bucketMin + bucketSize
float overlapMin = math.max(minPrice, bucketMin)
float overlapMax = math.min(maxPrice, bucketMax)
float overlapRange = overlapMax - overlapMin
if overlapRange > 0
profile.set(j, profile.get(j) * decayFactor + weight * overlapRange)
This function is the core engine of the indicator. For a given price span and intensity, it checks every bucket for overlap, distributes the weight proportionally to the overlapping range, and before adding new value, decays the existing bucket content by decayFactor. This results in an exponentially weighted profile: recent activity dominates, while older levels retain a gradually fading footprint.
3. POC and 70% Value Area
array totalProfile = array.new(bucketCount, 0)
for j = 0 to bucketCount - 1
float total = sellProfile.get(j) + buyProfile.get(j)
totalProfile.set(j, total)
if total > eaMax
eaMax := total
int pocIdx = 0
float pocVal = 0.0
for j = 0 to bucketCount - 1
if totalProfile.get(j) > pocVal
pocVal := totalProfile.get(j)
pocIdx := j
float totalSum = totalProfile.sum()
float targetSum = totalSum * 0.70
int vaLow = pocIdx
int vaHigh = pocIdx
float currentSum = pocVal
while currentSum < targetSum and (vaLow > 0 or vaHigh < bucketCount - 1)
float lowVal = vaLow > 0 ? totalProfile.get(vaLow - 1) : 0.0
float highVal = vaHigh < bucketCount - 1 ? totalProfile.get(vaHigh + 1) : 0.0
First, totalProfile is built as the sum of buy and sell flow per bucket, and eaMax (the maximum total) is tracked for later normalization. The POC bucket (pocIdx) is simply the index with the highest totalProfile value.
To compute the 70% Value Area, the algorithm starts at the POC bucket and expands outward, each step adding either the upper or lower neighbor depending on which has more volume. This continues until the cumulative volume reaches 70% of totalSum. The result is a volume-driven VA, not necessarily symmetric around POC, which more accurately represents where the market has truly traded.
4. Market Profile Shape Classification
float volTopThird = 0.0
float volMidThird = 0.0
float volBotThird = 0.0
int thirdIdx = int(bucketCount / 3)
for j = 0 to bucketCount - 1
float val = totalProfile.get(j)
if j < thirdIdx
volBotThird += val
else if j < thirdIdx * 2
volMidThird += val
else
volTopThird += val
float totalVolShape = totalProfile.sum()
string shapeStr = "D-Shape (Balanced)"
if (volTopThird > totalVolShape * 0.20) and (volBotThird > totalVolShape * 0.20) and (volMidThird < totalVolShape * 0.50)
shapeStr := "B-Shape (Double Dist)"
else
if pocIdx > bucketCount * 0.5 and volTopThird > volBotThird * 1.3
shapeStr := "P-Shape (Short Covering)"
else if pocIdx < bucketCount * 0.5 and volBotThird > volTopThird * 1.3
shapeStr := "b-Shape (Long Liquidation)"
else
shapeStr := "D-Shape (Balanced)"
The profile is split into bottom, middle, and top thirds. The script compares how much volume is concentrated in each and combines that with the relative location of POC. If both extremes are heavy and the middle light, it labels a B-Shape (double distribution). If the POC is high and the top dominates the bottom, it’s a P-Shape (short covering). If the POC is low and the bottom dominates, it’s a b-Shape (long liquidation). Otherwise, it defaults to a D-Shape (balanced). This provides a quick, at-a-glance assessment of auction structure.
5. Imbalances, Absorption & Zones
bool isBuyImb = showImb and sVal > 0 and (bVal / sVal >= imbRatio)
bool isSellImb = showImb and bVal > 0 and (sVal / bVal >= imbRatio)
float volRatio = eaMax > 0 ? tVal / eaMax : 0
float stRatio = esmRange > 0 ? (stVal - esmMin) / esmRange : 1.0
bool isAbsorp = showAbsorp and volRatio > 0.6 and stRatio < 0.25
if showImbZone
if isSellImb
zoneBoxes.push(box.new(bar_index - N + 1, bucketHi, bar_index + 1, bucketLo, ...))
if isBuyImb
zoneBoxes.push(box.new(bar_index - N + 1, bucketHi, bar_index + 1, bucketLo, ...))
if isAbsorp
zoneBoxes.push(box.new(bar_index - N + 1, bucketHi, bar_index + 1, bucketLo, ...))
Imbalances are identified where one side’s volume (buy or sell) exceeds the other by at least Imbalance Ratio. These buckets are marked as buy or sell imbalance zones, indicating aggressive participation from one side.
Absorption is detected by combining a high volume ratio (volRatio) with a low normalized stealth ratio (stRatio). High volume with limited price movement suggests that opposing orders are absorbing flow at that level. Both imbalance and absorption buckets are extended into horizontal zones from the start of the lookback to the current bar, visually emphasizing key support/resistance and liquidity areas.
6. Building Buy, Sell & Stealth Profiles
sellProfile := array.new(bucketCount, 0)
buyProfile := array.new(bucketCount, 0)
stealthProfile := array.new(bucketCount, 0)
Three arrays are used to store Sell Flow, Buy Flow, and Stealth Flow. Bars are processed from oldest to newest so that decay is applied in correct chronological order. For each bar, a volume density (volume / range) is calculated and distributed across the candle range. Bull candles feed buyProfile, bear candles feed sellProfile.
Stealth Flow computes the close-to-close move between consecutive bars, scaled by 1 / (1 + volume). Big moves on low volume produce high stealth values, which are then allocated across the move’s price span into stealthProfile. This yields a three-layer profile per price level: directional volume and stealthy price movement.
BTC - LEVR: Leverage Efficiency & Volume RatioLEVR: Leverage Efficiency & Volume Ratio
Observation-only. Data: IntoTheBlock.
Overview
The Leverage Efficiency & Volume Ratio (LEVR) is a market structure oscillator designed to detect "Paper Bubbles" and "Organic Bottoms" by separating speculative greed from network utility. While most indicators analyze price action, LEVR analyzes market fragility. It operates on the thesis that Sustainable Rallies are driven by Spot/Network Activity, while Fragile Rallies are driven by Derivatives Leverage.
Synergy
How it works with VERI
LEVR is designed to be the tactical counterpart to the fundamental VERI Indicator (Valuation & Entity Ratio Index).
Use VERI for Strategy: To identify Value. (Is Bitcoin cheap? Are Whales buying?)
Use LEVR for Risk: To identify Structure. (Is the current price move real, or is it a leverage bubble about to pop?)
The "Perfect Setup"
The strongest buy signals occur when VERI is in the Accumulation Zone (Whales buying) AND LEVR is in the Organic Zone (Leverage is flushed out) (as it was the case in the Dec 2022 Bear Market Bottom).
Why LEVR is Unique
Standard indicators often fail to contextualize Open Interest:
vs. Raw Open Interest: Raw OI always trends up over time as the market grows. LEVR solves this by normalizing OI against Active Addresses. This reveals when leverage is outpacing actual adoption.
vs. ELR (Estimated Leverage Ratio): Classic ELR divides Open Interest by Exchange Reserves. However, Exchange Reserves are notoriously difficult to track accurately. LEVR uses Active Addresses (Network Utility) as a cleaner, more reliable denominator for network health.
Methodology
The Mathematics: The indicator calculates a normalized Z-Score ratio between two IntoTheBlock datasets:
The Numerator (Greed): Perpetual Open Interest. The total dollar value of all open futures contracts. This represents the "Gambling" capital.
The Denominator (Utility): Active Addresses. The number of unique addresses transacting on-chain. This represents the "Real" user base.
The Formula : LEVR = Z-Score ( Perpetual Open Interest / Active Addresses )
How to Interpret the Visuals
The line color changes dynamically to reflect the current risk regime:
🟥 Speculative Premium (Red Line > 2.0) :
Signal: "Leverage Bubble."
Context: Open Interest is rising significantly faster than User Growth. The rally is fueled by debt.
Risk: High probability of a "Long Squeeze" or liquidation cascade.
🟦 Organic Base (Blue Line < -1.5) :
Signal: "Spot Driven Market."
Context: Speculators have been flushed out, but active network usage remains high. The line turns Blue to signal a healthy opportunity zone.
Risk: Low. Historically marks robust bottoms where hands are strong.
🟧 Neutral (Orange Line) :
The market is in a transition phase between organic growth and speculation.
Settings & Inputs
Users can customize the sensitivity of the Z-Score to fit their trading style (in brackets their current standard value):
Lookback Period (365) : The rolling window used to establish the "Baseline." A 365-day window captures the yearly trend.
Signal Smoothing (7) : A short moving average to reduce daily data noise.
Bubble Zone Top/Bottom (3.0 / 2.0) : The thresholds for the Red Zone. Raising the "Top" value will only show the most extreme, generational leverage bubbles.
Organic Zone Top/Bottom (-1.5 / -2.5) : The thresholds for the Green Zone. Lowering these values requires a deeper "flush" to trigger a signal.
Optimization
This indicator is mathematically optimized for the Daily (1D) timeframe. Using it on lower timeframes may result in noise due to the daily resolution of on-chain data.
Important Note on Historical Data
Please be aware that aggregated global Perpetual Open Interest data only becomes reliable and widely available starting around 2020-2021.
Pre-2021: The indicator will show a flat line or empty values. This is not a bug; it reflects the lack of historical derivatives market data for that period.
2021-Present: The indicator functions fully as intended.
Credits
Concept inspired by the "Estimated Leverage Ratio" (ELR) popularised by CryptoQuant and analysts like Willy Woo. LEVR adapts this concept for TradingView by substituting Exchange Reserves with Network Activity for better reliability.
Disclaimer
This tool is for research purposes only. It visualizes market structure data and does not constitute financial advice.
Tags
bitcoin, btc, open interest, leverage, on-chain, intotheblock, risk, derivatives, levr, veri
Relative Strength Heatmap [BackQuant]Relative Strength Heatmap
A multi-horizon RSI matrix that compresses 20 different lookbacks into a single panel, turning raw momentum into a visual “pressure gauge” for overbought and oversold clustering, trend exhaustion, and breadth of participation across time horizons.
What this is
This indicator builds a strip-style heatmap of 20 RSIs, each with a different length, and stacks them vertically as colored tiles in a single pane. Every tile is colored by its RSI value using your chosen palette, so you can see at a glance:
How many “fast” versus “slow” RSIs are overbought or oversold.
Whether momentum is concentrated in the short lookbacks or spread across the whole curve.
When momentum extremes cluster, signalling strong market pressure or exhaustion.
On top of the tiles, the script plots two simple breadth lines:
A white line that counts how many RSIs are above 70 (overbought cluster).
A black line that counts how many RSIs are below 30 (oversold cluster).
This turns a single symbol’s RSI ladder into a compact “market pressure gauge” that shows not only whether RSI is overbought or oversold, but how many different horizons agree at the same time.
Core idea
A single RSI looks at one length and one timescale. Markets, however, are driven by flows that operate on multiple horizons at once. By computing RSI over a ladder of lengths, you approximate a “term structure” of strength:
Short lengths react to immediate swings and very recent impulses.
Medium lengths reflect swing behaviour and local trends.
Long lengths reflect structural bias and higher timeframe regime.
When many lengths agree, for example 10 or more RSIs all above 70, it suggests broad participation and strong directional pressure. When only a few fast lengths stretch to extremes while longer ones stay neutral, the move is more fragile and more likely to mean-revert.
This script makes that structure visible as a heatmap instead of forcing you to run many separate RSI panes.
How it works
1) Generating RSI lengths
You control three parameters in the calculation settings:
RS Period – the base RSI length used for the shortest strip.
RSI Step – the amount added to each successive RSI length.
RSI Multiplier – a global scaling factor applied after the step.
Each of the 20 RSIs uses:
RSI length = round((base_length + step × index) × multiplier) , where the index goes from 0 to 19.
That means:
RSI 1 uses (len + step × 0) × mult.
RSI 2 uses (len + step × 1) × mult.
…
RSI 20 uses (len + step × 19) × mult.
You can keep the ladder dense (small step and multiplier) or stretch it across much longer horizons.
2) Heatmap layout and grouping
Each RSI is plotted as an “area” strip at a fixed vertical level using histbase to stack them:
RSI 1–5 form Group 1.
RSI 6–10 form Group 2.
RSI 11–15 form Group 3.
RSI 16–20 form Group 4.
Each group has a toggle:
Show only Group 1 and 2 if you care mainly about fast and medium horizons.
Show all groups for a full spectrum from very short to very long.
Hide any group that feels redundant for your workflow.
The actual numeric RSI values are not plotted as lines. Instead, each strip is drawn as a horizontal band whose fill color represents the current RSI regime.
3) Palette-based coloring
Each tile’s color is driven by the RSI value and your chosen palette. The script includes several palettes:
Viridis – smooth green to yellow, good for subtle reading.
Jet – strong blue to red sequence with high contrast.
Plasma – purple through orange to yellow.
Custom Heat – cool blues to neutral grey to hot reds.
Gray – grayscale from white to black for minimalistic layouts.
Cividis, Inferno, Magma, Turbo, Rainbow – additional scientific and rainbow-style maps.
Internally, RSI values are bucketed into ranges (for example, below 10, 10–20, …, 90–100). Each bucket maps to a unique colour for that palette. In all schemes, low RSI values are mapped to the “cold” or darker side and high RSI values to the “hot” or brighter side.
The result is a true momentum heatmap:
Cold or dark tiles show low RSI and oversold or compressed conditions.
Mid tones show neutral or mid-range RSI.
Warm or bright tiles show high RSI and overbought or stretched conditions.
4) Bull and bear breadth counts
All 20 RSI values are collected into an array each bar. Two counters are then calculated:
Bull count – how many RSIs are above 70.
Bear count – how many RSIs are below 30.
These are plotted as:
A white line (“RSI > 70 Count”) for the overbought cluster.
A black line (“RSI < 30 Count”) for the oversold cluster.
If you enable the “Show Bull and Bear Count” option, you get an immediate reading of how many of the 20 horizons are stretched at any moment.
5) Cluster alerts and background tagging
Two alert conditions monitor “strong cluster” regimes:
RSI Heatmap Strong Bull – triggers when at least 10 RSIs are above 70.
RSI Heatmap Strong Bear – triggers when at least 10 RSIs are below 30.
When one of these conditions is true, the indicator can tint the background of the chart using a soft version of the current palette. This visually marks stretches where momentum is extreme across many lengths at once, not just on a single RSI.
What it plots
In one oscillator window, the indicator provides:
Up to 20 horizontal RSI strips, each representing a different RSI length.
Color-coded tiles reflecting the current RSI value for each length.
Group toggles to show or hide each block of five RSIs.
An optional white line that counts how many RSIs are above 70.
An optional black line that counts how many RSIs are below 30.
Optional background highlights when the number of overbought or oversold RSIs passes the strong-cluster threshold.
How it measures breadth and pressure
Single-symbol breadth
Breadth is usually defined across a basket of symbols, such as how many stocks advance versus decline. This indicator uses the same concept across time horizons for a single symbol. The question becomes:
“How many different RSI lengths are stretched in the same direction at once?”
Examples:
If only 2 or 3 of the shortest RSIs are above 70, bull count stays low. The move is fast and local, but not yet broadly supported.
If 12 or more RSIs across short, medium and long lengths are above 70, the bull count spikes. The move has broad momentum and strong upside pressure.
If 10 or more RSIs are below 30, bear count spikes and you are in a broad oversold regime.
This is breadth of momentum within one market.
Market pressure gauge
The combination of heatmap tiles and breadth lines acts as a pressure gauge:
High bull count with warm colors across most strips indicates strong upside pressure and crowded long positioning.
High bear count with cold colors across most strips indicates strong downside pressure and capitulation or forced selling.
Low counts with a mixed heatmap indicate neutral pressure, fragmented flows, or range-bound conditions.
You can treat the strong-cluster alerts as “extreme pressure” signals. When they fire, the market is heavily skewed in one direction across many horizons.
How to read the heatmap
Horizontal patterns (through time)
Look along the time axis and watch how the colors evolve:
Persistent hot tiles across many strips show sustained bullish pressure and trend strength.
Persistent cold tiles across many strips show sustained bearish pressure and weak demand.
Frequent flipping between hot and cold colours indicates a choppy or mean-reverting environment.
Vertical structure (across lengths at one bar)
Focus on a single bar and read the column of tiles from top to bottom:
Short RSIs hot, long RSIs neutral or cool: early trend or short-term fomo. Price has moved fast, longer horizons have not caught up.
Short and long RSIs all hot: mature, entrenched uptrend. Broad participation, high pressure, greater risk of blow-off or late-entry vulnerability.
Short RSIs cold but long RSIs mid to high: pullback in a higher timeframe uptrend. Dip-buy and continuation setups are often found here.
Short RSIs high but long RSIs low: countertrend rallies within a broader downtrend. Good hunting ground for fades and short entries after a bounce.
Bull and bear breadth lines
Use the two lines as simple, numeric breadth indicators:
A rising white line shows more RSIs pushing above 70, so bullish pressure is expanding in breadth.
A rising black line shows more RSIs pushing below 30, so bearish pressure is expanding in breadth.
When both lines are low and flat, few horizons are extreme and the market is in mid-range territory.
Cluster zones
When either count crosses the strong threshold (for example 10 out of 20 RSIs in extreme territory):
A strong bull cluster marks a broadly overbought regime. Trend followers may see this as confirmation. Mean-reversion traders may see it as a late-stage or blow-off context.
A strong bear cluster marks a broadly oversold regime. Downtrend traders see strong pressure, but the risk of sharp short-covering bounces also increases.
Trading applications
Trend confirmation
Use the heatmap and breadth lines as a trend filter:
Prefer long setups when the heatmap shows mostly mid to high RSIs and the bull count is rising.
Avoid fresh shorts when there is a strong bull cluster, unless you are specifically trading exhaustion.
Prefer short setups when the heatmap is mostly low RSIs and the bear count is rising.
Avoid aggressive longs when a strong bear cluster is active, unless you are trading reflexive bounces.
Mean-reversion timing
Treat cluster extremes as exhaustion zones:
Look for reversal patterns, failed breakouts, or order flow shifts when bull count is very high and price starts to stall or diverge.
Look for reflexive bounce potential when bear count is very high and price stops making new lows or shows absorption at the lows.
Use the palette and counts together: hot tiles plus a peaking white line can mark blow-off conditions, cold tiles plus a peaking black line can mark capitulation.
Regime detection and risk toggling
Use the overall shape of the ladder over time:
If upper strips stay warm and lower strips stay neutral or warm for extended periods, the market is in an uptrend regime. You can justify higher risk for long-biased strategies.
If upper strips stay cold and lower strips stay neutral or cold, the market is in a downtrend regime. You can justify higher risk for short-biased strategies or defensive positioning.
If colours and counts flip frequently, you are likely in a range or choppy regime. Consider reducing size or using more tactical, short-term strategies.
Multi-horizon synchronization
You can think of each RSI length as a proxy for a different “speed” of the same market:
When only fast RSIs are stretched, the move is local and less robust.
When fast, medium and slow RSIs align, the move has multi-horizon confirmation.
You can require a minimum bull or bear count before allowing your main strategy to engage.
Spotting hidden shifts
Sometimes price appears flat or drifting, but the heatmap quietly cools or warms:
If price is sideways while many hot tiles fade toward neutral, momentum is decaying under the surface and trend risk is increasing.
If price is sideways while many cold tiles climb back toward neutral, selling pressure is decaying and the tape is repairing itself.
Settings overview
Calculation Settings
RS Period – base RSI length for the shortest strip.
RSI Step – the increment added to each successive RSI length.
RSI Multiplier – scales all generated RSI lengths.
Calculation Source – the input series, such as close, hlc3 or others.
Plotting and Coloring Settings
Heatmap Color Palette – choose between Viridis, Jet, Plasma, Custom Heat, Gray, Cividis, Inferno, Magma, Turbo or Rainbow.
Show Group 1 – toggles RSI 1–5.
Show Group 2 – toggles RSI 6–10.
Show Group 3 – toggles RSI 11–15.
Show Group 4 – toggles RSI 16–20.
Show Bull and Bear Count – enables or disables the two breadth lines.
Alerts
RSI Heatmap Strong Bull – fires when the number of RSIs above 70 reaches or exceeds the configured threshold (default 10).
RSI Heatmap Strong Bear – fires when the number of RSIs below 30 reaches or exceeds the configured threshold (default 10).
Tuning guidance
Fast, tactical configurations
Use a small base RS Period, for example 2 to 5.
Use a small RSI Step, for tight clustering around the fast horizon.
Keep the multiplier near 1.0 to avoid extreme long lengths.
Focus on Group 1 and Group 2 for intraday and short-term trading.
Swing and position configurations
Use a mid-range RS Period, for example 7 to 14.
Use a moderate RSI Step to fan out into slower horizons.
Optionally use a multiplier slightly above 1.0.
Keep all four groups enabled for a full view from fast to slow.
Macro or higher timeframe configurations
Use a larger base RS Period.
Use a larger RSI Step so the top of the ladder reaches very slow lengths.
Focus on Group 3 and Group 4 to see structural momentum.
Treat clusters as regime markers rather than frequent trading signals.
Notes
This indicator is a contextual tool, not a standalone trading system. It does not model execution, spreads, slippage or fundamental drivers. Use it to:
Understand whether momentum is narrow or broad across horizons.
Confirm or filter existing signals from your primary strategy.
Identify environments where the market is crowded into one side.
Distinguish between isolated spikes and truly broad pressure moves.
The Relative Strength Heatmap is designed to answer a simple but powerful question:
“How many versions of RSI agree with what I am seeing on the chart?”
By compressing those answers into a single panel with clear colour coding and breadth lines, it becomes a practical, visual gauge of momentum breadth and market pressure that you can overlay on any trading framework.
Filter Trend1. Indicator Name
Premium EMA Ribbon Filter (Pro Version)
(Advanced Trend & Momentum Filtering System Based on EMA Ribbons)
2. One-Line Introduction
A professional trend-analysis indicator that blends an advanced noise-filtering algorithm with an EMA ribbon system to extract only the pure bullish/bearish trend while smoothing out market noise.
3. Overall Description (7+ lines)
The Premium EMA Ribbon Filter is more than just a set of EMAs.
It analyzes the structure of a fast, medium, and slow EMA ribbon—along with the spacing and alignment between them—to determine whether the market is in a bullish trend, bearish trend, or a neutral/noise-heavy zone.
The core of this indicator is its noise-reduction algorithm and trend-strength calculation system.
Instead of relying on simple EMA cross signals, it evaluates how consistently the ribbon maintains bullish/bearish alignment over a specified period and highlights only strong trends with color coding, while weak or noisy areas are displayed in gray.
This helps traders avoid confusing or false signals and clearly focus only on the “meaningful zones.”
A Triple-Smoothing System is applied to create smoother, more refined ribbon movements, forming a stable “premium trend curve” that is less affected by short-term volatility.
As a result, this indicator works effectively for scalping, swing trading, and long-term trend following—staying true to the principle of removing noise and highlighting only the core market flow.
4. Short Advantages (6 items)
① Complete Noise Filtering
Using EMA ribbon comparison + tolerance logic, false reversals are largely eliminated, leaving only stable trend phases.
② Highly Readable Color System
Bullish trends are mint, bearish trends are red, and neutral/noise zones are gray—instantly visualizing market conditions.
③ Trend Strength Visualization
Not only trend direction but also trend strength is displayed via dynamic color transparency.
④ Smooth, Premium-Style Ribbon Design
Triple-smoothing creates a refined, luxury-level smoothness in movement.
⑤ Works Across All Timeframes
From 1-minute scalping to daily/weekly macro trend analysis.
⑥ Excellent Real-Trading Compatibility
Works extremely well when combined with ATR, SuperTrend, and volume-based indicators.
Indicator Manual (Required Section)
📌 Understanding the Core Concept
The indicator uses three EMAs (e.g., 20/50/100) arranged as a ribbon to analyze the structural alignment of the trend.
When the EMAs are cleanly aligned Top → Middle → Bottom, the market is in a bullish trend.
When aligned Bottom → Middle → Top, the market is in a bearish trend.
The indicator further evaluates the ribbon spread (gap) and the consistency of alignment to compute trend strength.
Noisy market conditions are shaded gray to clearly indicate “uncertain/indecisive” zones.
⚙️ Settings Description
Option Description
Fast EMA Most sensitive EMA; detects early trend signals
Mid EMA Stabilizes the primary trend direction
Slow EMA Defines the broader, long-term trend flow
Trend Lookback The period used to analyze trend strength
Noise Tolerance (%) Higher values = stronger noise removal
Smoothing Steps Controls how smooth the ribbon becomes
📈 Example Recognition
A bullish continuation/entry scenario forms when:
EMAs align in the order Fast → Mid → Slow (top side)
Ribbon color shifts into mint (strong bullish trend)
The ribbon begins to expand while price stays above the ribbon
📉 Example Recognition
A bearish continuation/entry occurs when:
EMAs align Fast → Mid → Slow (bottom side)
Ribbon color remains red
After contracting, the ribbon expands again during renewed downside strength
🧪 Recommended Usage
Combine with volume-based indicators (OBV, Volume Profile) → enhanced strong-trend detection
Use with SuperTrend or ATR Stop → clearer stop-loss placement
Combine with RSI/Stoch → avoid counter-trend entries in overheated conditions
Higher leverage traders should use higher tolerance settings
🔒 Cautions
EMA ribbons are trend-following tools; signals may weaken in ranging/sideways markets.
Never rely solely on this indicator—always confirm with volume, price patterns, or structure.
Very low Lookback values may cause excessive re-entry signals.
In high-volatility environments, ribbon spacing can contract/expand rapidly—use with caution.
able zone# able zone
## 📋 Overview
**able zone** is an advanced Support & Resistance zone detection indicator optimized for **15-minute timeframe trading**. It combines Price Action, Volume Profile, and intelligent zone analysis to identify high-probability trading areas with precise entry and exit points.
## 🎯 Core Features
### 1. **Zone Detection Methods**
- **Auto Detect**: Automatically finds the best zones using combined analysis
- **Price Action**: Based on pivot points and price structure
- **Volume Profile**: Identifies High Volume Nodes (HVN) where most trading occurred
- **Combined**: Uses all methods together for comprehensive analysis
### 2. **Zone Types & Colors**
- 🟢 **Support Zones** (Green): Price tends to bounce up from these areas
- 🔴 **Resistance Zones** (Red): Price tends to reverse down from these areas
- 🟣 **HVN Zones** (Purple): High volume areas from Volume Profile
- **Strong Zones**: Darker colors indicate zones with more touches (higher reliability)
### 3. **Zone Strength Indicators**
- **Labels**: "S3" = Support with 3 touches, "R5" = Resistance with 5 touches
- **Touch Count**: More touches = stronger zone
- **Min Touch Count Setting**: Adjust to filter weak zones (default: 3)
## ⚙️ Settings Guide
### **Zone Detection Settings**
- **Detection Method**: Choose your preferred analysis method
- **Lookback Period** (50-500): How many bars to analyze (default: 200)
- For 15min: 200 bars = ~50 hours of data
- Shorter = Recent zones only
- Longer = Historical zones included
- **Min Touch Count** (2-10): Minimum touches to qualify as a zone (default: 3)
- **Zone Thickness %** (0.1-2.0): How thick the zones appear (default: 0.5)
- Based on ATR for dynamic sizing on 15min chart
### **Zone Colors**
Fully customizable colors for:
- Support Zone (default: Green)
- Resistance Zone (default: Red)
- Strong Support/Resistance (darker shades)
- Volume Profile Zone (default: Purple)
### **Zone Touch Detection**
- **Enable Touch Alerts**: Get notifications when price enters zones
- **Touch Distance %** (0.1-1.0): How close to zone counts as "touch" (default: 0.3%)
- On 15min chart, this gives early warning signals
- **Show Touch Markers**: Visual indicators when price touches zones
- 🔺 = Support touch (potential buy)
- 🔻 = Resistance touch (potential sell)
- 💎 = HVN touch (watch for breakout/rejection)
### **Volume Profile Integration**
- **Show VP Zones**: Display high volume node zones
- **VP Resolution** (20-50): Number of price levels analyzed (default: 30)
- **POC Line** (orange): Point of Control - highest volume price level
- **POC Width**: Line thickness (1-3)
- **Show HVN**: Display High Volume Node zones
- **HVN Threshold** (0.5-0.9): Volume % to qualify as HVN (default: 0.7)
### **Display Options**
- **Zone Labels**: Show S/R labels with touch count
- **Zone Border Lines**: Dotted lines at zone boundaries
- **Extend Zones Right**: Project zones into future
- **Max Visible Zones** (5-50): Maximum number of zones displayed (default: 20)
- Adjust based on chart clarity needs
- **Info Table**: Real-time information dashboard
## 📊 Info Table Explained
The info table (top-right corner) provides real-time zone analysis:
### **Row 1: ZONE Header**
- Shows current timeframe (15m)
- Total active zones
- "able" branding
### **Row 2: 🎯 TOUCH Status**
- **RES**: Currently touching resistance (⚠️ potential reversal down)
- **SUP**: Currently touching support (🚀 potential bounce up)
- **HVN**: Currently in high volume area (⚡ watch for direction)
- **FREE**: Not near any zone (⏳ wait for setup)
- Progress bar shows proximity strength
- Arrows indicate zone type
### **Row 3: 🟢 SUP - Support Zones**
- Number of active support zones below current price
- Progress bar shows relative quantity
- More support = stronger floor
### **Row 4: 🔴 RES - Resistance Zones**
- Number of active resistance zones above current price
- Progress bar shows relative quantity
- More resistance = stronger ceiling
### **Row 5: 🟣 HVN - High Volume Nodes**
- Number of HVN zones (from Volume Profile)
- These are areas where most trading activity occurred
- Often act as magnets for price
### **Row 6: 📍 NEAR - Nearest Zone**
- Shows closest zone type (SUP/RES/HVN)
- Distance in % to nearest zone
- Arrow shows if zone is above or below
### **Row 7: POSITION - Price Position**
- **HIGH**: Price near range top (70%+) - watch for resistance
- **MID**: Price in middle range (30-70%) - neutral zone
- **LOW**: Price near range bottom (<30%) - watch for support
- Shows exact position % in lookback range
### **Row 8: ═ SIGNAL ═**
- **🚀 BUY**: Touching support zone (entry opportunity)
- **⚠️ SELL**: Touching resistance zone (exit/short opportunity)
- **⚡ WATCH**: At HVN (prepare for breakout or rejection)
- **⏳ WAIT**: No clear setup (be patient)
## 🎓 Trading Strategy for 15-Minute Timeframe
### **Basic Setup**
1. Set timeframe to **15 minutes**
2. Use **Auto Detect** or **Combined** method
3. Set **Lookback Period**: 200 bars (~50 hours)
4. Set **Min Touch Count**: 3 (proven zones)
### **Entry Signals**
#### **Long Entry (Buy)**
- Price touches green support zone
- Table shows "🚀 BUY" signal
- Look for bullish candle pattern (hammer, engulfing)
- Volume increases on bounce
- **Best Entry**: Bottom of support zone
- **Stop Loss**: Below support zone (1-2 ATR)
- **Target**: Next resistance zone or 2:1 RR
#### **Short Entry (Sell)**
- Price touches red resistance zone
- Table shows "⚠️ SELL" signal
- Look for bearish candle pattern (shooting star, engulfing)
- Volume increases on rejection
- **Best Entry**: Top of resistance zone
- **Stop Loss**: Above resistance zone (1-2 ATR)
- **Target**: Next support zone or 2:1 RR
#### **HVN Breakout Strategy**
- Price approaches purple HVN zone
- Table shows "⚡ WATCH"
- Wait for breakout with strong volume
- **If breaks up**: Go long, target next resistance
- **If breaks down**: Go short, target next support
### **Zone Strength Rules**
- **S5+ or R5+**: Very strong zones (high probability)
- **S3-S4 or R3-R4**: Reliable zones (good setups)
- **S2 or R2**: Weak zones (use caution)
### **Best Trading Times (15min)**
- **London Open**: 08:00-12:00 GMT (high volume)
- **NY Open**: 13:00-17:00 GMT (high volatility)
- **Overlap**: 13:00-16:00 GMT (best setups)
- **Avoid**: Asian session low volatility periods
### **Risk Management**
- Never risk more than 1-2% per trade
- Use stop loss ALWAYS (place outside zones)
- Take partial profits at 1:1, let rest run to 2:1 or 3:1
- If price consolidates in zone > 3 candles, exit
## ⚠️ Important Notes
### **When Zones Work Best**
✅ Clear trending markets
✅ After significant price movements
✅ At session opens (London/NY)
✅ When multiple zones align
✅ Strong zone with 5+ touches
### **When to Be Cautious**
❌ During major news releases (use economic calendar)
❌ Very low volume periods
❌ Price consolidating inside zone
❌ Weak zones with only 2 touches
❌ Conflicting signals from multiple indicators
### **15-Minute Specific Tips**
- **Lookback 200**: Captures 2-3 trading days of zones
- **Touch Distance 0.3%**: Early signals on 15min moves
- **Max Zones 20**: Keeps chart clean but comprehensive
- **Watch POC**: Often acts as pivot on 15min
- **Volume spike + zone touch** = high probability setup
## 🔧 Recommended Settings for 15min
### **Conservative Trader**
- Detection Method: Combined
- Min Touch Count: 4
- Max Zones: 15
- Touch Distance: 0.2%
### **Aggressive Trader**
- Detection Method: Auto Detect
- Min Touch Count: 2
- Max Zones: 25
- Touch Distance: 0.5%
### **Volume Profile Focused**
- Detection Method: Volume Profile
- Show HVN: Yes
- HVN Threshold: 0.6
- Show POC: Yes
## 📈 Example Trade Scenario (15min)
**Setup**: BTC/USD on 15-minute chart
1. Price approaching green support zone at $42,000
2. Zone label shows "S4" (touched 4 times)
3. Table shows "🚀 BUY" signal
4. Volume increasing on approach
5. Bullish hammer candle forms
**Entry**: $42,050 (bottom of zone)
**Stop Loss**: $41,900 (below zone)
**Target 1**: $42,350 (2:1 RR)
**Target 2**: Next resistance at $42,650
**Result**: Price bounces, hits Target 1 in 3 candles (~45min)
## 💡 Pro Tips
1. **Combine with trend**: Trade in direction of higher timeframe trend
2. **Multiple touches**: Zones with 5+ touches are highest probability
3. **Volume confirmation**: Always check volume on zone touch
4. **POC magnet**: Price often returns to POC line
5. **False breakouts**: If price barely breaks zone and returns = strong signal
6. **Zone-to-zone**: Trade from support to resistance, resistance to support
7. **Time of day**: Best setups occur during peak volume hours
8. **Chart timeframe**: Use 1H to confirm trend, 15min for entry
9. **News avoidance**: Close trades before high-impact news
10. **Zone clusters**: Multiple zones together = strong area
---
**Created by able** | Optimized for 15-minute trading
**Version**: 1.0 | Compatible with TradingView Pine Script v5
For support and updates, enable alerts and monitor the info table in real-time!
Institutional Valuation SuiteStandard volatility indicators often fail on long-term growth charts because they measure volatility in dollars rather than percentages. This causes bands to break or become irrelevant during exponential price moves (e.g., Bitcoin going from $1,000 to $100,000).
The Institutional Valuation Suite solves this by utilising Geometric (Log-Normal) Standard Deviation. This allows the model to adapt to the asset's price scale, providing accurate valuation zones regardless of price magnitude.
The model functions as a mean-reversion tool, visualizing price as an elastic band anchored to a "Fair Value" baseline. It identifies when the asset is statistically overextended (Bubble/FOMO) or undervalued (Deep Discount).
Key Features
1. Log-Normal Math Engine
Geometric Mode (Default): Calculates volatility in percentage terms. Essential for Crypto and Growth Stocks.
Arithmetic Mode: Available for Forex or range-bound assets where linear standard deviation is preferred.
2. Sentiment Heat map
Visualises valuation directly on the candles to remove interpretation bias.
GREEN: Deep Value / Accumulation Zone (< -0.5σ).
ORANGE: Overvalued / FOMO Zone (> 2.0σ).
RED: Speculative Bubble Zone (> 3.0σ).
3. Reversion Signals
"VALUE RECLAIM": Triggers when price re-enters the bottom band from below, filtering out "falling knife" scenarios.
"TOP EXIT": Triggers when price breaks down from the speculative top zone.
4. Statistical Dashboard
Displays the real-time Z-Score to quantify how "stretched" the price is relative to its baseline.
> 3.0: Statistical Anomaly (Top).
< -0.5: Statistical Discount (Bottom).
Optimisation Cheat Sheet
The "Cycle Length" input determines the lookback period for the baseline. Recommended settings:
Crypto Macro: 200 (Approx. 4 Years).
Altcoins: 100 (Approx. 2 Years).
Stocks (S&P 500): 50 (1 Year Trend).
Day Trading: Set "Timeframe Lock" to "Chart".
Technical Note
This indicator uses strict offset logic (`barmerge.lookahead_on`) to ensure historical consistency. The signals displayed on historical bars match exactly what would have appeared in real-time.
*Disclaimer: This script provides statistical analysis based on historical volatility and does not constitute financial advice.*
The Strat Lite [rdjxyz]◆ OVERVIEW
The Strat Lite is a stripped down version of the Strat Assistant indicator by rickyzcarroll—focusing on visual simplicity and script performance. If you're new to The Strat, you may prefer the Strat Assistant as a learning aid.
◇ FEATURES REMOVED FROM THE ORIGINAL SCRIPT
Candle Numbering & Up/Down Arrows
Previous Week High & Low Lines
Previous Day High & Low Lines
Action Wick Percentage
Actionable Signals Plot
Strat Combo Plots
Extensive Alerts
◇ FEATURES KEPT FROM THE ORIGINAL SCRIPT
Full Timeframe Continuity
Candle Coloring
◇ FEATURES ADDED TO THE ORIGINAL SCRIPT
Failed 2 Down Classification
Failed 2 Up Classification
◆ DETAILS
The Strat is a trading methodology developed by Rob Smith that offers an objective approach to trading by focusing on the 3 universal scenarios regarding candle behavior:
SCENARIO ONE
The 1 Bar - Inside Bar: A candle that doesn't take out the highs or the lows of the previous candle; aka consolidation.
These are shown as gray candles by default.
SCENARIO TWO
The 2 Bar - Directional Bar: A candle that takes out one side of the previous candle; aka trending (or at least attempting to trend).
SCENARIO THREE
The 3 Bar - Outside Bar: A candle that takes out both sides of the previous candle; aka broadening formation.
In addition to Rob's 3 universal scenarios, this indicator identifies two variations of 2 bars:
Failed 2 up: A candle that takes out the high of the previous candle but closes bearish.
Failed 2 down: A candle that takes out the low of the previous candle but closes bullish.
◆ SETTINGS
◇ INPUTS
FTC (FULL TIMEFRAME CONTINUITY)
Show/hide FTC plots
Offset FTC plots from current bar
◇ STYLE
STRAT COLORS
Color 0 (Failed 2 Up) - Default is fuchsia
Color 1 (Failed 2 Down) - Default is teal
Color 2 (Inside 1) - Default is gray
Color 3 (Outside 3) - Default is dark purple
Color 4 (2 up) - Default is aqua
Color 5 (2 down) - Default is white
◆ USAGE
It's recommended to use The Strat Lite with a top down analysis so you can find lower timeframe positions with higher timeframe context.
◇ TOP DOWN ANALYSIS
MONTHLY LEVELS
Starting on a monthly chart, the previous month's high and low are manually plotted.
WEEKLY LEVELS
Dropping down to a weekly chart, the previous week's high and low are manually plotted.
DAILY LEVELS
Dropping down to a daily chart, the previous day's high and low are manually plotted.
12H LEVELS
Dropping down to a 12h chart, the previous 12h's high and low are manually plotted.
ANALYSIS
The monthly low was broken, creating a lower low (aka a broadening formation), signalling potential exhaustion risk, which can be a catalyst for reversals. The daily candle that tested the monthly low closed as a Failed 2 Down—potentially an early sign of a reversal. With these 2 confluences, it's reasonable to expect the next daily candle to be a 2 Up. Now it's time to look for a lower timeframe entry.
◇ LOWER TIMEFRAME POSITION
HOURLY PRICE ACTION
Dropping down to an hourly chart, we're anticipating a 2 Up on the daily timeframe, so we're looking for a bullish pattern to enter a position long. I personally like the 6:00 AM UTC-5 hourly candle, as it's the midpoint of the day (for futures).
In this specific example, we see the opening gap was filled and there's a potential 2-1-2 bullish reversal set up.
At this point, price can either do one of 5 things:
Form another 1 (inside) candle
Form a 2 up (directional) candle
Form a 2 down (directional) candle
Form a 2 up, fail, and potentially flip to form a bearish 3 (outside) candle
Form a 2 down, fail, and potentially flip to form a bullish 3 (outside) candle
Knowing the finite potential outcomes helps us set up our positions, manage them accordingly, and flip bias if needed.
POSITION SETUP
Here we can set up a position long AND short. To go long, we set a buy stop at the 1h high and stop loss just below the 50% level of the inside candle; to go short, we set a sell stop at 1h low and stop loss just above the 50% level of the inside candle.
If the short gets triggered first, we can wait for price to move in our favor before cancelling the buy order. If the short becomes a failed 2 down, potentially reversing to become a bullish 3, we can either wait for the stop loss to trigger and for the long position to trigger OR we can move the buy stop to our short stop loss and move the long stop loss to the low of the 1h candle.
POSITION REFINEMENT
For an even tighter risk-to-reward, we can drop to a lower timeframe and look for setups that would be an early trigger of the 1h entry. Just know, the lower you go the more noise there is—increasing risk of getting stopped out before the 1h trigger.
Above are 30m refined entries.
In this example, the long buy stop was triggered. It closed bullish, so the sell stop order can be cancelled.
◇ TARGETS & POSITION MANAGEMENT
TARGETS
These depend on whether you intend to scalp, day trade, or swing trade, but targets are typically the highs of previous candles (when bullish) and lows of previous candles (when bearish). It's advised to be cautious of swing pivots as there's a risk of exhaustion and reversal at these levels.
In this example, the nearest target was the previous 12h high and the next target was the previous day high; if you're a swing trader, you could target previous week's high and previous month's high.
POSITION MANAGEMENT
This largely depends on your risk tolerance, but it's common to either:
Move stop loss slightly into profit
Trail stop loss behind higher highs (bullish) or lower lows (bearish)
Scale out of positions at potential pivot points, leaving a runner
Scale into positions on pullbacks on the way to target
◆ WRAP UP
As demonstrated, The Strat Lite offers a stripped down version of the Strat Assistant—making it visually simple for more experienced Strat traders. By following a top-down approach with The Strat methodology, you can find high probability setups and manage risk with relative ease.
◆ DISCLAIMER
This indicator is a tool for visual analysis and is intended to assist traders who follow The Strat methodology. As with any trading methodology, there's no guarantee of profits; trading involves a high degree of risk and you could lose all of your invested capital. The example shown is of past performance and is not indicative of future results and does not constitute and should not be construed as investment advice. All trading decisions and investments made by you are at your own discretion and risk. Under no circumstances shall the author be liable for any direct, indirect, or incidental damages. You should only risk capital you can afford to lose.
Today Range Calculator1. Indicator Name
Today (Today’s Volatility)
2. One-line Introduction
Displays real-time 30-day historical volatility (HV30) as a compact table on the chart, helping traders instantly assess market risk levels.
3. General Overview
Today ↑↓ is a lightweight informational widget that calculates and displays the 30-day Historical Volatility (HV30) of the asset in real time.
Using logarithmic returns over the past 30 periods, the script computes variance and then annualizes it to express volatility as a percentage (%) per year.
The result is shown in a clean 1x1 table cell, which can be positioned anywhere on the chart—top/bottom, left/right—depending on your preference.
This makes it easy to quickly evaluate whether the current market is high-risk (volatile) or stable, without cluttering the chart.
It’s especially useful for position sizing, risk management, volatility-based entry/exit decisions, and as a filter for breakout strategies.
Built with performance in mind, the script uses minimal system resources and can be used alongside any indicator or strategy without interference.
4. Key Advantages
📈 Real-time HV30 Display
Calculates and displays 30-day historical volatility using annualized log return variance.
📍 Custom Table Positioning
Place the volatility display in any corner of the chart for optimal visibility.
🧮 Accurate Log Return Calculation
Uses logarithmic returns to ensure precise volatility representation over time.
🎯 Quick Market Sentiment Read
Helps you determine at a glance whether the asset is in a calm or volatile environment.
🧼 Minimalist Design
Clean 1-cell table format keeps your chart readable and organized.
🚀 Ultra-Lightweight Script
Runs efficiently with negligible impact on chart performance.
📘 Indicator User Guide
📌 Basic Concept
Today ↑↓ calculates 30-day Historical Volatility (HV30) by analyzing the asset’s log returns over the past 30 bars.
The result is annualized and shown as a percentage to reflect volatility in standardized terms.
Useful for gauging risk levels and strategy suitability in current market conditions.
⚙️ Settings Explained
Table Position: Choose where the volatility table appears:
Top Left / Top Right / Bottom Left / Bottom Right
📈 High Volatility Example
HV30 > 50% indicates a volatile environment
Suggests wider stop-losses, cautious position sizing, or favoring breakout strategies
📉 Low Volatility Example
HV30 < 15% suggests a calm market or range-bound behavior
Useful as a signal for upcoming volatility expansions or breakout preparations
🧪 Recommended Use Cases
Position Sizing: Scale position size based on HV30 readings
Strategy Filter: Activate certain systems only when volatility meets predefined conditions
Breakout Timing: Identify low-volatility zones as potential breakout opportunities
🔒 Precautions
This indicator does not generate buy/sell signals; it is a volatility reference tool
HV thresholds vary across asset classes—adjust interpretation accordingly
Since HV30 is historical, it may lag during rapid market changes
Dynamic Fair-Value Ribbon Pro @darshakssc1. What This Indicator Is (In Simple Terms)
The Dynamic Fair-Value Ribbon Pro is a visual tool that helps you see how price behaves around a statistically derived “fair-value zone”:
A colored ribbon/cloud marks a central “fair” area.
Areas above the ribbon are labeled as “Unfair High Zone”.
Areas below the ribbon are labeled as “Unfair Low Zone”.
A small state panel tells you where price currently sits relative to this ribbon.
All calculations are based only on historical price, volume, and volatility.
It does not predict future price, does not give buy/sell signals, and is not financial advice.
2. Adding the Indicator
Open a chart on TradingView.
Click on Indicators .
Search for “Dynamic Fair-Value Ribbon Pro” .
Click to add it to your chart.
You will see:
A cloud/ribbon around price.
Colored bars when price is outside the ribbon.
A panel in the top right describing the current state.
3. Core Concept: Fair vs Unfair Zones (Analytical Only)
The indicator tries to answer a descriptive question:
“Where is price trading relative to a historically derived central area?”
It does this by:
Calculating a central value (“fair mid”).
Building a band around that mid.
Coloring the chart depending on whether price is inside or outside that band.
It is not claiming that:
Price “must” return to the band.
Price is “overvalued” or “undervalued”.
Any state is good or bad.
It is simply a visual classification tool .
4. Engine Modes — How the Ribbon Is Calculated
Under “Fair-Value Engine” you can choose:
4.1 Mode 1: Range
Looks back over a chosen number of bars (default: 100).
Finds the highest high and lowest low in that window.
Defines a central “slice” of that range as the fair-value ribbon :
Range Mode: Lower Percent → bottom boundary of the slice (e.g., 30%).
Range Mode: Upper Percent → top boundary of the slice (e.g., 70%).
Effect:
The ribbon represents a middle portion of the historical range .
Above the ribbon = “Unfair High Zone” (analytical label only).
Below the ribbon = “Unfair Low Zone”.
This is purely statistical — it does not mean price is wrong or will revert.
4.2 Mode 2: VWAP + Stdev
In this mode, the central value is based on VWAP :
VWAP (Volume-Weighted Average Price) is used as the midline.
A standard deviation envelope is built around VWAP:
VWAP Mode: Stdev Multiplier controls how wide that envelope is.
Effect:
The ribbon shows where price is trading relative to a volume-weighted average .
Again, areas above and below are just described as “unfair” zones in a visual, analytical sense , not a predictive one.
5. ATR Adaptive Width — Making the Ribbon React to Volatility
Under “ATR Adaptive Width” :
Use ATR Adaptive Width:
On: the band width scales with volatility.
Off: band width stays fixed based on Range or VWAP settings.
ATR Length: how many bars to use for ATR.
Reference ATR (% of price): a reference level for normal volatility.
Min Width Scale / Max Width Scale: clamps the scaling so that the band doesn’t get too narrow or too wide.
What this does (analytically):
When volatility (ATR) is higher than the reference, the band can become wider .
When volatility is lower , the band can become narrower .
This is a mathematical rescaling only and does not imply any optimal levels or performance.
6. Visual Elements — What You See on the Chart
6.1 Fair-Value Ribbon (Cloud)
The cloud between Fair Ribbon Low and Fair Ribbon High is the fair zone .
Color can be changed via “Fair Ribbon Color” .
6.2 Midline
If “Show Center Line” is enabled:
A line runs through the middle of the ribbon.
In Range mode, this is the average of the upper and lower band.
In VWAP mode, it’s essentially the VWAP-based mid.
This line is for visual reference only and makes no claims about support, resistance, or reversion.
6.3 Bar Colors
Unfair High Zone: bars are colored with Unfair High Bar Color.
Unfair Low Zone: bars are colored with Unfair Low Bar Color.
Inside the ribbon:
If “Fade Bars Inside Fair Zone” is ON, bars may be more faded/neutral.
These colors are simply classification highlights ; they do not tell you what to do.
6.4 State Panel (Top Right)
If “Show State Panel” is enabled, you’ll see a small box that displays:
Current engine:
Range or VWAP+Stdev.
Current price state:
Inside Ribbon (Fair Zone)
Above Ribbon (Unfair High Zone)
Below Ribbon (Unfair Low Zone)
This is a quick summary of where price sits relative to the computed ribbon.
7. Typical Ways to Use It (Informational Only)
The indicator can help you visually:
See when price is spending time inside a historically defined central zone.
Notice when price is frequently trading outside that zone.
Compare different timeframes (e.g., 5m vs 1h vs 4h) to see how the fair zone shifts.
Experiment with:
Range length (shorter vs longer lookback).
VWAP vs Range mode.
ATR adaptation on/off.
Important:
Any interpretation of these visuals is entirely up to the user.
The script does not tell you to buy, sell, hold, or do anything specific.
8. Limitations and Important Notes
All calculations use past data only (price, volume, volatility).
The ribbon does not guarantee:
that price will revert,
that zones will hold,
or that any outcome will occur.
There are no built-in signals such as “long/short” or automatic entries/exits.
The script is best used as a supporting, visual layer alongside other tools or methods you choose.
9. Disclaimer
This indicator is:
Strictly informational and educational.
Not a trading system or strategy.
Not financial advice or a recommendation.
Not guaranteed to be accurate, complete, or suitable for any specific purpose.
Users should always perform their own research and due diligence.
Past behavior of any visual pattern or zone does not guarantee future behavior.
Mirror Blocks: StrategyMirror Blocks is an educational structural-wave model built around a unique concept:
the interaction of mirrored weighted moving averages (“blocks”) that reflect shifts in market structure as price transitions between layered symmetry zones.
Rather than attempting to “predict” markets, the Mirror Blocks framework visualizes how price behaves when it expands away from, contracts toward, or flips across stacked WMA structures. These mirrored layers form a wave-like block system that highlights transitional zones in a clean, mechanical way.
This strategy version allows you to study how these structural transitions behave in different environments and on different timeframes.
The goal is understanding wave structure, not generating signals.
How It Works
Mirror Blocks builds three mirrored layers:
Top Block (Structural High Symmetry)
Base Block (Neutral Wave)
Bottom Block (Structural Low Symmetry)
The relative position of these blocks — and how price interacts with them — helps visualize:
Compression and expansion
Reversal zones
Wave stability
Momentum transitions
Structure flips
A structure is considered bullish-stack aligned when:
Top > Base > Bottom
and bearish-stack aligned when:
Bottom > Base > Top
These formations create the core of the Mirror Blocks wave engine.
What the Strategy Version Adds
This version includes:
Long Only, Short Only, or Long & Short modes
Adjustable symmetry distance (Mirror Distance)
Configurable WMA smoothing length
Optional trend filter using fast/slow MA comparison
ENTER / EXIT / LONG / SHORT labels for structural transitions
Fixed stop-loss controls for research
A clean, transparent structure with no hidden components
It is optimized for educational chart study, not automated signals.
Intended Purpose
Mirror Blocks is meant to help traders:
Study structural transitions
Understand symmetry-based wave models
Explore how price interacts with mirrored layers
Examine reversals and expansions from a mechanical perspective
Conduct long and short backtesting for research
Develop a deeper sense of market rhythm
This is not a prediction model.
It is a visual and structural framework for understanding movement.
Backtesting Disclaimer
Backtest results can vary depending on:
Slippage settings
Commission settings
Timeframe
Asset volatility
Structural sensitivity parameters
Past performance does not guarantee future results.
Use this as a research tool only.
Warnings & Compliance
This script is educational.
It is not financial advice.
It does not provide signals.
It does not promise profitability.
The purpose is to help visualize structure, not predict price.
The strategy features are simply here to help users study how structural transitions behave under various conditions.
License
Released under the Michael Culpepper Gratitude License (2025).
Use and modify freely for education and research with attribution.
No resale.
No promises of profitability.
Purpose is understanding, not signals.
FVG HTF# FVG HTF — Higher‑Timeframe Fair Value Gaps
## Summary
- Plots higher‑timeframe Fair Value Gap (FVG) zones directly on your current chart.
- Tracks fill progress using four methods: Any Touch, Midpoint Reached, Wick Sweep, Body Beyond.
- Shows optional labels with timeframe source and live fill percentage; label text color is configurable.
- Designed for clean overlays and efficient rendering with limits on graphics and bars processed.
## What It Does
- Detects bullish and bearish FVGs from a chosen timeframe (or the chart timeframe) and renders:
- Zone Top/Bottom lines and a dotted midpoint line
- Semi‑transparent area fill between the edges
- Optional label at the midpoint with a tooltip showing zone prices
- Continuously updates zones forward and removes them when the selected fill condition is met.
## Inputs
- `Enable FVG` (`fvgSH2`): Toggle detection/plotting on/off.
- `Timeframe` (`fvgTF2`): Choose `Chart` or HTFs (`5 Minutes`, `15 Minutes`, `1 Hour`, `4 Hours`, `1 Day`, `1 Week`, `1 Month`).
- `Fill Method` (`fvgFill2`):
- Any Touch — wick or body touches any part of the zone
- Midpoint Reached — price reaches at least the 50% of the zone
- Wick Sweep — wick fully travels past the far edge and back inside (conceptually stricter than touch)
- Body Beyond — candle body closes beyond the opposite edge (strong confirmation)
- `Zones` colors (`fvgCb2`, `fvgCs2`): Bullish/Bearish zone colors.
- `Labels` (`fvgLB2`): Show/Hide on‑chart labels.
- `Label Color` (`fvgLBc2`): Color picker for label text (default: white).
- `Max Bars Back` (`maxBars2`): Limits processing to recent bars for performance.
## Timeframe Rules
- The helper `htfTF` prevents selecting a timeframe lower than the chart. If an invalid lower TF is chosen, it falls back to `timeframe.period`.
- Supports minute, daily, weekly, and monthly aggregations that are safe for intraday/daily/weekly charts.
## Detection Logic
- Uses rolling higher‑timeframe bars constructed on the fly and checks 3‑bar displacement patterns:
- Bullish FVG: current HTF low above the high two bars ago AND previous HTF close above that high, with no direct gap condition.
- Bearish FVG: current HTF high below the low two bars ago AND previous HTF close below that low, with no direct gap condition.
- On detection, the script creates an FVG object with:
- Top/Bottom lines (`lnTop`, `lnBtm`) and midpoint line (`lnAvg`)
- Midpoint label (`lbTxt`) showing source timeframe and updating fill percentage
- Semi‑transparent fill (`linefill`) for visual clarity
## Fill Tracking
- Fill threshold depends on selected method:
- Any Touch: opposite edge
- Midpoint Reached: zone’s midpoint
- Wick Sweep: stricter condition conceptually (implemented as an opposite‑edge threshold)
- Body Beyond: requires close beyond the opposite edge
- Each bar updates label x‑position and line endpoints forward; the label text shows the best fill ratio achieved.
- When the threshold is reached, the FVG (label, lines, fill) is removed from the chart.
## Best Practices
- Start with `Any Touch` to visualize broad repairs; switch to `Body Beyond` for conservative confirmations.
- Use `1 Hour` or `4 Hours` overlays on 5m–15m charts for context; `1 Day` on 1H charts; `1 Week` on daily charts.
- Keep labels on when monitoring fills intraday; hide labels for clean higher‑level context.
- Adjust `Max Bars Back` if performance is impacted by many zones.
## Repainting Notes
- HTF zones are computed on `timeframe.change(tf)` and therefore confirm on HTF bar closes.
- Label endpoints extend each bar; detection itself avoids lookahead bias. For strict confirmation, align entries with HTF closes.
## Limitations
- “Wick Sweep” is treated as a stricter touch to the far edge; it does not enforce a separate “return inside” bar state.
- Label text color applies uniformly to bull/bear labels. If you need separate colors per side, contact the author.
## Credits & Version
- Pine Script v6; © rithsilanew2020
## Quick Start
1. Enable FVG and choose your HTF (e.g., `1 Hour`).
2. Pick a Fill Method (start with `Any Touch`).
3. Select zone colors and label text color.
4. Set `Max Bars Back` as needed for performance.
5. Use labels/tooltip values (Top/Mid/Bottom) to plan entries and manage risk.
Luxy Sector & Industry RS AnalyzerEver wonder why some stocks soar while others in the same sector barely move? Or why your perfectly timed entry still loses money? Possibly the answer can be found in Relative Strength.
The Luxy Sector & Industry RS Analyzer solves a critical problem that most traders overlook: picking strong stocks in strong sectors AND strong industries . It's not enough for a stock to go up - you want stocks that are crushing their competition at both the sector AND industry level. This indicator does the heavy lifting by automatically comparing your stock against its sector ETF, industry ETF, the broader market, sector leader, and industry leader, giving you a complete multi-level picture of relative performance.
What makes this different?
- Automatic sector AND industry detection - no manual setup required
- Multi-level hierarchy analysis: Market → Sector → Industry → Stock
- Multi-timeframe analysis (1 month to 1 year) in one glance
- Industry ETF mapping (30+ industries covered)
- Clear 0-100 scoring system with letter grades (A+ to F)
- Works on stocks, crypto, forex, and commodities
- Real-time updates with anti-repaint protection
Think of it as your performance dashboard - instantly showing you if you're trading a champion or a laggard at every level of the market hierarchy.
METHODOLOGY & ATTRIBUTION
This indicator is based on classical Relative Strength (RS) analysis principles from technical analysis. RS methodology compares an asset's price performance against a benchmark to identify relative outperformance or underperformance. This concept has been used by professional traders and institutions for decades.
Key Concepts Used:
Relative Strength (RS) - Classical technical analysis concept measuring comparative performance
Multi-Level Hierarchy Analysis - Market → Sector → Industry → Stock comparison
Sector Rotation Analysis - Identifying which sectors are leading or lagging the market
Industry Rotation Analysis - Identifying which industries are leading within their sectors
Multi-period Performance Analysis - Evaluating strength across multiple timeframes
Beta Calculation - Standard statistical measure of volatility relative to a benchmark
DISCLAIMER: This indicator is for educational and informational purposes only. It should not be considered financial advice or a recommendation to buy or sell. Past performance does not guarantee future results. Trading involves risk and may not be suitable for all investors. Always do your own research and consult with a financial advisor before making investment decisions.
with all rows visible - capture when stock has strong RS score (70+) so users can see what a "good" setup looks like]
WHAT THE INDICATOR SHOWS
1. AUTOMATIC ASSET TYPE DETECTION
The indicator automatically identifies what you're analyzing and adjusts accordingly:
Stocks - Compares to sector ETF (XLK, XLF, XLV, etc.) and SPY
Crypto - Compares to Total Crypto Market Cap and Bitcoin
Forex - Compares to relevant currency index (DXY, EXY, etc.)
Commodities - Compares to Gold (GLD) as benchmark
Indices - Compares to broader market indices
How it works: The indicator reads your chart's asset type and ticker, then automatically maps it to the correct sector or benchmark. For stocks, it uses intelligent sector detection (looking at the sector field) to match you with the right sector ETF. For example:
- Technology stocks get compared to XLK (Technology Select Sector SPDR)
- Financial stocks get compared to XLF (Financial Select Sector SPDR)
- Healthcare stocks get compared to XLV (Health Care Select Sector SPDR)
This happens instantly when you add the indicator to any chart - no configuration needed.
2. SECTOR & MARKET BENCHMARKS
What is a Sector ETF?
A sector ETF is an exchange-traded fund that tracks a specific industry group. For example, XLK contains all major technology companies. By comparing your stock to its sector ETF, you can see if your stock is outperforming or underperforming its peers.
The indicator shows three key comparison points:
Stock vs Sector (Benchmark)
This tells you how your stock performs compared to companies in the same industry. Positive numbers mean your stock is beating the sector average. Negative numbers mean it's lagging behind.
Stock vs Market (SPY)
This shows performance against the broader S&P 500 index. This is important because even if a stock beats its sector, the entire sector might be weak. You want stocks that beat both their sector AND the market.
Sector vs Market
This reveals "sector rotation" - whether money is flowing into or out of this sector. When this number is positive, the whole sector is hot and leading the market. This is powerful because strong sectors tend to lift all boats, making it easier to find winners.
3. MULTI-PERIOD PERFORMANCE ANALYSIS
The indicator calculates performance across four timeframes simultaneously:
1 Month (1M) - Recent short-term momentum
3 Months (3M) - Medium-term trend strength
6 Months (6M) - Longer-term positioning
1 Year (1Y) - Full-cycle performance view
Why multiple periods matter:
A stock might look great over 1 month but terrible over 6 months - that's a red flag. The best stocks show consistent strength across all timeframes . When you see positive RS (Relative Strength) values across all four periods, you've found a stock with sustained outperformance.
Each row in the table shows:
- Raw performance percentage for that period
- RS value (the difference compared to benchmark)
- Color coding: Green for positive, red for negative, white for neutral
4. SECTOR LEADER COMPARISON
The indicator automatically identifies and compares your stock to the sector leader - the dominant stock in that industry.
Sector leaders by industry:
Technology: Apple (AAPL)
Healthcare: UnitedHealth (UNH)
Financial: JPMorgan Chase (JPM)
Energy: ExxonMobil (XOM)
Consumer Discretionary: Amazon (AMZN)
Consumer Staples: Walmart (WMT)
And more...
Why this matters:
Comparing to the leader shows you if you're trading a champion or a follower. If your stock consistently beats the sector leader, you've found something special. If it's lagging the leader, you might want to trade the leader instead.
Optional Custom Leader:
You can override the automatic leader and compare to any stock you choose. This is useful if you want to benchmark against a specific competitor or reference stock.
NEW! INDUSTRY ANALYSIS (STOCKS ONLY)
The indicator now provides multi-level analysis by automatically detecting and comparing your stock to its specific industry , not just the broad sector.
Why Industry matters:
Technology sector (XLK) contains many different industries: Software, Semiconductors, Hardware, etc. A software stock might beat the broad tech sector but lag behind other software companies. Industry analysis provides this granular view.
Industry ETF Mapping (30+ industries):
Software/Applications: IGV (iShares Software ETF)
Semiconductors: SMH (VanEck Semiconductor ETF)
Biotech: IBB (iShares Biotechnology ETF)
Pharmaceuticals: XPH (SPDR Pharmaceuticals ETF)
Banks: KBE (SPDR S&P Bank ETF)
Regional Banks: KRE (SPDR Regional Banking ETF)
Oil & Gas Exploration: XOP (SPDR Oil & Gas Exploration ETF)
Homebuilders: XHB (SPDR Homebuilders ETF)
Retail: XRT (SPDR S&P Retail ETF)
Aerospace & Defense: ITA (iShares U.S. Aerospace & Defense ETF)
And many more...
Industry Leader Mapping:
The indicator also identifies the leader within each industry:
Software: Microsoft (MSFT)
Semiconductors: NVIDIA (NVDA)
Biotech: Amgen (AMGN)
Pharmaceuticals: Eli Lilly (LLY)
Banks: JPMorgan (JPM)
Oil Exploration: ConocoPhillips (COP)
And more...
New Table Rows for Stocks:
Industry ETF Performance - How the specific industry performed (green background)
Industry Leader Performance - How the top stock in the industry performed
vs Industry RS - Your stock's outperformance vs its industry ETF
Industry vs Sector RS - Is this industry hot or cold within its sector?
vs Industry Leader RS - Your stock's performance vs the industry's best
Why this is powerful:
A stock that beats both its sector AND its industry is showing strength at every level. This indicates true relative strength, not just riding sector-wide momentum.
Optional Custom Industry:
You can override automatic detection for both Industry ETF and Industry Leader in settings.
5. RS SCORE & GRADING SYSTEM (0-100)
The heart of the indicator is the RS Score - a weighted calculation that distills all the performance data into one clear number from 0 to 100.
How the score is calculated:
FOR STOCKS (with Industry data):
The indicator splits the weight between Sector (60%) and Industry (40%):
SECTOR RS (60% of total weight):
1 Month RS: 24% weight (40% × 0.6)
3 Month RS: 18% weight (30% × 0.6)
6 Month RS: 12% weight (20% × 0.6)
1 Year RS: 6% weight (10% × 0.6)
INDUSTRY RS (40% of total weight):
1 Month RS: 16% weight (40% × 0.4)
3 Month RS: 12% weight (30% × 0.4)
6 Month RS: 8% weight (20% × 0.4)
1 Year RS: 4% weight (10% × 0.4)
FOR OTHER ASSETS (Crypto, Forex, Commodities):
Uses full 100% weight on benchmark:
1 Month RS: 40% weight
3 Month RS: 30% weight
6 Month RS: 20% weight
1 Year RS: 10% weight
It starts at 50 (neutral) and adds or subtracts points based on your asset's relative strength in each period.
Bonus points:
+5 points if the sector is outperforming the market (sector rotation is bullish)
+5 points if the industry is outperforming its sector (hot industry) - STOCKS ONLY
+5 points if RS momentum is improving (getting stronger over time)
-5 points if RS momentum is declining (getting weaker)
The final score is capped between 0-100.
Letter Grade System:
90-100: A+ - Elite performer, crushing the sector
85-89: A - Excellent, strong outperformer
80-84: A- - Very good, above average
75-79: B+ - Good, solid performer
70-74: B - Above average, decent strength
65-69: B- - Slightly above average
60-64: C+ - Average, neutral strength
55-59: C - Below average
50-54: C- - Weak, slight underperformance
45-49: D+ - Concerning weakness
40-44: D - Poor, significant underperformance
0-39: F - Failing, avoid this stock
What scores mean for trading:
- RS Score above 70: Strong stocks worth considering for long positions
- RS Score 50-70: Average stocks, better opportunities elsewhere
- RS Score below 50: Weak stocks, avoid or consider for shorts
6. CONSISTENCY SCORE
This metric shows what percentage of time periods show positive RS .
For STOCKS (with Industry data):
Counts both Sector RS periods AND Industry RS periods (up to 8 total periods):
- If a stock beats both sector and industry in all 4 periods each: Consistency = 100% (8/8)
- If it beats in 6 out of 8 total periods: Consistency = 75%
- If it beats in 4 out of 8 total periods: Consistency = 50%
For OTHER ASSETS:
Counts benchmark periods only (4 total):
- If it beats benchmark in all 4 periods (1M, 3M, 6M, 1Y): Consistency = 100%
- If it beats in 3 out of 4 periods: Consistency = 75%
- If it beats in 2 out of 4 periods: Consistency = 50%
Why consistency matters:
A high RS Score with low consistency might indicate a recent spike that could fade. The best stocks show both high RS Score AND high consistency - they're strong now AND have been strong historically at both the sector AND industry level.
Look for stocks with:
Consistency above 75%: Very reliable strength across all levels
Consistency 50-75%: Decent but check other metrics
Consistency below 50%: Weak or erratic, proceed with caution
7. BETA CALCULATION (Volatility Measure)
Beta measures how much more volatile your stock is compared to its sector.
Beta > 1.2 : High volatility - stock moves more aggressively than sector (marked as "High")
Beta 0.8-1.2 : Normal volatility - moves roughly in line with sector
Beta < 0.8 : Low volatility - stock is more stable than sector (marked as "Low")
Formula used:
Beta = Correlation(Stock, Sector) × (Standard Deviation of Stock / Standard Deviation of Sector)
This uses a 20-period calculation for reliability.
How to use Beta:
- High Beta stocks offer bigger gains but also bigger risks - good for aggressive traders
- Low Beta stocks are more defensive - good for conservative positions
- Match Beta to your risk tolerance and strategy
8. DAYS ABOVE/BELOW SECTOR
This tracks consecutive periods (bars) where your stock outperforms or underperforms its sector.
Days Above Sector:
Counts how many bars in a row your stock has beaten the sector.
10+ days: Strong sustained strength (shown in bright green)
5-9 days: Building momentum (shown in yellow)
1-4 days: Early strength (shown in white)
0 days: Not currently outperforming
Days Below Sector:
Counts how many bars in a row your stock has lagged the sector.
10+ days: Sustained weakness (shown in bright red)
5-9 days: Losing momentum (shown in orange)
1-4 days: Minor weakness (shown in white)
0 days: Not underperforming (this is good!)
Why this matters:
Long streaks show trend persistence. A stock with 15+ days above sector is riding strong momentum. A stock with 15+ days below sector is in a sustained downtrend relative to peers.
9. PRICE VS 52-WEEK HIGH
Shows where current price sits relative to its 52-week high (or equivalent for your timeframe).
95%+ (green) : Stock is near all-time highs - strong positioning
80-94% (yellow) : Stock is in a pullback but still relatively strong
Below 80% : Stock has pulled back significantly from highs
Why this matters:
The strongest stocks stay near their highs. When you see a stock with high RS Score AND price near 52W high, you've found a stock with institutional support and strong buying pressure.
10. RELATIVE VOLUME
Compares current volume to the 20-period average volume.
1.5x+ (green) : High volume - significant interest and participation
Around 1.0x : Average volume - normal trading activity
Below 1.0x : Low volume - less interest or inactive period
Why volume matters:
High relative volume confirms price moves. When a stock makes a strong move on 2x or 3x normal volume, it's more likely to sustain. Low volume moves are often just noise.
11. AVERAGE RS STRENGTH
This calculates the average absolute value of all RS readings across the four timeframes.
It shows the magnitude of divergence from the sector, regardless of direction. A high number means the stock moves very differently from its sector (could be much stronger or much weaker). A low number means it tracks closely with the sector.
High Average RS: Stock has strong character, moves independently
Low Average RS: Stock follows sector closely, lacks individual strength
12. SECTOR ROTATION SIGNAL
This indicator automatically detects when a sector is experiencing bullish rotation - meaning money is flowing into the sector and it's outperforming the broader market.
Condition for bullish rotation:
Sector must be beating SPY (market) in both 1-month AND 3-month periods.
Why this matters:
Stocks in hot sectors tend to perform better because they have tailwinds from sector-wide buying. When sector rotation is bullish and your stock has a high RS Score, you've found an ideal setup.
The indicator adds +5 bonus points to the RS Score when sector rotation is bullish.
13. MOMENTUM DETECTION
The indicator compares 1-month RS to 3-month RS to detect if momentum is improving or declining.
RS Momentum Improving: 1M RS is better than 3M RS - stock is getting stronger (adds +5 to score)
RS Momentum Declining: 1M RS is worse than 3M RS - stock is getting weaker (subtracts -5 from score)
Why momentum matters:
You want to catch stocks as momentum is building, not after it's already peaked. Improving momentum suggests the strength is accelerating, not fading.
14. OVERALL ASSESSMENT & RECOMMENDATION
The indicator provides two quick summary rows:
Overall Rating:
Based on grade and RS Score, you get an instant quality rating:
Strong Leader (A/A+) - Top tier stock, crushing it
Above Average (A-/B+) - Solid performer, better than most
Average (B/B-) - Middle of the pack
Below Average (C/C+) - Struggling, watch carefully
Underperformer (D/F) - Weak stock, underperforming badly
Trading Signal:
Combines multiple factors to give setup quality:
STRONG BUY SETUP - RS Score 70+, Consistency 75+, AND sector rotation bullish. This is the perfect storm - strong stock, consistent strength, hot sector.
BULLISH - RS Score 60+, Consistency 50+. Good quality stock worth considering.
NEUTRAL - RS Score 50+. Okay but not exciting, better opportunities exist.
WEAK - RS Score 40-49. Below average, risky.
AVOID - RS Score below 40. Stay away, too weak.
IMPORTANT: These are educational signals only, not financial advice. Always do your own analysis and risk management.
KEY FEATURES
1. AUTOMATIC EVERYTHING
- Auto-detects asset type (stock, crypto, forex, commodity, index)
- Auto-maps stocks to correct sector ETF (11 sectors covered)
- Auto-maps stocks to correct industry ETF (30+ industries covered)
- Auto-identifies sector leader AND industry leader
- Auto-selects appropriate market benchmark
- Zero configuration required - just add to chart
2. MULTI-ASSET SUPPORT
Works on all asset classes:
US Stocks - Compares to sector ETFs (XLK, XLF, XLV, etc.)
Crypto - Compares to Total Crypto Market Cap
Forex - Compares to currency indices (DXY, EXY, etc.)
Commodities - Compares to Gold (GLD)
Indices - Compares to broader market benchmarks
3. FLEXIBLE DISPLAY
9 table positions (top/middle/bottom, left/center/right)
4 size options (tiny, small, normal, large)
Show/hide table completely
Real-time indicator toggle
4. TIMEFRAME FLEXIBILITY
Choose your analysis timeframe:
Chart Timeframe (default) - Uses whatever timeframe your chart is on
Fixed: 1 Hour, 4 Hours, Daily, Weekly - Forces calculations to specific timeframe
This means you can be on a 5-minute chart but analyze RS on Daily timeframe if you prefer.
5. RS SCORE FILTERING
Set a minimum RS Score threshold to only see strong stocks:
Set to 0 - Shows all stocks
Set to 70 - Only displays stocks with RS Score 70+ (strong stocks only)
Warning message displays if stock doesn't meet threshold
Perfect for screening - quickly scan multiple charts and the indicator only shows tables for stocks that pass your quality filter.
6. CUSTOM LEADER COMPARISON
Override automatic leader detection:
Compare to any ticker you choose
Benchmark against specific competitors
Use your own reference stocks
7. COMPREHENSIVE TOOLTIPS
Every input parameter and every table row has detailed tooltips explaining:
What the metric measures
How to interpret the values
What thresholds indicate strength/weakness
Why it matters for trading
Hover over any element to learn - it's like having a trading coach built in.
8. SMART ALERTS
Built-in alert system for key events:
Divergence Alerts:
Get notified when your stock diverges significantly from its sector.
Bullish Divergence: Stock beating sector by threshold percentage
Bearish Divergence: Stock losing to sector by threshold percentage
Set your threshold (default 5%) - this determines how big a divergence triggers the alert.
RS Score Alerts:
Get notified when RS Score crosses your threshold:
Crossed Above: RS Score went from below to above your threshold (bullish)
Crossed Below: RS Score dropped from above to below threshold (bearish)
Set your threshold (default 70) to focus on strong stocks.
Sector Rotation Alert:
Fires when sector shows bullish rotation (outperforming market).
HOW TO USE THE INDICATOR
FOR SWING TRADERS:
1. Add indicator to your watchlist stocks
2. Look for RS Score 70+ with Consistency 75%+
3. Check if sector rotation is bullish (bonus!)
4. Verify price is near 52W high (95%+)
5. Wait for entry setup on your chart
6. Use stop loss below key support
Example Setup:
Stock shows:
- RS Score: 82 (Grade: A-)
- Consistency: 100% (strong across all periods)
- Sector Rotation: Bullish
- Price vs 52W High: 96%
- Days Above Sector: 12 days
- Relative Volume: 1.8x
This is a textbook strong stock in a hot sector near highs - ideal for swing long.
FOR POSITION TRADERS:
1. Focus on 6-month and 1-year RS values
2. Look for sustained outperformance (Consistency 75%+)
3. Prefer lower Beta stocks (less volatility)
4. Check Days Above Sector for trend persistence
5. Monitor RS Score monthly, exit if drops below 60
FOR ACTIVE TRADERS:
1. Use on intraday timeframes (1H or 4H)
2. Set RS Score filter to 60+ for quick screening
3. Enable Divergence Alerts
4. Watch for momentum improving signal
5. Higher Beta stocks offer more movement
FOR SHORT SELLERS:
1. Look for RS Score below 40 (Grade: D or F)
2. Check for declining momentum
3. Verify Days Below Sector is increasing (10+)
4. Sector rotation should be bearish
5. Price should be well off 52W high
WHAT MAKES A PERFECT SETUP:
The holy grail combination:
RS Score: 75+ (A- or better)
Consistency: 80%+ (strong across time - beats sector AND industry)
Sector Rotation: Bullish (hot sector)
Industry vs Sector: Positive (hot industry within sector)
Days Above Sector: 10+ (sustained strength)
Momentum: Improving (getting stronger)
Price vs 52W High: 90%+ (near highs)
Relative Volume: 1.5x+ (volume confirmation)
When you find this combination, you've located a stock with every advantage in its favor - strong at the stock level, industry level, AND sector level. That's multi-level confirmation of relative strength.
IMPORTANT NOTES
Data Reliability:
All calculations use lookahead=off for anti-repaint protection
Historical values will never change
Real-time indicator toggle only affects the visual clock icon, not data reliability
All security requests are properly configured to prevent future data leakage
Sector Mapping Notes:
Sector detection uses TradingView's sector field
Some stocks may not have sector data - indicator will adapt
Sector ETFs used: XLK, XLF, XLV, XLE, XLY, XLP, XLI, XLB, XLRE, XLU, XLC
Major market ETFs (SPY, QQQ, DIA) are treated as market benchmarks, not stocks
Multi-Asset Notes:
Crypto compares to CRYPTOCAP:TOTAL (total crypto market cap)
Forex compares to relevant currency index based on base currency
Commodities compare to Gold (GLD) as primary commodity benchmark
Custom leaders can be set for any asset type
FREQUENTLY ASKED QUESTIONS
Q: What does RS Score of 75 actually mean?
A: It means your stock is strongly outperforming its sector across multiple timeframes. The score is weighted toward recent performance (1-month gets 40% weight), so 75 indicates sustained relative strength with emphasis on current momentum.
Q: My stock has high RS Score but is going down. Why?
A: RS Score measures relative performance (vs sector/market), not absolute price direction. A stock can fall 5% while its sector falls 10% - that's still positive relative strength. In bear markets or sector corrections, high RS stocks often fall less than peers.
Q: Should I only trade stocks with RS Score above 70?
A: For long positions, yes - focus on 70+ scores. These stocks have proven they can beat their sector. However, for pairs trading or relative value plays, you might also short stocks with scores below 40 while longing stocks above 70.
Q: What if my stock doesn't have a sector?
A: The indicator handles this gracefully. If no sector is detected, it will compare directly to the market (SPY for stocks). Some rows may show N/A, but the indicator will still provide useful market-relative data.
Q: Why does the sector sometimes show N/A?
A: This happens when: 1) Your asset has no sector classification, 2) The stock IS the sector ETF itself, 3) You're analyzing a non-stock asset (crypto, forex, commodity). The indicator adapts by focusing on market-relative metrics instead.
Q: Can I use this on cryptocurrencies?
A: Yes! The indicator automatically detects crypto and compares to the Total Crypto Market Cap (CRYPTOCAP:TOTAL). You can also set a custom leader like Bitcoin (BTCUSD) to compare against the dominant crypto.
Q: What's the difference between RS Score and Consistency?
A: RS Score is the weighted average of how much you're beating the sector (magnitude). Consistency is what percentage of time periods show outperformance (reliability). You want both high - that means strong AND consistent.
Q: Do the alerts repaint?
A: No. All alerts fire only on bar close (barstate.isconfirmed) and use properly configured data with lookahead=off. Once an alert fires, it's final and won't change.
Q: What timeframe should I use?
A: For swing trading: Daily or Weekly. For day trading: 1H or 4H. For position trading: Weekly. Use "Chart Timeframe" mode and switch your chart timeframe to change the analysis period easily.
Q: Why is Days Above Sector showing 0?
A: This means your stock is not currently outperforming its sector. If Days Below Sector is also 0, it means the RS is exactly neutral (very rare). Check the actual RS values to see current standing.
Q: Can I compare to a different market benchmark than SPY?
A: Currently the indicator uses SPY (S&P 500) as the default US stock market benchmark. For crypto it uses CRYPTOCAP:TOTAL, for forex it uses currency indices, etc. The benchmark auto-adjusts based on asset type.
Q: What's a good Beta value?
A: It depends on your strategy. Aggressive traders prefer Beta above 1.2 (more volatility = bigger moves). Conservative traders prefer Beta 0.8-1.0 (more stable). Beta is neutral - it's about matching your risk tolerance.
Q: How often does the table update?
A: With Real-time Indicator enabled: Every tick (constant updates). With it disabled: Only on bar close. Either way, the underlying data is identical and non-repainting - the toggle only affects update frequency and the clock icon display.
Q: My stock is showing "AVOID" but it's up 50% this year. Is the indicator wrong?
A: Not necessarily. The indicator measures RELATIVE performance. If your stock is up 50% but the sector is up 100%, your stock is actually underperforming by 50%. The indicator helps you identify when you should switch to stronger stocks in the same sector.
Q: What does "Strong Buy Setup" really mean?
A: It means three things aligned: 1) RS Score above 70 (strong stock), 2) Consistency above 75% (reliable strength), 3) Sector rotation is bullish (hot sector). This combination historically correlates with stocks that continue outperforming. However, this is NOT financial advice - always do your own analysis.
Q: Can I use this for options trading?
A: Yes! High RS Score stocks make good candidates for call options (bullish bets) while low RS Score stocks may work for puts (bearish bets). Higher Beta stocks will have more volatile options (higher premiums but more movement).
Q: Why is my crypto showing N/A for sector?
A: Cryptocurrencies don't have "sectors" like stocks do. Instead, the indicator compares crypto to the total crypto market cap. This is normal and expected behavior.
Q: What happens if I'm analyzing an ETF?
A: If you're analyzing a sector ETF (like XLK), it will compare to SPY (market). If you're analyzing SPY itself, some comparisons won't be available (can't compare SPY to itself). The indicator intelligently adapts to avoid circular comparisons.
Q: What if my stock doesn't have industry data?
A: Not all stocks are mapped to specific industries (only 30+ major industries are covered). If no industry is detected, the indicator will still work using only sector analysis. The RS Score calculation will use 100% sector weight instead of the 60%/40% split.
Q: Why does Industry vs Sector matter?
A: Industry vs Sector shows if your specific industry is hot or cold within its broader sector. For example, Semiconductors (SMH) might be outperforming Technology sector (XLK) even though both are up. This helps you find not just strong sectors, but the strongest industries within those sectors.
Q: Can I disable Industry analysis?
A: Yes! In the "Industry Analysis" settings group, you can toggle off "Show Industry Analysis in Table" to hide all industry rows. However, even when hidden, industry data still contributes to the RS Score calculation for stocks.
Q: Why is my Consistency Score lower for stocks than other assets?
A: For stocks with industry data, Consistency counts 8 periods (4 Sector + 4 Industry periods) instead of just 4. This means the bar is higher - your stock needs to beat both sector AND industry consistently. A stock that beats sector in all 4 periods but lags industry in 2 periods will show 75% consistency (6/8), not 100%.
BEST PRACTICES
Use as a screening tool - Set RS Score filter to 70+ and quickly scan your watchlist. Only strong stocks will show the table.
Combine with technical analysis - RS Score tells you WHAT to trade, your chart tells you WHEN to enter.
Check multiple timeframes - Switch between Daily and Weekly to see if strength holds across different time horizons.
Monitor sector rotation - When sector goes from bearish to bullish rotation, it's often a great time to enter stocks in that sector.
Watch Industry vs Sector - Stocks in hot industries within hot sectors have double tailwinds. Prioritize Industry vs Sector positive values.
Pay attention to consistency - High RS Score with low consistency might be a spike that fades. Look for 70%+ consistency across BOTH sector and industry.
Use the leader comparison - If your stock consistently beats both sector leader AND industry leader, you may have found the next champion.
Watch days above/below sector - Long streaks (15+ days) indicate strong trends. Look for these in conjunction with high RS Score.
Set alerts on key stocks - Enable RS Score alerts at 70 threshold to get notified when watchlist stocks become strong.
Consider Beta for position sizing - Size smaller positions in high Beta stocks, larger in low Beta stocks for balanced risk.
Exit when RS Score drops - If a stock's RS Score falls below 60, consider reducing or exiting - the strength may be fading.
Leverage industry-level insight - If Industry ETF is weak but stock is strong, that's standout strength. If Industry is hot but stock is lagging, consider switching to the industry leader instead.
SETTINGS EXPLAINED
Display Settings:
Show Performance Table - Master on/off switch for the table
Table Position - 9 positions available (corners, edges, center)
Table Size - 4 sizes (tiny, small, normal, large) for different screen sizes
Timeframe Settings:
Chart Timeframe (recommended) - Dynamic, uses whatever chart TF you're on
Fixed Timeframes - Locks analysis to 1H, 4H, Daily, or Weekly regardless of chart
Filtering Settings:
Minimum RS Score - Set threshold (0-100) for displaying table
Show Warning - When enabled, displays message if stock doesn't meet filter
Alert Settings:
Divergence Alerts - Enable alerts when stock diverges from sector
Threshold (%) - How big a divergence triggers alert (default 5%)
RS Score Alerts - Enable alerts when RS Score crosses threshold
Threshold - What RS Score level triggers alert (default 70)
Sector Analysis Settings:
Use Custom Sector ETF - Override automatic sector ETF detection
Sector ETF Symbol - Enter any sector ETF to compare against
Use Custom Sector Leader - Override automatic sector leader detection
Sector Leader Symbol - Enter any ticker as sector leader
Industry Analysis Settings:
Use Custom Industry ETF - Override automatic industry ETF detection
Industry ETF Symbol - Enter specific industry ETF (e.g., IGV, SMH)
Use Custom Industry Leader - Override automatic industry leader detection
Industry Leader Symbol - Enter specific industry leader
Show Industry Analysis - Toggle all industry rows on/off
Display Settings:
Show Real-time Indicator - Toggle clock icon in header (doesn't affect data)
WHAT THIS INDICATOR DOESN'T DO
To set proper expectations:
Does NOT provide entry/exit signals - this is a strength analyzer, not a trading system
Does NOT predict future price movement - shows current and historical relative strength
Does NOT guarantee profits - strong RS stocks can still decline
Does NOT replace your own analysis - use as one tool among many
Does NOT work on stocks with no sector data - will adapt but some rows show N/A
This indicator is a decision support tool . It helps you identify which stocks are showing relative strength so you can make more informed trading decisions. You still need your own entry strategy, risk management, and position sizing rules.
SUPPORT & CONTACT
Questions or feedback? Use the comments section below or send me a message.
If you find this indicator useful, please give it a boost and share with other traders who might benefit from relative strength analysis.
FINAL REMINDER
This indicator is a tool for analyzing relative strength - it shows you which stocks are outperforming their sector and market. It does NOT provide financial advice or trade signals. Always conduct your own research, manage your risk appropriately, and consult with a financial advisor before making investment decisions.
Past performance of relative strength does not guarantee future results. Strong stocks can become weak, and sectors rotate in and out of favor. Use this indicator as part of a comprehensive trading strategy, not as a standalone decision-making system.
Trade smart, manage risk, and may your RS Scores stay high!
If you got till here and you like my work a BOOST and a COMMENT would make me happy
Michael's Custom Watermark🔷 MICHAEL'S CUSTOM WATERMARK INDICATOR
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 OVERVIEW
A comprehensive chart watermark overlay that displays essential fundamental and technical information for stocks in a clean, customizable table format. Perfect for traders who want quick access to key metrics without cluttering their charts.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✨ KEY FEATURES
📊 Fundamental Data Display — Shows Industry, Sector, Market Cap, and P/E Ratio
📅 Earnings Information — Displays next earnings date with countdown timer
📈 ATR Volatility Indicator — 14-day ATR with color-coded visual alerts (🔴🟡🟢)
🎨 Auto Theme Detection — Automatically adjusts text color based on chart background
⚙️ Fully Customizable — Position, colors, size, and displayed metrics all adjustable
🏢 GICS Sector Mapping — Heuristic-based sector classification aligned with industry standards
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🎯 WHAT MAKES THIS INDICATOR UNIQUE?
Unlike basic watermarks, this indicator provides:
Real-time fundamental data integration
Smart theme-aware color adaptation for both light and dark charts
Configurable volatility alerts using ATR thresholds
Earnings countdown feature to never miss important dates
Optimized display that only shows relevant data for the current symbol type
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📖 HOW TO USE
1. BASIC SETUP
Add the indicator to your chart. By default, it displays in the top-left corner with all features enabled.
2. POSITIONING
Vertical Location: Top, Middle, or Bottom
Horizontal Location: Left, Center, or Right
Vertical Offset: Fine-tune position with 0-50 pixel offset from top
3. CUSTOMIZATION OPTIONS
TEXT APPEARANCE:
Auto Text Color — Enable to automatically adapt text color to your chart theme
Manual Color — Set a fixed text color if auto-color is disabled
Text Size — Choose from Huge, Large, Normal, or Small
Theme Colors — Customize text color for light and dark backgrounds separately
DATA DISPLAY TOGGLES:
Show Industry & Sector — Display heuristic-based GICS-aligned sector and industry classification
Show Market Cap — View market capitalization in T/B/M format
Show P/E Ratio — Display Price-to-Earnings ratio (stocks only)
Show ATR (14-Day) — Display Average True Range with percentage and visual indicator
Show Next Earnings — Display upcoming earnings information
Show Earnings Countdown — Show days remaining until next earnings (requires earnings display)
4. ATR VOLATILITY ALERTS
Configure custom thresholds to monitor volatility:
Red Threshold — ATR percentage that triggers red alert 🔴 (default: 6%)
Yellow Threshold — ATR percentage that triggers yellow alert 🟡 (default: 3%)
Green — Shows automatically when ATR is below yellow threshold 🟢
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📐 UNDERSTANDING THE DISPLAY
🏢 SECTOR & INDUSTRY
Shows the GICS sector classification followed by the specific industry. The indicator uses heuristic-based mapping to align TradingView sectors with standard GICS classifications. Note that this mapping is based on keyword detection and industry analysis, so while generally accurate, it may not perfectly match official GICS classifications in all cases.
💰 MARKET CAP
Displays market capitalization using standard abbreviations:
T = Trillion
B = Billion
M = Million
📊 P/E RATIO
Shows the trailing twelve-month Price-to-Earnings ratio. Only displayed for stocks when enabled. Shows "N/A" if data is unavailable.
📈 ATR (14-DAY)
Displays the 14-period Average True Range in both absolute value and percentage terms, with a color-coded indicator:
🔴 Red: High volatility (above red threshold)
🟡 Yellow: Moderate volatility (between yellow and red thresholds)
🟢 Green: Low volatility (below yellow threshold)
📅 EARNINGS
Shows earnings information in three formats:
"X days remaining" — When countdown is enabled and earnings date is known
"Upcoming" — When date is in the future but countdown is disabled
"Recently Reported" — When earnings just occurred
"N/A" — When no earnings data is available
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚙️ TECHNICAL DETAILS
SUPPORTED INSTRUMENTS:
Optimized for stocks with full fundamental data
Works with other instruments (crypto, forex, futures) but only displays applicable metrics
Automatically suppresses irrelevant data (e.g., P/E for non-stocks)
PERFORMANCE:
Lightweight overlay with minimal resource usage
Updates only on last bar for efficiency
No historical recalculation needed
COMPATIBILITY:
Pine Script v6
Works on all timeframes
Compatible with all chart types
Auto-adapts to theme changes
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
💡 TIPS & BEST PRACTICES
Enable Auto Text Color for seamless theme switching between light and dark modes
Adjust vertical offset to avoid overlap with price action in high-volatility periods
Use ATR thresholds appropriate to your trading style and asset class
Disable features you don't use to keep the watermark clean and focused
Position in corners to maximize chart viewing space
Use smaller text size for multi-panel layouts
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔧 TROUBLESHOOTING
"N/A" SHOWING FOR P/E RATIO:
This is normal for non-stock instruments
May occur for stocks with negative earnings
Check if fundamental data is available for the symbol
EARNINGS SHOWING "N/A":
Earnings data may not be available for all stocks
Check TradingView's data coverage for your symbol
TEXT COLOR NOT VISIBLE:
Enable Auto Text Color feature
Manually set text color to contrast with your chart background
Adjust custom light/dark text colors in settings
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚠️ DISCLAIMER
This indicator is for informational purposes only. The fundamental data displayed is sourced from TradingView's data providers. Always verify critical information before making trading decisions. Past performance is not indicative of future results.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
If you find this indicator helpful, please give it a boost 🚀 and share your feedback in the comments!
Version: 1.0
Pine Script Version: v6
Created by: Michael
Multi-Confluence Signal System📊 OPTIMIZED MULTI-CONFLUENCE SIGNAL SYSTEM
A professional-grade trading indicator that combines multiple technical analysis methods to generate high-probability buy and sell signals. Designed for daily timeframe Bitcoin/crypto trading with optimized parameters based on real market backtesting.
🎯 KEY FEATURES:
- Multi-Confluence Scoring (8 components) - Each signal shows strength rating
- Smart Top & Bottom Detection - Catches reversals using price action patterns
- Ichimoku Cloud Integration - Dynamic support/resistance visualization
- Dual EMA System (20/50) - Clear trend identification
- RSI + MACD + Volume Confirmation - Multi-indicator validation
- Signal Alternation - Only shows directional changes (no repeated signals)
- Minimal Bar Spacing - Prevents signal clustering and overtrading
✅ OPTIMIZED FOR:
- Catching parabolic tops with rejection wicks
- Identifying capitulation bottoms in downtrends
- Avoiding false signals during consolidation
- 4-8 quality signals per 4-month period on daily charts
- Works in both trending and volatile markets
🔧 TECHNICAL COMPONENTS:
- EMA 20/50 trend system
- RSI (14) with adjusted overbought/oversold levels (68/32)
- MACD for momentum confirmation
- Ichimoku Cloud for trend context
- Volume analysis (1.3x threshold)
- Candlestick pattern recognition (engulfing, hammers, shooting stars)
- Capitulation detection for extreme moves
- Price extension filters (±5-10% from EMAs)
⚠️ BEST PRACTICES:
- Optimized for Daily timeframe
- Combine with your own risk management
- Higher scores = higher probability trades
- Wait for signal confirmation on candle close
- Use in conjunction with key support/resistance levels
💡 SIGNAL LOGIC:
BUY signals trigger on: Capitulation candles, extreme oversold + reversal patterns, MACD turnarounds in downtrends, or high confluence scores with bullish patterns
SELL signals trigger on: Rejection wicks at tops, bearish engulfings with overbought RSI, parabolic extensions, MACD reversals, or high confluence scores with bearish patterns
📈 Created through iterative backtesting and optimization on Bitcoin price action from 2024-2025.
⭐ Free to use • Leave feedback • Happy trading!
NQ Scalping WMAThis indicator plots two Weighted Moving Averages (WMAs) derived from the high and close to visualize short-term momentum extremes on NQ (Nasdaq futures). I built it for myself for scalping reversals on the 1-minute timeframe.
The area between the upper WMA (“Top-Source”) and lower WMA (“Bot-Source”) is filled with contextual color: green when price is above the top WMA, red when price is below the bottom WMA, and neutral gray otherwise. This makes it easy to spot overextensions, potential snap-back zones, and quick mean-reversion opportunities. Inputs include WMA length, line color, and separate sources for top/bottom WMAs, allowing fast tuning for changing intraday volatility.
The original code I used to make this is from PlayBit EMA by FFriZz
Higher Timeframe Candle LevelsThis is an indicator that shows higher time frame candle levels from various preset timeframes. These higher time frame candles act as support and resistance levels, so look for reversals and continuations off of these levels. When price exceeds the high or low of these levels, you should look for breakouts in the same direction and trade with the trend.
It includes candle levels for the following timeframes: 1 hour, 4 hour, 1 day, 1 week, 1 month, 1 quarter and 1 year. The indicator also includes a trend candle coloring feature, trend strength scoring table, stop loss feature, line identification labels, alerts for trend changes, alerts for level touches and full customization of all options.
How To Trade With This Indicator
These higher timeframe candle levels will act as support and resistance levels, so look for price to react at any of the levels you have turned on and then look for potential bounce or reversal signs at those levels so you can trade those direction changes. Price outside of the higher timeframe candle highs and low typically signals a breakout as well, so look for price to continue after passing the highs or lows.
You can use the direction of the higher timeframe candles as your trend as well. Try to only trade in the direction of the trend of the higher timeframes to increase the likelihood of your trade going in your favor.
The highs and lows of daily and up levels are excellent levels to find quick reversal off of. Watch for price action to struggle to break through these levels and then trade the reversal. If price breaks through these levels easily, watch for price to retest the level and then continue beyond that level. Trade the retest in the direction of the trend.
The open, close and midline levels are excellent for trading bounces. Watch for price to form wicks beyond these levels and close on the other side and use that as a sign that price may bounce there. Use that with price action to confirm your trade and then take trades off of those level bounces.
Use the alerts for daily and up timeframe level touches across all of your favorite markets so that way you are always notified in real time when price is at a level that could provide a potential trading opportunity.
Higher Time Frame Candle Levels
The indicator shows the current candle open, previous open, previous high, previous low, previous close and previous candle body midline levels of each candle for each time frame. This helps you easily see what is going on with the higher time frame candles and read the price action from your lower time frame charts.
Each candle level will paint red if it was a down candle or green if it was an up candle, except the midlines and current candle open lines, those are a different color for easy differentiation. The line colors can be customized to your preferences in the settings and you can also toggle the candle body coloring on or off, as well as change the color of the candle body background.
Each timeframe can be adjusted to your preferences, allowing you to turn all of the levels on or off. You can also adjust how many previous candles show up on your chart so you can backtest it and see for yourself how accurate these levels are.
When adjusting the number of candles, you will get a notification if you have more than 500 lines turned on, so just turn down the number of levels for whatever timeframe you can’t see on your chart to lower that number below 500. The notification will go away once you are under 500 lines again. Each candle has 6 lines if all levels are turned on for that timeframe: open, current candle open, close, high, low and midline. The default settings keep you under 500 lines total, so just be aware of that limitation when adjusting those numbers and adjust the number of levels down on the timeframes that are not useful on the current chart bar.
You can also extend the levels right on any time frame from the daily levels and above. This is useful when price is breaking above or below all levels and you need to know if there are any other previous candle levels in the way as price moves away from the most recent higher time frame candles.
To understand the intraday trend of each higher time frame, look to see where price is at according to each higher time frame candle. If the price is above the midline of the candle, it is bullish. If the price is above the candle body it is more bullish. If the price is above the high, it is very bullish. If the price is below the midline of the candle, it is bearish. If the price is below the candle body it is more bearish. If the price is below the low, it is very bearish. Make sure you backtest this yourself and go through lots of historical data to get a feel for how price reacts to these levels and establishes the trend. Then use that trend information to your advantage and trade in the direction of the trend.
Since users are limited to a certain amount of historical bars based on which Tradingview plan you have, some longer timeframe levels won’t show up because the start of that candle is too far back in history. You will get a notification at the top of that chart if that happens. It will tell you to lower the display timeframe for that timeframe until that notification goes away, which means it was able to plot the most recent candle for that timeframe on your chart.
Trend Candle Coloring
The indicator includes a feature that paints the candles based on whether the current time frame candles are above or below the most recent midline, candle body or high & low of a higher time frame candle of your choice. This helps you see the overall trend of the higher timeframe so you can trade with the trend.
The candle coloring will have an up color, down color and neutral color which can all be customized to suit your preferences. If the current time frame candle close is above the setting you choose, it will show the up color. If the current time frame candle close is below the setting you choose, it will show the down color. If the current time frame candle close is equal to or in the middle of the setting you chose, it will show the neutral color.
So, for example if you set it to candle body, then it will show the up color if the current candle is above the top of the candle body, down color if it is below the bottom of the candle body and neutral color if it is inside the candle body. This helps you wait for price action to move beyond the inside of the previous higher time frame candle before taking a position when price is breaking out of that previous candle so you can trade the momentum of that move. The candle coloring is fully customizable, but make sure to turn off your candle coloring on other indicators and your chart settings for it to show up properly.
Trend Strength Scoring Table
The trend strength scoring table displays a table at the bottom of the screen(table position is customizable), showing a score for the trend strength of each higher time frame. If the current candle close is above the midline, its strength is 1. If the current candle close is above the midline, but below the top of the candle body, its strength is 2. If the current candle close is above the high, its strength is 3. The same goes for below the midline, bottom of the candle body and below the low, but the scores would be negative 1, 2 or 3 instead.
This trend strength table allows you to quickly identify the trend on each higher time frame so you can wait until the trend is the same across all time frames before placing a trade in the direction of the trend. It also shows a total score on the far right side that adds all of the current trend scores together to give you a total strength score. Try to only trade when that number is very high compared to how many time frames you have turned on. Each time frame can have up to a maximum score of 3 if bullish and -3 if bearish. Each time frame in the table can be turned on or off to suit your preferences.
Stop Loss Feature
There is also a stop loss feature that you can set to whatever time frame you choose and whatever direction you chose, such as long or short. It will follow the most recent higher time frame candle’s trend using one of the following settings: candle body, high & low or midline. Once a new higher time frame candle is created, the stop loss will update to the most recent candle’s levels so you can use these levels as a trailing stop loss to maximize your wins.
If you have it set to use the candle body and it is set to long mode, then the stop loss will use the previous higher time frame candle’s lowest candle body level. So if it was an up candle previously, it will use the open. If it was a down candle previously, it will use the close. The opposite is true for short positions.
The stop loss will start working once you turn it on in the settings and will update automatically as new higher time frame candles are formed. It also shows a line of where the stop loss was previously since it was turned on.
I recommend using the high & low setting, especially when the market starts trending.
Candle Level Identification Labels
There are labels for each level starting with the 4 hour time frame and above so you can easily tell what level of each candle you are looking at, even if the rest of the candle is not showing within the chart pane. You can customize the label coloring for up candles and down candles and midlines as well as adjust the number of bars that the labels are offset from the current bar so they are visible on your chart without overlapping the current price action or other indicator labels. Labels for each time frame can be turned on or off as needed. The 1 hour labels were not included because it clogs up the chart, but it has labels for all time frames from the 4 hour candles and up.
Alerts
The indicator includes alerts for when the trend has changed to the opposite direction. The trend change alert is based on your settings for the Trend Candle Coloring. Whatever settings you have the trend candle coloring set to, will be used to set up your alerts. The Trend Candle Coloring setting must be turned on as well when creating your alerts for it to work properly. Make sure to backtest your settings and then create your alerts.
It also has alerts for when price is touching an open or close, high or low, midline or any of those levels for each timeframe. This allows you to be notified when price touches one of these levels so you can check the chart and look for potential trade opportunities if price wants to bounce off of that level. To make it easy for you to get alerts on many different tickers, just use the alert for any level touch on whatever timeframes you want.
Other Indicators To Pair This With
Use this in combination with our Trend Strength Indicator so you can visually see the historic and current trend for all of these levels. You should also use our Breakout Scanner to find other markets with strong trends so you always know which market is trending the strongest and can trade those. Trend Strength Indicator, Higher Timeframe Candle Levels and the Breakout Scanner all use the same levels and calculate the trend scores the same way so they are designed to work together to help you quickly be able to read a chart and find what direction to trade in.
TopBot [CHE] TopBot — Structure pivots with buffered acceptance and gradient trend visualization
Summary
TopBot detects swing structure from confirmed pivot highs and lows, derives support and resistance levels, and switches trend only after a buffered and accepted break. It renders labels for recent structure points, maintains dynamic support and resistance lines that freeze on contact, and colors candles using a gradient that reflects consecutive trend persistence. The gradient communicates strength without extra panels, while the buffered acceptance reduces fragile flips around key levels. Everything runs in the main chart for immediate context.
Motivation: Why this design?
Classical swing tools often flip on single-bar spikes and produce lines that extend forever without acknowledging when price invalidates them. This script addresses that by requiring a user-controlled buffer and a run of consecutive closes before changing trend, while also freezing lines once price interacts with them. The gradient color layer communicates regime persistence so users can quickly judge whether a move is maturing or just starting.
What’s different vs. standard approaches?
Baseline reference: Simple pivot labeling and unbuffered break-of-structure tools.
Architecture differences:
Buffered level testing using ticks, percent, or ATR.
Acceptance logic that requires multiple consecutive closes.
Synchronized structure labeling with a single Top and Bottom within the active set.
Progressive support and resistance management that freezes lines on first contact.
Gradient candle and wick coloring driven by consecutive trend counts with windowed normalization and gamma control.
Practical effect: Fewer whipsaw flips, clearer status of active levels, and visual feedback about trend persistence without a secondary pane.
How it works (technical)
The script confirms swing points using left and right bar pivots, then forms a current structure window to classify each pivot as higher high, lower high, higher low, or lower low. Recent labels are trimmed to a user cap, and a postprocess step ensures one highest and one lowest label while preserving side information for the others. Support updates on higher low events, resistance on lower high events. Trend flips only after the close has moved beyond the active level by a chosen buffer and this condition holds for a chosen number of consecutive bars. Lines for new levels extend to the right and freeze once price touches them. A running count of consecutive trend bars produces a strength score, which is normalized over a rolling window, shaped by gamma, and mapped to user-defined dark and neon colors for both up and down regimes. Wick coloring uses `plotcandle`; fallback bar coloring uses `barcolor`. No higher-timeframe data is requested. Signals confirm only after the right-bar lookback of the pivot function.
Parameter Guide
Left Bars / Right Bars (default five each): Pivot sensitivity. Larger values confirm later and reduce noise; smaller values respond faster with more noise.
Draw S/R Lines (default true): Enables support and resistance line creation and updates.
Support / Resistance Colors (lime, red): Line colors for each side.
Line Style (Solid, Dashed, Dotted; default Dotted) and Width (default three): Visual style of S/R lines.
Max Labels & Lines (default ten): Cap for objects to control clutter and resource usage.
Change Bar Color (default true), Up/Down colors (blue, black): Fallback bar coloring when gradients or wick coloring are disabled.
Show Neutral Candles (default false): Optional coloring when no trend is active.
Enable Gradient Bar Colors (default true): Turns on gradient body coloring from the strength score.
Enable Wick Coloring (default true): Colors wicks and borders using `plotcandle`.
Collection Period (default one hundred): Rolling window used to scale the strength score. Shorter windows react faster but vary more.
Gamma Bars / Gamma Plots (defaults zero point seven and zero point eight): Shapes perceived contrast of bar and wick gradients. Lower values brighten early; higher values compress until stronger runs appear.
Gradient Transparency / Wick Transparency (default zero): Visual transparency for bodies and wicks.
Up/Down Trend Dark and Neon Colors: Endpoints for gradient mapping in each regime.
Acceptance closes (n) (default two): Number of consecutive closes beyond a level required before trend flips. Larger values reduce false breaks but react later.
Break buffer (None, Ticks, Percent, ATR; default ATR) and Value (default zero point five) and ATR Len (default fourteen): Defines the safety margin beyond the level. ATR mode adapts to volatility; Percent and Ticks are static.
Reading & Interpretation
Labels: “Top” and “Bottom” mark the most extreme points in the active set; “LT” and “HB” indicate side labels for lower top and higher bottom.
Lines: New support or resistance is drawn when structure confirms. A line freezes once price touches it, signaling that the dynamic phase ended.
Trend: Internal state switches to up or down only after buffered acceptance.
Colors: Brighter neon tones indicate stronger and more persistent runs; darker tones suggest early or weakening runs. When gradients are off, fallback bar colors indicate trend sign.
Practical Workflows & Combinations
Trend following: Wait for a buffered and accepted break through the most recent level, then use gradient intensity to stage entries or scale-ins.
Structure-first filtering: Trade only in the direction of the last accepted trend while price remains above support or below resistance.
Exits and stops: Consider exiting on loss of gradient intensity combined with a return through the most recent structure level.
Multi-asset / Multi-timeframe: Works on liquid symbols across common timeframes. Use larger pivot bars and higher acceptance on lower timeframes. No built-in higher-timeframe aggregation is used.
Behavior, Constraints & Performance
Repaint/confirmation: Pivot confirmation waits for the right bar window; trend acceptance is based on closes and can change during a live bar. Final signals stabilize on bar close.
security/HTF: Not used. No cross-timeframe data.
Resources: Arrays and loops are used for labels, lines, and structure search up to a capped historical span. Object counts are clamped by user input and platform limits.
Known limits: Delayed confirmation at sharp turns due to pivot windows; rapid gaps can jump over buffers; gradient scaling depends on the chosen collection period.
Sensible Defaults & Quick Tuning
Start with the defaults: pivot windows at five, ATR buffer with value near one half, acceptance at two, collection period near one hundred, gamma near zero point seven to zero point eight.
Too many flips: increase acceptance, increase buffer value, or increase pivot windows.
Too sluggish: reduce acceptance, reduce buffer value, or reduce pivot windows.
Colors too flat: lower gamma or shorten the collection period.
Visual clutter: reduce the max labels and lines cap or disable wicks.
What this indicator is—and isn’t
This is a visualization and signal layer that encodes swing structure, level state, and regime persistence. It is not a complete trading system, not predictive, and does not manage orders. Use it with broader context such as higher timeframe structure, session behavior, and defined risk controls.
Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Do not use this indicator on Heikin-Ashi, Renko, Kagi, Point-and-Figure, or Range charts, as these chart types can produce unrealistic results for signal markers and alerts.
Best regards and happy trading
Chervolino
Acknowledgment
Thanks to LonesomeTheBlue for the fantastic and inspiring "Higher High Lower Low Strategy" .
Original script:
Credit for the original concept and implementation goes to the author; any adaptations or errors here are mine.
Smart VWAP FVG SystemSmart VWAP FVG System - Professional Multi-Filter Trading Indicator
📊 OVERVIEW
The Smart VWAP FVG System is an advanced multi-layered trading indicator that combines institutional volume analysis, multi-timeframe VWAP trend confirmation, and Fair Value Gap detection to identify high-probability trade entries. This indicator uses a sophisticated filtering mechanism where signals appear only when multiple independent confirmation criteria align simultaneously.
Recommended Timeframe: 5-minute (M5) or higher. The indicator works best on M5, M15, and M30 charts for intraday trading.
🎯 ORIGINALITY & PURPOSE
This indicator is original because it combines three distinct analytical methods into a unified decision-making system:
Market Profile Volume Analysis - Identifies institutional accumulation/distribution zones
Dual VWAP Filtering - Confirms trend direction using two independent VWAP calculations
Fair Value Gap Detection - Validates institutional interest through price inefficiency zones
The key innovation is the directional filter system: the primary Market Profile generates BUY-ONLY or SELL-ONLY states based on higher timeframe value area reversals, which then controls which signals from the main system are displayed. This creates a multi-timeframe confluence that significantly reduces false signals.
Unlike simple indicator mashups, each component serves a specific purpose:
Market Profile → Direction bias (trend filter)
Primary VWAP (Session) → Short-term trend confirmation
Secondary VWAP (Week) → Medium-term trend confirmation
FVG Detection → Institutional activity validation
🔧 HOW IT WORKS
1. Primary Market Profile Filter (Higher Timeframe)
The indicator calculates Market Profile on a higher timeframe (default: 1 hour) to determine the overall market structure:
Value Area High (VAH): Top 70% of volume distribution
Value Area Low (VAL): Bottom 70% of volume distribution
Point of Control (POC): Price level with highest volume
When price reaches VAH and reverses down → SELL-ONLY mode activated
When price reaches VAL and reverses up → BUY-ONLY mode activated
This higher timeframe filter ensures you're trading in the direction of institutional flow.
2. Dual VWAP System
Two independent VWAP calculations provide multi-timeframe trend confirmation:
Primary VWAP (Session-based): Resets daily, tracks intraday momentum
Secondary VWAP (Week-based): Resets weekly, confirms longer-term trend
Filter Logic:
BUY signals require: Price > Primary VWAP AND Price > Secondary VWAP
SELL signals require: Price < Primary VWAP AND Price < Secondary VWAP
This dual confirmation prevents counter-trend trades during ranging conditions.
3. Fair Value Gap (FVG) Detection
FVG zones identify price inefficiencies where institutional orders were executed rapidly:
Bullish FVG: Gap between candle .high and candle .low (upward imbalance)
Bearish FVG: Gap between candle .high and candle .low (downward imbalance)
The indicator monitors recent FVG formation (lookback: 50 bars) and requires:
Bullish FVG present for BUY signals
Bearish FVG present for SELL signals
FVG zones are displayed as colored boxes and automatically marked as "mitigated" when price fills the gap.
4. Main Trading Signal Logic
The secondary Market Profile (default: 1 hour) generates the actual trading signals:
BUY Signal Conditions:
Price reaches Value Area Low
Reversal pattern confirmed (minimum 1 bar)
Price > Primary VWAP
Price > Secondary VWAP (if filter enabled)
Recent Bullish FVG detected (if filter enabled)
Primary MP Filter = BUY-ONLY or NEUTRAL
SELL Signal Conditions:
Price reaches Value Area High
Reversal pattern confirmed (minimum 1 bar)
Price < Primary VWAP
Price < Secondary VWAP (if filter enabled)
Recent Bearish FVG detected (if filter enabled)
Primary MP Filter = SELL-ONLY or NEUTRAL
All conditions must be TRUE simultaneously for a signal to appear.
📈 VISUAL ELEMENTS
On Chart:
🟢 Green Triangle (▲) = BUY Signal
🔴 Red Triangle (▼) = SELL Signal
🟦 Blue horizontal lines = Value Area zones
🟡 Yellow line = Point of Control (POC)
🟩 Green boxes = Bullish FVG zones
🟥 Red boxes = Bearish FVG zones
🔵 Blue line = Primary VWAP (Session)
⚪ White line = Secondary VWAP (Week)
Info Panel (Top Right):
Real-time status display showing:
Filter Direction (BUY ONLY / SELL ONLY / NEUTRAL)
Active timeframes for both MP filters
FVG filter status and count
VWAP positions (ABOVE/BELOW)
Signal enablement status
Alert status
⚙️ KEY SETTINGS
MP/TPO Filter Settings (Primary Indicator)
MP Filter Time Frame: 60 minutes (controls directional bias)
Filter Value Area %: 70% (standard Market Profile calculation)
Filter Alert Distance: 1 bar
Filter Min Bars for Reversal: 1 bar
Filter Alert Zone Margin: 0.01 (1%)
FVG Filter Settings
Use FVG Filter: Enabled (toggle on/off)
FVG Timeframe: 60 minutes (1 hour)
FVG Filter Mode: Both (require bullish FVG for BUY, bearish for SELL)
FVG Lookback Period: 50 bars (how far back to search)
Show FVG Formation Signals: Optional visual markers
Max FVG on Chart: 50 zones
Show Mitigated FVG: Display filled gaps
Market Profile Settings
Higher Time Frame: 60 minutes (for main signals)
Percent for Value Area: 70%
Show POC Line: Enabled
Keep Old MPs: Enabled (maintain historical profiles)
Primary VWAP Filter
Use Primary VWAP Filter: Enabled
Primary VWAP Anchor Period: Session (resets daily)
Primary VWAP Source: HLC3 (typical price)
Secondary VWAP Filter
Use Secondary VWAP Filter: Enabled
Secondary VWAP Anchor Period: Week (resets weekly)
Secondary VWAP Filter Mode: Both
Secondary VWAP Line Color: White
Trading Signals
Show Trading Signals on Chart: Enabled
Show SELL Signals: Enabled
Show BUY Signals: Enabled
Alert Distance: 1 bar
Min Bars for Reversal: 1 bar
Alert Zone Margin: 0.01 (1%)
Retest Search Period: 20 bars
Min Bars Between Retests: 5 bars
Show Only Retests: Disabled
Alert Settings
Enable Trading Notifications: Enabled
VAH Reversal Alert: Enabled (SELL signals)
VAL Reversal Alert: Enabled (BUY signals)
Time Filter Settings
Filter Alerts By Time: Optional (exclude specific hours)
⚠️ IMPORTANT WARNINGS & LIMITATIONS
1. Repainting Behavior
CRITICAL: This indicator uses lookahead=barmerge.lookahead_on to access higher timeframe data immediately for FVG detection. This is necessary to provide real-time FVG zone visualization but has the following implications:
FVG zones may shift slightly until the higher timeframe candle closes
FVG detection signals are preliminary until HTF bar confirmation
The main trading signals (triangles) appear on confirmed bars and do not repaint
Best Practice: Always wait for the current timeframe bar to close before acting on signals. The filter status and FVG zones are informational but may adjust as new data arrives.
2. Minimum Timeframe
Do NOT use on timeframes below 5 minutes (M5)
Recommended: M5, M15, M30 for intraday trading
Higher timeframes (H1, H4) can also be used but will generate fewer signals
3. Multiple Filters Can Block Signals
By design, this indicator is conservative. When all filters are enabled:
Signals appear ONLY when all conditions align
You may see extended periods with no signals
This is intentional to reduce false positives
If you see no signals:
Check the Info Panel to see which filters are failing
Consider adjusting FVG lookback period
Temporarily disable FVG filter to test
Verify VWAP filters match current market trend
4. Market Profile Limitations
Market Profile requires sufficient volume data
Low-volume instruments may produce unreliable profiles
Value Areas update only on higher timeframe bar close
Works best on liquid markets (major forex pairs, indices, crypto)
📖 HOW TO USE
Step 1: Add to Chart
Apply indicator to M5 or higher timeframe chart
Ensure chart shows volume data
Use standard candles (NOT Heikin Ashi, Renko, etc.)
Step 2: Configure Settings
Primary MP Filter TF: Set to 60 (1 hour) minimum, or 240 (4 hour) for swing trading
Main MP TF: Set to 60 (1 hour) for intraday signals
FVG Timeframe: Match or exceed main MP timeframe
Leave other settings at default initially
Step 3: Understand the Info Panel
Monitor the top-right panel:
FILTER STATUS: Shows current directional bias
NEUTRAL = Both signals allowed
BUY ONLY = Only green triangles will appear
SELL ONLY = Only red triangles will appear
FVG Filter: Shows if bullish/bearish gaps detected recently
VWAP positions: Confirms trend alignment
Step 4: Take Signals
For BUY Signal (Green Triangle ▲):
Wait for green triangle to appear
Check Info Panel shows ✓ for BUY signals
Confirm current bar has closed
Enter long position
Stop loss: Below recent VAL or swing low
Target: Previous Value Area High or 1.5-2× risk
For SELL Signal (Red Triangle ▼):
Wait for red triangle to appear
Check Info Panel shows ✓ for SELL signals
Confirm current bar has closed
Enter short position
Stop loss: Above recent VAH or swing high
Target: Previous Value Area Low or 1.5-2× risk
Step 5: Risk Management
Risk per trade: Maximum 1-2% of account equity
Position sizing: Adjust based on stop loss distance
Avoid trading: During major news events or time filter periods
Multiple confirmations: Look for confluence with price action (support/resistance, trendlines)
🎓 UNDERLYING CONCEPTS
Market Profile Theory
Developed by J. Peter Steidlmayer in the 1980s, Market Profile organizes price and volume data to identify:
Value Areas: Where 70% of trading activity occurred
POC: Price level with highest acceptance (most volume)
Imbalances: When price moves away from value quickly
This indicator uses TPO (Time Price Opportunity) calculation method to build the volume profile distribution.
VWAP (Volume Weighted Average Price)
VWAP represents the average price weighted by volume, showing where institutional traders are positioned:
Price above VWAP = Bullish (institutions accumulated lower)
Price below VWAP = Bearish (institutions distributed higher)
Using dual VWAP (Session + Week) creates multi-timeframe trend alignment.
Fair Value Gaps (FVG)
Also known as "imbalance" or "inefficiency," FVG occurs when:
Price moves so rapidly that a gap forms in the candlestick structure
Indicates institutional order flow (large market orders)
Price often returns to "fill" these gaps (rebalance)
The 3-candle FVG pattern (gap between candle and candle ) is widely used in ICT (Inner Circle Trader) methodology and Smart Money Concepts.
🔍 CREDITS & CODE ATTRIBUTION
This indicator builds upon established technical analysis concepts and combines multiple methodologies:
1. Market Profile / TPO Calculation
Concept Origin: J. Peter Steidlmayer (Chicago Board of Trade, 1980s)
Code Inspiration: TradingView's public domain Market Profile examples
Modifications: Custom filtering logic for directional bias, dual timeframe implementation
2. VWAP Calculation
Concept Origin: Standard financial instrument (widely used since 1980s)
Code Base: TradingView built-in ta.vwap() function (public domain)
Modifications: Dual VWAP system with independent anchor periods, custom filtering modes
3. Fair Value Gap Detection
Concept Origin: Inner Circle Trader (ICT) / Smart Money Concepts methodology
Code Implementation: Original implementation based on 3-candle gap pattern
Features: Multi-timeframe detection, automatic mitigation tracking, visual zone display
4. Pine Script Framework
Language: Pine Script v6 (TradingView)
Built-in Functions Used:
ta.vwap() - Volume weighted average price
request.security() - Higher timeframe data access
ta.change() - Period detection
ta.cum() - Cumulative volume
time() - Timestamp functions
Note: All code is original implementation. While concepts are based on established trading methodologies, the combination, filtering logic, and execution are unique to this indicator.
📊 RECOMMENDED INSTRUMENTS
Best Performance:
Major Forex Pairs (EURUSD, GBPUSD, USDJPY)
Stock Indices (ES, NQ, SPX, DAX)
Major Cryptocurrencies (BTCUSD, ETHUSD)
Liquid Stocks (high daily volume)
Avoid:
Low-volume altcoins
Illiquid stocks
Exotic forex pairs with wide spreads
⚡ PERFORMANCE TIPS
Start Conservative: Enable all filters initially
Reduce Filters Gradually: If too few signals, disable Secondary VWAP filter first
Match Timeframes: Keep MP Filter TF and FVG TF at same value
Backtest First: Review historical performance on your preferred instrument/timeframe
Combine with Price Action: Look for support/resistance confluence
Use Time Filter: Avoid low-liquidity hours (optional setting)
🚫 WHAT THIS INDICATOR DOES NOT DO
Does not guarantee profits - No trading system is 100% accurate
Does not predict the future - Based on historical patterns
Does not replace risk management - Always use stop losses
Does not work on all instruments - Requires volume data and liquidity
Does not provide exact entry/exit prices - Signals are zones, not precise levels
Does not account for fundamentals - Purely technical analysis
📜 DISCLAIMER
This indicator is provided for educational and informational purposes only. It is not financial advice, and past performance does not guarantee future results.
Trading Risk Warning:
All trading involves risk of loss
You can lose more than your initial investment (leverage products)
Only trade with capital you can afford to lose
Always use appropriate position sizing and risk management
Consider seeking advice from a licensed financial advisor
Technical Limitations:
Indicator may repaint FVG zones until HTF bar closes
Signals are based on historical patterns that may not repeat
Market conditions change and no system works in all environments
Volume data quality varies by exchange/broker
By using this indicator, you acknowledge these risks and agree that the author bears no responsibility for trading losses.
📞 SUPPORT & UPDATES
Questions? Comment on this publication
Issues? Describe the problem with chart screenshot
Feature Requests? Suggest improvements in comments
Updates: Will be published as new versions using TradingView's update feature
📝 VERSION HISTORY
Version 1.0 (Current)
Initial public release
Multi-filter system: MP + Dual VWAP + FVG
Directional bias filter
Real-time info panel
Comprehensive alert system
Time-based filtering
Thank you for using Smart VWAP FVG System!
Happy Trading! 📈
Analog Flow [KedArc Quant]Overview
AnalogFlow is an advanced analogue based market projection engine that reconstructs future price tendencies by matching current price behavior to historical analogues in the same instrument. Instead of using traditional indicators such as moving averages, RSI, or regression, AnalogFlow applies pattern vector similarity analysis - a data driven technique that identifies historically similar sequences and aggregates their subsequent movements into a smooth, forward looking curve.
Think of it as a market memory system:
If the current pattern looks like one we have seen before, how did price move afterward?
Why AnalogFlow Is Unique
1. Pattern centric - it does not rely on any standard indicator formula; it directly analyzes price movement vectors.
2. Adaptive - it learns from the same instrument's past behavior, making it self calibrating to volatility and regime shifts.
3. Non repainting - the projection is generated on the latest completed bar and remains fixed until new data is available.
4. Noise resistant - the EMA Blend engine smooths the projected trajectory, reducing random variance between analogues.
Inputs and Configuration
Pattern Bars
Number of bars in the reference pattern window: 40
Projection Bars
Number of bars forward to project: 30
Search Depth
Number of bars back to look for matching analogues: 600
Distance Metric
Comparison method: Euclidean, Manhattan, or Cosine (default Euclidean)
Matches
Number of top analogues to blend (1-5): Top 3
Build Mode
Projection type: Cumulative, MeanStep, or EMA Blend (default EMA Blend)
EMA Blend Length
Smoothness of the projected path: 15
Normalize Pattern
Enable Z score normalization for shape matching: true
Dissimilarity Mode
If true, finds inverse analogues for mean reversion analysis: false
Line Color and Width
Style settings for projection curve: Blue, width 2
How It Works with Past Data
1. The system builds a memory bank of patterns from the last N bars based on the scanDepth value.
2. It compares the latest Pattern Bars segment to each historical segment.
3. It selects the Top K most similar or dissimilar analogues.
4. For each analogue, it retrieves what happened after that pattern historically.
5. It averages or smooths those forward moves into a single composite forecast curve.
6. The forecast (blue line) is drawn ahead of the current candle using line.new with no repainting.
Output Explained
Blue Path
The weighted mean future trajectory based on historical analogues.
Smoother when EMA Blend mode is enabled.
Flat Section
Indicates low directional consensus or equilibrium across analogues.
Upward or Downward Slope
Represents historical tendency toward continuation or reversal following similar conditions.
Recommended Timeframes
Scalping / Short Term
1m - 5m : Short winLen (20-30), small ahead (10-15)
Swing Trading
15m - 1h : Balanced settings (winLen 40-60, ahead 20-30)
Positional / Multi Day
4h - 1D : Large windows (winLen 80-120, ahead 30-50)
Instrument Compatibility
Works seamlessly on:
Stocks and ETFs
Indices
Cryptocurrency
Commodities (Gold, Crude, etc.)
Futures and F&O (both intraday and positional)
Forex
No symbol specific calibration needed. It self adapts to volatility.
How Traders Can Use It
Forecast Context
Identify likely short term price path or drift direction.
Reversal Detection
Flip seekOpp to true for mean reversion pattern analysis.
Scenario Comparison
Observe whether the current regime tends to continue or stall.
Momentum Confirmation
Combine with trend tools such as EMA or MACD for directional bias.
Backtesting Support
Compare projected path versus realized price to evaluate reliability.
FAQ
Q1. Does AnalogFlow repaint?
No. It calculates only once per completed bar and projects forward. The future path remains static until a new bar closes.
Q2. Is it a neural network or AI model?
Not in the machine learning sense. It is a deterministic analogue matching engine using statistical distance metrics.
Q3. Why does the projection sometimes flatten?
That means similar historical setups had no clear consensus in direction (neutral expectation).
Q4. Can I use it for live trading signals?
AnalogFlow is not a signal generator. It provides probabilistic context for upcoming movement.
Q5. Does higher scanDepth improve accuracy?
Up to a point. More depth gives more analogues, but too much can dilute recency. Try 400 to 800.
Glossary
Analogue
A past pattern similar to the current price behavior.
Distance Metric
Mathematical formula for pattern similarity.
Step Vector
Difference between consecutive closing prices.
EMA Blend
Exponential smoothing of the projected path.
Cumulative Mode
Adds sequential historical deltas directly.
Z Score Normalization
Rescaling to mean 0 and variance 1 for shape comparison.
Summary
AnalogFlow converts the market's historical echoes into a structured, statistically weighted forward projection. It gives traders a contextual roadmap, not a signal, showing how similar past setups evolved and allowing better informed entries, exits, and scenario planning across all asset classes.
Disclaimer
This script is provided for educational purposes only.
Past performance does not guarantee future results.
Trading involves risk, and users should exercise caution and proper risk management when applying this strategy.
BK AK-13⚔️ BK AK-13 — The Mentor’s 13. Revealed on 11. Command the Band. Punish the Extremes. ⚔️
This is my 11th release—and that matters. 11 is a sacred number to me, so for release eleven I’m doing something I never planned to do: I’m putting my mentor’s secret 13 MA into the open.
For years, this 13-based MA framework was part of our private playbook—quietly doing work behind the scenes. Now I’m handing it to you fully armed, because I believe in karma in, karma out: I took years of wisdom from the market. I took years of wisdom from the men who taught me. This is one of the ways I give back—with structure, respect, and intent.
🎖 Full Credit — Respect the Origin
The core architecture of BK AK-13 is not mine. It stands firmly on the work of DZIV.
What comes from DZIV:
The Heikin Ashi MA engine (MA calculated on HA Open/High/Low/Close)
The multi-MA engine on the HA feed (ALMA / HMA / SMA / RMA / VWMA / WMA / ZLEMA / EMA)
The Body / Wick / Band zone classification for price
The dynamic body & wick clouds that give this structure its clean visual form
If this framework changes the way you see trend and price location, remember the name: DZIV.
On top of his backbone, I forged the BK AK-13 enhancement layer: trend-strength regimes, background modes, structured band-reversal arrows, momentum acceleration dots, extreme pivot markers, historical band-touch rails, the info panel, and a complete alert suite.
And as always, the “AK” in the name is not branding—it’s honor. It belongs to my mentor A.K. His secret 13 MA is the spine of this system, and his obsession with clarity, patience, and zero shortcuts sits behind every decision in this tool. Above that, all glory and gratitude to Gd—the real source of any wisdom, edge, or endurance we have in this game.
🧠 Why “BK AK-13”?
BK — my mark, the house I’m building.
AK — my mentor, the standard I’m still chasing.
13 — his secret moving average, the length that quietly shaped how I see trend, location, and pressure.
For years, 13 stayed off the public record—used, not discussed. Now, on indicator number 11, I’m putting that weapon in the open: 11th release. Sacred number. Secret 13 revealed, not for hype—but as karmic give-back. Karma in. Karma out.
🧱 What BK AK-13 Actually Is
BK AK-13 is a Heikin Ashi MA battle band with a brain and a conscience.
It does three big things:
Builds a smoothed HA-MA band using Heikin Ashi OHLC to create a cleaner, truer band around price.
Maps price into zones: Body, Upper Wick, Lower Wick, Above Band, Below Band—so every bar has a role.
Assigns a trend regime by computing a normalized trend-strength %, classifying the environment as Weak / Normal / Strong / Extreme.
You’re never guessing: Is this real trend or just drift? Am I in the spine, the wick, or off the rails? Is this where I press, fade, or stand down? The band, zones, and regimes answer that for you.
🎨 Visual Architecture — Band, Clouds, Regimes
Body & Wick Clouds (DZIV’s craft)
Body cloud between HA-MA Open & Close.
Wick clouds between body and HA-MA High/Low.
Color follows trend: bull, bear, or neutral.
You’re not decoding noisy candles—you’re reading the spine and skin of the move.
Background Regime Modes (BK layer)
Standard – background always on, soft trend-follow color.
Hybrid (Extreme + Breaks) – lights only on extreme trend states or reversal break events.
Hybrid (Strong/Extreme + Breaks) – shows strong & extreme regimes, darker tone on true extremes.
Breaks Only – background flashes only on reversal arrows.
When the background goes quiet, you’re in ordinary flow. When it lights up, something is strategic, not cosmetic.
🎯 Weapons Inside BK AK-13
⭐ Trend Change Stars
Stars appear when the internal band trend crosses zero: bull star when it flips negative → positive, bear star from positive → negative. They’re your pivot flags for swing shifts when aligned with your higher timeframe bias.
🔁 Band Reversal Arrows — Edge Flip Logic
Not every band tap—only structured reversals:
Reversal Down (short idea): first a break of the upper band, then later, for the first time, a break of the lower band.
Reversal Up (long idea): first a break of the lower band, then later, for the first time, a break of the upper band.
You can require a close outside the band and set a minimum break distance (% of band range) so only real punches count. These arrows mark campaign flips, not noise.
💡 Momentum Acceleration Dots
In strong trend regimes only:
Green dot = trend accelerating in its own direction (uptrend steepening, downtrend deepening).
Red dot = trend decelerating, even if direction hasn’t flipped yet.
They protect you from chasing late when the engine is dying and from staying stubborn when momentum is bleeding out.
⚠ Extreme Pivot Markers
Pivot highs/lows are found with a configurable lookback and only marked when trend strength at that pivot bar is above your threshold. You’ll see ⚠ above likely exhaustion tops in strong bulls and ⚠ below likely exhaustion lows in strong bears—perfect for final scale-outs, countertrend scouts, and knowing where campaigns commonly run out of blood.
📏 Historical Band-Touch Rails
Over your lookback window, BK AK-13 tracks the highest upper band touch and lowest lower band touch, drawing them as dashed rails. They’re dynamic SR built from real band extremes—ideal for trend targets, fade zones, and stop/scale-out context.
🧭 Info Panel — On-Chart War Room
The Info Panel compresses everything into a single strip: direction + strength codes (BULL STR, BEAR EXT, NEUT WEAK), four segments that brighten as |trend| climbs from weak → normal → strong → extreme, and a zone + deviation label (BDY/UW/LW/AB/BL × OK/AL/EX).
Hover and you get a full tactical brief: trend, momentum change, acceleration, band levels, distances to upper/lower/nearest band in ticks, outer-band streaks, strategic state, plus “Action” guidance and a “What-if” forward scenario. It doesn’t just tell you where you are—it pushes you toward a structured thought process on each bar.
🕹 How to Use BK AK-13 with Intent
1️⃣ Trend-Rider Mode
In Strong/Extreme bull with price in Body or Lower Wick: buy dips into the band (mid/lower) instead of chasing tops; target the upper band / upper rail while structure holds.
In Strong/Extreme bear with price in Body or Upper Wick: sell rallies into the band; target lower band / lower rail while acceleration stays healthy.
The band defines where you’re allowed to do business.
2️⃣ Extreme Snapback Hunter
Prime conditions: trend tagged Extreme, price pressed into the outer band in trend direction, strategic state lit + Hybrid background active. That’s where pressing fresh risk often flips from reward to punishment. Use it to stop adding, start harvesting, or launch controlled mean-reversion probes back to the midline—if your system and risk rules allow it.
3️⃣ Exhaustion & Turn Zones
Watch for confluence: red momentum dots, extreme pivot ⚠ markers, a reversal arrow, and a nearby historical rail or your own key level (Fibs, VWAP, volume structure, etc.). That’s where campaigns often end, traps are set, and new campaigns begin.
🔔 Alerts — The Chart Calls You
Included alerts: Bullish/Bearish Trend Change, Strategic Extreme at Outer Band, Reversal Up/Down, Extreme Pivot High/Low, and Body Zone Entry during Strong Trend. Use them so you respond to events, not impulses.
🔧 Tuning the Extremes — Help Me Perfect the Advanced Side
The extreme thresholds and advanced features are powerful but sensitive, and there is no single perfect universal setting. I’m still tuning them myself across instruments and timeframes: strong/extreme trend thresholds, extreme background thresholds, momentum acceleration threshold, pivot lookback + pivot trend filter, band-touch lookback, and minimum break distance for reversals.
Different markets and timeframes breathe differently.
If you find killer settings for a specific symbol + timeframe, please share:
Instrument & timeframe
Your tuned values for extremes and advanced modules
A few charts showing why they work
Experiment. Dial it in. Then share your best settings for the extremes and advanced features. Let this become a crowd-forged battle manual: I gave you the engine, you tune it to your battleground, and we all benefit from what’s discovered in live fire. Karma in. Karma out.
🤝 Pay It Forward
If BK AK-13 sharpens your read, don’t just flex screenshots—teach structure. Show newer traders body vs wick vs edge. Talk about when you didn’t take a trade because the band said “danger,” not just the wins. Share your settings, charts, and lessons—especially around the extremes and advanced modules. I’m sharing a mentor’s secret on release 11 for a reason. If it blesses you, don’t let it stop with you.
📜 King Solomon’s Lens
King Solomon said: “The prudent sees danger and hides himself, but the simple go on and suffer for it.”
BK AK-13 is built exactly around that dividing line: the simple chase candles at the outer band in extreme regimes and get punished; the prudent see danger in the structure, hide their size, hedge, or reverse with intent.
This indicator won’t make you prudent. It just removes your excuse for being simple.
⚔️ BK AK-13 — The mentor’s secret 13, revealed on 11. Let the band define the field. Let wisdom define your strike.
May Gd bless your eyes, your patience, your settings, and every decision you make at the edge. 🙏






















