Uptrick: Flow Expansion TrendIntroduction
Uptrick: Flow Expansion Trend (FET) is an overlay tool built around an efficiency-adaptive midline that speeds up or slows down based on how directional recent price movement has been. The midline is paired with a volatility-based signal boundary and a minimum flow-strength filter to determine confirmed trend flips, and the script includes a market-state read that classifies current conditions as directional, developing, or compressed. Signal labels can be anchored to price highs and lows, a fixed ATR distance from price, or the midline itself.
Originality
This script's core is an efficiency ratio, calculated as the net price movement over a lookback divided by the sum of all bar-to-bar movement over that same lookback, which produces a value between 0 and 1 describing how directional versus choppy the recent path has been. Rather than using this ratio as a standalone oscillator, it is fed into the smoothing constant of the midline itself, so the midline's responsiveness continuously adjusts between a fast and slow smoothing constant based on current market efficiency. This is what separates the midline from a standard moving average, since it does not use a fixed lookback response but instead reshapes itself with the character of the move.
The signal boundary distance around the midline is also adaptive: it widens or narrows based on the same efficiency reading, so the distance price must travel to trigger a trend flip contracts in efficient, directional conditions and expands in choppier ones. A trend flip additionally requires a minimum flow-strength threshold, a normalized measure of the midline's own rate of change relative to ATR, so a boundary breach alone is not sufficient to flip the trend without accompanying follow-through in the midline's slope.
Combining an adaptive midline, an adaptive signal boundary, and a flow-strength confirmation filter into a single confirmed-trend mechanism is the original contribution of this script, since each of the three components is derived from the same efficiency and volatility inputs but serves a distinct role in preventing premature or noise-driven flips. The selectable signal anchor further separates the trend calculation from the signal display, letting traders choose whether labels sit at the bar's high/low, a fixed ATR offset from price, or directly on the midline, without altering the underlying trend logic in any way.
Features
Efficiency-adaptive midline that adjusts its smoothing speed based on how directional recent price action has been
Adaptive signal boundary that widens in choppy conditions and narrows in directional conditions
Minimum flow-strength filter required alongside a boundary breach to confirm a trend flip
Confirmed-bar trend state calculation to avoid intrabar repainting of the trend flip
Selectable signal anchor for up and down labels: high/low, fixed ATR distance from price, or midline
Adjustable ATR distance value when the ATR distance anchor is selected
Up and down trend signal labels
Optional candle coloring based on the most recent confirmed signal
Adjustable midline width
On-chart dashboard showing trend, market efficiency percentage, flow strength, market state classification, bars since the last signal, and current signal anchor mode
Four selectable dashboard positions
Four alert conditions: up signal, down signal, any trend signal, and market becoming directional
Inputs
Trend Engine: source, trend length, signal distance multiplier, minimum signal strength threshold.
Signals: show/hide up and down signals, signal anchor mode, signal ATR distance.
Visuals: candle coloring toggle, midline width, show/hide dashboard, dashboard position.
How It Works / How to Use
The script measures how efficiently price has moved over the trend length by comparing net displacement to total path length traveled. This efficiency value continuously reshapes the midline's smoothing speed, so the midline hugs price more closely in strong directional runs and lags more in choppy conditions. An ATR-based boundary is placed around the midline, with its distance also scaled by the same efficiency reading. A trend flip is confirmed only when price closes beyond this boundary on a confirmed bar and the midline's own rate of change exceeds the minimum flow-strength threshold in that direction.
Once a flip is confirmed, the up or down label is placed according to the chosen signal anchor: at the bar's high or low, at a fixed ATR distance beyond price, or directly on the midline. This is purely a display choice and does not affect when or why a trend flip occurs.
Traders can use the midline's slope and color for ongoing directional bias, the up and down signals for confirmed flips, and the dashboard's market-state classification to gauge whether current conditions are more suited to trend-following or more likely to produce choppy, range-bound behavior.
Conclusion
Uptrick: Flow Expansion Trend combines an efficiency-adaptive midline, a matching adaptive signal boundary, and a flow-strength confirmation filter into a single trend-following overlay, giving traders a trend read that reshapes itself with current market conditions rather than relying on a fixed-speed average, with flexible signal placement to suit different charting preferences.
Disclaimer
This script is provided for informational and educational purposes only and does not constitute financial advice. Past performance, whether shown historically or implied through the script's logic, does not guarantee future results. Always perform your own due diligence and risk management before making trading decisions. Indicator

Uptrick: Vector Trail TrendIntroduction
Uptrick: Vector Trail Trend (VTT) is an overlay tool that combines a velocity-projected trend line with an ATR-based adaptive trailing band to identify directional bias and trend reversals. A secondary momentum module layered on top flags statistically extreme momentum conditions that traders can use as dynamic take-profit references within the prevailing trend. The script also includes a configurable overlay presentation and an on-chart dashboard summarizing current trend state.
Originality
This script combines three distinct calculation layers that are not typically merged in a single publication, and each is included for a specific reason.
The first layer builds a trend center from a smoothed moving average of price, then projects that line forward using a smoothed rate of change of the trend center itself, scaled by a user-defined projection factor. This produces a trend reference that leans in the direction of recent acceleration rather than simply lagging price, which is the basis used for the trailing band below it.
The second layer wraps that projected trend center in an ATR-based band that only trails in the favorable direction and resets on a confirmed close beyond the opposite band, similar in mechanism to a ratcheting stop line. This layer is responsible for the directional flips and the up and down signals plotted on the chart.
The third layer is independent of the first two and evaluates RSI relative to its own rolling mean and standard deviation, expressed as a Z-score. This is used to flag when momentum has reached a statistically extreme reading relative to its recent history, which the script surfaces as separate dynamic take-profit markers. This layer exists because trend direction and momentum exhaustion are different pieces of information, and combining them gives traders both a directional read and a separate overextension read without conflating the two into a single signal.
The overlay is user-selectable between a gradient fill between price and the trail, a dual EMA trend ribbon, both together, or neither, so the visual presentation can be adjusted without changing the underlying trend or TP logic.
Features
Velocity-projected trend center using a smoothed moving average and a smoothed rate of change projection
ATR-based adaptive trailing band with directional flip logic
Confirmed-bar trend state calculation to avoid intrabar repainting of the trend flip
Dynamic take-profit engine based on a Z-score of RSI relative to its own rolling mean and standard deviation
Selectable TP marker style, cross or circle
Up and down trend signal labels plotted at the trail
Selectable overlay mode: vector gradient fill, trend ribbon, both, or none
Adjustable gradient and ribbon transparency
Optional candle coloring based on active trend direction
Adjustable trail line width
On-chart dashboard showing trend, signal, Z-score, TP state, distance from trail in ATR units, and active overlay mode
Nine selectable dashboard positions
Seven alert conditions: up signal, down signal, long dynamic TP, short dynamic TP, any trend signal, any dynamic TP, and all VTT signals combined
Inputs
Trend Settings: source, trend length, velocity smoothing length, vector projection factor.
Trail Settings: ATR length, ATR multiplier.
Dynamic TP Settings: show/hide dynamic TPs, TP marker style, momentum (RSI) length, Z-score length, TP extreme level threshold.
Overlay: overlay style selection, gradient transparency, ribbon fast length, ribbon slow length, ribbon transparency.
Visuals: show/hide up and down signals, candle coloring toggle, trail width.
Dashboard: show/hide dashboard, dashboard position.
How It Works / How to Use
The trend center is calculated from a moving average of the chosen source, then projected forward using a smoothed measure of its own rate of change. An ATR-based band is built around this projected line and only moves in the direction favorable to the current trend, flipping only on a confirmed close beyond the opposite band. This flip is what produces the up and down signals and the trend color change.
Once a trend is established, the script tracks RSI relative to its own recent mean and standard deviation. When this Z-score reaches the user-defined extreme level and then crosses back toward normal, a dynamic take-profit marker is plotted for the active trend, using the opposite color for visual distinction, indicating that momentum has cooled from an extreme reading.
Traders can use the trail flips for directional bias and entries, and the dynamic TP markers as a secondary reference for potential exhaustion points within that trend. The overlay mode, transparency, candle coloring, and dashboard are all cosmetic and can be adjusted without affecting the underlying calculations.
Conclusion
Uptrick: Vector Trail Trend combines a velocity-projected trend line, an adaptive ATR trailing band, and a momentum Z-score take-profit layer into a single overlay tool, giving traders both a directional trend read and a separate momentum-exhaustion reference from one indicator.
Disclaimer
This script is provided for informational and educational purposes only and does not constitute financial advice. Past performance, whether shown historically or implied through the script's logic, does not guarantee future results. Always perform your own due diligence and risk management before making trading decisions.
Indicator

Uptrick: Trend Pressure LineIntroduction
Uptrick: Trend Pressure Line is a trend-following overlay that measures directional pressure by combining price displacement from a moving average, candle body strength, and short-term momentum into a single weighted composite. The composite is smoothed and converted into both a dynamic trend line and a bar coloring system, giving traders a continuous read on how strong buying or selling pressure is, rather than a simple binary trend flag.
Originality
While the script uses common building blocks such as an EMA baseline and ATR normalization, its originality lies in how these components are combined. Instead of relying on a single trend filter, the script blends three independently weighted pressure sources, price position relative to trend, candle body direction, and bar-to-bar momentum, into one normalized pressure value using user-adjustable weights. This composite pressure value is then used simultaneously to plot a smoothed adaptive trend line, generate a three-color gradient reflecting pressure intensity, calculate a reversal probability score based on how stretched pressure is relative to its recent range, and drive bar coloring through three separate selectable modes. No single one of these elements is novel on its own, but the integration of weighted multi-factor pressure scoring with a dedicated reversal exhaustion metric and multi-mode visual feedback is not a standard combination found in common trend or ATR-band indicators.
Features
Weighted trend pressure engine combining price position, candle body, and momentum into one composite score
Adjustable weighting for each of the three pressure components
Smoothed adaptive trend line plotted directly on the chart
Three-color gradient (bearish, neutral, bullish) that reflects live pressure intensity
Up and down trend signals with optional cooldown to reduce repeated signals
Four selectable signal anchor points (Default, High/Low, Close, Trend Line)
Optional take profit signals based on an ATR multiple from entry
Reversal probability calculation based on pressure stretch and distance from the trend line
Adjustable reversal lookback and sensitivity settings
Three selectable bar coloring modes (Reversal Probability, Latest Signal, Current Default)
Strong and extreme pressure level alerts for both bullish and bearish conditions
Dashboard table showing trend state, signal state, bars since last signal, pressure value, reversal percentage, bar mode, take profit status, ATR value, and trend line value
Four selectable table positions
19 distinct alert conditions covering signals, flips, pressure levels, and price/line crosses
Inputs
Source, Trend Length, ATR Length, Pressure Smoothness, and Line Smoothness control the core trend engine
Price Position Weight, Candle Body Weight, and Momentum Weight control how the three pressure components are blended
Show Up/Down Signals, Trend Threshold, Signal Cooldown, and Signal Anchor control signal generation and placement
Show TP Signals and TP ATR Multiplier control the optional take profit logic
Line Width, Gradient Sensitivity, Gradient Smoothness, and Bar Coloring Mode control the visual presentation
Reversal Lookback, Reversal Sensitivity, and High Reversal Alert Level control the reversal probability calculation
Strong Pressure Level and Extreme Pressure Level set the thresholds for pressure strength alerts
Show Table and Table Position control the on-chart dashboard
How It Works
The script builds a baseline using an EMA of price, then measures three separate pressures relative to ATR: how far price sits from that baseline, the strength of the current candle's body, and short-term momentum. These three values are combined using the user's weight settings and smoothed to produce a single pressure reading. This pressure reading is added to the baseline to draw the adaptive trend line, and it is also compared against a threshold to classify the market as bullish, bearish, or neutral, which drives the up and down signals. Separately, the script tracks how far current pressure is from its recent extreme and how far price has drifted from the trend line, combining both into a reversal probability percentage that increases as a trend becomes stretched.
How to Use
Watch the trend line color and the dashboard Trend row together to identify the current directional bias at a glance
Use the Up and Down labels as potential entry cues, and adjust Signal Cooldown if signals print too frequently on your chart's timeframe
Adjust the three weight inputs (Price Position, Candle Body, Momentum) if you want the pressure reading to favor trend positioning, candle strength, or short-term speed, depending on your trading style
Monitor the Reversal row on the dashboard as a trend matures; a rising percentage suggests the current move is becoming stretched and may be due for a pause or reversal
Switch Bar Coloring Mode to Reversal Probability if you want the candles themselves to visually flag exhaustion, or to Latest Signal if you prefer bars colored by the most recent up/down call
Enable Show TP Signals and set a TP ATR Multiplier if you want a visual marker for a fixed ATR-based profit target after each signal, then adjust the multiplier to match your own target distance
Use Signal Anchor to reposition labels relative to price action, high/low, or the trend line itself depending on chart clutter or personal preference
Set alerts on any of the nineteen available conditions to be notified of trend flips, pressure extremes, or price crossing the trend line without needing to watch the chart continuously
Conclusion
Uptrick: Trend Pressure Line gives traders a single adaptive line and pressure reading that reflects the combined influence of price positioning, candle strength, and momentum, along with a built-in gauge for how exhausted the current trend may be. It is intended as a trend and exhaustion visualization tool rather than a standalone signal generator.
Disclaimer
This script is provided for informational and educational purposes only and does not constitute financial advice. Past performance, including any signals or visual patterns shown on the chart, is not indicative of future results. Trading involves substantial risk, and users should perform their own analysis and risk management before making trading decisions based on this or any other indicator. Indicator

Uptrick: Dynamic Trend MatrixOverview
Dynamic Trend Matrix is an open-source trend-following overlay designed to help traders read market direction, trend strength, pullback areas, and optional take-profit progress from one chart-based tool. It is built to provide a structured view of trend conditions without relying on a single crossover or one isolated signal.
Introduction
The script combines EMA-based trend structure, ATR-based volatility bands, a dynamic trailing engine, candle coloring, signal labels, X-marker re-entry logic, take-profit markers, alerts, and a compact dashboard. Its goal is to make trend conditions easier to interpret by separating the main trend state, pressure confirmation, pullback behavior, and target tracking into clear visual components.
Originality & Uniqueness
Dynamic Trend Matrix uses a custom trend state model that blends moving-average alignment, smoothed slope pressure, ATR volatility boundaries, adaptive trailing logic, visual strength coloring, and staged take-profit tracking.
Instead of only showing a basic moving average crossover or a simple band break, the script organizes trend information into multiple layers. The trend flip logic identifies directional changes, the pressure filter evaluates whether EMA structure supports the active side, the trail helps show the active trend boundary, and the X markers highlight pullback interactions near the trend trail.
This layered design allows users to view both trend direction and trend quality, while keeping the chart visually organized.
How It Works
The script calculates fast, base, and slow EMA trend components from the selected source. These moving averages are used to measure directional structure and help determine whether the market is showing bullish, bearish, or mixed pressure.
ATR-based bands are then built around the base trend. A long trend state is triggered when price breaks above the upper ATR band, while a short trend state is triggered when price breaks below the lower ATR band. Once a trend state is active, the script maintains a dynamic trailing level that adjusts with volatility and trend direction.
Trend pressure is confirmed when the EMA structure and smoothed slope agree with the active trend. Trend strength is calculated by comparing the distance between the fast and slow trend components against ATR. This strength reading is used for dashboard values and optional candle coloring.
The take-profit system uses the active signal price and either risk from the trail or ATR from entry to create up to three visual target levels. These levels are for chart reference only and are not automated trade management.
Inputs
The main settings allow users to adjust the trend lengths, smoothing, ATR length, ATR multiplier, visual style, candle coloring method, signal confirmation, label appearance, X-marker behavior, take-profit calculation mode, dashboard position, and alert options.
The default settings are intended to provide a balanced trend-following view, but users should adjust them based on the market, timeframe, and volatility conditions they are studying.
Features
Dynamic trend flip detection using ATR-adjusted band breaks.
EMA-based trend structure using fast, base, and slow trend components.
Smoothed slope pressure filter to help distinguish stronger trend alignment from mixed conditions.
Adaptive trail that follows the active trend and adjusts with volatility.
Multiple visual modes, including bands, trend trail, and candles only.
Candle coloring based on either latest trend direction or trend strength.
Optional gradient visuals to make active trend zones easier to read.
Optional outer bands for additional volatility context.
Long and short signal labels with optional bar-close confirmation.
X-marker re-entry logic for pullback touches near the dynamic trail.
Configurable X-marker behavior, including first valid marker only or every valid marker.
Optional take-profit markers with one, two, or three target levels.
Take-profit calculations based on either risk from trail or ATR from entry.
Dashboard showing trend state, pressure, strength, trail value, visual mode, and TP state.
Alert conditions for long signals, short signals, X markers, and take-profit hits.
How To Use
Add the indicator to a standard candlestick chart and select the visual mode that best fits your workflow. The Bands mode provides a broader view of volatility zones around the trend basis. The Trend Trail mode focuses more directly on the active trailing level. Candles Only mode keeps the chart cleaner while still showing trend-based candle colors.
Long and short labels can be used as potential trend-change signals. The trail can be used as a visual reference for the active trend boundary. X markers are designed to show valid pullback interactions near the trail after a trend has already been established.
The dashboard provides a quick summary of current conditions, including trend state, pressure, strength, trail value, visual mode, and TP progress. Users who prefer confirmed signals can keep bar-close confirmation enabled. Users who want faster realtime feedback can disable confirmation, but signals may be less stable before the candle closes.
Limitations
This indicator is not a complete trading system and does not guarantee profitable results. It does not include position sizing, stop-loss execution, order management, commissions, slippage, or full strategy backtesting.
Signals may appear late during fast reversals because the model uses EMAs, smoothing, ATR bands, and trend confirmation. Sideways, choppy, or low-volatility markets may produce false flips, mixed pressure readings, or less useful pullback markers.
Take-profit markers are visual reference levels only. They do not guarantee that a trade should be entered, held, exited, or managed in a specific way. Users should test settings across different symbols, sessions, and timeframes before relying on the script for live decision-making.
The script does not use request.security(), lookahead, or negative plot offsets. With bar-close confirmation enabled, Long, Short, X-marker, and TP signals are confirmed after the candle closes. If confirmation is disabled, realtime signals may appear or change before the candle closes. The script should be used on standard chart types because non-standard charts can affect signal behavior.
Conclusion
Dynamic Trend Matrix is designed to provide a clean visual framework for reading trend direction, trend pressure, pullback context, and staged target progress. It can help organize trend-following analysis, but it should be used alongside market structure, risk management, and broader chart context.
Disclaimer
This script is for educational and informational purposes only. It does not provide financial advice, investment advice, trading advice, or guaranteed outcomes. Trading involves risk, and users are responsible for their own analysis, decisions, and risk management. Indicator

Uptrick: Liquid Reversal BandsIntroduction
Liquid Reversal Bands is an overlay indicator designed to help traders identify dynamic support and resistance zones, detect mean-reversion opportunities, and read price position within a volatility-aware envelope. Rather than using fixed standard deviation bands around a single moving average, this system builds its band width from multiple volatility components simultaneously, creating a more adaptive and stable envelope that responds to changing market conditions without overreacting to short-term noise. The candle coloring, fair value line, and band fills all carry live visual information, making it possible to assess market state and recent signal context at a glance without needing additional tools on the chart.
How It Works
The centerline, referred to as the Liquid Fair Value, is computed by blending an EMA and an ALMA with a fixed offset and phase bias, then applying a secondary smoothing pass. This produces a centerline that is faster than a plain EMA but more stable than a raw ALMA, reducing lag while avoiding erratic pivots.
Band width is calculated from four volatility components: the standard deviation of price deviation from the fair value, a standard ATR reading, an EMA of absolute deviation, and an EMA of bar range energy. These four components are weighted and blended into a single composite width value that is then smoothed again before being applied to the upper and lower bands. This approach means the bands widen during high-volatility conditions driven by any combination of momentum, range expansion, or sustained deviation, rather than relying on a single measure that may miss one type of volatility while overreacting to another.
Reversal signals are generated when price closes back inside a band after having closed outside it on the prior bar. This close-crossing logic filters out brief wicks and requires a confirmed return into the envelope before triggering. An optional cooldown parameter prevents back-to-back signals within a defined number of bars.
Candle coloring operates in two selectable modes. In Reversal Heat mode, candles are colored continuously based on their real-time position within the band range, shifting from the bullish teal near the lower band to the bearish magenta near the upper band, with a full gradient in between. In Latest Signal mode, all candles take the solid color of the most recent confirmed signal direction, holding that color until the opposite signal fires. This mode is useful for traders who want a persistent visual reminder of the current signal bias rather than a moment-to-moment position readout.
The fair value line uses a separate slope-based gradient that transitions between bull and bear color depending on the direction and smoothed magnitude of the centerline trend. Optional outer bands extend beyond the primary envelope and can be enabled to identify extreme extension zones.
Baseline Design Rationale
The Liquid Fair Value uses EMA and ALMA specifically because they address opposite weaknesses. A standard EMA is computationally stable and reacts smoothly to recent price but carries lag from its uniform weighting. ALMA uses a Gaussian-weighted kernel that concentrates sensitivity toward recent bars while suppressing older data, which reduces lag but can introduce instability on sharp reversals. Blending the two captures the smoothness and stability of the EMA alongside the reduced lag of the ALMA, producing a centerline that neither drags excessively in trends nor overreacts to brief spikes. The secondary EMA pass applied afterward further damps any residual instability from the ALMA component without reintroducing significant lag.
Features
Liquid Fair Value centerline blending EMA and ALMA with dual-pass smoothing for a stable yet responsive mid-line
Composite band width derived from four volatility sources: deviation standard deviation, ATR, absolute deviation EMA, and bar range energy EMA
Primary upper and lower bands with independent multiplier controls
Optional outer bands for identifying extreme price extension, each with its own multiplier
Candle Coloring Mode selector with two options: Reversal Heat for continuous gradient coloring based on live band position, and Latest Signal for persistent directional coloring based on the most recent confirmed signal
Slope-based gradient coloring on the fair value line, transitioning between bullish and bearish color depending on trend direction and strength
Slope sensitivity and smoothing controls to tune how quickly the fair value line color responds to directional changes
Close-crossing reversal signals that trigger only when price re-enters a band after a confirmed close outside it
Configurable signal cooldown to space out signals and reduce repetitive triggers in choppy conditions
Gradient band fills between the fair value and upper and lower bands using directional color transparency
Outer band fills rendered separately with their own transparency layer when enabled
Alert conditions for both buy and sell signals
Inputs
Source: The price series used for all calculations. Defaults to close.
Fair Value Length: Controls the lookback period for both the EMA and ALMA that form the Liquid Fair Value centerline. Higher values produce a smoother and slower centerline.
Z-Width Lookback: The lookback window used to compute deviation standard deviation and absolute deviation mean. Larger values stabilize band width but reduce responsiveness to recent volatility shifts.
Band Smoothness: Controls the final EMA smoothing applied to the composite band width. Higher values produce wider, more stable bands.
Upper Band Multiplier and Lower Band Multiplier: Scale the upper and lower band distances from the fair value independently. Higher values push the bands further out, producing fewer signal triggers.
Outer Upper Band Multiplier and Outer Lower Band Multiplier: Applied on top of the primary multipliers to define the outer band distance. Only visible when outer bands are enabled.
Candle Coloring Mode: Selects how candles are colored. Reversal Heat maps each candle continuously to its current position within the band range. Latest Signal holds the color of the most recent confirmed buy or sell signal until the opposite signal fires.
Show Signals: Toggle to enable or disable reversal signal labels on the chart.
Signal Cooldown: Minimum number of bars that must pass between consecutive signals. Set to zero to allow signals on every qualifying bar.
Show Outer Bands: Toggle to enable or disable the outer band plots and their fills.
Slope Smoothing Length: Controls how many bars are used to smooth the fair value slope before it is mapped to a color. Lower values make the line color react faster to direction changes.
Slope Color Sensitivity: Scales how aggressively the slope magnitude maps to the color gradient. Lower values cause the line to reach full bull or bear color more quickly.
Originality
Most band-based indicators derive their width from a single volatility measure, typically standard deviation or ATR alone. Liquid Reversal Bands constructs its width from a weighted blend of four distinct volatility inputs, each capturing a different aspect of market activity. The additional smoothing hierarchy applied to both the centerline and the width ensures that bands expand and contract in a measured way rather than spiking on single-bar outliers. The dual candle coloring system offers two meaningfully different visual modes: one that reflects continuous real-time price positioning within the envelope, and one that reflects confirmed signal direction as a persistent state, giving traders a choice between positional awareness and signal context depending on their preference. The slope gradient on the fair value line is driven by a normalized and smoothed slope calculation, making it resistant to brief direction changes while still reflecting genuine trend shifts.
Conclusion
Liquid Reversal Bands is built for traders who want a mean-reversion and trend context tool that adapts to volatility through multiple lenses simultaneously. The composite width model, the selectable candle coloring modes, and the close-crossing signal logic together produce a system designed for clarity, stability, and honest visual representation of price state within the envelope.
Disclaimer
This indicator is published for educational and analytical purposes only. It does not constitute financial advice. Past behavior of any indicator does not guarantee future results. Always apply your own analysis and risk management before making any trading decisions. Indicator

Uptrick: Adaptive Momentum BandsIntroduction
Adaptive Momentum Bands is an overlay indicator that combines an Adaptive Moving Average baseline with dynamically scaled ATR bands to define trend state, generate entry signals, and provide a real-time market context dashboard. Unlike static band systems that apply a fixed multiplier regardless of market conditions, this indicator continuously adjusts its band width and baseline responsiveness based on how directional price movement currently is. The result is a system that tightens during trending phases and loosens during choppy conditions automatically, without requiring manual parameter changes.
The core philosophy behind this tool is that a single fixed lookback or multiplier will inevitably either over-signal in noise or under-signal in trends. By anchoring both the baseline speed and the band expansion to a live Efficiency Ratio calculation, the indicator adapts its behavior to the market it is analyzing rather than forcing the market into a fixed model.
Originality
The baseline is not a standard EMA or KAMA. It is a multi-stage adaptive construction: an Adaptive Moving Average driven by a per-bar Efficiency Ratio smoothing coefficient is passed through two additional EMA layers to produce a stable, low-lag midline. This midline is then used as the reference point for asymmetric ATR bands that apply independent upper and lower multipliers, each of which is further scaled by a volatility ratio comparing short-term ATR to its longer-term normalized average. This means the bands breathe with volatility in real time. The trend state uses a latching mechanism: the indicator never enters a neutral zone. Once price closes above the upper band it locks to bullish, once it closes below the lower band it locks to bearish, and it holds that state until the opposite condition is met. This produces clean, decisive, non-flickering bias coloring across candles, bands, midline, and labels.
Features
Adaptive baseline engine using an Efficiency Ratio-driven smoothing coefficient that automatically speeds up during directional moves and slows down during chop
Multi-stage midline construction combining an AMA layer with two EMA passes for a smooth, responsive center reference
Asymmetric upper and lower band multipliers allowing independent control over how loose or tight each side of the channel is
Volatility ratio scaling that expands the bands during high-volatility regimes and contracts them during low-volatility periods, using a ratio of short-term ATR to its normalized average
Three display modes: Bands mode showing the full channel with gradient fill, Midline Only mode for a clean ribbon overlay, and Trail mode that switches the visible line to the active support or resistance side
Bands:
Trail:
Midline:
Latching trend state that is always bullish or bearish with no neutral zone, toggling only on confirmed band crossovers
Colored candles, wick coloring, and candle borders all driven by the live trend state
Signal labels on trend flips with configurable anchor point (High/Low, Midline, or Bands), ATR-based label offset control, and four label size options
Status dashboard table displaying: current trend bias, bars held in the current state, Efficiency Ratio percentage with color-coded thresholds, band width as a percentage of midline, price distance from midline as a percentage, smoothed ATR value, 1-bar ROC, 5-bar ROC, 20-bar ROC, and the active upper and lower multiplier values
Independent alert conditions for bullish and bearish transitions, triggering only on the first confirmed bar of a new state
Inputs
Base Length: Controls the period used in the internal EMA pass over the AMA layer. Shorter values produce a faster and more reactive midline.
ATR Length: Sets the lookback for the ATR calculation used in band construction. Shorter values make bands more responsive to recent volatility spikes.
Band Smoothing: Applies EMA smoothing to both the ATR value and the final band plots. Higher values produce smoother, less reactive bands.
Upper Band Multiplier: Determines how far the upper band sits above the midline as a multiple of the smoothed ATR. Higher values reduce the frequency of bullish signals.
Lower Band Multiplier: Determines how far the lower band sits below the midline as a multiple of the smoothed ATR. Higher values reduce the frequency of bearish signals.
Efficiency Period: The lookback used to calculate the Efficiency Ratio. This controls how quickly the adaptive baseline reacts to changes in trend quality.
Fast EMA and Slow EMA: Define the fast and slow smoothing constants used in the adaptive speed calculation. The indicator interpolates between these two speeds based on the current Efficiency Ratio.
Display Mode: Selects between Bands, Midline Only, and Trail rendering modes.
Fill Opacity: Controls the transparency of the band fill.
Bull and Bear Colour: Fully customizable primary colors used for all trend-state visuals.
Show Labels, Label Anchor, Offset Multiplier, Label Size: Controls for the flip signal labels.
Show Table, Position, Text Size: Controls for the status dashboard.
How to Use
Apply the indicator to any chart and timeframe. The colored candles will immediately show the current trend bias. When the system is in bullish state, the bands and midline render in the bullish color. When bearish, they switch to the bearish color. A 𝓛𝓸𝓷𝓰 label marks each new bullish flip and a 𝓢𝓱𝓸𝓻𝓽 label marks each new bearish flip.
Use the Efficiency Ratio row in the status table to gauge how much to trust the current signal. A reading above 60 indicates a strong trend where band-based signals are more reliable. Readings below 35 indicate a choppy environment where signals should be treated with more caution. The band width percentage and distance from midline rows help assess whether price is extended or near the center of the range. ROC rows provide quick momentum context across three timeframes.
For tighter and more frequent signals, reduce the band multipliers. For wider and less frequent signals, increase them. The asymmetric design means you can independently adjust sensitivity to bullish and bearish entries.
Conclusion
Adaptive Momentum Bands provides a self-calibrating trend framework that eliminates the need to manually switch parameters across assets or timeframes. The combination of adaptive baseline speed, volatility-scaled asymmetric bands, a latching trend state, and a live metrics table gives traders a complete picture of current market structure in a single overlay tool.
Disclaimer
This indicator is for informational and educational purposes only and does not constitute financial advice. Past performance of any signals produced by this tool does not guarantee future results. All trading involves risk. Use this tool as one input among many and always apply your own risk management. Indicator

Uptrick: ML Kernel Regression
Introduction
This indicator applies Nadaraya-Watson kernel regression, a non-parametric machine learning estimator, directly to price data in order to produce a smooth, noise-reduced representation of the market's underlying trend. Unlike moving averages that apply equal or linearly decaying weights, this method uses a Gaussian kernel function to assign weights based on how far back in time each bar sits relative to the current one. Bars closer in time receive exponentially higher weights, while older bars decay naturally. The result is a regression curve that adapts organically to local price structure rather than imposing a fixed lag model onto the data. Residual bands are then constructed around this curve using the rolling standard deviation of the difference between price and the regression line, forming dynamic envelopes that reflect actual price dispersion rather than arbitrary multipliers of a fixed moving average.
The indicator is designed for traders who want a statistically grounded trend baseline with state-driven directional signals, without relying on lagging traditional averages. It is built in Pine Script v6 and is fully non-repainting. All state decisions are committed only on confirmed bars, meaning no signal is generated intra-bar and no future bar data influences the output.
How It Works
The core calculation is the Nadaraya-Watson estimator. At each bar the indicator looks back across a user-defined window and computes a weighted average of past closing prices. The weight assigned to each historical bar is determined by the Gaussian kernel: weight = exp( -lag² / (2 · h²) ), where lag is the number of bars back and h is the bandwidth parameter. A larger bandwidth makes the curve smoother and slower to react. A smaller bandwidth makes it more reactive but noisier.
When adaptive bandwidth is enabled, the bandwidth h is scaled dynamically by a normalised ATR factor. In volatile periods, the kernel widens, producing a smoother estimate that avoids overreacting to spike conditions. In calm periods, the kernel tightens, allowing the curve to track price more closely. This makes the regression inherently context-aware without requiring the user to manually switch settings across different market regimes.
The residual at each bar is defined as the difference between the closing price and the regression value. A rolling standard deviation of these residuals forms the sigma value, which is then smoothed via EMA. The upper and lower bands are placed at a user-controlled multiple of sigma above and below the kernel line. Because the bands are derived from actual price-to-regression deviation, they expand during high-dispersion conditions and contract when price tracks the regression tightly.
State is classified as bullish when price closes above the upper band on a confirmed bar, and bearish when price closes below the lower band on a confirmed bar. Between breakout events the state persists, meaning the indicator holds its last valid directional reading rather than flipping to neutral. This gives the signal a regime-like quality rather than a purely oscillatory one.
Features
Nadaraya-Watson Gaussian kernel regression curve computed from scratch over a fully user-controlled lookback window
Adaptive bandwidth scaling driven by a normalised ATR factor, widening the kernel during volatile conditions and tightening it during calm ones
Residual-based standard deviation bands that expand and contract with actual price-to-regression dispersion rather than fixed multipliers
Smoothing controls for both the main regression output and the band width, allowing fine-tuning of reactivity versus stability
Three visual display modes: Bands mode showing the full envelope, Single Line mode showing only the regression curve with a gradient fill toward price, and Trail mode showing only the relevant band side as a directional trail
Gradient fills in all three visual modes that fade from the regression line outward toward price, maintaining visual clarity without obscuring price action
State-based bar coloring that applies the directional regime color to every candle, using custom plotcandle rendering for full wickcolor and bordercolor consistency
Signal labels that appear only on confirmed state transitions, placed at user-selectable anchors including High or Low, the Main Line, or the Band levels, with adjustable ATR-based offset
Seven selectable color themes covering Classic, Cyber Aqua, Crimson Pulse, Royal Purple, Emerald Night, Minimal Mono, and Classic Emerald, each providing a complete set of bull, bear, neutral, background, and frame colors
A live dashboard table displaying current signal direction, kernel MA value, upper band value, lower band value, current sigma width, and active bandwidth including whether adaptive mode is engaged
Alert conditions for bullish breakout above the upper band and bearish breakdown below the lower band, both tied to confirmed crossover and crossunder events
Toggle controls for bar coloring, band fill, and the dashboard table independently
Dashboard:
Band Mode:
Single Line Mode:
Trail Mode:
Inputs
Lookback Window: controls how many historical bars the Gaussian kernel sums over. Larger values produce a slower, broader regression curve. Default is 30.
Base Bandwidth (h): sets the core width of the Gaussian kernel. Higher values create smoother, more generalized curves. Lower values track price more closely. Default is 8.0.
Adaptive Bandwidth: when enabled, the bandwidth is multiplied by a factor derived from normalised ATR, making the kernel wider in volatile conditions. Default is enabled.
ATR Length (adaptive): the period used to compute the ATR for adaptive scaling. Default is 14.
MA Output Smoothing: applies an EMA pass over the raw regression output to reduce micro-jitter in the curve. Default is 3.
Band Multiplier (sigma): how many standard deviations above and below the regression line the bands are placed. Default is 1.0.
Band Lookback (sigma): the rolling window used to compute the standard deviation of residuals. Default is 24.
Band Smoothing: EMA smoothing applied to the raw sigma value to stabilize band movement. Default is 5.
Visual Mode: selects between Bands, Single Line, and Trail display modes.
Color Bars: enables state-colored candles. Default is enabled.
Fill Bands: enables the semi-transparent fill between upper and lower bands. Default is enabled.
Show Dashboard: toggles the live data table. Default is enabled.
Color Gradient Smooth: controls color smoothing, currently reserved for future gradient transitions.
Label Anchor: selects where signal labels are pinned. Options are High or Low, Main Line, and Bands.
Offset Mult (ATR): scales how far above or below the anchor point labels are offset. Default is 0.50.
Theme: selects the color theme across all visual elements.
Alert: Cross Above Upper Band: enables the bullish breakout alert condition.
Alert: Cross Below Lower Band: enables the bearish breakdown alert condition.
Originality
The originality of this script lies in the combination of a properly implemented Nadaraya-Watson estimator with an ATR-adaptive bandwidth system, residual standard deviation bands, and a persistent non-neutral state engine, all packaged with a multi-mode visual system that adjusts its presentation to the current directional regime. The regression curve is not a modified moving average. It is a genuine weighted least squares estimate computed bar by bar using a Gaussian kernel function. The adaptive bandwidth mechanism means the indicator does not treat all market conditions equally, which is a meaningful departure from static-parameter band systems. The state logic prioritises confirmed readings and persists between band contacts, which makes the regime classification stable and avoids the false-neutral problem common in threshold-based indicators. The three visual modes serve distinct use cases: Bands for envelope and breakout context, Single Line for a clean trend baseline, and Trail for a dynamic support or resistance reference that follows the active regime. These elements are not assembled from existing published open-source scripts; the full codebase is original work by the author.
Conclusion
Uptrick: ML Kernel Regression provides a statistically grounded approach to price smoothing and trend regime classification by applying a Gaussian kernel estimator rather than a conventional moving average. The adaptive bandwidth, residual bands, and persistent state logic work together to give traders a tool that reflects actual market behaviour rather than imposing fixed parameters onto it. The multiple visual modes and theme system make it practical across a range of chart styles and use cases.
Disclaimer
This script is published for educational and analytical purposes only. Nothing in this script or its description constitutes financial advice, investment advice, or a recommendation to buy or sell any asset. All trading involves risk. Past performance of any indicator or signal does not guarantee future results. You are solely responsible for your own trading decisions.
Indicator

Indicator

Uptrick: Quantum Divergence OscillatorIntroduction
Uptrick: Quantum Divergence Oscillator is a dual-mode oscillator designed to study market stretch, momentum imbalance, and potential reversal development. Instead of relying on a single oscillator formula, the script offers two analytical engines inside one indicator: a price-deviation oscillator and a standardized momentum oscillator.
Classic mode evaluates how far price has stretched away from an adaptive baseline estimate. Z-RSI mode evaluates how far RSI has stretched away from its own recent statistical distribution. These two approaches measure different types of imbalance and allow users to study reversal conditions from both price displacement and momentum behavior.
Beyond the oscillator itself, the script includes a trend overlay, histogram state coloring, overlay signal labels, background tinting during extreme conditions, chart coloring modes, a multi-timeframe dashboard, and alert conditions. The goal is to provide a structured workflow for monitoring exhaustion, reversal development, and broader directional context.
Overview
The indicator operates in two selectable modes.
Classic mode is a price-deviation oscillator that measures how far price has moved away from a smoothed equilibrium estimate. Z-RSI mode transforms RSI into a standardized Z-Score framework so that momentum strength or weakness is interpreted relative to its own recent behavior.
Both engines share the same surrounding framework: signal labeling, trend context, visual feedback through histogram and background coloring, multi-timeframe summaries, and alert support. The script therefore functions as both an oscillator study and a contextual analysis tool.
Originality and design logic
The script’s design is based on combining two complementary analytical models rather than modifying a single oscillator formula.
Classic mode focuses on price equilibrium. It builds an adaptive estimate of price using a Nadaraya-Watson kernel approach and then refines that estimate with KNN smoothing. The oscillator measures the deviation between price and that estimate and expresses it relative to current volatility using ATR normalization. This allows the oscillator to highlight situations where price is unusually stretched relative to a smoothed local value.
Z-RSI mode focuses on momentum distribution. Instead of using RSI with fixed thresholds such as 70 and 30, it evaluates whether RSI is statistically unusual compared with its recent behavior. Converting RSI to a Z-Score allows momentum extremes to be interpreted relative to their distribution rather than fixed levels.
These two engines therefore analyze different dimensions of market imbalance. Classic mode evaluates displacement from equilibrium, while Z-RSI evaluates momentum deviation from its statistical norm.
Classic mode engine
Classic mode begins with the selected price source and processes it through an adaptive smoothing workflow.
ATR is first calculated to determine the current volatility regime. The ATR percentile rank inside the Vol Rank Window modifies the effective lookback period and kernel bandwidth using the Adaptation Strength parameter. This allows the smoothing system to expand or contract according to volatility conditions.
A Nadaraya-Watson estimate is calculated from the source series. The estimate is then refined using a KNN smoothing pass that weights similar historical values in order to reduce residual noise. The deviation between price and the smoothed estimate is then measured and normalized by ATR so the oscillator reflects relative stretch rather than raw price distance.
The normalized series is smoothed with an EMA and scaled using a percentile-based reference window so that values typically remain within a range near −100 to +100. This produces the final Classic oscillator.
Dynamic overbought and oversold bands
Classic mode uses dynamic bands instead of fixed levels.
The base levels are +40 and −40. These levels expand or contract depending on the ATR percentile rank. When volatility increases the bands widen, and when volatility decreases they tighten. This helps maintain a consistent interpretation of stretch across changing market conditions.
The oscillator is considered overbought above the upper band and oversold below the lower band. Signals are generated when the oscillator exits these extreme zones rather than when it first enters them.
Regular divergence detection
Classic mode also includes pivot-based regular divergence detection.
The script confirms oscillator pivots using separate Left Bars and Right Bars settings. When a pivot low or pivot high is confirmed, the script compares it with prior pivots stored within the Max Lookback window.
A bullish regular divergence occurs when price forms a lower low while the oscillator forms a higher low. A bearish regular divergence occurs when price forms a higher high while the oscillator forms a lower high.
Because pivots require confirmation, divergence signals appear only after the configured Right Bars confirmation period.
An Occurrence Filter allows users to restrict signals to the first, second, third, fourth, or fifth divergence in a sequence, or to display all qualifying divergences.
Z-RSI mode
Z-RSI mode evaluates momentum using a standardized framework.
The script first calculates RSI from the selected source. It then calculates the mean and standard deviation of RSI over the Z-Score Lookback period. The current RSI value is converted into a Z-Score and smoothed with an EMA.
The resulting histogram shows how unusual the current RSI value is relative to its recent distribution.
Interpretation is organized around two sets of thresholds:
• ±1 represent signal thresholds
• ±2 represent statistical extremes
Values near zero indicate that RSI is close to its average behavior. Values above +2 or below −2 represent unusually strong or unusually weak momentum relative to recent conditions.
Signal events in this mode are threshold-based rather than pivot-based. Signals occur when the Z-Score transitions back through the configured threshold levels.
Histogram coloring and panel logic
Both modes use histogram coloring to communicate both oscillator position and short-term direction.
In Classic mode the histogram remains neutral between the dynamic bands. When the oscillator moves into overbought or oversold zones the color reflects both the zone and the slope of the oscillator.
In Z-RSI mode the same principle is applied to the ±2 extreme thresholds.
The oscillator panel can display additional visual elements including the zero line, dynamic thresholds, shaded zones, and a trend meter when Full Setup is enabled.
Trend overlay and trend meter
The script includes a trend overlay plotted directly on the price chart.
The trend line is created by smoothing the selected source using an EMA and then applying an additional smoothing pass. The slope of this line defines the current trend direction.
A vertical gradient fill is drawn between price and the trend line so that the distance between them is visually emphasized.
A horizontal trend meter is also displayed at the top of the oscillator panel. This band changes color according to the trend state and provides a persistent visual context while reading the oscillator.
Overlay signals and controls
Signal labels can be plotted directly on the price chart.
In Classic mode signals can be generated from divergence detection, overbought/oversold exits, or both. In Z-RSI mode signals are generated from threshold transitions defined by the ±1 and ±2 levels.
Labels are plotted on the bar where the signal is confirmed. For divergence events, the price level used for placement corresponds to the confirmed pivot price.
Direction filters allow signals to be restricted to bullish events, bearish events, or both directions.
Bar and candle coloring
The script provides three chart coloring modes.
Signal mode colors bars according to the most recent bullish or bearish signal state. Trend mode colors bars according to the current trend direction. Heat mode creates a continuous gradient derived from the oscillator value so that stronger positive values appear increasingly bearish and stronger negative values appear increasingly bullish.
These colors are applied both to bars and to candles plotted by the script.
Background tinting
The script can tint the chart background when extreme conditions occur.
In Classic mode the tint corresponds to the dynamic overbought and oversold zones. In Z-RSI mode the tint corresponds to the ±2 statistical extremes.
This feature provides an additional visual cue when the oscillator reaches conditions associated with strong momentum imbalance.
Dashboard and multi-timeframe context
The script includes a dashboard that summarizes the current state of the indicator.
The table displays the active mode, oscillator value, zone state, signal state, trend direction, and chart configuration. It also reports volatility or Z-Score statistics depending on the selected mode.
A multi-timeframe section summarizes trend direction and oscillator bias for the current timeframe together with 1H, 4H, and 1D data. These higher-timeframe values are derived from the Classic engine variables so the dashboard maintains consistent context even when Z-RSI mode is active.
Alerts
Alert conditions are included for bullish divergence, bearish divergence, oversold exits, overbought exits, and composite bullish or bearish signals. These alerts allow the script to be integrated into an active monitoring workflow.
Summary
Uptrick: Quantum Divergence Oscillator is a dual-engine oscillator designed to analyze market stretch through both price displacement and momentum distribution.
Classic mode studies how far price has moved away from an adaptive equilibrium estimate using kernel smoothing, KNN refinement, ATR normalization, and dynamic volatility-adjusted bands. Z-RSI mode evaluates momentum extremes by converting RSI into a Z-Score framework and interpreting signals relative to statistical thresholds.
Supporting features include a trend overlay with gradient fill, histogram state visualization, overlay signal labels, background extreme highlighting, flexible chart coloring modes, multi-timeframe dashboard context, and alert conditions.
Together these components provide a structured environment for studying exhaustion, momentum imbalance, and potential reversal development.
Disclaimer
This script is provided for educational and analytical purposes only. It does not constitute financial advice or a recommendation to buy or sell any asset. Trading involves risk, and past performance does not guarantee future results.
Indicator

Uptrick: Volatility Aggregation ModelIntroduction
Uptrick: Volatility Aggregation Model (VAM) is a very simple overlay indicator that classifies market direction using a five-speed ensemble of volatility-adaptive range engines. Instead of relying on a single trend filter, VAM evaluates direction across multiple responsiveness settings and converts those states into a normalized score. The script then uses configurable score thresholds to define bullish, bearish, and neutral regimes, and it visualizes those regimes directly on the chart through candle recoloring and optional Up/Down labels.
Overview
VAM is built around an ensemble concept: five independent “speed” layers each determine a directional state by testing whether price breaks above or below a volatility-defined band. The five states are combined into a single score ranging from -1.0 (fully bearish across all speeds) to +1.0 (fully bullish across all speeds). This score is compared to user-defined buy and sell thresholds to determine regime. For visual context, the indicator also plots directional trail layers derived from the middle speed for stability, and can optionally fill the space between trail layers to make regime changes easier to spot at a glance.
Originality and value
This script’s originality comes from how it frames direction as a consensus problem rather than a single-indicator outcome. Each speed layer uses a volatility range defined from true range smoothing and applies a breakout-based state flip using upper and lower bands. Because the layers differ in lookback length, volatility scaling, band width, and smoothing, they respond differently to the same price movement. Aggregating them into a normalized score creates a compact, interpretable measure of directional agreement that can be tuned to be more selective or more permissive using thresholds. The result is a regime tool that is transparent, parameterized, and suitable for traders who want a directional filter that adapts to volatility and avoids treating all market conditions as equally “trendable.”
How it works
Start date gating
The script includes a start date filter that can be used to restrict when labels (and any signal interpretation) begin. Bars before the start date will still plot normally, but Up/Down labels are suppressed until the chart time is greater than or equal to the configured start date.
Five-speed volatility range engines
Each of the five speeds computes:
➜ A volatility measure based on true range (TR), smoothed with an EMA over the speed’s length, then scaled by a speed-specific volatility multiplier.
➜ An internal center line that “snaps” toward price only when price moves beyond the current volatility allowance. When price movement is smaller than the allowance, the center remains unchanged.
➜ Upper and lower bands around the center, spaced by the volatility allowance multiplied by a speed-specific band multiplier, then smoothed.
➜ A directional side state:
━━━━➤ Side flips bullish when source crosses above the upper band.
━━━━➤ Side flips bearish when source crosses below the lower band. This breakout-only flip logic is fixed in the script (no center-cross mode), so direction changes occur only when price breaks out of the band envelope.
Ensemble scoring
The five side states are summed and divided by 5 to produce a normalized ensemble score:
➜ +1.0 means all five speeds are bullish.
➜ -1.0 means all five speeds are bearish.
➜ Values between reflect partial agreement and mixed conditions.
The script then classifies the current regime using your thresholds:
➜ Bullish regime when score is greater than the buy threshold.
➜ Bearish regime when score is less than the sell threshold.
➜ Neutral regime otherwise.
Signals
Signals are generated from score crossing events:
➜ A buy signal occurs when the score crosses over the buy threshold.
➜ A sell signal occurs when the score crosses under the sell threshold.
These signals are used for labels (if enabled) and alert conditions. They are not strategy orders and do not simulate fills.
Visual system: trails, ATR layer, and fill
For stability, the trail structure is derived from the middle speed (Speed 3). The script computes smoothed lower and upper bands from Speed 3 as internal reference levels.
It then plots ATR-offset layers based on true range smoothed over the ATR Layer Length and scaled by the ATR Layer Mult. The bullish ATR layer is positioned below the Speed 3 lower band, and the bearish ATR layer is positioned above the Speed 3 upper band.
These ATR-offset layers are the primary visible trail elements. Optional fill appears between each reference band and its ATR layer only during the active bullish or bearish regime.
The script can optionally fill between the trail and ATR layer lines, but only in the corresponding regime:
➜ Bull fill appears only when the regime is bullish.
➜ Bear fill appears only when the regime is bearish.
Neutral conditions suppress the regime fill emphasis.
Candle recoloring
The indicator uses plotcandle to recolor candles based on the current regime:
➜ Bull color when bullish regime is active.
➜ Bear color when bearish regime is active.
➜ Neutral gray when neither threshold condition is met.
This makes regime identification possible without relying on separate panels.
Inputs and how to use them
Plot group
Start Date
Defines the earliest chart time at which labels and signal annotations are allowed. This is useful for limiting label clutter when reviewing long history or when you only want signals after a certain market regime, contract listing date, or personal testing period.
Ensemble group
Buy Threshold
A score level above which the script considers the market bullish. Higher values make bullish classification more selective because more of the five speeds must agree bullishly. Lower values allow bullish classification with weaker consensus.
Sell Threshold
A score level below which the script considers the market bearish. More negative values make bearish classification more selective. Values closer to zero will classify bearish regimes more readily.
Show Up/Down Labels
Toggles the display of directional labels on threshold cross events. When enabled, labels are only printed on bars at or after the Start Date, and only when score crosses the relevant threshold (not merely when it remains above or below).
Visuals group
Fill Between Trail Layers
Enables or disables the filled region between each trail and its ATR layer. When disabled, trail lines can still be visible (depending on the regime) but the emphasis fill is removed.
Trail Smooth
Controls EMA smoothing applied to the trail lines and their ATR-offset layers. Higher values produce smoother, slower-reacting trails; lower values make trails respond more quickly but can increase visual noise.
ATR Layer Length
Controls the EMA length used to smooth true range for the ATR-style layer. Larger values produce a steadier ATR layer; smaller values track volatility changes more quickly.
ATR Layer Mult
Scales the ATR layer offset distance from the trail. Increasing this value expands the buffer around the trail; decreasing it tightens the buffer.
Colors group
Bull
Sets the color used for bullish candles, bullish trail visuals, and bullish label styling.
Bear
Sets the color used for bearish candles, bearish trail visuals, and bearish label styling.
Neutral Gray
Sets the candle color used when the score is between thresholds (neutral regime).
5 Speeds group
Source
Chooses the price series used for band breakouts and side calculations (default close). Changing the source changes what the engines consider the breakout trigger. For example, using hl2 or ohlc4 can reduce sensitivity to closes alone, while using close keeps breakouts tied to settlement values.
Speed 1 Length, Speed 2 Length, Speed 3 Length, Speed 4 Length, Speed 5 Length
These define the EMA length used to smooth true range for each speed’s volatility allowance. Smaller lengths typically react faster to volatility changes; larger lengths smooth volatility more.
Speed 1 Vol Mult through Speed 5 Vol Mult
These scale the volatility allowance for each speed. Increasing a speed’s volatility multiplier makes its center and bands more tolerant to price movement, which can reduce how often that layer flips direction. Decreasing it tightens the allowance, potentially increasing flip frequency.
Speed 1 Band Mult through Speed 5 Band Mult
These control how far bands are placed from the center relative to the volatility allowance. Higher band multipliers widen bands (requiring larger breakouts to flip side). Lower band multipliers narrow bands (making flips easier to trigger).
Speed 1 Smooth through Speed 5 Smooth
These apply EMA smoothing to the volatility allowance and the band outputs for each speed. Higher smoothing reduces jitter and slows reaction; lower smoothing increases responsiveness.
Alerts
The script provides two alert conditions:
Ensemble Buy: triggers when the score crosses above the buy threshold.
Ensemble Sell: triggers when the score crosses below the sell threshold.
These alerts correspond directly to the label events (when labels are enabled), but alerts can be used independently of label visibility.
Trail
The trail in Uptrick: Volatility Aggregation Model (VAM) acts as a dynamic support and resistance band derived from the middle engine (Speed 3) for stability. In bullish regimes, the lower trail functions as volatility-adjusted support. During a long trade, stops can be positioned below this band, and pullbacks into the trail while the regime remains bullish may be treated as opportunities to add to the position.
In bearish regimes, the upper trail functions as volatility-adjusted resistance. During a short trade, stops can be placed above the band, and rallies back into the trail while the regime remains bearish may be considered potential add-on zones.
The trail is designed for trade management and structural guidance within the ensemble-defined regime, not as a standalone entry signal.
Summary
Uptrick: Volatility Aggregation Model (VAM) is a volatility-adaptive, five-speed ensemble direction indicator that converts multiple breakout-based range states into a single normalized score. You control regime sensitivity using buy/sell score thresholds, and you can visualize regimes through candle recoloring, optional labels, and trail layers derived from the middle speed plus an ATR-based buffer. The indicator is designed to help traders interpret directional agreement across multiple responsiveness settings and to mark regime transitions when score crosses the chosen thresholds.
Disclaimer
This indicator is for informational and educational purposes only and does not constitute financial advice. Trading involves risk, and you are responsible for your own decisions. Past performance and historical signals do not guarantee future results.
Indicator

Strategy

Indicator

Name of tickerDescription:
This indicator displays the instrument’s ticker symbol and the current chart timeframe at the top center of the chart.
Features:
• Shows the ticker (e.g., BTCUSDT, AAPL, etc.).
• Displays the current timeframe (1m, 5m, 1H, 1D, etc.).
• Positioned at the top center of the chart for easy reference.
• Transparent background for minimal interference with price action.
• Lightweight and simple, no extra settings required.
Usage:
• Works with any instrument: stocks, crypto, futures.
• Useful for traders who want to always see the ticker and timeframe while analyzing the chart.
Settings:
• Text size can be adjusted in the script (text_size).
• Text and background colors can be customized (text_color, bgcolor). Indicator

Indicator

Indicator

Uptrick: Fusion Trend Reversion SystemOverview
The Uptrick: Fusion Trend Reversion System is a multi-layered indicator designed to identify potential price reversals during intraday movement while keeping traders informed of the dominant short-term trend. It blends a composite fair value model with deviation logic and a refined momentum filter using the Relative Strength Index (RSI). This tool was created with scalpers and short-term traders in mind and is especially effective on lower timeframes such as 1-minute, 5-minute, and 15-minute charts where price dislocations and quick momentum shifts are frequent.
Introduction
This indicator is built around the fusion of two classic concepts in technical trading: identifying trend direction and spotting potential reversion points. These are often handled separately, but this system merges them into one process. It starts by computing a fair value price using five moving averages, each with its own mathematical structure and strengths. These include the exponential moving average (EMA), which gives more weight to recent data; the simple moving average (SMA), which gives equal weight to all periods; the weighted moving average (WMA), which progressively increases weight with recency; the Arnaud Legoux moving average (ALMA), known for smoothing without lag; and the volume-weighted average price (VWAP), which factors in volume at each price level.
All five are averaged into a single value — the raw fusion line. This fusion acts as a dynamically balanced centerline that adapts to price conditions with both smoothing and responsiveness. Two additional exponential moving averages are applied to the raw fusion line. One is slower, giving a stable trend reference, and the other is faster, used to define momentum and cloud behavior. These two lines — the fusion slow and fusion fast — form the backbone of trend and signal logic.
Purpose
This system is meant for traders who want to trade reversals without losing sight of the underlying directional bias. Many reversal indicators fail because they act too early or signal too frequently in choppy markets. This script filters out noise through two conditions: price deviation and RSI confirmation. Reversion trades are considered only when the price moves a significant distance from fair value and RSI suggests a legitimate shift in momentum. That filtering process gives the trader a cleaner, higher-quality signal and reduces false entries.
The indicator also visually supports the trader through colored bars, up/down labels, and a filled cloud between the fast and slow fusion lines. These features make the market context immediately visible: whether the trend is up or down, whether a reversal just occurred, and whether price is currently in a high-risk reversion zone.
Originality and Uniqueness
What makes this script different from most reversal systems is the way it combines layers of logic — not just to detect signals, but to qualify and structure them. Rather than relying on a single MA or a raw RSI level, it uses a five-MA fusion to create a baseline fair value that incorporates speed, stability, and volume-awareness.
On top of that, the system introduces a dual-smoothing mechanism. It doesn’t just smooth price once — it creates two layers: one to follow the general trend and another to track faster deviations. This structure lets the script distinguish between continuation moves and possible turning points more effectively than a single-line or single-metric system.
It also uses RSI in a more refined way. Instead of just checking if RSI is overbought or oversold, the script smooths RSI and requires directional confirmation. Beyond that, it includes signal memory. Once a signal is generated, a new one will not appear unless the RSI becomes even more extreme and curls back again. This memory-based gating reduces signal clutter and prevents repetition, a rare feature in similar scripts.
Why these indicators were merged
Each moving average in the fusion serves a specific role. EMA reacts quickly to recent price changes and is often favored in fast-trading strategies. SMA acts as a long-term filter and smooths erratic behavior. WMA blends responsiveness with smoothing in a more balanced way. ALMA focuses on minimizing lag without losing detail, which is helpful in fast markets. VWAP anchors price to real trade volume, giving a sense of where actual positioning is happening.
By combining all five, the script creates a fair value model that doesn’t lean too heavily on one logic type. This fusion is then smoothed into two separate EMAs: one slower (trend layer), one faster (signal layer). The difference between these forms the basis of the trend cloud, which can be toggled on or off visually.
RSI is then used to confirm whether price is reversing with enough force to warrant a trade. The RSI is calculated over a 14-period window and smoothed with a 7-period EMA. The reason for smoothing RSI is to cut down on noise and avoid reacting to short, insignificant spikes. A signal is only considered if price is stretched away from the trend line and the smoothed RSI is in a reversal state — below 30 and rising for bullish setups, above 70 and falling for bearish ones.
Calculations
The script follows this structure:
Calculate EMA, SMA, WMA, ALMA, and VWAP using the same base length
Average the five values to form the raw fusion line
Smooth the raw fusion line with an EMA using sens1 to create the fusion slow line
Smooth the raw fusion line with another EMA using sens2 to create the fusion fast line
If fusion slow is rising and price is above it, trend is bullish
If fusion slow is falling and price is below it, trend is bearish
Calculate RSI over 14 periods
Smooth RSI using a 7-period EMA
Determine deviation as the absolute difference between current price and fusion slow
A raw signal is flagged if deviation exceeds the threshold
A raw signal is flagged if RSI EMA is under 30 and rising (bullish setup)
A raw signal is flagged if RSI EMA is over 70 and falling (bearish setup)
A final signal is confirmed for a bullish setup if RSI EMA is lower than the last bullish signal’s RSI
A final signal is confirmed for a bearish setup if RSI EMA is higher than the last bearish signal’s RSI
Reset the bullish RSI memory if RSI EMA rises above 30
Reset the bearish RSI memory if RSI EMA falls below 70
Store last signal direction and use it for optional bar coloring
Draw the trend cloud between fusion fast and fusion slow using fill()
Show signal labels only if showSignals is enabled
Bar and candle colors reflect either trend slope or last signal direction depending on mode selected
How it works
Once the script is loaded, it builds a fusion line by averaging five different types of moving averages. That line is smoothed twice into a fast and slow version. These two fusion lines form the structure for identifying trend direction and signal areas.
Trend bias is defined by the slope of the slow line. If the slow line is rising and price is above it, the market is considered bullish. If the slow line is falling and price is below it, it’s considered bearish.
Meanwhile, the script monitors how far price has moved from that slow line. If price is stretched beyond a certain distance (set by the threshold), and RSI confirms that momentum is reversing, a raw reversion signal is created. But the script only allows that signal to show if RSI has moved further into oversold or overbought territory than it did at the last signal. This blocks repetitive, weak entries. The memory is cleared only if RSI exits the zone — above 30 for bullish, below 70 for bearish.
Once a signal is accepted, a label is drawn. If the signal toggle is off, no label will be shown regardless of conditions. Bar colors are controlled separately — you can color them based on trend slope or last signal, depending on your selected mode.
Inputs
You can adjust the following settings:
MA Length: Sets the period for all moving averages used in the fusion.
Show Reversion Signals: Turns on the plotting of “Up” and “Down” labels when a reversal is confirmed.
Bar Coloring: Enables or disables colored bars based on trend or signal direction.
Show Trend Cloud: Fills the space between the fusion fast and slow lines to reflect trend bias.
Bar Color Mode: Lets you choose whether bars follow trend logic or last signal direction.
Sens 1: Smoothing speed for the slow fusion line — higher values = slower trend.
Sens 2: Smoothing speed for the fast line — lower values = faster signal response.
Deviation Threshold: Minimum distance price must move from fair value to trigger a signal check.
Features
This indicator offers:
A composite fair value model using five moving average types.
Dual smoothing system with user-defined sensitivity.
Slope-based trend definition tied to price position.
Deviation-triggered signal logic filtered by RSI reversal.
RSI memory system that blocks repetitive signals and resets only when RSI exits overbought or oversold zones.
Real-time tracking of the last signal’s direction for optional bar coloring.
Up/Down labels at signal points, visible only when enabled.
Optional trend cloud between fusion layers, visualizing current market bias.
Full user control over smoothing, threshold, color modes, and visibility.
Conclusion
The Fusion Trend-Reversion System is a tool for short-term traders looking to fade price extremes without ignoring trend bias. It calculates fair value using five diverse moving averages, smooths this into two dynamic layers, and applies strict reversal logic based on RSI deviation and momentum strength. Signals are triggered only when price is stretched and momentum confirms it with increasingly strong behavior. This combination makes the tool suitable for scalping, intraday entries, and fast market environments where precision matters.
Disclaimer
This indicator is for informational and educational purposes only. It does not constitute financial advice. All trading involves risk, and no tool can predict market behavior with certainty. Use proper risk management and do your own research before making trading decisions. Indicator

Indicator

Hybrid Triple Exponential Smoothing🙏🏻 TV, I present you HTES aka Hybrid Triple Exponential Smoothing, designed by Holt & Winters in the US, assembled by me in Saint P. I apply exponential smoothing individually to the data itself, then to residuals from the fitted values, and lastly to one-point forecast (OPF) errors, hence 'hybrid'. At the same time, the method is a closed-form solution and purely online, no need to make any recalculations & optimize anything, so the method is O(1).
^^ historical OPFs and one-point forecasting interval plotted instead of fitted values and prediction interval
Before the How-to, first let me tell you some non-obvious things about Triple Exponential smoothing (and about Exponential Smoothing in general) that not many catch. Expo smoothing seems very straightforward and obvious, but if you look deeper...
1) The whole point of exponential smoothing is its incremental/online nature, and its O(1) algorithm complexity, making it dope for high-frequency streaming data that is also univariate and has no weights. Consequently:
- Any hybrid models that involve expo smoothing and any type of ML models like gradient boosting applied to residuals rarely make much sense business-wise: if you have resources to boost the residuals, you prolly have resources to use something instead of expo smoothing;
- It also concerns the fashion of using optimizers to pick smoothing parameters; honestly, if you use this approach, you have to retrain on each datapoint, which is crazy in a streaming context. If you're not in a streaming context, why expo smoothing? What makes more sense is either picking smoothing parameters once, guided by exogenous info, or using dynamic ones calculated in a minimalistic and elegant way (more on that in further drops).
2) No matter how 'right' you choose the smoothing parameters, all the resulting components (level, trend, seasonal) are not pure; each of them contains a bit of info from the other components, this is just how non-sequential expo smoothing works. You gotta know this if you wanna use expo smoothing to decompose your time series into separate components. The only pure component there, lol, is the residuals;
3) Given what I've just said, treating the level (that does contain trend and seasonal components partially) as the resulting fit is a mistake. The resulting fit is level (l) + trend (b) + seasonal (s). And from this fit, you calculate residuals;
4) The residuals component is not some kind of bad thing; it is simply the component that contains info you consciously decide not to include in your model for whatever reason;
5) Forecasting Errors and Residuals from fitted values are 2 different things. The former are deltas between the forecasts you've made and actual values you've observed, the latter are simply differences between actual datapoints and in-sample fitted values;
6) Residuals are used for in-sample prediction intervals, errors for out-of-sample forecasting intervals;
7) Choosing between single, double, or triple expo smoothing should not be based exclusively on the nature of your data, but on what you need to do as well. For example:
- If you have trending seasonal data and you wanna do forecasting exclusively within the expo smoothing framework, then yes, you need Triple Exponential Smoothing;
- If you wanna use prediction intervals for generating trend-trading signals and you disregard seasonality, then you need single (simple) expo smoothing, even on trending data. Otherwise, the trend component will be included in your model's fitted values → prediction intervals.
8) Kind of not non-obvious, but when you put one smoothing parameter to zero, you basically disregard this component. E.g., in triple expo smoothing, when you put gamma and beta to zero, you basically end up with single exponential smoothing.
^^ data smoothing, beta and gamma zeroed out, forecasting steps = 0
About the implementation
* I use a simple power transform that results in a log transform with lambda = 0 instead of the mainstream-used transformers (if you put lambda on 2 in Box-Cox, you won't get a power of 2 transform)
* Separate set of smoothing parameters for data, residuals, and errors smoothing
* Separate band multipliers for residuals and errors
* Both typical error and typical residuals get multiplied by math.sqrt(math.pi / 2) in order to approach standard deviation so you can ~use Z values and get more or less corresponding probabilities
* In script settings → style, you can switch on/off plotting of many things that get calculated internally:
- You can visualize separate components (just remember they are not pure);
- You can switch off fit and switch on OPF plotting;
- You can plot residuals and their exponentially smoothed typical value to pick the smoothing parameters for both data and residuals;
- Or you might plot errors and play with data smoothing parameters to minimize them (consult SAE aka Sum of Absolute Errors plot);
^^ nuff said
More ideas on how to use the thing
1) Use Double Exponential Smoothing (data gamma = 0) to detrend your time series for further processing (Fourier likes at least weakly stationary data);
2) Put single expo smoothing on your strategy/subaccount equity chart (data alpha = data beta = 0), set prediction interval deviation multiplier to 1, run your strat live on simulator, start executing on real market when equity on simulator hits upper deviation (prediction interval), stop trading if equity hits lower deviation on simulator. Basically, let the strat always run on simulator, but send real orders to a real market when the strat is successful on your simulator;
3) Set up the model to minimize one-point forecasting errors, put error forecasting steps to 1, now you're doing nowcasting;
4) Forecast noisy trending sine waves for fun.
^^ nuff said 2
All Good TV ∞ Indicator

Optimized Heikin Ashi Strategy with Buy/Sell OptionsStrategy Name:
Optimized Heikin Ashi Strategy with Buy/Sell Options
Description:
The Optimized Heikin Ashi Strategy is a trend-following strategy designed to capitalize on market trends by utilizing the smoothness of Heikin Ashi candles. This strategy provides flexible options for trading, allowing users to choose between Buy Only (long-only), Sell Only (short-only), or using both in alternating conditions based on the Heikin Ashi candle signals. The strategy works on any market, but it performs especially well in markets where trends are prevalent, such as cryptocurrency or Forex.
This script offers customizable parameters for the backtest period, Heikin Ashi timeframe, stop loss, and take profit levels, allowing traders to optimize the strategy for their preferred markets or assets.
Key Features:
Trade Type Options:
Buy Only: Enter a long position when a green Heikin Ashi candle appears and exit when a red candle appears.
Sell Only: Enter a short position when a red Heikin Ashi candle appears and exit when a green candle appears.
Stop Loss and Take Profit:
Customizable stop loss and take profit percentages allow for flexible risk management.
The default stop loss is set to 2%, and the default take profit is set to 4%, maintaining a favorable risk/reward ratio.
Heikin Ashi Timeframe:
Traders can select the desired timeframe for Heikin Ashi candle calculation (e.g., 4-hour Heikin Ashi candles for a 1-hour chart).
The strategy smooths out price action and reduces noise, providing clearer signals for entry and exit.
Inputs:
Backtest Start Date / End Date: Specify the period for testing the strategy’s performance.
Heikin Ashi Timeframe: Select the timeframe for Heikin Ashi candle generation. A higher timeframe helps smooth the trend, which is beneficial for trading lower timeframes.
Stop Loss (in %) and Take Profit (in %): Enable or disable stop loss and take profit, and adjust the levels based on market conditions.
Trade Type: Choose between Buy Only or Sell Only based on your market outlook and strategy preference.
Strategy Performance:
In testing with BTC/USD, this strategy performed well in a 4-hour Heikin Ashi timeframe applied on a 1-hour chart over a period from January 1, 2024, to September 12, 2024. The results were as follows:
Initial Capital: 1 USD
Order Size: 100% of equity
Net Profit: +30.74 USD (3,073.52% return)
Percent Profitable: 78.28% of trades were winners.
Profit Factor: 15.825, indicating that the strategy's profitable trades far outweighed its losses.
Max Drawdown: 4.21%, showing low risk exposure relative to the large profit potential.
This strategy is ideal for both beginner and advanced traders who are looking to follow trends and avoid market noise by using Heikin Ashi candles. It is also well-suited for traders who prefer automated risk management through the use of stop loss and take profit levels.
Recommended Use:
Best Markets: This strategy works well on trending markets like cryptocurrency, Forex, or indices.
Timeframes: Works best when applied to lower timeframes (e.g., 1-hour chart) with a higher Heikin Ashi timeframe (e.g., 4-hour candles) to smooth out price action.
Leverage: The strategy performs well with leverage, but users should consider using 2x to 3x leverage to avoid excessive risk and potential liquidation. The strategy's low drawdown allows for moderate leverage use while maintaining risk control.
Customization: Traders can adjust the stop loss and take profit percentages based on their risk appetite and market conditions. A default setting of a 2% stop loss and 4% take profit provides a balanced risk/reward ratio.
Notes:
Risk Management: Traders should enable stop loss and take profit settings to maintain effective risk management and prevent large drawdowns during volatile market conditions.
Optimization: This strategy can be further optimized by adjusting the Heikin Ashi timeframe and risk parameters based on specific market conditions and assets.
Backtesting: The built-in backtesting functionality allows traders to test the strategy across different market conditions and historical data to ensure robustness before applying it to live trading.
How to Apply:
Select your preferred market and chart.
Choose the appropriate Heikin Ashi timeframe based on the chart's timeframe. (e.g., use 4-hour Heikin Ashi candles for 1-hour chart trends).
Adjust stop loss and take profit based on your risk management preference.
Run backtesting to evaluate its performance before applying it in live trading.
This strategy can be further modified and optimized based on personal trading style and market conditions. It’s important to monitor performance regularly and adjust settings as needed to align with market behavior.
Strategy

Double Ribbon [ChartPrime]The Double Ribbon - ChartPrime indicator is a powerful tool that combines two sets of Simple Moving Averages (SMAs) into a visually intuitive ribbon, which helps traders assess market trends and momentum. This indicator features two distinct ribbons: one with a fixed length but changing offset (displayed in gray) and another with varying lengths (displayed in colors). The relationship between these ribbons forms the basis of a trend score, which is visualized as an oscillator. This comprehensive approach provides traders with a clear view of market direction and strength.
◆ KEY FEATURES
Dual Ribbon Visualization : Displays two sets of 11 SMAs—one in a neutral gray color with a fixed length but varying offset, and another in vibrant colors with lengths that increase incrementally.
Trend Score Calculation : The trend score is derived from comparing each SMA in the colored ribbon with its corresponding SMA in the gray ribbon. If a colored SMA is above its gray counterpart, a positive score is added; if below, a negative score is assigned.
// Loop to calculate SMAs and update the score based on their relationships
for i = 0 to length
// Calculate SMA with increasing lengths
sma = ta.sma(src, len + 1 + i)
// Update score based on comparison of primary SMA with current SMA
if sma1 < sma
score += 1
else
score -= 1
// Store calculated SMAs in the arrays
sma_array.push(sma)
sma_array1.push(sma1 )
Dynamic Trend Analysis : The score oscillator provides a dynamic analysis of the trend, allowing traders to quickly gauge market conditions and potential reversals.
Customizable Ribbon Display : Users can toggle the display of the ribbon for a cleaner chart view, focusing solely on the trend score if desired.
◆ USAGE
Trend Confirmation : Use the position and color of the ribbon to confirm the current market trend. When the colored ribbon consistently stays above the gray ribbon, it indicates a strong uptrend, and vice versa for a downtrend.
Momentum Assessment : The score oscillator provides insight into the strength of the current trend. Higher scores suggest stronger trends, while lower scores may indicate weakening momentum or a potential reversal.
Strategic Entry/Exit Points : Consider using crossovers between the ribbons and changes in the score oscillator to identify potential entry or exit points in trades.
⯁ USER INPUTS
Length : Sets the base length for the primary SMAs in the ribbons.
Source : Determines the price data used for calculating the SMAs (e.g., close, open).
Ribbon Display Toggle : Allows users to show or hide the ribbon on the chart, focusing on either the ribbon, the trend score, or both.
⯁ CONCLUSION
The Double Ribbon indicator offers traders a comprehensive tool for analyzing market trends and momentum. By combining two ribbons with varying SMA lengths and offsets, it provides a clear visual representation of market conditions. The trend score oscillator enhances this analysis by quantifying trend strength, making it easier for traders to identify potential trading opportunities and manage risk effectively. Indicator

Strategy

Bitcoin Momentum StrategyThis is a very simple long-only strategy I've used since December 2022 to manage my Bitcoin position.
I'm sharing it as an open-source script for other traders to learn from the code and adapt it to their liking if they find the system concept interesting.
General Overview
Always do your own research and backtesting - this script is not intended to be traded blindly (no script should be) and I've done limited testing on other markets beyond Ethereum and BTC, it's just a template to tweak and play with and make into one's own.
The results shown in the strategy tester are from Bitcoin's inception so as to get a large sample size of trades, and potential returns have diminished significantly as BTC has grown to become a mega cap asset, but the script includes a date filter for backtesting and it has still performed solidly in recent years (speaking from personal experience using it myself - DYOR with the date filter).
The main advantage of this system in my opinion is in limiting the max drawdown significantly versus buy & hodl. Theoretically much better returns can be made by just holding, but that's also a good way to lose 70%+ of your capital in the inevitable bear markets (also speaking from experience).
In saying all of that, the future is fundamentally unknowable and past results in no way guarantee future performance.
System Concept:
Capture as much Bitcoin upside volatility as possible while side-stepping downside volatility as quickly as possible.
The system uses a simple but clever momentum-style trailing stop technique I learned from one of my trading mentors who uses this approach on momentum/trend-following stock market systems.
Basically, the system "ratchets" up the stop-loss to be much tighter during high bearish volatility to protect open profits from downside moves, but loosens the stop loss during sustained bullish momentum to let the position ride.
It is invested most of the time, unless BTC is trading below its 20-week EMA in which case it stays in cash/USDT to avoid holding through bear markets. It only trades one position (no pyramiding) and does not trade short, but can easily be tweaked to do whatever you like if you know what you're doing in Pine.
Default parameters:
HTF: Weekly Chart
EMA: 20-Period
ATR: 5-period
Bar Lookback: 7
Entry Rule #1:
Bitcoin's current price must be trading above its higher-timeframe EMA (Weekly 20 EMA).
Entry Rule #2:
Bitcoin must not be in 'caution' condition (no large bearish volatility swings recently).
Enter at next bar's open if conditions are met and we are not already involved in a trade.
"Caution" Condition:
Defined as true if BTC's recent 7-bar swing high minus current bar's low is > 1.5x ATR, or Daily close < Daily 20-EMA.
Trailing Stop:
Stop is trailed 1 ATR from recent swing high, or 20% of ATR if in caution condition (ie. 0.2 ATR).
Exit on next bar open upon a close below stop loss.
I typically use a limit order to open & exit trades as close to the open price as possible to reduce slippage, but the strategy script uses market orders.
I've never had any issues getting filled on limit orders close to the market price with BTC on the Daily timeframe, but if the exchange has relatively low slippage I've found market orders work fine too without much impact on the results particularly since BTC has consistently remained above $20k and highly liquid.
Cost of Trading:
The script uses no leverage and a default total round-trip commission of 0.3% which is what I pay on my exchange based on their tier structure, but this can vary widely from exchange to exchange and higher commission fees will have a significantly negative impact on realized gains so make sure to always input the correct theoretical commission cost when backtesting any script.
Static slippage is difficult to estimate in the strategy tester given the wide range of prices & liquidity BTC has experienced over the years and it largely depends on position size, I set it to 150 points per buy or sell as BTC is currently very liquid on the exchange I trade and I use limit orders where possible to enter/exit positions as close as possible to the market's open price as it significantly limits my slippage.
But again, this can vary a lot from exchange to exchange (for better or worse) and if BTC volatility is high at the time of execution this can have a negative impact on slippage and therefore real performance, so make sure to adjust it according to your exchange's tendencies.
Tax considerations should also be made based on short-term trade frequency if crypto profits are treated as a CGT event in your region.
Summary:
A simple, but effective and fairly robust system that achieves the goals I set for it.
From my preliminary testing it appears it may also work on altcoins but it might need a bit of tweaking/loosening with the trailing stop distance as the default parameters are designed to work with Bitcoin which obviously behaves very differently to smaller cap assets.
Good luck out there! Strategy

Indicator
