Volume Zone Oscillator and Price Zone (VZO/PZO) [NeoButane]" Volume Precedes Price is the conceptual idea for the oscillator."
"The main idea of the VZO was to try to change the OBV to look like an oscillator rather than an indicator, also to include time; primarily to identify which zone the volume is located in during a specific period "
How to read this indicator:
Positive reading -> bullish
Negative reading -> bearish
-60 or 60 is seen as the limit of the oscillator range, and a pullback should be expected from there.
Plus and minus signs have been added to the top and bottom for VZO and PZO, with an adjustable threshold to trigger.
Alert conditions have been added to this indicator for ease of use.
Volume Zone Oscillator, write-up by the author (recommended reading)
http:capitalsynergy.com/resources/IFTA09VZO.pdf
Volume Zone Oscillator, uses and formula
https:www.investopedia.com/articles/active-trading/072815/how-interpret-volume-zone-oscillator.asp
Price Zone Oscillator, uses and formula
https:www.investopedia.com/terms/p/price-zone-oscillator.asp
Tìm kiếm tập lệnh với "股价站上60月线"
Fib,Guppy Multiple MA(FGMMA)(A/D & Volume Weight,SMA,EMA)[cI8DH]Features:
- 3 + 12 MAs (12 is chosen because Guppy has 12 MAs)
- MA types can be set to Simple, Exponential, Weighted, and Smoothed
- Volume weight can be applied to all available MAs (the built-in VWMA uses Simple MA)
- It is possible to count in only effective portions of the volume in the equation by using Accum/Dist Volume Weight
- Secondary smoothing (useful when volume weight is enabled)
- Predefined MA sets based on Fibonacci sequence (2,3,5,8,.., 377), Guppy (3,5,8,10,12,15 &30,35,40,45,50,60), and cI8DH (2,3,5,8,12,17 & 30,34,39,45,52,60)
Recommended settings:
- hlc3 as input source captures all the essential information encapsulated in a candle. I'd use hlc3 as the default option. In uptrend, "low" and in downtrend, "high" might give more relevant results when using MAs for structural analysis of a market. For commonly used MAs (EMA20, SMA50,100,200), "close" should be used due to their self-fulfilling prophecy effect.
- When you have volume weight above 0, you may want to use secondary smoothing.
- Try not to use Simple MA for smaller lengths (below 20). Sharp changes in the past (right before the period specified by the length) will affect the current value of MA dramatically leading to confusion.
- I am using the first 3 MAs for SMA 50,100,200. You can disable them from the MA type selector all at once when using Fib or Guppy ribbons.
MA-based analysis:
There are different ways of structuring a market. Geometrical (trend lines, channels, fans, patterns, etc) and Fib retracement-based structuring is very common among traders. MAs give an alternative way of analyzing markets. MA ribbons such as Guppy (6 slow and 6 fast-moving MAs) are popular for analyzing market flow. IMO default Guppy sets are a bit random as the numbers do not have an elegant sequence. So I proposed my sets based on increasing sequene spacing (+1). These two MA ribbons are good for market flow analysis but the spacing of the MAs are not ideal for structuring a market. Ribbons based on the Fib sequence is a better choice for structuring a market. This is the equivalent of Fib channels but in a more dynamic form. Among other things, MA Fib ribbon can be used to assess market momentum and to compare different stages of a market. Here are two "educational-only" examples:
Notes:
- Smoothed MA with length L = Exponential MA with length 2*L-1
- Read the background section in my ADP indicator to understand how A/D Volume is calculated
Better RSI with bullish / bearish market cycle indicator This script improves the default RSI. First. it identifies regions of the RSI which are oversold and overbought by changing the color of RSI from white to red. Second, it adds additional reference lines at 20,40,50,60, and 80 to better gauge the RSI value. Finally, the coolest feature, the middle 50 line is used to indicate which cycle the price is currently at. A green color at the 50 line indicates a bullish cycle, a red color indicators a bearish cycle, and a white color indicates a neutral cycle.
The cycles are determined using the RSI as follows:
if RSI is overbought, cycle switches to bullish until RSI falls below 40, at which point it becomes neutral
if RSI is oversold, cycle switches bearish until RSI rises above 60, at which point it becomes neutral
a neutral cycle is exited at either overbought or oversold conditions
Very useful, please give it a try and let me know what you think
MG - Multiple time frame Stochastic RSIAllows user to view stochastic RSI from two different time frames.
Each stochastic RSI indicator is fully customizable, offering the following options:
- Timeframe
- RSI source
- RSI length
- Stochastic length
- Stochastic average length
- Stochastic smoothing length
Usage:
Comparing stochastic RSI across two different time frames can sharpen trades. For example, if you configure a 60 min and 5/15 min stochastic RSI pair, you might enter a long trade when the 60 min stoch RSI crosses up and exit / take profit when the 5 min stock RSI crosses down.
NG [Simple Harmonic Oscillator]The SHO is a bounded oscillator for the simple harmonic index that calculates the period of the market’s cycle.
The oscillator is used for short and intermediate terms and moves within a range of -100 to 100 percent.
The SHO has overbought and oversold levels at +40 and -40, respectively.
At extreme periods, the oscillator may reach the levels of +60 and -60.
The zero level demonstrates an equilibrium between the periods of bulls and bears.
The SHO oscillates between +40 and -40.
The crossover at those levels creates buy and sell signals.
In an uptrend, the SHO fluctuates between 0 and +40 where the bulls are controlling the market.
On the contrary, the SHO fluctuates between 0 and -40 during downtrends where the bears controlthe market.
Reaching the extreme level -60 in an uptrend is a sign of weakness.
Ichimoku Cloud w/SelIchimoku Cloud with selection for:
Regular:
conversionPeriods = 9,
basePeriods = 26
laggingSpan2Periods = 52,
displacement = 26
Crypto:
conversionPeriods = 10,
basePeriods = 30,
laggingSpan2Periods = 60,
displacement = 30
Crypto Doubled:
conversionPeriods = 20,
basePeriods = 60,
laggingSpan2Periods = 120,
displacement = 30
3 Linear Regression CurveFast 3LRC - 15/30/60 standard settings - 15/30 give a lot of noise, but give you a some time to prepare for the 60 to flip
DEMA Double Exponential Moving Average Strategy@Moneros 2017
Based on The DEMA is a fast-acting moving average that is more responsive to market changes than a traditional moving average
en.wikipedia.org
!!!! IN ORDER TO AVOID REPAITING ISSUES !!!!
!!!! DO NOT VIEW IN LOWER RESOLUTIONS THAN res/2 PARAMETER !!!!
for example res = 120 view >= 60m res = 60 view >= 30m
the length of the DEMA sampling shouldn't be longer than a candle
Best profits tested on BTCUSD
res = 105 slowPeriod = 2 fastPeriod = 32
res = 125 slowPeriod = 3 fastPeriod = 21
res = 120 slowPeriod = 2 fastPeriod = 32
res = 130 slowPeriod = 1 fastPeriod = 24
res = 40 slowPeriod = 4 fastPeriod = 93
res = 60 slowPeriod = 1 fastPeriod = 67
BTCUSD
RSI in Bull and Bear Market V2.0RSI oversold at 60/40 in bullish market
And Overbought at 40/60 in Bearish market
for more info of this Strategy
WaveTrend [MastroFran]Great indicator to show short term price movements. 5 day moving average oscillator. When green crosses red and under the 60 mark, buy with caution. when over the 60 mark and red crosses green sell immediately for highest profits.
Hersheys CoCo VolumeCoCo Volume shows you volume movement of your symbol after subtracting the movement from another symbol, preferrably the sector or market the stock belongs to.
My latest update to my CoCoVolume Indicator. It calculates today's volume percent over the 60 period average for both your symbol and index, and displays that difference. If the percent is over the max it highlights the color, showing BIG action for that stock.
The last version was calculating the percent volume difference from yesterday to today for the stock and index and displaying the difference. The prior method had large swings on low volume stocks... this one shows the independent volume action much better. The default values will suit most stocks.
You can set three variables...
- the index symbol, default is SPY
- the period for averaging, default is 60
- the max volume percent, default is 500
Good trading!
Brian Hershey
close-hl2 Price actionStill not tested, but looks very good ; it is the difference between EMA median price and EMA close in different time frame, I used 240, 60, and the current Time frame ,plus one more customed period ; can forcast the price movement , but it s not in scale, so it can not show how much higher or lower the price can goes but just the next direction. I think intraday on 5 ,15 ,60 better then high frame.If you need to try on Daily frame have to change the period to higher then Daily
Everyday 0002 _ MAC 1st Trading Hour WalkoverThis is the second strategy for my Everyday project.
Like I wrote the last time - my goal is to create a new strategy everyday
for the rest of 2016 and post it here on TradingView.
I'm a complete beginner so this is my way of learning about coding strategies.
I'll give myself between 15 minutes and 2 hours to complete each creation.
This is basically a repetition of the first strategy I wrote - a Moving Average Crossover,
but I added a tiny thing.
I read that "Statistics have proven that the daily high or low is established within the first hour of trading on more than 70% of the time."
(source: )
My first Moving Average Crossover strategy, tested on VOLVB daily, got stoped out by the volatility
and because of this missed one nice bull run and a very nice bear run.
So I added this single line: if time("60", "1000-1600") regarding when to take exits:
if time("60", "1000-1600")
strategy.exit("Close Long", "Long", profit=2000, loss=500)
strategy.exit("Close Short", "Short", profit=2000, loss=500)
Sweden is UTC+2 so I guess UTC 1000 equals 12.00 in Stockholm. Not sure if this is correct, actually.
Anyway, I hope this means the strategy will only take exits based on price action which occur in the afternoon, when there is a higher probability of a lower volatility.
When I ran the new modified strategy on the same VOLVB daily it didn't get stoped out so easily.
On the other hand I'll have to test this on various stocks .
Reading and learning about how to properly test strategies is on my todo list - all tips on youtube videos or blogs
to read on this topic is very welcome!
Like I said the last time, I'm posting these strategies hoping to learn from the community - so any feedback, advice, or corrections is very much welcome and appreciated!
/pbergden
指定周期 MACustom Timeframe Moving Average (MA)
This indicator allows you to display a Moving Average from a higher or custom timeframe directly on your current chart.
📌 Features:
Choose any custom timeframe (e.g. 1H, 4H, 1D)
Supports multiple MA lengths (e.g. 20, 40, 60…)
Helps identify trend direction and key dynamic support/resistance
Ideal for multi-timeframe trading strategies
💡 Usage Example:
View 1H MA on a 5-minute chart for stronger trend confirmation
Use longer period MA as trend filter, shorter MA for entry signals
🚀 A great tool for swing traders, scalpers, and day traders who rely on multi-timeframe confluence.
Squeeze Hour Frequency [CHE]Squeeze Hour Frequency (ATR-PR) — Standalone — Tracks daily squeeze occurrences by hour to reveal time-based volatility patterns
Summary
This indicator identifies periods of unusually low volatility, defined as squeezes, and tallies their frequency across each hour of the day over historical trading sessions. By aggregating counts into a sortable table, it helps users spot hours prone to these conditions, enabling better scheduling of trading activity to avoid or target specific intraday regimes. Signals gain robustness through percentile-based detection that adapts to recent volatility history, differing from fixed-threshold methods by focusing on relative lowness rather than absolute levels, which reduces false positives in varying market environments.
Motivation: Why this design?
Traders often face uneven intraday volatility, with certain hours showing clustered low-activity phases that precede or follow breakouts, leading to mistimed entries or overlooked calm periods. The core idea of hourly squeeze frequency addresses this by binning low-volatility events into 24 hourly slots and counting distinct daily occurrences, providing a historical profile of when squeezes cluster. This reveals time-of-day biases without relying on real-time alerts, allowing proactive adjustments to session focus.
What’s different vs. standard approaches?
- Reference baseline: Classical volatility tools like simple moving average crossovers or fixed ATR thresholds, which flag squeezes uniformly across the day.
- Architecture differences:
- Uses persistent arrays to track one squeeze per hour per day, preventing overcounting within sessions.
- Employs custom sorting on ratio arrays for dynamic table display, prioritizing top or bottom performers.
- Handles timezones explicitly to ensure consistent binning across global assets.
- Practical effect: Charts show a persistent table ranking hours by squeeze share, making intraday patterns immediately visible—such as a top hour capturing over 20 percent of total events—unlike static overlays that ignore temporal distribution, which matters for avoiding low-liquidity traps in crypto or forex.
How it works (technical)
The indicator first computes a rolling volatility measure over a specified lookback period. It then derives a relative ranking of the current value against recent history within a window of bars. A squeeze is flagged when this ranking falls below a user-defined cutoff, indicating the value is among the lowest in the recent sample.
On each bar, the local hour is extracted using the selected timezone. If a squeeze occurs and the bar has price data, the count for that hour increments only if no prior mark exists for the current day, using a persistent array to store the last marked day per hour. This ensures one tally per unique trading day per slot.
At the final bar, arrays compile counts and ratios for all 24 hours, where the ratio represents each hour's share of total squeezes observed. These are sorted ascending or descending based on display mode, and the top or bottom subset populates the table. Background shading highlights live squeezes in red for visual confirmation. Initialization uses zero-filled arrays for counts and negative seeds for day tracking, with state persisting across bars via variable declarations.
No higher timeframe data is pulled, so there is no repaint risk from external fetches; all logic runs on confirmed bars.
Parameter Guide
ATR Length — Controls the lookback for the volatility measure, influencing sensitivity to short-term fluctuations; shorter values increase responsiveness but add noise, longer ones smooth for stability — Default: 14 — Trade-offs/Tips: Use 10-20 for intraday charts to balance quick detection with fewer false squeezes; test on historical data to avoid over-smoothing in trending markets.
Percentile Window (bars) — Sets the history depth for ranking the current volatility value, affecting how "low" is defined relative to past; wider windows emphasize long-term norms — Default: 252 — Trade-offs/Tips: 100-300 bars suit daily cycles; narrower for fast assets like crypto to catch recent regimes, but risks instability in sparse data.
Squeeze threshold (PR < x) — Defines the cutoff for flagging low relative volatility, where values below this mark a squeeze; lower thresholds tighten detection for rarer events — Default: 10.0 — Trade-offs/Tips: 5-15 percent for conservative signals reducing false positives; raise to 20 for more frequent highlights in high-vol environments, monitoring for increased noise.
Timezone — Specifies the reference for hourly binning, ensuring alignment with market sessions — Default: Exchange — Trade-offs/Tips: Set to "America/New_York" for US assets; mismatches can skew counts, so verify against chart timezone.
Show Table — Toggles the results display, essential for reviewing frequencies — Default: true — Trade-offs/Tips: Disable on mobile for performance; pair with position tweaks for clean overlays.
Pos — Places the table on the chart pane — Default: Top Right — Trade-offs/Tips: Bottom Left avoids candle occlusion on volatile charts.
Font — Adjusts text readability in the table — Default: normal — Trade-offs/Tips: Tiny for dense views, large for emphasis on key hours.
Dark — Applies high-contrast colors for visibility — Default: true — Trade-offs/Tips: Toggle false in light themes to prevent washout.
Display — Filters table rows to focus on extremes or full list — Default: All — Trade-offs/Tips: Top 3 for quick scans of risky hours; Bottom 3 highlights safe low-squeeze periods.
Reading & Interpretation
Red background shading appears on bars meeting the squeeze condition, signaling current low relative volatility. The table lists hours as "H0" to "H23", with columns for daily squeeze counts, percentage share of total squeezes (summing to 100 percent across hours), and an arrow marker on the top hour. A summary row above details the peak count, its share, and the leading hour. A label at the last bar recaps total days observed, data-valid days, and top hour stats. Rising shares indicate clustering, suggesting regime persistence in that slot.
Practical Workflows & Combinations
- Trend following: Scan for hours with low squeeze shares to enter during stable regimes; confirm with higher highs or lower lows on the 15-minute chart, avoiding top-share hours post-news like tariff announcements.
- Exits/Stops: Tighten stops in high-share hours to guard against sudden vol spikes; use the table to shift to conservative sizing outside peak squeeze times.
- Multi-asset/Multi-TF: Defaults work across crypto pairs on 5-60 minute timeframes; for stocks, widen percentile window to 500 bars. Combine with volume oscillators—enter only if squeeze count is below average for the asset.
Behavior, Constraints & Performance
Logic executes on closed bars, with live bars updating counts provisionally but finalizing on confirmation; table refreshes only at the last bar, avoiding intrabar flicker. No security calls or higher timeframes, so no repaint from external data. Resources include a 5000-bar history limit, loops up to 24 iterations for sorting and totals, and arrays sized to 24 elements; labels and table are capped at 500 each for efficiency. Known limits: Skips hours without bars (e.g., weekends), assumes uniform data availability, and may undercount in sparse sessions; timezone shifts can alter profiles without warning.
Sensible Defaults & Quick Tuning
Start with ATR Length at 14, Percentile Window at 252, and threshold at 10.0 for broad crypto use. If too many squeezes flag (noisy table), raise threshold to 15.0 and narrow window to 100 for stricter relative lowness. For sluggish detection in calm markets, drop ATR Length to 10 and threshold to 5.0 to capture subtler dips. In high-vol assets, widen window to 500 and threshold to 20.0 for stability.
What this indicator is—and isn’t
This is a historical frequency tracker and visualization layer for intraday volatility patterns, best as a filter in multi-tool setups. It is not a standalone signal generator, predictive model, or risk manager—pair it with price action, news filters, and position sizing rules.
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
Thanks to Duyck
for the ma sorter
Pro Trading Signals - Trend + S/R + Risk// ============================================
// PROFESSIONAL TRADING STRATEGY NOTES
// ============================================
// === WHAT THIS STRATEGY DOES ===
// 1. TREND ANALYSIS: Uses multiple EMAs (9, 21, 50, 200) to identify trend direction
// 2. SUPPORT/RESISTANCE: Automatically detects key price levels
// 3. RISK MANAGEMENT: Calculates stop loss and take profit with 2:1+ R:R ratio
// 4. SIGNAL SCORING: Only trades high-quality setups (60/100+ score)
// 5. ENTRY TYPES: Pullbacks, support/resistance bounces, breakouts
// === KEY IMPROVEMENTS FROM BASIC SIGNALS ===
// ✓ Trend alignment required (no counter-trend trades)
// ✓ Support/resistance confirmation
// ✓ Volume and momentum filters
// ✓ Automatic stop loss and take profit levels
// ✓ Signal quality scoring (filters out weak signals)
// ✓ Risk:Reward ratio enforcement (minimum 2:1)
// ✓ Volatility filter (avoids choppy markets)
Keltner Channel Enhanced [DCAUT]█ Keltner Channel Enhanced
📊 ORIGINALITY & INNOVATION
The Keltner Channel Enhanced represents an important advancement over standard Keltner Channel implementations by introducing dual flexibility in moving average selection for both the middle band and ATR calculation. While traditional Keltner Channels typically use EMA for the middle band and RMA (Wilder's smoothing) for ATR, this enhanced version provides access to 25+ moving average algorithms for both components, enabling traders to fine-tune the indicator's behavior to match specific market characteristics and trading approaches.
Key Advancements:
Dual MA Algorithm Flexibility: Independent selection of moving average types for middle band (25+ options) and ATR smoothing (25+ options), allowing optimization of both trend identification and volatility measurement separately
Enhanced Trend Sensitivity: Ability to use faster algorithms (HMA, T3) for middle band while maintaining stable volatility measurement with traditional ATR smoothing, or vice versa for different trading strategies
Adaptive Volatility Measurement: Choice of ATR smoothing algorithm affects channel responsiveness to volatility changes, from highly reactive (SMA, EMA) to smoothly adaptive (RMA, TEMA)
Comprehensive Alert System: Five distinct alert conditions covering breakouts, trend changes, and volatility expansion, enabling automated monitoring without constant chart observation
Multi-Timeframe Compatibility: Works effectively across all timeframes from intraday scalping to long-term position trading, with independent optimization of trend and volatility components
This implementation addresses key limitations of standard Keltner Channels: fixed EMA/RMA combination may not suit all market conditions or trading styles. By decoupling the trend component from volatility measurement and allowing independent algorithm selection, traders can create highly customized configurations for specific instruments and market phases.
📐 MATHEMATICAL FOUNDATION
Keltner Channel Enhanced uses a three-component calculation system that combines a flexible moving average middle band with ATR-based (Average True Range) upper and lower channels, creating volatility-adjusted trend-following bands.
Core Calculation Process:
1. Middle Band (Basis) Calculation:
The basis line is calculated using the selected moving average algorithm applied to the price source over the specified period:
basis = ma(source, length, maType)
Supported algorithms include EMA (standard choice, trend-biased), SMA (balanced and symmetric), HMA (reduced lag), WMA, VWMA, TEMA, T3, KAMA, and 17+ others.
2. Average True Range (ATR) Calculation:
ATR measures market volatility by calculating the average of true ranges over the specified period:
trueRange = max(high - low, abs(high - close ), abs(low - close ))
atrValue = ma(trueRange, atrLength, atrMaType)
ATR smoothing algorithm significantly affects channel behavior, with options including RMA (standard, very smooth), SMA (moderate smoothness), EMA (fast adaptation), TEMA (smooth yet responsive), and others.
3. Channel Calculation:
Upper and lower channels are positioned at specified multiples of ATR from the basis:
upperChannel = basis + (multiplier × atrValue)
lowerChannel = basis - (multiplier × atrValue)
Standard multiplier is 2.0, providing channels that dynamically adjust width based on market volatility.
Keltner Channel vs. Bollinger Bands - Key Differences:
While both indicators create volatility-based channels, they use fundamentally different volatility measures:
Keltner Channel (ATR-based):
Uses Average True Range to measure actual price movement volatility
Incorporates gaps and limit moves through true range calculation
More stable in trending markets, less prone to extreme compression
Better reflects intraday volatility and trading range
Typically fewer band touches, making touches more significant
More suitable for trend-following strategies
Bollinger Bands (Standard Deviation-based):
Uses statistical standard deviation to measure price dispersion
Based on closing prices only, doesn't account for intraday range
Can compress significantly during consolidation (squeeze patterns)
More touches in ranging markets
Better suited for mean-reversion strategies
Provides statistical probability framework (95% within 2 standard deviations)
Algorithm Combination Effects:
The interaction between middle band MA type and ATR MA type creates different indicator characteristics:
Trend-Focused Configuration (Fast MA + Slow ATR): Middle band uses HMA/EMA/T3, ATR uses RMA/TEMA, quick trend changes with stable channel width, suitable for trend-following
Volatility-Focused Configuration (Slow MA + Fast ATR): Middle band uses SMA/WMA, ATR uses EMA/SMA, stable trend with dynamic channel width, suitable for volatility trading
Balanced Configuration (Standard EMA/RMA): Classic Keltner Channel behavior, time-tested combination, suitable for general-purpose trend following
Adaptive Configuration (KAMA + KAMA): Self-adjusting indicator responding to efficiency ratio, suitable for markets with varying trend strength and volatility regimes
📊 COMPREHENSIVE SIGNAL ANALYSIS
Keltner Channel Enhanced provides multiple signal categories optimized for trend-following and breakout strategies.
Channel Position Signals:
Upper Channel Interaction:
Price Touching Upper Channel: Strong bullish momentum, price moving more than typical volatility range suggests, potential continuation signal in established uptrends
Price Breaking Above Upper Channel: Exceptional strength, price exceeding normal volatility expectations, consider adding to long positions or tightening trailing stops
Price Riding Upper Channel: Sustained strong uptrend, characteristic of powerful bull moves, stay with trend and avoid premature profit-taking
Price Rejection at Upper Channel: Momentum exhaustion signal, consider profit-taking on longs or waiting for pullback to middle band for reentry
Lower Channel Interaction:
Price Touching Lower Channel: Strong bearish momentum, price moving more than typical volatility range suggests, potential continuation signal in established downtrends
Price Breaking Below Lower Channel: Exceptional weakness, price exceeding normal volatility expectations, consider adding to short positions or protecting against further downside
Price Riding Lower Channel: Sustained strong downtrend, characteristic of powerful bear moves, stay with trend and avoid premature covering
Price Rejection at Lower Channel: Momentum exhaustion signal, consider covering shorts or waiting for bounce to middle band for reentry
Middle Band (Basis) Signals:
Trend Direction Confirmation:
Price Above Basis: Bullish trend bias, middle band acts as dynamic support in uptrends, consider long positions or holding existing longs
Price Below Basis: Bearish trend bias, middle band acts as dynamic resistance in downtrends, consider short positions or avoiding longs
Price Crossing Above Basis: Potential trend change from bearish to bullish, early signal to establish long positions
Price Crossing Below Basis: Potential trend change from bullish to bearish, early signal to establish short positions or exit longs
Pullback Trading Strategy:
Uptrend Pullback: Price pulls back from upper channel to middle band, finds support, and resumes upward, ideal long entry point
Downtrend Bounce: Price bounces from lower channel to middle band, meets resistance, and resumes downward, ideal short entry point
Basis Test: Strong trends often show price respecting the middle band as support/resistance on pullbacks
Failed Test: Price breaking through middle band against trend direction signals potential reversal
Volatility-Based Signals:
Narrow Channels (Low Volatility):
Consolidation Phase: Channels contract during periods of reduced volatility and directionless price action
Breakout Preparation: Narrow channels often precede significant directional moves as volatility cycles
Trading Approach: Reduce position sizes, wait for breakout confirmation, avoid range-bound strategies within channels
Breakout Direction: Monitor for price breaking decisively outside channel range with expanding width
Wide Channels (High Volatility):
Trending Phase: Channels expand during strong directional moves and increased volatility
Momentum Confirmation: Wide channels confirm genuine trend with substantial volatility backing
Trading Approach: Trend-following strategies excel, wider stops necessary, mean-reversion strategies risky
Exhaustion Signs: Extreme channel width (historical highs) may signal approaching consolidation or reversal
Advanced Pattern Recognition:
Channel Walking Pattern:
Upper Channel Walk: Price consistently touches or exceeds upper channel while staying above basis, very strong uptrend signal, hold longs aggressively
Lower Channel Walk: Price consistently touches or exceeds lower channel while staying below basis, very strong downtrend signal, hold shorts aggressively
Basis Support/Resistance: During channel walks, price typically uses middle band as support/resistance on minor pullbacks
Pattern Break: Price crossing basis during channel walk signals potential trend exhaustion
Squeeze and Release Pattern:
Squeeze Phase: Channels narrow significantly, price consolidates near middle band, volatility contracts
Direction Clues: Watch for price positioning relative to basis during squeeze (above = bullish bias, below = bearish bias)
Release Trigger: Price breaking outside narrow channel range with expanding width confirms breakout
Follow-Through: Measure squeeze height and project from breakout point for initial profit targets
Channel Expansion Pattern:
Breakout Confirmation: Rapid channel widening confirms volatility increase and genuine trend establishment
Entry Timing: Enter positions early in expansion phase before trend becomes overextended
Risk Management: Use channel width to size stops appropriately, wider channels require wider stops
Basis Bounce Pattern:
Clean Bounce: Price touches middle band and immediately reverses, confirms trend strength and entry opportunity
Multiple Bounces: Repeated basis bounces indicate strong, sustainable trend
Bounce Failure: Price penetrating basis signals weakening trend and potential reversal
Divergence Analysis:
Price/Channel Divergence: Price makes new high/low while staying within channel (not reaching outer band), suggests momentum weakening
Width/Price Divergence: Price breaks to new extremes but channel width contracts, suggests move lacks conviction
Reversal Signal: Divergences often precede trend reversals or significant consolidation periods
Multi-Timeframe Analysis:
Keltner Channels work particularly well in multi-timeframe trend-following approaches:
Three-Timeframe Alignment:
Higher Timeframe (Weekly/Daily): Identify major trend direction, note price position relative to basis and channels
Intermediate Timeframe (Daily/4H): Identify pullback opportunities within higher timeframe trend
Lower Timeframe (4H/1H): Time precise entries when price touches middle band or lower channel (in uptrends) with rejection
Optimal Entry Conditions:
Best Long Entries: Higher timeframe in uptrend (price above basis), intermediate timeframe pulls back to basis, lower timeframe shows rejection at middle band or lower channel
Best Short Entries: Higher timeframe in downtrend (price below basis), intermediate timeframe bounces to basis, lower timeframe shows rejection at middle band or upper channel
Risk Management: Use higher timeframe channel width to set position sizing, stops below/above higher timeframe channels
🎯 STRATEGIC APPLICATIONS
Keltner Channel Enhanced excels in trend-following and breakout strategies across different market conditions.
Trend Following Strategy:
Setup Requirements:
Identify established trend with price consistently on one side of basis line
Wait for pullback to middle band (basis) or brief penetration through it
Confirm trend resumption with price rejection at basis and move back toward outer channel
Enter in trend direction with stop beyond basis line
Entry Rules:
Uptrend Entry:
Price pulls back from upper channel to middle band, shows support at basis (bullish candlestick, momentum divergence)
Enter long on rejection/bounce from basis with stop 1-2 ATR below basis
Aggressive: Enter on first touch; Conservative: Wait for confirmation candle
Downtrend Entry:
Price bounces from lower channel to middle band, shows resistance at basis (bearish candlestick, momentum divergence)
Enter short on rejection/reversal from basis with stop 1-2 ATR above basis
Aggressive: Enter on first touch; Conservative: Wait for confirmation candle
Trend Management:
Trailing Stop: Use basis line as dynamic trailing stop, exit if price closes beyond basis against position
Profit Taking: Take partial profits at opposite channel, move stops to basis
Position Additions: Add to winners on subsequent basis bounces if trend intact
Breakout Strategy:
Setup Requirements:
Identify consolidation period with contracting channel width
Monitor price action near middle band with reduced volatility
Wait for decisive breakout beyond channel range with expanding width
Enter in breakout direction after confirmation
Breakout Confirmation:
Price breaks clearly outside channel (upper for longs, lower for shorts), channel width begins expanding from contracted state
Volume increases significantly on breakout (if using volume analysis)
Price sustains outside channel for multiple bars without immediate reversal
Entry Approaches:
Aggressive: Enter on initial break with stop at opposite channel or basis, use smaller position size
Conservative: Wait for pullback to broken channel level, enter on rejection and resumption, tighter stop
Volatility-Based Position Sizing:
Adjust position sizing based on channel width (ATR-based volatility):
Wide Channels (High ATR): Reduce position size as stops must be wider, calculate position size using ATR-based risk calculation: Risk / (Stop Distance in ATR × ATR Value)
Narrow Channels (Low ATR): Increase position size as stops can be tighter, be cautious of impending volatility expansion
ATR-Based Risk Management: Use ATR-based risk calculations, position size = 0.01 × Capital / (2 × ATR), use multiples of ATR (1-2 ATR) for adaptive stops
Algorithm Selection Guidelines:
Different market conditions benefit from different algorithm combinations:
Strong Trending Markets: Middle band use EMA or HMA, ATR use RMA, capture trends quickly while maintaining stable channel width
Choppy/Ranging Markets: Middle band use SMA or WMA, ATR use SMA or WMA, avoid false trend signals while identifying genuine reversals
Volatile Markets: Middle band and ATR both use KAMA or FRAMA, self-adjusting to changing market conditions reduces manual optimization
Breakout Trading: Middle band use SMA, ATR use EMA or SMA, stable trend with dynamic channels highlights volatility expansion early
Scalping/Day Trading: Middle band use HMA or T3, ATR use EMA or TEMA, both components respond quickly
Position Trading: Middle band use EMA/TEMA/T3, ATR use RMA or TEMA, filter out noise for long-term trend-following
📋 DETAILED PARAMETER CONFIGURATION
Understanding and optimizing parameters is essential for adapting Keltner Channel Enhanced to specific trading approaches.
Source Parameter:
Close (Most Common): Uses closing price, reflects daily settlement, best for end-of-day analysis and position trading, standard choice
HL2 (Median Price): Smooths out closing bias, better represents full daily range in volatile markets, good for swing trading
HLC3 (Typical Price): Gives more weight to close while including full range, popular for intraday applications, slightly more responsive than HL2
OHLC4 (Average Price): Most comprehensive price representation, smoothest option, good for gap-prone markets or highly volatile instruments
Length Parameter:
Controls the lookback period for middle band (basis) calculation:
Short Periods (10-15): Very responsive to price changes, suitable for day trading and scalping, higher false signal rate
Standard Period (20 - Default): Represents approximately one month of trading, good balance between responsiveness and stability, suitable for swing and position trading
Medium Periods (30-50): Smoother trend identification, fewer false signals, better for position trading and longer holding periods
Long Periods (50+): Very smooth, identifies major trends only, minimal false signals but significant lag, suitable for long-term investment
Optimization by Timeframe: 1-15 minute charts use 10-20 period, 30-60 minute charts use 20-30 period, 4-hour to daily charts use 20-40 period, weekly charts use 20-30 weeks.
ATR Length Parameter:
Controls the lookback period for Average True Range calculation, affecting channel width:
Short ATR Periods (5-10): Very responsive to recent volatility changes, standard is 10 (Keltner's original specification), may be too reactive in whipsaw conditions
Standard ATR Period (10 - Default): Chester Keltner's original specification, good balance between responsiveness and stability, most widely used
Medium ATR Periods (14-20): Smoother channel width, ATR 14 aligns with Wilder's original ATR specification, good for position trading
Long ATR Periods (20+): Very smooth channel width, suitable for long-term trend-following
Length vs. ATR Length Relationship: Equal values (20/20) provide balanced responsiveness, longer ATR (20/14) gives more stable channel width, shorter ATR (20/10) is standard configuration, much shorter ATR (20/5) creates very dynamic channels.
Multiplier Parameter:
Controls channel width by setting ATR multiples:
Lower Values (1.0-1.5): Tighter channels with frequent price touches, more trading signals, higher false signal rate, better for range-bound and mean-reversion strategies
Standard Value (2.0 - Default): Chester Keltner's recommended setting, good balance between signal frequency and reliability, suitable for both trending and ranging strategies
Higher Values (2.5-3.0): Wider channels with less frequent touches, fewer but potentially higher-quality signals, better for strong trending markets
Market-Specific Optimization: High volatility markets (crypto, small-caps) use 2.5-3.0 multiplier, medium volatility markets (major forex, large-caps) use 2.0 multiplier, low volatility markets (bonds, utilities) use 1.5-2.0 multiplier.
MA Type Parameter (Middle Band):
Critical selection that determines trend identification characteristics:
EMA (Exponential Moving Average - Default): Standard Keltner Channel choice, Chester Keltner's original specification, emphasizes recent prices, faster response to trend changes, suitable for all timeframes
SMA (Simple Moving Average): Equal weighting of all data points, no directional bias, slower than EMA, better for ranging markets and mean-reversion
HMA (Hull Moving Average): Minimal lag with smooth output, excellent for fast trend identification, best for day trading and scalping
TEMA (Triple Exponential Moving Average): Advanced smoothing with reduced lag, responsive to trends while filtering noise, suitable for volatile markets
T3 (Tillson T3): Very smooth with minimal lag, excellent for established trend identification, suitable for position trading
KAMA (Kaufman Adaptive Moving Average): Automatically adjusts speed based on market efficiency, slow in ranging markets, fast in trends, suitable for markets with varying conditions
ATR MA Type Parameter:
Determines how Average True Range is smoothed, affecting channel width stability:
RMA (Wilder's Smoothing - Default): J. Welles Wilder's original ATR smoothing method, very smooth, slow to adapt to volatility changes, provides stable channel width
SMA (Simple Moving Average): Equal weighting, moderate smoothness, faster response to volatility changes than RMA, more dynamic channel width
EMA (Exponential Moving Average): Emphasizes recent volatility, quick adaptation to new volatility regimes, very responsive channel width changes
TEMA (Triple Exponential Moving Average): Smooth yet responsive, good balance for varying volatility, suitable for most trading styles
Parameter Combination Strategies:
Conservative Trend-Following: Length 30/ATR Length 20/Multiplier 2.5, MA Type EMA or TEMA/ATR MA Type RMA, smooth trend with stable wide channels, suitable for position trading
Standard Balanced Approach: Length 20/ATR Length 10/Multiplier 2.0, MA Type EMA/ATR MA Type RMA, classic Keltner Channel configuration, suitable for general purpose swing trading
Aggressive Day Trading: Length 10-15/ATR Length 5-7/Multiplier 1.5-2.0, MA Type HMA or EMA/ATR MA Type EMA or SMA, fast trend with dynamic channels, suitable for scalping and day trading
Breakout Specialist: Length 20-30/ATR Length 5-10/Multiplier 2.0, MA Type SMA or WMA/ATR MA Type EMA or SMA, stable trend with responsive channel width
Adaptive All-Conditions: Length 20/ATR Length 10/Multiplier 2.0, MA Type KAMA or FRAMA/ATR MA Type KAMA or TEMA, self-adjusting to market conditions
Offset Parameter:
Controls horizontal positioning of channels on chart. Positive values shift channels to the right (future) for visual projection, negative values shift left (past) for historical analysis, zero (default) aligns with current price bars for real-time signal analysis. Offset affects only visual display, not alert conditions or actual calculations.
📈 PERFORMANCE ANALYSIS & COMPETITIVE ADVANTAGES
Keltner Channel Enhanced provides improvements over standard implementations while maintaining proven effectiveness.
Response Characteristics:
Standard EMA/RMA Configuration: Moderate trend lag (approximately 0.4 × length periods), smooth and stable channel width from RMA smoothing, good balance for most market conditions
Fast HMA/EMA Configuration: Approximately 60% reduction in trend lag compared to EMA, responsive channel width from EMA ATR smoothing, suitable for quick trend changes and breakouts
Adaptive KAMA/KAMA Configuration: Variable lag based on market efficiency, automatic adjustment to trending vs. ranging conditions, self-optimizing behavior reduces manual intervention
Comparison with Traditional Keltner Channels:
Enhanced Version Advantages:
Dual Algorithm Flexibility: Independent MA selection for trend and volatility vs. fixed EMA/RMA, separate tuning of trend responsiveness and channel stability
Market Adaptation: Choose configurations optimized for specific instruments and conditions, customize for scalping, swing, or position trading preferences
Comprehensive Alerts: Enhanced alert system including channel expansion detection
Traditional Version Advantages:
Simplicity: Fewer parameters, easier to understand and implement
Standardization: Fixed EMA/RMA combination ensures consistency across users
Research Base: Decades of backtesting and research on standard configuration
When to Use Enhanced Version: Trading multiple instruments with different characteristics, switching between trending and ranging markets, employing different strategies, algorithm-based trading systems requiring customization, seeking optimization for specific trading style and timeframe.
When to Use Standard Version: Beginning traders learning Keltner Channel concepts, following published research or trading systems, preferring simplicity and standardization, wanting to avoid optimization and curve-fitting risks.
Performance Across Market Conditions:
Strong Trending Markets: EMA or HMA basis with RMA or TEMA ATR smoothing provides quicker trend identification, pullbacks to basis offer excellent entry opportunities
Choppy/Ranging Markets: SMA or WMA basis with RMA ATR smoothing and lower multipliers, channel bounce strategies work well, avoid false breakouts
Volatile Markets: KAMA or FRAMA with EMA or TEMA, adaptive algorithms excel by automatic adjustment, wider multipliers (2.5-3.0) accommodate large price swings
Low Volatility/Consolidation: Channels narrow significantly indicating consolidation, algorithm choice less impactful, focus on detecting channel width contraction for breakout preparation
Keltner Channel vs. Bollinger Bands - Usage Comparison:
Favor Keltner Channels When: Trend-following is primary strategy, trading volatile instruments with gaps, want ATR-based volatility measurement, prefer fewer higher-quality channel touches, seeking stable channel width during trends.
Favor Bollinger Bands When: Mean-reversion is primary strategy, trading instruments with limited gaps, want statistical framework based on standard deviation, need squeeze patterns for breakout identification, prefer more frequent trading opportunities.
Use Both Together: Bollinger Band squeeze + Keltner Channel breakout is powerful combination, price outside Bollinger Bands but inside Keltner Channels indicates moderate signal, price outside both indicates very strong signal, Bollinger Bands for entries and Keltner Channels for trend confirmation.
Limitations and Considerations:
General Limitations:
Lagging Indicator: All moving averages lag price, even with reduced-lag algorithms
Trend-Dependent: Works best in trending markets, less effective in choppy conditions
No Direction Prediction: Indicates volatility and deviation, not future direction, requires confirmation
Enhanced Version Specific Considerations:
Optimization Risk: More parameters increase risk of curve-fitting historical data
Complexity: Additional choices may overwhelm beginning traders
Backtesting Challenges: Different algorithms produce different historical results
Mitigation Strategies:
Use Confirmation: Combine with momentum indicators (RSI, MACD), volume, or price action
Test Parameter Robustness: Ensure parameters work across range of values, not just optimized ones
Multi-Timeframe Analysis: Confirm signals across different timeframes
Proper Risk Management: Use appropriate position sizing and stops
Start Simple: Begin with standard EMA/RMA before exploring alternatives
Optimal Usage Recommendations:
For Maximum Effectiveness:
Start with standard EMA/RMA configuration to understand classic behavior
Experiment with alternatives on demo account or paper trading
Match algorithm combination to market condition and trading style
Use channel width analysis to identify market phases
Combine with complementary indicators for confirmation
Implement strict risk management using ATR-based position sizing
Focus on high-quality setups rather than trading every signal
Respect the trend: trade with basis direction for higher probability
Complementary Indicators:
RSI or Stochastic: Confirm momentum at channel extremes
MACD: Confirm trend direction and momentum shifts
Volume: Validate breakouts and trend strength
ADX: Measure trend strength, avoid Keltner signals in weak trends
Support/Resistance: Combine with traditional levels for high-probability setups
Bollinger Bands: Use together for enhanced breakout and volatility analysis
USAGE NOTES
This indicator is designed for technical analysis and educational purposes. Keltner Channel Enhanced has limitations and should not be used as the sole basis for trading decisions. While the flexible moving average selection for both trend and volatility components provides valuable adaptability across different market conditions, algorithm performance varies with market conditions, and past characteristics do not guarantee future results.
Key considerations:
Always use multiple forms of analysis and confirmation before entering trades
Backtest any parameter combination thoroughly before live trading
Be aware that optimization can lead to curve-fitting if not done carefully
Start with standard EMA/RMA settings and adjust only when specific conditions warrant
Understand that no moving average algorithm can eliminate lag entirely
Consider market regime (trending, ranging, volatile) when selecting parameters
Use ATR-based position sizing and risk management on every trade
Keltner Channels work best in trending markets, less effective in choppy conditions
Respect the trend direction indicated by price position relative to basis line
The enhanced flexibility of dual algorithm selection provides powerful tools for adaptation but requires responsible use, thorough understanding of how different algorithms behave under various market conditions, and disciplined risk management.
PO3 Time Dividers//@version=6
indicator("Smart Time Dividers (Auto)", overlay=true, max_lines_count=500)
// Appearance (change if you want)
line_color = color.new(#74757a, 50) // faint dark gray (0 = opaque, 255 = invisible)
line_style = line.style_dotted
line_width = 1
extend_type = extend.both
// time parts for current bar
y = year(time)
mo = month(time)
d = dayofmonth(time)
h = hour(time)
mi = minute(time)
// detect chart timeframe (common TradingView strings)
tf = timeframe.period
is_m1 = tf == "1"
is_m5 = tf == "5"
is_m15 = tf == "15"
is_h1 = (tf == "60") or (tf == "1H")
is_h4 = (tf == "240") or (tf == "4H")
is_d = (tf == "D") or (tf == "1D")
is_w = (tf == "W") or (tf == "1W")
// boundary checks (true on the first bar of the requested boundary)
new_year = y != y // start of year
new_quarter = (mo != mo ) and (mo == 1 or mo == 4 or mo == 7 or mo == 10) // start of Q
new_month = mo != mo // start of month
// week detection: use weekofyear if available, else use monday midnight fallback
new_week = false
//@compile_time_only
new_week := weekofyear(time) != weekofyear(time ) // this works in Pine v5
new_day = d != d // start of day
new_4h = (h % 4 == 0) and (mi == 0) // start of 4-hour block
new_hour = mi == 0 // start of hour
// choose which boundary to draw depending on chart timeframe
boundary = false
if is_w
boundary := new_year // weekly -> yearly
else if is_d
boundary := new_quarter // daily -> quarterly
else if is_h4
boundary := new_month // 4h -> monthly
else if is_h1
boundary := new_week // 1h -> weekly
else if is_m15
boundary := new_day // 15m -> daily
else if is_m5
boundary := new_4h // 5m -> every 4 hours
else if is_m1
boundary := new_hour // 1m -> every hour
else
// fallback: draw monthly lines on unknown timeframes
boundary := new_month
// draw line only on the transition bar (avoid duplicates)
if boundary and not boundary
line.new(x1=bar_index, y1=high, x2=bar_index, y2=low, xloc=xloc.bar_index,
extend=extend_type, color=line_color, style=line_style, width=line_width)
Stochastic Enhanced [DCAUT]█ Stochastic Enhanced
📊 ORIGINALITY & INNOVATION
The Stochastic Enhanced indicator builds upon George Lane's classic momentum oscillator (developed in the late 1950s) by providing comprehensive smoothing algorithm flexibility. While traditional implementations limit users to Simple Moving Average (SMA) smoothing, this enhanced version offers 21 advanced smoothing algorithms, allowing traders to optimize the indicator's characteristics for different market conditions and trading styles.
Key Improvements:
Extended from single SMA smoothing to 21 professional-grade algorithms including adaptive filters (KAMA, FRAMA), zero-lag methods (ZLEMA, T3), and advanced digital filters (Kalman, Laguerre)
Maintains backward compatibility with traditional Stochastic calculations through SMA default setting
Unified smoothing algorithm applies to both %K and %D lines for consistent signal processing characteristics
Enhanced visual feedback with clear color distinction and background fill highlighting for intuitive signal recognition
Comprehensive alert system covering crossovers and zone entries for systematic trade management
Differentiation from Traditional Stochastic:
Traditional Stochastic indicators use fixed SMA smoothing, which introduces consistent lag regardless of market volatility. This enhanced version addresses the limitation by offering adaptive algorithms that adjust to market conditions (KAMA, FRAMA), reduce lag without sacrificing smoothness (ZLEMA, T3, HMA), or provide superior noise filtering (Kalman Filter, Laguerre filters). The flexibility helps traders balance responsiveness and stability according to their specific needs.
📐 MATHEMATICAL FOUNDATION
Core Stochastic Calculation:
The Stochastic Oscillator measures the position of the current close relative to the high-low range over a specified period:
Step 1: Raw %K Calculation
%K_raw = 100 × (Close - Lowest Low) / (Highest High - Lowest Low)
Where:
Close = Current closing price
Lowest Low = Lowest low over the %K Length period
Highest High = Highest high over the %K Length period
Result ranges from 0 (close at period low) to 100 (close at period high)
Step 2: Smoothed %K Calculation
%K = MA(%K_raw, K Smoothing Period, MA Type)
Where:
MA = Selected moving average algorithm (SMA, EMA, etc.)
K Smoothing = 1 for Fast Stochastic, 3+ for Slow Stochastic
Traditional Fast Stochastic uses %K_raw directly without smoothing
Step 3: Signal Line %D Calculation
%D = MA(%K, D Smoothing Period, MA Type)
Where:
%D acts as a signal line and moving average of %K
D Smoothing typically set to 3 periods in traditional implementations
Both %K and %D use the same MA algorithm for consistent behavior
Available Smoothing Algorithms (21 Options):
Standard Moving Averages:
SMA (Simple): Equal-weighted average, traditional default, consistent lag characteristics
EMA (Exponential): Recent price emphasis, faster response to changes, exponential decay weighting
RMA (Rolling/Wilder's): Smoothed average used in RSI, less reactive than EMA
WMA (Weighted): Linear weighting favoring recent data, moderate responsiveness
VWMA (Volume-Weighted): Incorporates volume data, reflects market participation intensity
Advanced Moving Averages:
HMA (Hull): Reduced lag with smoothness, uses weighted moving averages and square root period
ALMA (Arnaud Legoux): Gaussian distribution weighting, minimal lag with good noise reduction
LSMA (Least Squares): Linear regression based, fits trend line to data points
DEMA (Double Exponential): Reduced lag compared to EMA, uses double smoothing technique
TEMA (Triple Exponential): Further lag reduction, triple smoothing with lag compensation
ZLEMA (Zero-Lag Exponential): Lag elimination attempt using error correction, very responsive
TMA (Triangular): Double-smoothed SMA, very smooth but slower response
Adaptive & Intelligent Filters:
T3 (Tilson T3): Six-pass exponential smoothing with volume factor adjustment, excellent smoothness
FRAMA (Fractal Adaptive): Adapts to market fractal dimension, faster in trends, slower in ranges
KAMA (Kaufman Adaptive): Efficiency ratio based adaptation, responds to volatility changes
McGinley Dynamic: Self-adjusting mechanism following price more accurately, reduced whipsaws
Kalman Filter: Optimal estimation algorithm from aerospace engineering, dynamic noise filtering
Advanced Digital Filters:
Ultimate Smoother: Advanced digital filter design, superior noise rejection with minimal lag
Laguerre Filter: Time-domain filter with N-order implementation, adjustable lag characteristics
Laguerre Binomial Filter: 6-pole Laguerre filter, extremely smooth output for long-term analysis
Super Smoother: Butterworth filter implementation, removes high-frequency noise effectively
📊 COMPREHENSIVE SIGNAL ANALYSIS
Absolute Level Interpretation (%K Line):
%K Above 80: Overbought condition, price near period high, potential reversal or pullback zone, caution for new long entries
%K in 70-80 Range: Strong upward momentum, bullish trend confirmation, uptrend likely continuing
%K in 50-70 Range: Moderate bullish momentum, neutral to positive outlook, consolidation or mild uptrend
%K in 30-50 Range: Moderate bearish momentum, neutral to negative outlook, consolidation or mild downtrend
%K in 20-30 Range: Strong downward momentum, bearish trend confirmation, downtrend likely continuing
%K Below 20: Oversold condition, price near period low, potential bounce or reversal zone, caution for new short entries
Crossover Signal Analysis:
%K Crosses Above %D (Bullish Cross): Momentum shifting bullish, faster line overtakes slower signal, consider long entry especially in oversold zone, strongest when occurring below 20 level
%K Crosses Below %D (Bearish Cross): Momentum shifting bearish, faster line falls below slower signal, consider short entry especially in overbought zone, strongest when occurring above 80 level
Crossover in Midrange (40-60): Less reliable signals, often in choppy sideways markets, require additional confirmation from trend or volume analysis
Multiple Failed Crosses: Indicates ranging market or choppy conditions, reduce position sizes or avoid trading until clear directional move
Advanced Divergence Patterns (%K Line vs Price):
Bullish Divergence: Price makes lower low while %K makes higher low, indicates weakening bearish momentum, potential trend reversal upward, more reliable when %K in oversold zone
Bearish Divergence: Price makes higher high while %K makes lower high, indicates weakening bullish momentum, potential trend reversal downward, more reliable when %K in overbought zone
Hidden Bullish Divergence: Price makes higher low while %K makes lower low, indicates trend continuation in uptrend, bullish trend strength confirmation
Hidden Bearish Divergence: Price makes lower high while %K makes higher high, indicates trend continuation in downtrend, bearish trend strength confirmation
Momentum Strength Analysis (%K Line Slope):
Steep %K Slope: Rapid momentum change, strong directional conviction, potential for extended moves but also increased reversal risk
Gradual %K Slope: Steady momentum development, sustainable trends more likely, lower probability of sharp reversals
Flat or Horizontal %K: Momentum stalling, potential reversal or consolidation ahead, wait for directional break before committing
%K Oscillation Within Range: Indicates ranging market, sideways price action, better suited for range-trading strategies than trend following
🎯 STRATEGIC APPLICATIONS
Mean Reversion Strategy (Range-Bound Markets):
Identify ranging market conditions using price action or Bollinger Bands
Wait for Stochastic to reach extreme zones (above 80 for overbought, below 20 for oversold)
Enter counter-trend position when %K crosses %D in extreme zone (sell on bearish cross above 80, buy on bullish cross below 20)
Set profit targets near opposite extreme or midline (50 level)
Use tight stop-loss above recent swing high/low to protect against breakout scenarios
Exit when Stochastic reaches opposite extreme or %K crosses %D in opposite direction
Trend Following with Momentum Confirmation:
Identify primary trend direction using higher timeframe analysis or moving averages
Wait for Stochastic pullback to oversold zone (<20) in uptrend or overbought zone (>80) in downtrend
Enter in trend direction when %K crosses %D confirming momentum shift (bullish cross in uptrend, bearish cross in downtrend)
Use wider stops to accommodate normal trend volatility
Add to position on subsequent pullbacks showing similar Stochastic pattern
Exit when Stochastic shows opposite extreme with failed cross or bearish/bullish divergence
Divergence-Based Reversal Strategy:
Scan for divergence between price and Stochastic at swing highs/lows
Confirm divergence with at least two price pivots showing divergent Stochastic readings
Wait for %K to cross %D in direction of anticipated reversal as entry trigger
Enter position in divergence direction with stop beyond recent swing extreme
Target profit at key support/resistance levels or Fibonacci retracements
Scale out as Stochastic reaches opposite extreme zone
Multi-Timeframe Momentum Alignment:
Analyze Stochastic on higher timeframe (4H or Daily) for primary trend bias
Switch to lower timeframe (1H or 15M) for precise entry timing
Only take trades where lower timeframe Stochastic signal aligns with higher timeframe momentum direction
Higher timeframe Stochastic in bullish zone (>50) = only take long entries on lower timeframe
Higher timeframe Stochastic in bearish zone (<50) = only take short entries on lower timeframe
Exit when lower timeframe shows counter-signal or higher timeframe momentum reverses
Zone Transition Strategy:
Monitor Stochastic for transitions between zones (oversold to neutral, neutral to overbought, etc.)
Enter long when Stochastic crosses above 20 (exiting oversold), signaling momentum shift from bearish to neutral/bullish
Enter short when Stochastic crosses below 80 (exiting overbought), signaling momentum shift from bullish to neutral/bearish
Use zone midpoint (50) as dynamic support/resistance for position management
Trail stops as Stochastic advances through favorable zones
Exit when Stochastic fails to maintain momentum and reverses back into prior zone
📋 DETAILED PARAMETER CONFIGURATION
%K Length (Default: 14):
Lower Values (5-9): Highly sensitive to price changes, generates more frequent signals, increased false signals in choppy markets, suitable for very short-term trading and scalping
Standard Values (10-14): Balanced sensitivity and reliability, traditional default (14) widely used,适合 swing trading and intraday strategies
Higher Values (15-21): Reduced sensitivity, smoother oscillations, fewer but potentially more reliable signals, better for position trading and lower timeframe noise reduction
Very High Values (21+): Slow response, long-term momentum measurement, fewer trading signals, suitable for weekly or monthly analysis
%K Smoothing (Default: 3):
Value 1: Fast Stochastic, uses raw %K calculation without additional smoothing, most responsive to price changes, generates earliest signals with higher noise
Value 3: Slow Stochastic (default), traditional smoothing level, reduces false signals while maintaining good responsiveness, widely accepted standard
Values 5-7: Very slow response, extremely smooth oscillations, significantly reduced whipsaws but delayed entry/exit timing
Recommendation: Default value 3 suits most trading scenarios, active short-term traders may use 1, conservative long-term positions use 5+
%D Smoothing (Default: 3):
Lower Values (1-2): Signal line closely follows %K, frequent crossover signals, useful for active trading but requires strict filtering
Standard Value (3): Traditional setting providing balanced signal line behavior, optimal for most trading applications
Higher Values (4-7): Smoother signal line, fewer crossover signals, reduced whipsaws but slower confirmation, better for trend trading
Very High Values (8+): Signal line becomes slow-moving reference, crossovers rare and highly significant, suitable for long-term position changes only
Smoothing Type Algorithm Selection:
For Trending Markets:
ZLEMA, DEMA, TEMA: Reduced lag for faster trend entry, quick response to momentum shifts, suitable for strong directional moves
HMA, ALMA: Good balance of smoothness and responsiveness, effective for clean trend following without excessive noise
EMA: Classic choice for trending markets, faster than SMA while maintaining reasonable stability
For Ranging/Choppy Markets:
Kalman Filter, Super Smoother: Superior noise filtering, reduces false signals in sideways action, helps identify genuine reversal points
Laguerre Filters: Smooth oscillations with adjustable lag, excellent for mean reversion strategies in ranges
T3, TMA: Very smooth output, filters out market noise effectively, clearer extreme zone identification
For Adaptive Market Conditions:
KAMA: Automatically adjusts to market efficiency, fast in trends and slow in congestion, reduces whipsaws during transitions
FRAMA: Adapts to fractal market structure, responsive during directional moves, conservative during uncertainty
McGinley Dynamic: Self-adjusting smoothing, follows price naturally, minimizes lag in trending markets while filtering noise in ranges
For Conservative Long-Term Analysis:
SMA: Traditional choice, predictable behavior, widely understood characteristics
RMA (Wilder's): Smooth oscillations, reduced sensitivity to outliers, consistent behavior across market conditions
Laguerre Binomial Filter: Extremely smooth output, ideal for weekly/monthly timeframe analysis, eliminates short-term noise completely
Source Selection:
Close (Default): Standard choice using closing prices, most common and widely tested
HLC3 or OHLC4: Incorporates more price information, reduces impact of sudden spikes or gaps, smoother oscillator behavior
HL2: Midpoint of high-low range, emphasizes intrabar volatility, useful for markets with wide intraday ranges
Custom Source: Can use other indicators as input (e.g., Heikin Ashi close, smoothed price), creates derivative momentum indicators
📈 PERFORMANCE ANALYSIS & COMPETITIVE ADVANTAGES
Responsiveness Characteristics:
Traditional SMA-Based Stochastic:
Fixed lag regardless of market conditions, consistent delay of approximately (K Smoothing + D Smoothing) / 2 periods
Equal treatment of trending and ranging markets, no adaptation to volatility changes
Predictable behavior but suboptimal in varying market regimes
Enhanced Version with Adaptive Algorithms:
KAMA and FRAMA reduce lag by up to 40-60% in strong trends compared to SMA while maintaining similar smoothness in ranges
ZLEMA and T3 provide near-zero lag characteristics for early entry signals with acceptable noise levels
Kalman Filter and Super Smoother offer superior noise rejection, reducing false signals in choppy conditions by estimations of 30-50% compared to SMA
Performance improvements vary by algorithm selection and market conditions
Signal Quality Improvements:
Adaptive algorithms help reduce whipsaw trades in ranging markets by adjusting sensitivity dynamically
Advanced filters (Kalman, Laguerre, Super Smoother) provide clearer extreme zone readings for mean reversion strategies
Zero-lag methods (ZLEMA, DEMA, TEMA) generate earlier crossover signals in trending markets for improved entry timing
Smoother algorithms (T3, Laguerre Binomial) reduce false extreme zone touches for more reliable overbought/oversold signals
Comparison with Standard Implementations:
Versus Basic Stochastic: Enhanced version offers 21 smoothing options versus single SMA, allowing optimization for specific market characteristics and trading styles
Versus RSI: Stochastic provides range-bound measurement (0-100) with clear extreme zones, RSI measures momentum speed, Stochastic offers clearer visual overbought/oversold identification
Versus MACD: Stochastic bounded oscillator suitable for mean reversion, MACD unbounded indicator better for trend strength, Stochastic excels in range-bound and oscillating markets
Versus CCI: Stochastic has fixed bounds (0-100) for consistent interpretation, CCI unbounded with variable extremes, Stochastic provides more standardized extreme readings across different instruments
Flexibility Advantages:
Single indicator adaptable to multiple strategies through algorithm selection rather than requiring different indicator variants
Ability to optimize smoothing characteristics for specific instruments (e.g., smoother for crypto volatility, faster for forex trends)
Multi-timeframe analysis with consistent algorithm across timeframes for coherent momentum picture
Backtesting capability with algorithm as optimization parameter for strategy development
Limitations and Considerations:
Increased complexity from multiple algorithm choices may lead to over-optimization if parameters are curve-fitted to historical data
Adaptive algorithms (KAMA, FRAMA) have adjustment periods during market regime changes where signals may be less reliable
Zero-lag algorithms sacrifice some smoothness for responsiveness, potentially increasing noise sensitivity in very choppy conditions
Performance characteristics vary significantly across algorithms, requiring understanding and testing before live implementation
Like all oscillators, Stochastic can remain in extreme zones for extended periods during strong trends, generating premature reversal signals
USAGE NOTES
This indicator is designed for technical analysis and educational purposes to provide traders with enhanced flexibility in momentum analysis. The Stochastic Oscillator has limitations and should not be used as the sole basis for trading decisions.
Important Considerations:
Algorithm performance varies with market conditions - no single smoothing method is optimal for all scenarios
Extreme zone signals (overbought/oversold) indicate potential reversal areas but not guaranteed turning points, especially in strong trends
Crossover signals may generate false entries during sideways choppy markets regardless of smoothing algorithm
Divergence patterns require confirmation from price action or additional indicators before trading
Past indicator characteristics and backtested results do not guarantee future performance
Always combine Stochastic analysis with proper risk management, position sizing, and multi-indicator confirmation
Test selected algorithm on historical data of specific instrument and timeframe before live trading
Market regime changes may require algorithm adjustment for optimal performance
The enhanced smoothing options are intended to provide tools for optimizing the indicator's behavior to match individual trading styles and market characteristics, not to create a perfect predictive tool. Responsible usage includes understanding the mathematical properties of selected algorithms and their appropriate application contexts.
1m Scalping ATR (with SL & Zones)A universal ATR indicator that anchors volatility to your stop-loss.
Read any market (FX, JPY pairs, Gold/Silver, indices, crypto) consistently—regardless of pip/point conventions and timeframe.
Why this indicator?
Classic ATR is absolute (pips/points) and feels different across markets/TFs. ATR Takeoff normalizes ATR to your stop-loss in pips and highlights clear zones for “quiet / ideal / too volatile,” so you instantly know if a 10-pip SL fits current conditions.
Key features
Auto pip detection (FX, JPY, XAU/XAG, indices, BTC/ETH).
Selectable ATR source: chart timeframe or fixed ATR TF (e.g., “15”, “30”, “60”).
Display modes:
Percent of SL – ATR relative to SL in %, great for M1 (typical 10–30%).
Multiple of SL – ATR as a multiple of SL (e.g., 0.6× / 1.0× / 1.2×).
Panel zones:
Green = “Ready for takeoff” (≤ Low), Yellow = reference (Mid), Red = too volatile (≥ High).
Status badge (top-right): Quiet / ATR ok / Wild, current ATR/SL value, ATR TF used.
Direction-agnostic: Works the same for longs and shorts.
Inputs (at a glance)
Length / Smoothing (RMA/SMA/EMA/WMA): ATR base settings.
Your Stop-Loss (Pips): Reference SL (e.g., 10).
ATR Timeframe (empty = chart): Use chart TF or a fixed TF.
Display Mode: “Percent of SL” or “Multiple of SL.”
Low/Mid/High (Percent Mode): Zone thresholds in % of SL.
Low/Mid/High (Multiple Mode): Zone thresholds in ×SL.
Recommended defaults
Length 14, Smoothing RMA, SL 10 pips
Display Mode: Percent of SL
Low/Mid/High (%): 15 / 20 / 25
ATR Timeframe: empty (= chart) for reactive, or “30” for smoother M30 context with M1 entries.
How to use
Set SL (pips). 2) Choose display mode. 3) Optionally pick ATR TF.
Interpretation:
≤ Low (green): setups allowed.
≈ Mid (yellow): neutral reference.
≥ High (red): too volatile → adjust SL/size or wait.
Note: Auto-pip relies on common ticker naming; verify on exotic symbols.
Disclaimer: For research/education. Not financial advice.
Session-Conditioned Regime ATRWhy this exists
Classic ATR is great—until the open. The first few bars often inherit overnight gaps and 24-hour noise that have nothing to do with the intraday regime you actually trade. That inflates early ATR, scrambles thresholds, and invites hyper-recency bias (“today is crazy!”) when it’s just the open being the open.
This tool was built to:
Separate session reality from 24h noise. Measure volatility only inside your defined session (e.g., NYSE 09:30–16:00 ET).
Judge candles against the current regime, not the last 2–3 bars. A rolling statistic from the last N completed sessions defines what “typical” means right now.
Label “large” and “small” objectively. Bars are colored only when True Range meaningfully departs from the session regime—no gut feel, no open-bar distortion (gap inclusion optional).
Overview
Purpose: objectively identify unusually big or small candles within the active trading session, compared to the recent session regime.
Use cases: volatility filters, entry/exit confirmation, session bias detection, adaptive sizing.
This indicator replaces generic ATR with a session-conditioned, regime-aware measure. It colors candles only when their True Range (TR) is abnormally large/small versus the last N completed sessions of the same session window.
How it works
Session gating: Only bars inside the selected session are evaluated (presets for NYSE, CME RTH, FX NY; custom supported).
Per-bar TR: TR = max(high, prevRef) − min(low, prevRef).
prevRef is the prior close for in-session bars.
First bar of the session can include the overnight gap (optional; default off).
Regime statistic: For any bar in session k, aggregate all in-session TRs from the previous N completed sessions (k−N … k−1), then compute Median (default) or Mean.
Today’s anchor: Running statistic from today’s session start → current bar (for context and the on-chart ratio).
Color logic:
Big if TR ≥ bigMult × RegimeStat
Small if TR ≤ smallMult × RegimeStat
Colored states: big bull, big bear, small bull, small bear.
Non-triggering bars retain the chart’s native colors.
Panel (top-right by default)
Regime ATR (Nd): session-conditioned statistic over the past N completed sessions.
Today ATR (anchored): running statistic for the current session.
Ratio (Today/Regime): intraday volatility vs regime.
Sample size n: number of bars used in the regime calculation.
Inputs
Session Preset: NYSE (09:30–16:00 ET), CME RTH (08:30–15:00 CT), FX NY (08:00–17:00 ET), Custom (session + IANA timezone).
Regime Window: number of completed sessions (default 5).
Statistic: Median (robust) or Mean.
Include Open Gap: include overnight gap in the first in-session bar’s TR (default off).
Big/Small thresholds: multipliers relative to RegimeStat (defaults: Big=1.5×, Small=0.67×).
Colors: four independent colors for big/small × bull/bear.
Panel position & text size.
Hidden outputs: expose RegimeStat, TodayStat, Ratio, and Z-score to other scripts.
Alerts
RegimeATR: BIG bar — triggers when a bar meets the “Big” condition.
RegimeATR: SMALL bar — triggers when a bar meets the “Small” condition.
Hidden outputs (for strategies/screeners)
RegimeATR_stat, TodayATR_stat, Today_vs_Regime_Ratio, BarTR_Zscore.
Notes & limitations
No look-ahead: calculations only use information available up to that bar. Historical colors reflect what would have been known then.
Warm-up: colors begin once there are at least N completed sessions; before that, regime is undefined by design.
Changing inputs (session window, multipliers, median/mean, gap toggle) recomputes the full series using the same rolling regime logic per bar.
Designed for standard candles. Styling respects existing chart colors when no condition triggers.
Practical tips
For a broader or tighter notion of “unusual,” adjust Big/Small multipliers.
Prefer Median in markets prone to outliers; use Mean if you want Z-score alignment with the panel’s regime mean/std.
Use the Ratio readout to spot compression/expansion days quickly (e.g., <0.7× = compressed session, >1.3× = expanded).
Roadmap
More session presets:
24h continuous (crypto, index CFDs).
23h/Globex futures (CME ETH with a 60-minute maintenance break).
Regional equities (LSE, Xetra, TSE), Asia/Europe/NY overlaps for FX.
Half-day/holiday templates and dynamic calendars.
Multi-regime comparison: track multiple overlapping regimes (e.g., RTH vs ETH for futures) and show separate stats/ratios.
Robust stats options: trimmed mean, MAD/Huber alternatives; optional percentile thresholds instead of fixed multipliers.
Subpanel visuals: rolling TodayATR and Ratio plots; optional Z-score ribbon.
Screener/strategy hooks: export boolean series for BIG/SMALL, plus a lightweight strategy template for backtesting entries/exits conditioned on regime volatility.
Performance/QOL: per-symbol presets, smarter warm-up, and finer control over sample caps for ultra-low TF charts.
Changelog
v0.9b (Beta)
Session presets (NYSE/CME RTH/FX NY/Custom) with timezone handling.
Panel enhancements: ratio + sample size n.
Four-state bar coloring (big/small × bull/bear).
Alerts for BIG/SMALL bars.
Hidden Z-score stream for downstream use.
Gap-in-TR toggle for the first in-session bar.
Disclaimer
For educational purposes only. Not investment advice. Validate thresholds and session settings across symbols/timeframes before live use.
Market Structure ICT Screener [TradingFinder] BoS ChoCh🔵 Introduction
Market Structure is the foundation of every Smart Money and ICT based trading model. It describes how price moves through a sequence of highs and lows, forming clear phases of expansion, retracement and reversal. Understanding this structure allows traders to read institutional order flow and align their positions with the true direction of liquidity.
Two of the most critical components in Market Structure are the Break of Structure (BOS) and Change of Character (CHOCH). A BOS represents trend continuation, confirming strength within the current direction. In contrast, CHOCH also known as a Market Structure Shift (MSS) signals the first sign of a trend reversal or liquidity shift where order flow begins to change from bullish to bearish or vice versa.
Because the market is fractal, structure can exist at multiple levels known as Major (External) and Minor (Internal). Major structure defines the overall trend on higher timeframes while minor or internal structure reveals short term swings and early reversals within that larger move.
🔵 How to Use
Understanding Market Structure starts with identifying how price interacts with previous swing highs and swing lows. Every trend in the market, whether bullish or bearish, is built from a sequence of impulsive and corrective moves. Impulsive legs show strong displacement in the direction of liquidity flow, while corrective legs represent temporary pullbacks as the market rebalances before the next expansion. Recognizing these sequences is essential for reading the story of price and anticipating what may happen next.
A Break of Structure (BOS) occurs when price decisively moves beyond a previous structural point by breaking above the last high in an uptrend or falling below the last low in a downtrend. This event confirms that the current trend remains intact and that liquidity has been successfully taken from one side of the market. A BOS acts as confirmation of continuation and reflects strength within the existing directional bias.
A Change of Character (CHOCH) appears when price violates structure in the opposite direction of the prevailing trend. This is the first signal that market sentiment and order flow may be shifting. For example, during a downtrend if price breaks above a previous high, it indicates that sellers are losing control and a potential bullish reversal may be developing. In an uptrend, when price drops below a recent low, it suggests a possible bearish transition.
Because the market is fractal, structure exists across multiple layers. Major structure reflects the dominant movement visible on higher timeframes and defines the broader directional bias. Minor or internal structure represents smaller swings within that move and helps identify early transitions before they appear on the higher timeframe. When internal and external structures align, they offer a high probability signal for trend continuation or reversal.
By observing BOS and CHOCH across both internal and external structures, traders can clearly visualize when the market is expanding, contracting or preparing to shift direction. This structured understanding of price movement forms the foundation for precise trend analysis and high quality decision making in any Smart Money or ICT based trading approach.
🔵 Settings
🟣 Display Settings
Table on Chart : Allows users to choose the position of the signal dashboard either directly on the chart or below it, depending on their layout preference.
Number of Symbols : Enables users to control how many symbols are displayed in the screener table, from 10 to 20, adjustable in increments of 2 symbols for flexible screening depth.
Table Mode : This setting offers two layout styles for the signal table :
Basic : Mode displays symbols in a single column, using more vertical space.
Extended : Mode arranges symbols in pairs side-by-side, optimizing screen space with a more compact view.
Table Size : Lets you adjust the table’s visual size with options such as: auto, tiny, small, normal, large, huge.
Table Position : Sets the screen location of the table. Choose from 9 possible positions, combining vertical (top, middle, bottom) and horizontal (left, center, right) alignments.
🟣 Symbol Settings
Each of the 20 symbol slots comes with a full set of customizable parameters :
Symbol : Define or select the asset (e.g., XAUUSD, BTCUSD, EURUSD, etc.).
Timeframe : Set your desired timeframe for each symbol (e.g., 15, 60, 240, 1D).
Pivot Period : Set the length used to detect swing highs and lows. Shorter values increase sensitivity, longer ones focus on major structures.
🔵 Conclusion
Mastering Market Structure and understanding the relationship between BOS and CHOCH allows traders to see the market with greater clarity and confidence. These two elements reveal how liquidity moves through different phases of expansion and retracement and how institutional order flow shifts between accumulation and distribution.
By analyzing both internal and external structures, traders can align short term and long term perspectives and anticipate where price is most likely to react. The ability to read these structural shifts helps identify continuation points, reversals and areas where liquidity is engineered or collected.
Incorporating Market Structure into a consistent trading process transforms the way a trader views the chart. Instead of reacting to random movements, each swing, break and shift becomes part of a logical framework that reflects the true behavior of the market. Understanding BOS and CHOCH is not just a concept but a complete language of price that guides every professional decision in Smart Money and ICT based trading.
LA - EMA Bands with MTF DashboardDetailed Explanation of the LA - EMA Bands with MTF Dashboard Indicator
This custom Pine Script v6 indicator, designed for Trading View, overlays EMA-based price channels on the chart while incorporating a multi-timeframe (MTF) dashboard for broader market context. It focuses on visualizing trend direction and momentum through three sets of EMA bands, each representing different time horizons, and extends this with a tabular dashboard that summarizes signals across user-selected timeframes. The bands help identify support, resistance, and trend shifts, while the dashboard provides at-a-glance alignment across multiple periods, aiding in confirming trades or spotting divergences. Unlike volatility-based channels (e.g., Bollinger or Keltner), it relies solely on EMAs for simplicity and lag-reduced responsiveness.
Inputs Section
The script begins with user-configurable options grouped for ease. A timeframe input allows specifying a resolution for the EMA bands' data fetching, defaulting to the chart's timeframe if left empty—this enables higher-timeframe overlays on lower charts for context.
Next, a shared source input defines the price data for all midlines, defaulting to the midpoint of high and low (hl2) but customizable to close, open, or others.
The EMA bands have dedicated toggles and length inputs for each of the three sets: the first (long-term) defaults to 144 periods, the second (medium-term) to 72, and the third (short-term) to 12. These are inlined for compact settings panels, with minimum lengths of 1 to prevent errors.
A boolean toggle controls the visibility of the MTF dashboard. Following this are nine pairs of inputs for dashboard timeframes: each pair includes a show/hide toggle and an editable timeframe string (e.g., '1' for 1-minute, 'D' for daily). Defaults progress from short (1, 3, 5 minutes) to longer (15, 30, 60 minutes, daily, weekly, monthly), grouped in inlines for organization. Only enabled and non-empty timeframes appear in the dashboard.
Helpers Section
Two utility functions are defined here. The first computes an EMA on any source series over a specified length using Trading View's built-in function, reused throughout for midlines and bands.
The second function generates a signal string ("B" for buy/bullish, "S" for sell/bearish, or "-" for neutral) based on the direction of an EMA applied to high prices. It compares the current EMA value to the previous one, mirroring the band fill logic for consistency in the dashboard.
Core Components per Band Set:
Midline: An EMA calculated on a user-selectable source price (default: hl2, which is the midpoint between high and low prices). This acts as the central trend line.
Upper Band: An EMA applied directly to the high prices of each bar.
Lower Band: An EMA applied to the low prices of each bar.
These form a channel that captures the smoothed range of price action, highlighting potential support (lower band), resistance (upper band), and overall trend direction (midline).
Multiple Band Sets: The indicator includes three independent EMA band sets, each with its own length parameter for customization:
EMA1 (default length: 144) – Focuses on long-term trends.
EMA2 (default length: 72) – Targets medium-term trends.
EMA3 (default length: 12) – Emphasizes short-term momentum.
Each set can be toggled on or off via input checkboxes, allowing users to reduce chart clutter if needed.
Visual Elements:
Midline Plot: Displayed as a line colored based on its direction compared to the previous bar: green for rising (bullish), red for falling (bearish), and black for neutral (flat).
Band Fill: The area between the upper and lower bands is filled with a semi-transparent color indicating the trend of the upper band: light green for rising (suggesting expanding highs/upward momentum) and light pink for falling (contracting highs/downward pressure). The bands themselves are plotted in blue with a thin linewidth.
Multi-Timeframe Support: Users can input a custom timeframe (e.g., 'D' for daily), and the indicator fetches data from that resolution. This enables higher-timeframe context on lower-timeframe charts, such as viewing daily EMA bands on a 1-hour chart.
Calculation Mechanics:
All EMAs are computed using Trading View's built-in ta.ema() function.
Data is retrieved in a single request.security() call for efficiency, with lookahead enabled to avoid repainting.
No multipliers or volatility adjustments are included, making it a simple EMA-based envelope rather than a true volatility channel.
In practice, this indicator helps traders identify trend strength, potential breakouts (price crossing bands), or mean-reversion opportunities (price bouncing within bands). It's particularly useful for swing or position trading where multi-period alignment (e.g., all midlines green) signals conviction.
Pros
Multi-Period Insight: By combining short (12), medium (72), and long (144) periods, it offers a layered view of trends across time horizons, helping confirm alignments or divergences without needing multiple separate indicators.
Visual Clarity: Color-coded trends and fills make it easy to spot bullish/bearish shifts at a glance, reducing analysis time.
Flexibility: Custom timeframe input allows for multi-timeframe analysis, while shared source and toggles provide user control.
Simplicity and Efficiency: Purely EMA-based, it's computationally light and avoids overcomplication, making it accessible for beginners while still useful for spotting channel-based setups like squeezes or expansions.
No Repainting: With lookahead, plots are stable once bars close.
Cons
Lagging Nature: EMAs inherently lag price action, especially longer ones like 144-period, which may cause delayed signals in fast-moving or ranging markets.
Lack of Volatility Adjustment: Unlike Keltner Channels or Bollinger Bands, it doesn't incorporate ATR or standard deviation, so bands may not accurately reflect true volatility—potentially leading to false breakouts in high-volatility environments.
Chart Clutter: Displaying all three band sets simultaneously can overcrowd the chart, particularly on lower timeframes or volatile assets.
Subjective Interpretation: Color changes and band interactions require trader discretion; there's no built-in alerting or quantitative signals, which might lead to inconsistent results.
Market Dependency: Defaults may not suit all assets (e.g., stocks vs. crypto); shorter periods like 12 could whipsaw in noisy markets, while 144 might be too slow for intraday trading.
Justification for Default Values (12, 72, and 144)
The default lengths of 12, 72, and 144 are not arbitrary but draw from established trading principles, particularly W.D. Gann's geometric and numerical theories, as well as Fibonacci sequences, to create a harmonic progression for short-, medium-, and long-term analysis. Here's the rationale:
12 (Short-Term): This is a common period for capturing recent momentum in technical indicators, often seen in setups like the MACD (which uses 12- and 26-day EMAs). It aligns with natural cycles, such as the 12 months in a year, and in Gann theory, 12 serves as a base unit for squaring price and time (e.g., in the "Square of 12" where multiples like 12, 24, etc., measure cycles in days, weeks, or months). At 12 periods, the EMA reacts quickly to price changes without excessive noise, making it ideal for short-term trend detection.
72 (Medium-Term): This acts as an intermediate bridge, derived from Gann's divisions of the 360-degree circle (a key Gann concept representing a full cycle). Specifically, 72 is 360/5 (relating to pentagonal geometry and natural harmonics) and appears in Gann's time cycle measurements (e.g., as a multiple in the Square of 12: 12×6=72). It's roughly half of 144, providing a balanced midpoint for medium-term trends without overlapping too closely with the others. In practice, 72 periods smooth out short-term fluctuations while still responding to developing trends.
144 (Long-Term): This is a powerhouse number in trading lore, being both 12 squared (12×12=144, central to Gann's "Square of 144" for monthly charts and major cycle turns, as there are 12 months in a year) and a Fibonacci sequence value (1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144...). Fibonacci periods are popular in moving averages for their alignment with natural growth patterns in markets, and 144 is often used for long-term regime definition (e.g., confirming trends over 144 bars). It helps identify major support/resistance in extended cycles.
Overall, these values form a geometric/harmonic series (12, 72=12×6, 144=12×12), promoting alignment with market cycles as per Gann and Fibonacci principles, rather than generic lengths like 50 or 200. They can be adjusted based on the asset or timeframe, but the defaults provide a starting point rooted in time-tested trading numerology for balanced multi-period analysis.
Please use this along with other indicators (eg. Pivot, MACD, etc) for better results.