Capiba Directional Momentum Oscillator (ADX-based)
🇬🇧 English
Summary
The Capiba ADX is a momentum oscillator that transforms the classic ADX (Average Directional Index) into a much more intuitive visual tool. Instead of analyzing three separate lines (ADX, DI+, DI-), this indicator consolidates the strength and direction of the trend into a single histogram that oscillates around the zero line.
The result is a clear and immediate reading of market sentiment, allowing traders to quickly identify who is in control—buyers or sellers—and with what intensity.
How to Interpret and Use the Indicator
The operation of the Capiba ADX is straightforward:
Green Histogram (Above Zero): Indicates that buying pressure (DI+) is in control. The height of the bar represents the magnitude of the bullish momentum. Taller green bars suggest a stronger uptrend.
Red Histogram (Below Zero): Indicates that selling pressure (DI-) is in control. The "depth" of the bar represents the magnitude of the bearish momentum. Lower (more negative) red bars suggest a stronger downtrend.
Zero Line (White): This is the equilibrium point. Crossovers through the zero line signal a potential shift in trend control.
Crossover Above: Buyers are taking control.
Crossover Below: Sellers are taking control.
Reference Levels (Momentum Strength)
The indicator plots three fixed reference levels to help gauge the intensity of the move:
0 Line: Equilibrium.
100 Line: Signals significant directional momentum. When the histogram surpasses this level, the trend (whether bullish or bearish) is gaining considerable strength.
200 Line: Signals very strong directional momentum, or even potential exhaustion conditions. Moves that reach this level are powerful but may also precede a consolidation or reversal.
Usage Strategy
Trend Confirmation: Use the indicator to confirm the direction of your analysis. If you are looking for long positions, the Capiba ADX should ideally be green and, preferably, rising.
Strength Identification: Watch for the histogram to cross the 100 and 200 levels to validate the strength of a breakout or an established trend.
Entry/Exit Signals: A zero-line crossover can be used as a primary entry or exit signal, especially when confirmed by other technical analysis tools.
Acknowledgements
This indicator is the result of adapting knowledge and open-source codes shared by the vibrant TradingView community.
"momentum"に関するスクリプトを検索
SMT Oscillator: Smarter Money Divergence Detector [PhenLabs]📊Phenlabs - SMT Oscillator: Smarter Money Divergence Detector
Version: PineScript™v6
📌Description
The SMT Oscillator is a sophisticated tool designed to identify smart money divergence between two correlated assets. By analyzing the momentum and volume-weighted price action of a primary and secondary symbol, traders can spot subtle shifts in market dynamics that often precede significant price movements. This indicator is built to provide a clearer, more filtered view of inter-market relationships, solving the common problem of false signals and market noise. Its primary purpose is to equip traders with a quantifiable edge in detecting potential reversals or continuations that are not obvious on a standard price chart.
🚀Points of Innovation
Dual-Symbol Divergence Core: Directly compares momentum (RSI or MACD) between two user-selected symbols to pinpoint true SMT divergence.
Volume-Weighted Analysis: Integrates volume delta into the divergence calculation, giving more weight to moves backed by significant market participation.
Entropy Filter for Noise Reduction: Employs an entropy calculation to filter out low-quality signals during choppy or consolidating market conditions.
Predictive Forecast Line: Utilizes a linear regression model to project the oscillator’s future trajectory, offering a forward-looking glimpse of potential momentum shifts.
Customizable Signal Sensitivity: Allows fine-tuning of overbought and oversold levels to adapt to different market volatilities and trading styles.
Integrated Signal Alerts: Provides built-in alerts for bullish/bearish zero crosses and overbought/oversold conditions.
🔧Core Components
Momentum Engine: The user can select either RSI or MACD as the underlying engine for the divergence calculation, allowing for flexibility in analysis.
Normalization Function: Price data from both symbols is normalized using percentage change to ensure a true “apples-to-apples” comparison, regardless of their nominal price differences.
Divergence Calculator: The core algorithm that subtracts the secondary symbol’s momentum from the primary’s and normalizes the result using the combined standard deviation.
Smoothing Mechanism: An Exponential Moving Average (EMA) is applied to the raw oscillator output to reduce choppiness and provide a clearer signal line.
🔥Key Features
Multi-Asset Comparison: Go beyond single-asset analysis by comparing correlated pairs like ES/NQ or BTC/ETH to uncover hidden trading opportunities.
Heatmap Visualization: An optional heatmap mode provides an intuitive visual representation of divergence strength, making it easier to gauge market sentiment at a glance.
Configurable Lookback and Timeframe: Adjust the lookback period and analysis timeframe to suit your specific strategy, from short-term scalping to long-term trend analysis.
Signal Markers: Visual markers are plotted directly on the chart for bullish and bearish zero-line crossovers, providing clear entry and exit signals.
🎨Visualization
SMT Oscillator Line: The primary visual element, colored blue for bullish (positive) divergence and orange for bearish (negative) divergence.
Zero Line: A solid horizontal line at the zero level, indicating the equilibrium point between the two assets. Crossovers of this line signal a shift in relative strength.
Overbought/Oversold Zones: Dotted lines at the +80 and -80 levels (customizable) that highlight extreme divergence readings, often indicating potential exhaustion points.
Forecast Line: A predictive line that plots the anticipated path of the oscillator, giving traders an advanced warning of potential changes in momentum.
📖Usage Guidelines
Setting Categories
Primary Symbol
Default: (Chart Symbol)
Description: The main asset you are analyzing. Leave blank to use the symbol currently on your chart.
Secondary Symbol
Default: CME_MINI:ES1! (used with NASDAQ futures due to inherent heavy correlation
Description: The asset to compare against the primary symbol.
Lookback Period
Default: 14
Range: 8-100
Description: Controls the calculation window for momentum (RSI/MACD). Higher values result in a smoother, less sensitive oscillator.
Divergence Type
Default: RSI
Options: RSI, MACD
Description: Choose the momentum indicator to use for the divergence calculation.
Enable Volume Weighting
Default: true
Description: When enabled, gives more weight to divergence signals that are accompanied by significant volume.
✅Best Use Cases
Identifying high-probability reversal points by spotting divergence in overbought or oversold territory.
Confirming the strength of a trend by observing sustained positive or negative divergence.
Pairs trading by taking a long position on the outperforming asset and a short position on the underperforming one during a divergence.
Risk management by recognizing when a current trend is losing its underlying momentum.
⚠️Limitations
Requires Correlated Assets: The indicator’s effectiveness is highly dependent on the selection of two assets with a known correlation (e.g., ES and NQ).
Not a Standalone System: Divergence signals should be used in conjunction with other forms of analysis (price action, market structure) and not as a complete trading system.
Lagging by Nature: As it is based on moving averages and past price data, the oscillator is inherently lagging and may not capture all rapid price changes.
💡What Makes This Unique
Combined Momentum & Volume: Unlike standard oscillators, it fuses momentum with volume delta for a more robust “Smart Money” perspective.
Noise-Filtering Mechanism: The proprietary entropy filter is a unique feature designed to weed out insignificant market chatter and focus on high-conviction signals.
🔬How It Works
Data Normalization:
The script first normalizes the price data of the two selected symbols into percentage changes. This ensures that the comparison is fair, regardless of the difference in their price scales.
Momentum Calculation:
It then calculates the chosen momentum value (either RSI or MACD histogram) for each of the normalized price series.
Divergence Computation:
The core of the indicator lies in subtracting the momentum of the secondary symbol from the primary one. This raw divergence is then optionally weighted by volume and filtered for market noise (entropy) to produce the final oscillator value.
💡Note:
For best results, use this indicator on adequate timeframes to filter out market noise. Always confirm signals with price action analysis before entering a trade.
TheDevashishratio-MomentumThis custom momentum indicator is inspired by Fibonacci principles but builds a unique sequence with steps of 0.5 (i.e., 0, 0.5, 1, 1.5, 2, ...). Instead of traditional Fibonacci numbers, each step functions as a dynamic lookback period for a momentum calculation. By cycling through these fractional steps, you capture a layered view of price momentum over varying intervals.
The "Fibonacci" Series Used
Sequence:
0, 0.5, 1, 1.5, 2, … up to a user-defined maximum
For trading indicators, lag values (lookback) must be integers, so each step is rounded to the nearest integer and duplicates are removed, resulting in lookbacks:
1, 2, 3, 4, ... N
Indicator Logic
For each selected lookback, the indicator calculates momentum as:
Momentum
n
=
close
−
close
Momentum
n
=close−close
Where:
close = current price
n = integer from your series of
You can combine these momenta for an averaged or weighted momentum profile, displaying the composite as an oscillator.
How To Use
Bullish: Oscillator above zero indicates positive composite momentum.
Bearish: Oscillator below zero indicates negative composite momentum.
Crosses: A cross from below to above zero may signal emerging bullish momentum, and vice versa.
Customization
Adjust max_step to control how many interval lags you want in your composite.
This oscillator averages across many short and mid-term momenta, reducing noise while still being sensitive to changes.
Summary
TheDevashishratio-Momentum offers a fresh momentum oscillator, blending a "Fibonacci-like" progression with technical analysis, and can be easily copy-pasted into TradingView to experiment and refine your edge.
For more on momentum indicator logic or how to use arrays and series in Pine Script, explore TradingView's official documentation and open-source scripts
RifleShooterLibLibrary "RifleShooterLib"
Provides a collection of helper functions in support of the Rifle Shooter Indicators.
Functions support the key components of the Rifle Trade algorithm including
* measuring momentum
* identifying paraboloic price action (to disable the algorthim during such time)
* determine the lookback criteria of X point movement in last N minutes
* processing and navigating between the 23/43/73 levels
* maintaining a status table of algorithm progress
toStrRnd(val, digits)
Parameters:
val (float)
digits (int)
_isValidTimeRange(startTimeInput, endTimeInput)
Parameters:
startTimeInput (string)
endTimeInput (string)
_normalize(_src, _min, _max)
_normalize Normalizes series with unknown min/max using historical min/max.
Parameters:
_src (float) : Source series to normalize
_min (float) : minimum value of the rescaled series
_max (float) : maximum value of the rescaled series
Returns: The series scaled with values between min and max
arrayToSeries(arrayInput)
arrayToSeries Return an array from the provided series.
Parameters:
arrayInput (array) : Source array to convert to a series
Returns: The array as a series datatype
f_parabolicFiltering(_activeCount, long, shooterRsi, shooterRsiLongThreshold, shooterRsiShortThreshold, fiveMinuteRsi, fiveMinRsiLongThreshold, fiveMinRsiShortThreshold, shooterRsiRoc, shooterRsiRocLongThreshold, shooterRsiRocShortThreshold, quickChangeLookbackBars, quckChangeThreshold, curBarChangeThreshold, changeFromPrevBarThreshold, maxBarsToholdParabolicMoveActive, generateLabels)
f_parabolicFiltering Return true when price action indicates a parabolic active movement based on the provided inputs and thresholds.
Parameters:
_activeCount (int)
long (bool)
shooterRsi (float)
shooterRsiLongThreshold (float)
shooterRsiShortThreshold (float)
fiveMinuteRsi (float)
fiveMinRsiLongThreshold (float)
fiveMinRsiShortThreshold (float)
shooterRsiRoc (float)
shooterRsiRocLongThreshold (float)
shooterRsiRocShortThreshold (float)
quickChangeLookbackBars (int)
quckChangeThreshold (int)
curBarChangeThreshold (int)
changeFromPrevBarThreshold (int)
maxBarsToholdParabolicMoveActive (int)
generateLabels (bool)
rsiValid(rsi, buyThreshold, sellThreshold)
rsiValid Returns true if the provided RSI value is withing the associated threshold. For the unused threshold set it to na
Parameters:
rsi (float)
buyThreshold (float)
sellThreshold (float)
squezeBands(source, length)
squezeBands Returns the squeeze bands momentum color of current source series input
Parameters:
source (float)
length (int)
f_momentumOscilator(source, length, transperency)
f_momentumOscilator Returns the squeeze pro momentum value and bar color states of the series input
Parameters:
source (float)
length (int)
transperency (int)
f_getLookbackExtreme(lowSeries, highSeries, lbBars, long)
f_getLookbackExtreme Return the highest high or lowest low over the look back window
Parameters:
lowSeries (float)
highSeries (float)
lbBars (int)
long (bool)
f_getInitialMoveTarget(lbExtreme, priveMoveOffset, long)
f_getInitialMoveTarget Return the point delta required to achieve an initial rifle move (X points over Y lookback)
Parameters:
lbExtreme (float)
priveMoveOffset (int)
long (bool)
isSymbolSupported(sym)
isSymbolSupported Return true if provided symbol is one of the supported DOW Rifle Indicator symbols
Parameters:
sym (string)
getBasePrice(price)
getBasePrice Returns integer portion of provided float
Parameters:
price (float)
getLastTwoDigitsOfPrice(price)
getBasePrice Returns last two integer numerals of provided float value
Parameters:
price (float)
getNextLevelDown(price, lowestLevel, middleLevel, highestLevel)
getNextLevelDown Returns the next level above the provided price value
Parameters:
price (float)
lowestLevel (float)
middleLevel (float)
highestLevel (float)
getNextLevelUp(price, lowestLevel, middleLevel, highestLevel)
getNextLevelUp Returns the next level below the provided price value
Parameters:
price (float)
lowestLevel (float)
middleLevel (float)
highestLevel (float)
isALevel(price, lowestLevel, middleLevel, highestLevel)
isALevel Returns true if the provided price is onve of the specified levels
Parameters:
price (float)
lowestLevel (float)
middleLevel (float)
highestLevel (float)
getClosestLevel(price, lowestLevel, middleLevel, highestLevel)
getClosestLevel Returns the level closest to the price value provided
Parameters:
price (float)
lowestLevel (float)
middleLevel (float)
highestLevel (float)
f_fillSetupTableCell(_table, _col, _row, _text, _bgcolor, _txtcolor, _text_size)
f_fillSetupTableCell Helper function to fill a setup table celll
Parameters:
_table (table)
_col (int)
_row (int)
_text (string)
_bgcolor (color)
_txtcolor (color)
_text_size (string)
f_fillSetupTableRow(_table, _row, _col0Str, _col1Str, _col2Str, _bgcolor, _textColor, _textSize)
f_fillSetupTableRow Helper function to fill a setup table row
Parameters:
_table (table)
_row (int)
_col0Str (string)
_col1Str (string)
_col2Str (string)
_bgcolor (color)
_textColor (color)
_textSize (string)
f_addBlankRow(_table, _row)
f_addBlankRow Helper function to fill a setup table row with empty values
Parameters:
_table (table)
_row (int)
f_updateVersionTable(versionTable, versionStr, versionDateStr)
f_updateVersionTable Helper function to fill the version table with provided values
Parameters:
versionTable (table)
versionStr (string)
versionDateStr (string)
f_updateSetupTable(_table, parabolicMoveActive, initialMoveTargetOffset, initialMoveAchieved, shooterRsi, shooterRsiValid, rsiRocEnterThreshold, shooterRsiRoc, fiveMinuteRsi, fiveMinuteRsiValid, requireValid5MinuteRsiForEntry, stallLevelOffset, stallLevelExceeded, stallTargetOffset, recoverStallLevelValid, curBarChangeValid, volumeRoc, volumeRocThreshold, enableVolumeRocForTrigger, tradeActive, entryPrice, curCloseOffset, curSymCashDelta, djiCashDelta, showDjiDelta, longIndicator, fontSize)
f_updateSetupTable Manages writing current data to the setup table
Parameters:
_table (table)
parabolicMoveActive (bool)
initialMoveTargetOffset (float)
initialMoveAchieved (bool)
shooterRsi (float)
shooterRsiValid (bool)
rsiRocEnterThreshold (float)
shooterRsiRoc (float)
fiveMinuteRsi (float)
fiveMinuteRsiValid (bool)
requireValid5MinuteRsiForEntry (bool)
stallLevelOffset (float)
stallLevelExceeded (bool)
stallTargetOffset (float)
recoverStallLevelValid (bool)
curBarChangeValid (bool)
volumeRoc (float)
volumeRocThreshold (float)
enableVolumeRocForTrigger (bool)
tradeActive (bool)
entryPrice (float)
curCloseOffset (float)
curSymCashDelta (float)
djiCashDelta (float)
showDjiDelta (bool)
longIndicator (bool)
fontSize (string)
Step Channel Momentum Trend [ChartPrime]OVERVIEW
Step Channel Momentum Trend is a momentum-based price filtering system that adapts to market structure using pivot levels and ATR volatility. It builds a dynamic channel around a stepwise midline derived from swing highs and lows. The system colors price candles based on whether price remains inside this channel (low momentum) or breaks out (strong directional flow). This allows traders to clearly distinguish ranging conditions from trending ones and take action accordingly.
⯁ STRUCTURAL MIDLNE (STEP CHANNEL CORE)
The midline acts as the backbone of the trend system and is based on structure rather than smoothing.
Calculated as the average of the most recent confirmed Pivot High and Pivot Low.
The result is a step-like horizontal line that only updates when new pivot points are confirmed.
This design avoids lag and makes the line "snap" to recent structural shifts.
It reflects the equilibrium level between recent bullish and bearish control.
This unique step logic creates clear regime shifts and prevents noise from distorting trend interpretation.
⯁ DYNAMIC VOLATILITY BANDS (ATR FILTERING)
To detect momentum strength, the script constructs upper and lower bands using the ATR (Average True Range):
The distance from the midline is determined by ATR × multiplier (default: 200-period ATR × 0.6).
These bands adjust dynamically to volatility, expanding in high-ATR environments and contracting in calm markets.
The area between upper and lower bands represents a neutral or ranging market state.
Breakouts outside the bands are treated as significant momentum shifts.
This filtering approach ensures that only meaningful breakouts are visually emphasized — not every candle fluctuation.
⯁ MOMENTUM-BASED CANDLE COLORING
The system visually transforms price candles into momentum indicators:
When price (hl2) is above the upper band, candles are green → bullish momentum.
When price is below the lower band, candles are red → bearish momentum.
When price is between the bands, candles are orange → low or no momentum (range).
The candle body, wick, and border are all colored uniformly for visual clarity.
This gives traders instant feedback on when momentum is expanding or fading — ideal for breakout, pullback, or trend-following strategies.
⯁ PIVOT-BASED SWING ANCHORS
Each confirmed pivot is plotted as a label ⬥ directly on the chart:
They also serve as potential manual entry zones, SL/TP anchors, or confirmation points.
⯁ MOMENTUM STATE LABEL
To reinforce the current market mode, a live label is displayed at the most recent candle:
Displays either:
“ Momentum Up ” when price breaks above the upper band.
“ Momentum Down ” when price breaks below the lower band.
“ Range ” when price remains between the bands.
Label color matches the candle color for quick identification.
Automatically updates on each bar close.
This helps discretionary traders filter trades based on market phase.
USAGE
Use the green/red zones to enter with momentum and ride trending moves.
Use the orange zone to stay out or fade ranges.
The step midline can act as a breakout base, pullback anchor, or bias reference.
Combine with other indicators (e.g., order blocks, divergences, or volume) to build high-confluence systems.
CONCLUSION
Step Channel Momentum Trend gives traders a clean, adaptive framework for identifying trend direction, volatility-based breakouts, and ranging environments — all from structural logic and ATR responsiveness. Its stepwise midline provides clarity, while its dynamic color-coded candles make momentum shifts impossible to miss. Whether you’re scalping intraday momentum or managing swing entries, this tool helps you trade with the market’s rhythm — not against it.
Adaptive Momentum Flow (AMF)Overview
The Adaptive Momentum Flow (AMF) indicator is a powerful, multi-faceted tool designed to provide a comprehensive and adaptive view of market momentum and trend strength. Unlike traditional oscillators with fixed settings, AMF dynamically adjusts its calculations based on market volatility , ensuring its signals remain relevant across varying market conditions. By combining advanced Double Exponential Moving Averages (DEMA) with a powerful volume analysis component and a customizable scoring system, AMF offers a unique perspective on price action and underlying buying/selling pressure.
Key Features & How It Works
1. Adaptive DEMA Trend Strength:
At its core, AMF utilizes three DEMA lines (Fast, Medium, Slow) to assess the current trend's alignment and strength.
The indicator dynamically adjusts the lengths of these DEMA lines based on real-time market volatility, measured by Average True Range (ATR). This means AMF becomes more responsive in volatile markets and smoother in calmer periods.
A "Volatility Sensitivity" input allows you to fine-tune how aggressively the indicator adapts to these changes.
2. Volume Analysis (Buying/Selling Pressure):
AMF incorporates a dedicated volume analysis module to gauge whether volume is predominantly supporting upward or downward price movements. This helps identify periods of significant buying or selling pressure.
This volume analysis component is smoothed with an adjustable Moving Average (SMA, EMA, WMA, or DEMA) and contributes to the overall momentum score, adding a crucial layer of volume-driven confirmation to the analysis.
3. Comprehensive Scoring System:
The indicator generates a normalized "Oscillator Score" that ranges from -100 to 100. This score is a weighted sum of:
Price's relationship to the Fast DEMA.
The Fast DEMA's relationship to the Medium DEMA.
The Medium DEMA's relationship to the Slow DEMA.
The smoothed value from the volume analysis.
Each component's influence on the final score can be individually adjusted via input weights, allowing for deep customization.
Signal Line & Crossovers:
A smoothed "Signal Line" provides additional confirmation for momentum shifts. Crossovers between the main AMF line and its Signal Line can indicate potential changes in market direction.
Overbought/Oversold Levels:
Adjustable Overbought (default 70) and Oversold (default -70) levels visually highlight extreme momentum conditions.
These zones are enhanced with a color fill effect (bright red for overbought, bright cyan for oversold), making it easy to spot when the market is entering potentially exhausted states.
Crucially, these extreme zones can often be further validated by combining them with volatility bands (like Bollinger Bands or Keltner Channels as shown in the chart above) or other confluence indicators, offering stronger signals for potential reversals or exhaustion.
Benefits for Traders
Reduced Lag: DEMA's inherent design helps minimize lag compared to traditional moving averages, providing more timely signals.
Adaptive Intelligence: Automatically adjusts to market volatility, ensuring the indicator's sensitivity is appropriate for current conditions.
Holistic Momentum View: Combines price-based trend alignment with volume-based pressure for a more robust assessment of market flow.
Clear Visual Cues: Intuitive plots, signal line, and vibrant overbought/oversold zone fills make interpretation straightforward.
Customizable: Extensive input options allow traders to tailor the indicator to their specific trading style, asset, and timeframe.
How to Use
Trend Confirmation: Look for the AMF line and its Signal Line to align with the price trend.
Momentum Shifts: Crossovers between the AMF line and its Signal Line can indicate shifts in momentum.
Extreme Conditions: Pay attention when the AMF line enters the neon-highlighted overbought or oversold zones, signaling potential reversals or pauses in the current momentum. Always consider confirming these signals with other analysis tools, such as price action, chart patterns, support/resistance levels, or volatility indicators.
Customization: Experiment with the "Volatility Sensitivity," DEMA multipliers, and scoring weights to find the optimal settings for your trading strategy.
RSI with HMA & Momentum ZonesRSI with HMA & Momentum Zones — Indicator Description
This indicator combines Relative Strength Index (RSI) analysis with Hull Moving Averages (HMA) and Momentum Zone detection to provide a multi-layered view of market strength, trend shifts, and divergence signals.
It includes:
Main Features:
RSI Core:
Standard RSI calculated from a customizable source (close, open, etc.) with adjustable length.
A dynamic RSI Signal Line is plotted with selectable smoothing types (SMA, EMA, SMMA, WMA, VWMA) to enhance trend-following signals.
RSI crossovers of its signal line change color (green for bullish crossovers, red for bearish crossunders).
Hull Moving Averages (HMA):
Two HMA lines are plotted based on the RSI:
Short HMA (fast) and Long HMA (slow).
Color shifts indicate crossovers between RSI and Short HMA (short-term trend change) and Short HMA vs Long HMA (longer-term trend shifts).
Momentum Zones:
When the gap between the RSI and the Long HMA exceeds a user-defined threshold:
A green background highlights strong bullish momentum.
A red background highlights strong bearish momentum.
Helps visualize when momentum becomes extended.
Divergence Detection (Optional):
Regular and hidden bullish and bearish divergences are automatically detected between price and RSI.
Divergences are plotted on the RSI pane with labels ("Bull", "H Bull", "Bear", "H Bear").
Adjustable lookback settings for fine-tuning sensitivity.
Alerts are available for all divergence events.
Visual Enhancements:
A shaded cloud fills between RSI and its signal line, green for bullish bias and red for bearish bias.
Horizontal bands at 70, 50, and 30 levels to mark traditional RSI zones (overbought, neutral, oversold).
Customization Options:
All major components — RSI settings, Signal Line type, HMA lengths, Momentum Zone threshold, and Divergence controls — are fully adjustable.
Stochastic Order Flow Momentum [ScorsoneEnterprises]This indicator implements a stochastic model of order flow using the Ornstein-Uhlenbeck (OU) process, combined with a Kalman filter to smooth momentum signals. It is designed to capture the dynamic momentum of volume delta, representing the net buying or selling pressure per bar, and highlight potential shifts in market direction. The volume delta data is sourced from TradingView’s built-in functionality:
www.tradingview.com
For a deeper dive into stochastic processes like the Ornstein-Uhlenbeck model in financial contexts, see these research articles: arxiv.org and arxiv.org
The SOFM tool aims to reveal the momentum and acceleration of order flow, modeled as a mean-reverting stochastic process. In markets, order flow often oscillates around a baseline, with bursts of buying or selling pressure that eventually fade—similar to how physical systems return to equilibrium. The OU process captures this behavior, while the Kalman filter refines the signal by filtering noise. Parameters theta (mean reversion rate), mu (mean level), and sigma (volatility) are estimated by minimizing a squared-error objective function using gradient descent, ensuring adaptability to real-time market conditions.
How It Works
The script combines a stochastic model with signal processing. Here’s a breakdown of the key components, including the OU equation and supporting functions.
// Ornstein-Uhlenbeck model for volume delta
ou_model(params, v_t, lkb) =>
theta = clamp(array.get(params, 0), 0.01, 1.0)
mu = clamp(array.get(params, 1), -100.0, 100.0)
sigma = clamp(array.get(params, 2), 0.01, 100.0)
error = 0.0
v_pred = array.new(lkb, 0.0)
array.set(v_pred, 0, array.get(v_t, 0))
for i = 1 to lkb - 1
v_prev = array.get(v_pred, i - 1)
v_curr = array.get(v_t, i)
// Discretized OU: v_t = v_{t-1} + theta * (mu - v_{t-1}) + sigma * noise
v_next = v_prev + theta * (mu - v_prev)
array.set(v_pred, i, v_next)
v_curr_clean = na(v_curr) ? 0 : v_curr
v_pred_clean = na(v_next) ? 0 : v_next
error := error + math.pow(v_curr_clean - v_pred_clean, 2)
error
The ou_model function implements a discretized Ornstein-Uhlenbeck process:
v_t = v_{t-1} + theta (mu - v_{t-1})
The model predicts volume delta (v_t) based on its previous value, adjusted by the mean-reverting term theta (mu - v_{t-1}), with sigma representing the volatility of random shocks (approximated in the Kalman filter).
Parameters Explained
The parameters theta, mu, and sigma represent distinct aspects of order flow dynamics:
Theta:
Definition: The mean reversion rate, controlling how quickly volume delta returns to its mean (mu). Constrained between 0.01 and 1.0 (e.g., clamp(array.get(params, 0), 0.01, 1.0)).
Interpretation: A higher theta indicates faster reversion (short-lived momentum), while a lower theta suggests persistent trends. Initial value is 0.1 in init_params.
In the Code: In ou_model, theta scales the pull toward \mu, influencing the predicted v_t.
Mu:
Definition: The long-term mean of volume delta, representing the equilibrium level of net buying/selling pressure. Constrained between -100.0 and 100.0 (e.g., clamp(array.get(params, 1), -100.0, 100.0)).
Interpretation: A positive mu suggests a bullish bias, while a negative mu indicates bearish pressure. Initial value is 0.0 in init_params.
In the Code: In ou_model, mu is the target level that v_t reverts to over time.
Sigma:
Definition: The volatility of volume delta, capturing the magnitude of random fluctuations. Constrained between 0.01 and 100.0 (e.g., clamp(array.get(params, 2), 0.01, 100.0)).
Interpretation: A higher sigma reflects choppier, noisier order flow, while a lower sigma indicates smoother behavior. Initial value is 0.1 in init_params.
In the Code: In the Kalman filter, sigma contributes to the error term, adjusting the smoothing process.
Summary:
theta: Speed of mean reversion (how fast momentum fades).
mu: Baseline order flow level (bullish or bearish bias).
sigma: Noise level (variability in order flow).
Other Parts of the Script
Clamp
A utility function to constrain parameters, preventing extreme values that could destabilize the model.
ObjectiveFunc
Defines the objective function (sum of squared errors) to minimize during parameter optimization. It compares the OU model’s predicted volume delta to observed data, returning a float to be minimized.
How It Works: Calls ou_model to generate predictions, computes the squared error for each timestep, and sums it. Used in optimization to assess parameter fit.
FiniteDifferenceGradient
Calculates the gradient of the objective function using finite differences. Think of it as finding the "slope" of the error surface for each parameter. It nudges each parameter (theta, mu, sigma) by a small amount (epsilon) and measures the change in error, returning an array of gradients.
Minimize
Performs gradient descent to optimize parameters. It iteratively adjusts theta, mu, and sigma by stepping down the "hill" of the error surface, using the gradients from FiniteDifferenceGradient. Stops when the gradient norm falls below a tolerance (0.001) or after 20 iterations.
Kalman Filter
Smooths the OU-modeled volume delta to extract momentum. It uses the optimized theta, mu, and sigma to predict the next state, then corrects it with observed data via the Kalman gain. The result is a cleaner momentum signal.
Applied
After initializing parameters (theta = 0.1, mu = 0.0, sigma = 0.1), the script optimizes them using volume delta data over the lookback period. The optimized parameters feed into the Kalman filter, producing a smoothed momentum array. The average momentum and its rate of change (acceleration) are calculated, though only momentum is plotted by default.
A rising momentum suggests increasing buying or selling pressure, while a flattening or reversing momentum indicates fading activity. Acceleration (not plotted here) could highlight rapid shifts.
Tool Examples
The SOFM indicator provides a dynamic view of order flow momentum, useful for spotting directional shifts or consolidation.
Low Time Frame Example: On a 5-minute chart of SEED_ALEXDRAYM_SHORTINTEREST2:NQ , a rising momentum above zero with a lookback of 5 might signal building buying pressure, while a drop below zero suggests selling dominance. Crossings of the zero line can mark transitions, though the focus is on trend strength rather than frequent crossovers.
High Time Frame Example: On a daily chart of NYSE:VST , a sustained positive momentum could confirm a bullish trend, while a sharp decline might warn of exhaustion. The mean-reverting nature of the OU process helps filter out noise on longer scales. It doesn’t make the most sense to use this on a high timeframe with what our data is.
Choppy Markets: When momentum oscillates near zero, it signals indecision or low conviction, helping traders avoid whipsaws. Larger deviations from zero suggest stronger directional moves to act on, this is on $STT.
Inputs
Lookback: Users can set the lookback period (default 5) to adjust the sensitivity of the OU model and Kalman filter. Shorter lookbacks react faster but may be noisier; longer lookbacks smooth more but lag slightly.
The user can also specify the timeframe they want the volume delta from. There is a default way to lower and expand the time frame based on the one we are looking at, but users have the flexibility.
No indicator is 100% accurate, and SOFM is no exception. It’s an estimation tool, blending stochastic modeling with signal processing to provide a leading view of order flow momentum. Use it alongside price action, support/resistance, and your own discretion for best results. I encourage comments and constructive criticism.
RSI-Volume Momentum Signal ScoreRSI-Volume Momentum Signal Score
Description
The RSI-Volume Momentum Signal Score is a predictive technical indicator designed to identify bullish and bearish momentum shifts by combining volume-based momentum with the Relative Strength Index (RSI). It generates a Signal Score derived from:
• The divergence between short-term and long-term volume (Volume Oscillator), and
• RSI positioning relative to a user-defined threshold.
This hybrid approach helps traders detect early signs of price movement based on volume surges and overbought/oversold conditions.
The Signal Score is computed as follows:
Signal Score = Volume Momentum x RSI Divergence Factor
Volume Momentum = tanh ((Volume Oscillator value (vo) – Volume Threshold)/Scaling Factor)
RSI Divergence Factor = ((RSI Threshold – RSI Period)/Scaling Factor)
Or,
Signal Score = tanh((vo - voThreshold) / scalingFactor) * ((rsiThreshold - rsi) / scalingFactor)
The logic of this formula are as follows:
• If Volume Oscillator >= Volume Threshold and RSI <= RSI Threshold: Bullish Signal (+1 x Scaling Factor)
• If Volume Oscillator >= Volume Threshold and RSI >= (100 – RSI Threshold): Bearish Signal (-1 x Scaling Factor)
• Otherwise: Neutral (0)
The tanh function provides the normalization process. It ensures that the final signal score is bounded between -1 and 1, increases sensitivity to early changes in volume patterns based on RSI conditions, and prevent sudden jumps in signals ensuring smooth and continuous signal line.
Input Fields
The input fields allow users to customize the behavior of the indicator based on their trading strategy:
Short-Term Volume MA
- Default: `2`
- Description: The period for the short-term moving average of volume.
- Purpose: Captures short-term volume trends.
Long-Term Volume MA)
- Default: `10`
- Description: The period for the long-term moving average of volume.
- Purpose: Captures long-term volume trends for comparison with the short-term trend.
RSI Period)
- Default: `3`
- Description: The period for calculating the RSI.
- Purpose: Measures the relative strength of price movements over the specified period.
Volume Oscillator Threshold
- Default: `70`
- Description: The threshold for the Volume Oscillator to determine significant volume momentum.
- Purpose: Filters out weak volume signals.
RSI Threshold
- Default: `25`
- Description: The RSI level used to identify overbought or oversold conditions.
- Purpose: Helps detect potential reversals in price momentum.
Signal Scaling Factor
- Default: `10`
- Description: A multiplier for the signal score.
- Purpose: Adjusts the magnitude of the signal score for better visualization.
How To Use It for Trading:
Upcoming Bullish Signal: Signal line turns from Gray to Green or from Green to Gray
Upcoming Bearish Signal: Signal line turns from Gray to Red or from Red to Gray
Note: The price that corresponds to the transition of Signal line from Gray to Green or Red and vise versa is the signal price for upcoming bullish or bearish signal.
The signal score dynamically adjusts based on volume and RSI thresholds, making it adaptable to various market conditions, and this is what makes the indicator unique from other traditional indicators.
Unique Features
Unlike traditional indicators, this indicator combines two different dimensions—volume trends and RSI divergence—for more comprehensive signal generation. The use of tanh() to scale and smooth the signal is a mathematically elegant way to manage signal noise and highlight genuine trends. Traders can tune the scaling factor and thresholds to adapt the indicator for scalping, swing trading, or longer-term investing.
MACD Volume Strategy (BBO + MACD State, Reversal Type)Overview
MACD Volume Strategy (BBO + MACD State, Reversal Type) is a momentum-based reversal system that combines MACD crossover logic with volume filtering to enhance signal accuracy and minimize noise. It aims to identify structural trend shifts and manage risk using predefined parameters.
※This strategy is for educational and research purposes only. All results are based on historical simulations and do not guarantee future performance.
Strategy Objectives
Identify early trend transitions with high probability
Filter entries using volume dynamics to validate momentum
Maintain continuous exposure using a reversal-style model
Apply a consistent 1:1.5 risk-to-reward ratio per trade
Key Features
Integrated MACD and volume oscillator filtering
Zero repainting (all signals confirmed on closed candles)
Automatic position flipping for seamless direction shifts
Stop-loss and take-profit based on recent structural highs/lows
Trading Rules
Long Entry Conditions
MACD crosses above the zero line (BBO Buy arrow)
Volume oscillator is positive (short EMA > long EMA)
MACD is above the signal line
Close any existing short and enter a new long
Short Entry Conditions
MACD crosses below the zero line (BBO Sell arrow)
Volume oscillator is positive
MACD is below the signal line
Close any existing long and enter a new short
Exit Rules
Take Profit (TP) = Entry ± (risk distance × 1.5)
Stop Loss (SL) = Recent swing low (for long) or high (for short)
Early Exit = Triggered when a reversal signal appears (flip logic)
Risk Management Parameters
Pair: ETH/USD
Timeframe: 10-minute
Starting Capital: $3,000
Commission: 0.02%
Slippage: 2 pip
Risk per Trade: 5% of account equity (adjusted for sustainable practice)
Total Trades: 312 (backtest on selected dataset)
※Risk parameters are fully configurable and should be adjusted to suit each trader's personal setup and broker conditions.
Parameters & Configurations
Volume Short Length: 6
Volume Long Length: 12
MACD Fast Length: 11
MACD Slow Length: 21
Signal Smoothing: 10
Oscillator MA Type: SMA
Signal Line MA Type: SMA
Visual Support
Green arrow = Long entry
Red arrow = Short entry
MACD lines, signal line, and histogram
SL/TP markers plotted directly on the chart
Strategic Advantages & Uniqueness
Volume filtering eliminates low-participation, weak signals
Structurally aligned SL/TP based on recent market pivots
No repainting — decisions are made only on closed candles
Always in the market due to the reversal-style framework
Inspirations & Attribution
This strategy is inspired by the excellent work of:
Bitcoinblockchainonline – “BBO_Roxana_Signals MACD + vol”
Leveraging MACD zero-line cross and volume oscillator for intuitive signal generation.
HasanRifat – “MACD Fake Filter ”
Introduced a signal filter using MACD wave height averaging to reduce false positives.
This strategy builds upon those ideas to create a more automated, risk-aware, and technically adaptive system.
Summary
MACD Volume Strategy is a clean, logic-first automated trading system built for precision-seeking traders. It avoids discretionary bias and provides consistent signal logic under backtested historical conditions.
100% mechanical — no discretionary input required
Designed for high-confidence entries
Can be extended with filters, alerts, or trailing stops
※Strategy performance depends on market context. Past performance is not indicative of future results. Use with proper risk management and careful configuration.
TMO (True Momentum Oscillator)TMO ((T)rue (M)omentum (O)scilator)
Created by Mobius V01.05.2018 TOS Convert to TV using Claude 3.7 and ChatGPT 03 Mini :
TMO calculates momentum using the delta of price. Giving a much better picture of trend, tend reversals and divergence than momentum oscillators using price.
True Momentum Oscillator (TMO)
The True Momentum Oscillator (TMO) is a momentum-based technical indicator designed to identify trend direction, trend strength, and potential reversal points in the market. It's particularly useful for spotting overbought and oversold conditions, aiding traders in timing their entries and exits.
How it Works:
The TMO calculates market momentum by analyzing recent price action:
Momentum Calculation:
For a user-defined length (e.g., 14 bars), TMO compares the current closing price to past open prices. It assigns:
+1 if the current close is greater than the open price of the past bar (indicating bullish momentum).
-1 if it's less (indicating bearish momentum).
0 if there's no change.
The sum of these scores gives a raw momentum measure.
EMA Smoothing:
To reduce noise and false signals, this raw momentum is smoothed using Exponential Moving Averages (EMAs):
First, the raw data is smoothed by an EMA over a short calculation period (default: 5).
Then, it undergoes additional smoothing through another EMA (default: 3 bars), creating the primary "Main" line of the indicator.
Lastly, a "Signal" line is derived by applying another EMA (also default: 3 bars) to the main line, adding further refinement.
Trend Identification:
The indicator plots two lines:
Main Line: Indicates current momentum strength and direction.
Signal Line: Acts as a reference line, similar to a moving average crossover system.
When the Main line crosses above the Signal line, it suggests strengthening bullish momentum. Conversely, when the Main line crosses below the Signal line, it indicates increasing bearish momentum.
Overbought/Oversold Levels:
The indicator identifies key levels based on the chosen length parameter:
Overbought zone (positive threshold): Suggests the market might be overheated, and a potential bearish reversal or pullback could occur.
Oversold zone (negative threshold): Suggests the market might be excessively bearish, signaling a potential bullish reversal.
Clouds visually mark these overbought/oversold areas, making it easy to see potential reversal zones.
Trading Applications:
Trend-following: Traders can enter positions based on crossovers of the Main and Signal lines.
Reversals: The overbought and oversold areas highlight high-probability reversal points.
Momentum confirmation: Use TMO to confirm price action or other technical signals, improving trade accuracy and timing.
The True Momentum Oscillator provides clarity in identifying momentum shifts, making it a valuable addition to various trading strategies.
BBVOL SwiftEdgeBBVOL SwiftEdge – Precision Scalping with Volume and Trend Filtering
Optimized for scalping and short-term trading on fast-moving markets (e.g., 1-minute charts), BBVOL SwiftEdge combines Bollinger Bands, Heikin Ashi smoothing, volume momentum, and EMA trend alignment to deliver actionable buy/sell signals with visual trend cues. Ideal for forex, crypto, and stocks.
What Makes BBVOL SwiftEdge Unique?
Unlike traditional Bollinger Bands scripts that focus solely on price volatility, BBVOL SwiftEdge enhances signal precision by:
Using Heikin Ashi to filter out noise and confirm trend direction, reducing false signals in choppy markets.
Incorporating volume analysis to ensure signals align with significant buying or selling pressure (customizable thresholds).
Adding an EMA overlay to keep trades in sync with the short-term trend.
Coloring candlesticks (green for bullish, red for bearish, purple for consolidation) to visually highlight market conditions at a glance.
How Does It Work?
Buy Signal: Triggers when price crosses above the lower Bollinger Band, Heikin Ashi shows bullish momentum (close > open), buy volume exceeds your set threshold (default 30%), and price is above the EMA. A green triangle appears below the candle.
Sell Signal: Triggers when price crosses below the upper Bollinger Band, Heikin Ashi turns bearish (close < open), sell volume exceeds the threshold (default 30%), and price is below the EMA. A red triangle appears above the candle.
Trend Visualization: Candles turn green when price is significantly above the Bollinger Bands’ basis (indicating a bullish trend), red when below (bearish trend), or purple when near the basis (consolidation), based on a customizable threshold (default 10% of BB width).
Risk Management: Each signal calculates a stop-loss (10% beyond the opposite band) and take-profit (opposite band), plotted for reference.
How to Use It
Timeframe: Best on 1-minute to 5-minute charts for scalping; test higher timeframes for swing trading.
Markets: Works well in volatile markets like forex pairs (e.g., EUR/USD), crypto (e.g., BTC/USD), or liquid stocks.
Customization: Adjust Bollinger Bands length (default 10), multiplier (default 1.2), volume thresholds (default 30%), EMA length (default 3), and consolidation threshold (default 0.1%) to match your strategy.
Interpretation: Look for green/red triangles as entry signals, confirmed by candle colors. Purple candles suggest caution—wait for a breakout. Use stop-loss/take-profit levels for trade management.
Underlying Concepts
Bollinger Bands: Measures volatility and identifies overbought/oversold zones.
Heikin Ashi: Smooths price action to emphasize trend direction.
Volume Momentum: Calculates cumulative buy/sell volume percentages to confirm market strength (e.g., buyVolPercent = buyVolume / totalVolume * 100).
EMA: A fast-moving average (default length 3) ensures signals align with the immediate trend.
Chart Setup
The chart displays Bollinger Bands (orange), Heikin Ashi close (green circles), EMA (purple), and volume-scaled lines (lime/red). Signals are marked with triangles, and candle colors reflect trend state. Keep the chart clean by focusing on these outputs for clarity.
MAG 7 - Weighted Multi-Symbol Momentum + ExtrasOverview
This indicator aggregates the percentage change of multiple symbols into a single “weighted momentum” value. You can set individual weights to emphasize or de-emphasize particular stocks. The script plots two key items:
The default tickers in the script are:
AAPL (Apple)
AMZN (Amazon)
NVDA (NVIDIA)
MSFT (Microsoft)
GOOGL (Alphabet/Google)
TSLA (Tesla)
META (Meta Platforms/Facebook)
Raw Weighted Momentum (Histogram):
Each bar represents the combined (weighted) percentage change across your chosen symbols for that bar.
Bars are colored green if the momentum is above zero, or red if below zero.
Smoothed Momentum (Yellow Line):
An Exponential Moving Average (EMA) of the raw momentum for a smoother trend view.
Helps visualize when short-term momentum is accelerating or decelerating relative to its average.
Features
Symbol Inputs: Up to seven user-defined tickers, with weights for each symbol.
Smoothing Period: Set a custom lookback length to calculate the EMA (or switch to SMA in the code if you prefer).
Table Display: A built-in table in the top-right corner lists each symbol’s real-time percentage change, plus the total weighted momentum.
Alerts:
Configure alerts for when the weighted momentum crosses above or below user-defined thresholds.
Helps you catch major shifts in sentiment across multiple symbols.
How To Use
Select Symbols & Weights: In the indicator’s settings, specify the tickers you want to monitor and their corresponding weights. Weights default to 1 (equal weighting).
Watch the Bars vs. Zero:
Bars above zero mean a positive weighted momentum (the basket is collectively moving up).
Bars below zero mean negative weighted momentum (the basket is collectively under pressure).
Check the Yellow Line: The EMA of momentum.
If the bars consistently stay above the line, short-term momentum is stronger than its recent average.
If the bars dip below the line, momentum is weakening relative to its average.
Review the Table: Quick snapshot of each symbol’s daily percentage change plus the total basket momentum, all color-coded red or green.
Caution & Tips
This indicator measures rate of change, not absolute price levels. A rising momentum can still be part of a larger downtrend.
Always combine momentum readings with other technical and/or fundamental signals for confirmation.
For better reliability, experiment with different smoothing lengths to suit your trading style (shorter for scalping, longer for swing or positional approaches).
DeNoised Momentum [OmegaTools]The DeNoised Momentum by OmegaTools is a versatile tool designed to help traders evaluate momentum, acceleration, and noise-reduction levels in price movements. Using advanced mathematical smoothing techniques, this script provides a "de-noised" view of momentum by applying filters to reduce market noise. This helps traders gain insights into the strength and direction of price trends without the distractions of market volatility. Key components include a DeNoised Moving Average (MA), a Momentum line, and Acceleration bars to identify trend shifts more clearly.
Features:
- Momentum Line: Measures the percentage change of the de-noised source price over a specified look-back period, providing insights into trend direction.
- Acceleration (Ret) Bars: Visualizes the rate of change of the source price, helping traders identify momentum shifts.
- Normal and DeNoised Moving Averages: Two moving averages, one based on close price (Normal MA) and the other on de-noised data (DeNoised MA), enable a comparison of smoothed trends versus typical price movements.
- DeNoised Price Data Plot: Displays the current de-noised price, color-coded to indicate the relationship between the Normal and DeNoised MAs, which highlights bullish or bearish conditions.
Script Inputs:
- Length (lnt): Sets the period for calculations (default: 21). It influences the sensitivity of the momentum and moving averages. Higher values will smooth the indicator further, while lower values increase sensitivity to price changes.
The Length does not change the formula of the DeNoised Price Data, it only affects the indicators calculated on it.
Indicator Components:
1. Momentum (Blue/Red Line):
- Calculated using the log of the percentage change over the specified period.
- Blue color indicates positive momentum; red indicates negative momentum.
2. Acceleration (Gray Columns):
- Measures the short-term rate of change in momentum, shown as semi-transparent gray columns.
3. Moving Averages:
- Normal MA (Purple): A standard simple moving average (SMA) based on the close price over the selected period.
- DeNoised MA (Gray): An SMA of the de-noised source, reducing the effect of market noise.
4. DeNoised Price Data:
- Represented as colored circles, with blue indicating that the Normal MA is above the DeNoised MA (bullish) and red indicating the opposite (bearish).
Usage Guide:
1. Trend Identification:
- Use the Momentum line to assess overall trend direction. Positive values indicate upward momentum, while negative values signal downward momentum.
- Compare the Normal and DeNoised MAs: when the Normal MA is above the DeNoised MA, it indicates a bullish trend, and vice versa for bearish trends.
2. Entry and Exit Signals:
- A change in the Momentum line's color from blue to red (or vice versa) may indicate potential entry or exit points.
- Observe the DeNoised Price Data circles for early signs of a trend reversal based on the interaction between the Normal and DeNoised MAs.
3. Volatility and Noise Reduction:
- By utilizing the DeNoised MA and de-noised price data, this indicator helps filter out minor fluctuations and focus on larger price movements, improving decision-making in volatile markets.
Range Tightening Indicator (RTI)The Range Tightening Indicator (RTI) quantifies price volatility relative to recent price action, helping traders identify low-volatility consolidations that often precede breakouts.
Range Tightening is calculated by measuring the range between each bar’s high and low prices over a chosen lookback period.
A 5-bar period is recommended for shorter-term momentum setups and a 15-bar period is recommended for swing trading. An option for a custom period is available to suit specific strategies. The default look back for custom is 50, ideal for longer term traders.
Other Key Features:
Dynamic Color Coding: The RTI line turns green when volatility doubles after a drop to or below 20, flagging significant volatility shifts commonly seen before breakouts.
Low-Volatility Dots: Orange dots appear on the RTI line when two or more consecutive bars show RTI values below 20, visually marking extended low-volatility periods.
Volatility Zones: Shaded zones provide quick context:
Zone 1 (0-5): Extremely tight volatility, shown in red.
Zone 2 (5-10): Low volatility, shown in light green.
Zone 3 (10-15): Moderate low volatility, shown in green.
The RTI indicator is ideal for traders looking to anticipate breakout conditions, with features that highlight consolidation phases, support momentum strategies, and help improve entry timing by focusing on shifts in volatility.
This indicator was inspired after Deepvue's RMV Indicator, but uses a different calculation. Results may vary.
Aggressor Volume ImbalanceAggressor volume imbalance represents the ratio between market aggressor buy volume (market buy orders) and market aggressor sell volume (market sell orders). This ratio enables traders to evaluate the interest of market aggressors and whether aggressive market activity favours the price's direction.
Analysing aggressor volume is critical in understanding market sentiment and aids in identifying shifts in momentum and potential exhaustion points in the market. When the aggressor buy volume significantly exceeds the sell volume, it typically indicates strong buying interest, driving prices higher if the offer-side liquidity cannot contain it, and vice versa.
How it Works
The imbalance ratio is calculated as follows, according to the selected session timeframe (see settings):
imbalance := ((buyVolumeAccumulator - sellVolumeAccumulator)
/ (buyVolumeAccumulator + sellVolumeAccumulator)) * 100
Aggressive Volume Imbalance uses lower timeframe historical data to calculate Historical Aggressor Volume Imbalances, while live data is used for live aggressor volume imbalances.
How to Use It
You can set the indicator to use any historical data timeframe you prefer. However, it is highly recommended to use lower timeframes (e.g., 1 second), as the lower the timeframe, the more granular the data.
The indicator resets to 0% whenever a new session timeframe begins (e.g., a new day) and calculates new values for the rest of the session. This can be configured in the settings.
Shadow Range IndexShadow Range Index (SRI) introduces a new concept to calculate momentum, shadow range.
What is range?
Traditionally, True Range (TR) is the current high minus the current low of each bar in the timeframe. This is often used successfully on its own in indicators, or as a moving average in ATR (Average True Range).
To calculate range, SRI uses an innovative calculation of current bar range that also considers the previous bar. It calculates the difference between its maximum upward and maximum downward values over the number of bars the user chooses (by adjusting ‘Range lookback’).
What is shadow range?
True Range (TR) uses elements in its calculation (the highs and lows of the bar) that are also visible on the chart bars. Shadow range does not, though.
SRI calculates shadow range in a similar formula to range, except that this time it works out the difference between the minimum upward and minimum downward movement. This movement is by its nature less than the maximums, hence a shadow of it. Although more subtle, shadow range is significant, because it is quantifiable, and goes in one direction or another.
Finally, SRI smoothes shadow range and plots it as a histogram, and also smoothes and plots range as a signal line. Useful up and down triangles show trend changes, which optionally colour the chart bars.
Here’s an example of a long trade setup:
In summary, Shadow Range Index identifies and traces maximum and minimum bar range movement both up and down, and plots them as centred oscillators. The dynamics between the two can provide insights into the chart's performance and future direction.
Credit to these authors, whose MA or filters form part of this script:
@balipour - Super Smoother MA
@cheatcountry - Hann window smoothing
@AlgoAlpha - Gaussian filter
FX DispersionThis script calculates the dispersion of a basket of 5 FX pairs and then calculates the z-score the z-score is then made into a composite using the 30 and 60 ema of the z-score to smooth any noise. It must be used on one of the FX pairs in the basket and on the 1-minute timeframe as it has been hardcoded for 1 min use below.
Interpretation - Dispersion is a component of volatility - the dispersion of the underlying basket increases above 0.5 and decreases below 0.5.
Although increased dispersion is beneficial to momentum and trend-following strategies on the monthly and weekly timeframes. Observe this on the 1-minute timeframe and how dispersion crossing above/ below 0.5 it can signal reversion or momentum for the next period.
TASC 2023.12 Growth and Value Switching System█ OVERVIEW
This script implements a rotation system for trading value and growth ETFs, as developed by Markos Katsanos and detailed in the article titled 'Growth Or Value?' in TASC's December 2023 edition of Traders' Tips . The purpose of this script is to demonstrate how short-term momentum can be employed to track market trends and provide clarity on when to switch between value and growth.
█ CONCEPTS
The central concept of the presented rotation strategy is based on the observation that the stock market undergoes cycles favoring either growth or value stocks. Consequently, the script introduces a momentum trading system that is designed to switch between value and growth equities based on prevailing market conditions. Specifically tailored for long-term index investors, the system focuses on trading Vanguard's value and growth ETFs ( VTV and VUG ) on a weekly timeframe.
To identify the ETF likely to outperform, the script uses a custom relative strength indicator applied to both VTV and VUG in comparison with an index ( SPY ). To minimize risk and drawdowns during bear markets, when both value and growth experience downtrends, the script employs the author's custom volume flow indicator (VFI) and blocks trades when its reading indicates money outflow . Positions are closed if the relative strength of the current open trade ETF falls below that of the other ETF for two consecutive weeks and is also below its moving average. Additionally, the script implements a stop-loss when the ETF is trading below its 40-week moving average, but only during bear markets.
The script plots the relative strengths of the value and growth equities along with the signals triggered by the aforementioned rules. Information about the current readings of the relative strength and volume flow indicators, along with the current open position, is displayed in a table.
█ CALCULATIONS
The script uses the request.security() function to gather price data for both equities and the reference index. Custom relative strength and volume flow indicators are calculated based on the formulas presented in the original article. By default, the script employs the same parameters for these indicators as proposed in the original article for VTV and VUG on a weekly timeframe.
Machine Learning Momentum Oscillator [ChartPrime]The Machine Learning Momentum Oscillator brings together the K-Nearest Neighbors (KNN) algorithm and the predictive strength of the Tactical Sector Indicator (TSI) Momentum. This unique oscillator not only uses the insights from TSI Momentum but also taps into the power of machine learning therefore being designed to give traders a more comprehensive view of market momentum.
At its core, the Machine Learning Momentum Oscillator blends TSI Momentum with the capabilities of the KNN algorithm. Introducing KNN logic allows for better handling of noise in the data set. The TSI Momentum is known for understanding how strong trends are and which direction they're headed, and now, with the added layer of machine learning, we're able to offer a deeper perspective on market trends. This is a fairly classical when it comes to visuals and trading.
Green bars show the trader when the asset is in an uptrend. On the flip side, red bars mean things are heading down, signaling a bearish movement driven by selling pressure. These color cues make it easier to catch the sentiment and direction of the market in a glance.
Yellow boxes are also displayed by the oscillator. These boxes highlight potential turning points or peaks. When the market comes close to these points, they can provide a heads-up about the possibility of changes in momentum or even a trend reversal, helping a trader make informed choices quickly. These can be looked at as possible reversal areas simply put.
Settings:
Users can adjust the number of neighbours in the KNN algorithm and choose the periods they prefer for analysis. This way, the tool becomes a part of a trader's strategy, adapting to different market conditions as they see fit. Users can also adjust the smoothing used by the oscillator via the smoothing input.
Support and Resistance Oscillator [CC]The Support and Resistance Oscillator is an experimental script I created to identify when the current price breaks a support or resistance line and reflect this value in an oscillator formula. This indicator uses a threshold to decide the dividing line between buying and selling points. Feel free to change the threshold or smoothing settings to see if you find anything better since this is so experimental. I'm double smoothing the difference between the indicator and its signal line to attempt to capture a combo of the price momentum combined with the general support and resistance levels. I have used dark colors for strong signals and lighter colors for normal signals and make sure to buy when the line turns green and sell when it turns red.
Let me know if there are any other scripts or indicators you would like to see me publish!
WillyCycle Oscillator&DoubleMa/ErkOzi/version 2This oscillator can be customized by adjusting the length of the Willy period, the length of Willy's EMA, and the upper and lower bands. The upper and lower bands help traders identify overbought and oversold conditions.
The WillyCycle Oscillator is a technical analysis tool used to measure the momentum of an asset and identify overbought and oversold conditions based on the price range of a specific period and calculating the percentage of the closing price in that range. The WillyCycle Oscillator consists of two main components: Willy and Willy's EMA. The Willy component is the percentage calculation of the asset's price range, and Willy's EMA is the exponential moving average of the Willy component. Willy's EMA is used to smooth out the Willy component and make it easier to identify trends.
*** When the oscillator is above the 80 level, it indicates that the asset is overbought, and when it is below the 20 level, it indicates that the asset is oversold. Traders can use these levels as a guide for buying and selling signals.
***Traders can also use the WillyCycle Oscillator to identify trend reversals. When the oscillator rises above the 50 level, it signals a potential uptrend, and when it falls below the 50 level, it signals a potential downtrend.
***I have added a smoothed line option to the WillyCycle Oscillator, which allows traders to see a more smoothed version of the oscillator. This option can be enabled by setting the 'smoothed' input to true. The default value for the smoothed line is 15.
***We have also changed the value range of the WillyCycle Oscillator from -100 to 100 to 0 to 100. This change was made to make the oscillator more user-friendly and easier to read.
In conclusion, the WillyCycle Oscillator is a versatile tool that can help traders identify potential trading opportunities and trend reversals. Traders can customize the oscillator to fit their trading style and preferences. Adding a smoothed line and changing the value range can enhance the user experience and make the oscillator easier to use.
Adaptive Fisherized ROCIntroduction
Hello community, here I applied the Inverse Fisher Transform, Ehlers dominant cycle determination and smoothing methods on a simple Rate of Change (ROC) indicator
You have a lot of options to adjust the indicator.
Usage
The rate of change is most often used to measure the change in a security's price over time.
That's why it is a momentum indicator.
When it is positive, prices are accelerating upward; when negative, downward.
It is useable on every timeframe and could be a potential filter for you your trading system.
IMO it could help you to confirm entries or find exits (e.g. you have a long open, roc goes negative, you exit).
If you use a trend-following strategy, you could maybe look out for red zones in an in uptrend or green zones in a downtrend to confirm your entry on a pullback.
Signals
ROC above 0 => confirms bullish trend
ROC below 0 => confirms bearish trend
ROC hovers near 0 => price is consolidating
Enjoy! 🚀






















