Momentum Candle ProjectionThis indicator projects future price momentum by calculating a directional vector from recent price movements. It uses a custom implementation of the atan2 function to create a vector average of the last N candles and visualizes this projection as a synthetic future candle.
🔍 What It Does:
✅ Tracks recent momentum using geometric vectors from price change.
✅ Projects a synthetic "momentum candle" one bar ahead, showing anticipated direction and magnitude.
✅ Optionally plots a secondary "future candle" based on a smoothed estimate of projected price vs. real current close.
⚙️ Settings:
Vector Lookback (bars): Controls how many bars are used to calculate the momentum vector.
Projection Length Multiplier: Adjusts how far forward the vector is projected based on its strength.
🟢 How To Use:
Use the lime/red projection candle to anticipate short-term directional bias.
Use the orange/maroon future candle to compare projected continuation vs. current closing price.
Spot early reversals, continuation zones, and momentum decay in real-time.
Cerca negli script per "momentum"
Momentum (80) + ATR (14)his indicator combines two essential technical analysis tools in a single panel for enhanced market insight:
🔹 Momentum (80 periods): Measures the difference between the current price and the price 80 bars ago. Displayed as a semi-transparent filled area, it helps to visually identify shifts in price momentum over a longer timeframe.
🔸 ATR (Average True Range, 14 periods): Shown as a fine orange line, the ATR represents average market volatility over 14 periods, highlighting phases of calm or increased price fluctuations.
By viewing both momentum and volatility simultaneously, traders can better assess trend strength and market conditions, improving decision-making across assets such as stocks, forex, and cryptocurrencies.
✅ Suitable for all asset types
✅ Complements other indicators like RSI, MACD, and Bollinger Bands
✅ Categorized under Momentum & Volatility indicators
Momentum Table - Felipe📊 Momentum Table – By Felipe
This multi-timeframe momentum dashboard displays a clean and color-coded overview of key trend and momentum indicators across 6 major timeframes (5m to 1W), directly on your chart. It’s ideal for quickly identifying market strength, trend alignment, and potential reversals at a glance.
🔍 Features:
EMA Trend Check (EMA 9, 20, 100, 200):
Compares the current close against each EMA.
✅ Green check = price is above the EMA (bullish bias).
🔻 Red arrow = price is below the EMA (bearish bias).
Visual trend alignment helps you spot strong directional setups.
RSI (Relative Strength Index):
Displays current RSI (14) value per timeframe.
Background color highlights momentum conditions:
🔴 Red = Overbought (>70)
🟢 Green = Oversold (<30)
⚪ Gray = Neutral
Stochastic RSI:
Uses Stoch RSI applied to RSI (14) for sensitivity.
Background color follows the same logic as RSI for quick visual cues.
Compact Visual Table:
Located in the bottom-right corner.
Clean design with headers and rows labeled by timeframe.
Helps traders monitor trend and momentum confluence across multiple timeframes in real time.
This tool supports momentum-based strategies, EMA stacking confirmation, and multi-timeframe alignment, making it ideal for scalpers, swing traders, and trend followers alike.
Momentum Zones [TradersPro]OVERVIEW
The Momentum Zones indicator is designed for momentum stock traders to provide a visible trend structure with actionable price levels. The indicator has been designed for high-growth, bullish stocks on a daily time frame but can be used on any chart and timeframe.
Momentum zones help traders focus on the momentum structure of price, enabling disciplined trading plans with specific entry, exit, and risk management levels.
It is built using CCI values, allowing for fixed trend range calculations. It is most effective when applied to screens of stocks with high RSI, year-to-date (YTD) price gains of 25% or higher, as well as stocks showing growth in both sales and earnings quarter-over-quarter and year-over-year.
CONCEPTS
The indicator defines and colors uptrends (green), downtrends (red), and trends in transition or pausing (yellow).
The indicator can be used for new trend entry or trend continuation entry. New trend entry can be done on the first green bar after a red bar. Trend continuation entries can be done with the first green bar after a yellow bar. The yellow transition zones can be used as price buffers for stop-loss management on new entries.
To see the color changes, users need to be sure to uncheck the candlestick color settings. This can be done by right-clicking the chart, going to Symbols, and unchecking the candle color body, border, and wick boxes.
Remember to check them if the indicator is turned off, or the candles will be blank with no color.
The settings also correspond to the screening function to get a list of stocks entering various momentum zones so you can have a prime list of the stocks meeting any other fundamental criteria you may desire. Traders can then use the indicator for the entry and risk structure of the trading plan.
Momentum Indicator [LeonidasCrypto]This indicator is the result of the combination of 3 indicators giving you a very powerful strategy.
Coppock Curve Indicator Summary
The Coppock Curve (CC) was introduced by economist Edwin Coppock in an October 1962 issue of Barron's
While useful, the indicator is not commonly discussed among traders and investors. Traditionally used to spot long-term trend changes in major stock indexes, traders can use the indicator for any time and in any market to isolate potential trend shifts and generate trade signals.
How to use it:
0 line is the key level Above 0 line the momentum is getting strong(bullish) below 0 line the momentum is weak(bearish)
Buy signal:
In combination with ADX, Volatility :
Wait for the curve color turning to Dark Purple(weak bearish momentum) and ADX slope in the opposite side of the trend
Sell Signal.
Wait for the curve color turning to Dark Blue (weak bull momentum) and ADX slope in the opposite side of the trend
Explosive Moves.
This indicator will help you to catch explosive moves :
Wait for the bar in the bottom of the indicator turned blue color low volatility. Enter in the next buy/sell signal following the rules I described above using this strategy you will catch in many cases very good move.
Divergences:
This indicator will help you to identify divergences
Combine the divergences generated by this indicator with the sell/bull signals to increase the probabilities for a good trade setup.
Momentum Performance This Indicator displays the momentum (performance) of the symbol in percent.
You can compare the performance with other symbols.
The default benchmarks are the S&P 500, the MSCI World and the FTSE All World EX US.
The default length corresponds to one year in the timeframes monthly, weekly and daily.
In intraday the default length is 200, but you can also set your own setting.
You have also the opportunity to display a average momentum performance of the main symbol.
Momentum Indicator avg short return minus avg long returnAverage daily return over the period 2-12 months ago minus the average daily return over the period 1-5 years ago
=> a higher return 2-12 months ago indicates a higher return in coming months according to research, because of the momentum risk factor premium
=> a higher return 1-5 years ago indicates a lower return in coming months according to research, because of the momentum risk factor premium
Momentum Strategy [MA Crossover + Squeeze Release + Alerts]This is a Strategy with associated visual indicators and Buy/Sell/Close Alerts for the Squeeze Momentum Indicator .
Development Notes
-------------------------
This is a fork of LazyBear's Squeeze Momentum Indicator histogram with an added moving average crossover for multiple trade signal confirmation. Functionality for Multi-Timeframe Resolution was also enabled and code was updated for PineScript v4 compatibility.
Strategy Description
-------------------------
Enter trade when the active crossover period (identified by background crossover indicator/zone) correlates with a squeeze release (black to gray cross along midline). BUY Long if momentum in uptrend or SELL Short if in downtrend. Close trade when momentum reverses.
Alerts configured for entering Long/Short position and to Close order.
Designed to have only one open long or short position at a time (no pyramiding) with an associated close order for each.
Indicator Visuals
--------------------
Crossover zone background (green or red) based on last crossover direction (only buy orders are triggered in a buy zone and sell orders in a sell zone)
Moving average crossover line matches trend (buy upwards on green and sell downwards on red)
Buy (green circle) and Sell (red circle) signals at the point of crossover
Buy (green cross) and Sell (red cross) signals at squeeze release on the midline
Long (green arrow) and Short (red arrow) order label when every indicator is triggered together
Close (purple arrow) and label when either trend or crossover zone changes
Recommend backtesting with the resolution set to current timeframe to avoid repainting; no other known repainting. There is a current bug or flaw in the script where all the Close and some of the Long and Short orders are not executed by the strategy (this doesn't affect the visual indicators, only the strategy).
Note that the provided backtest result is based on a position sizing of 10% equity with 100k initial capital. The 15-minute timeframe performed the best, with the 30-minute a close second, and 5/45-minute tied for third. Profit/loss went into the red when expanding out to 2-hours or beyond. I suspect this could be improved upon if you follow the Alerts on the oscillator versus rely solely on the strategy (due to the aforementioned issue with all entry and exit positions not being depicted).
Disclaimer
Past performance may not be indicative of future results. Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting. This post and the script are not intended to provide any financial advice.
Script is currently protected (due to the extensive development in the strategy) to prevent the source from being copied and sold.
Momentum Acceleration by DGTItalian physicist Galileo Galilei is usually credited with being the first to measure speed by considering the distance covered and the time it takes. Galileo defined speed as the distance covered during a period of time. In equation form, that is v = Δd / Δt where v is speed, Δd is change in distance, and Δt is change in time. The Greek symbol for delta, a triangle (Δ), means change.
Is the speed getting faster or slower?
Acceleration will be the answer, acceleration is defined as the rate of change of speed over a set period of time, meaning something is getting faster or slower. Mathematically expressed, acceleration denoted as a is a = Δv / Δt , where Δv is the change in speed and Δt is the change in time.
How to apply in trading
Lets think about Momentum, Rate of Return, Rate of Change all are calculated in almost same approach with Speed
Momentum measures change in price over a specified time period,
Rate of Change measures percent change in price over a specified time period,
Rate of Return measures the net gain or loss over a specified time period,
And Speed measures change in distance over a specified time period
So we may state that measuring the change in distance is also measuring the change in price over a specified time period which is length, hence
speed can be calculated as (source – source )/length and acceleration becomes (speed – speed )/length
In this study acceleration is used as signal line and result plotted as arrows demonstrating bull or bear direction where direction changes can be considered as trading setups
Just a little fun, since we deal with speed the short name of the study is named after famous cartoon character Speedy Gonzales
Trading success is all about following your trading strategy and the indicators should fit within your trading strategy, and not to be traded upon solely
Disclaimer: The script is for informational and educational purposes only. Use of the script does not constitutes professional and/or financial advice. You alone the sole responsibility of evaluating the script output and risks associated with the use of the script. In exchange for using the script, you agree not to hold dgtrd TradingView user liable for any possible claim for damages arising from any decision you make based on use of the script
Momentum heatmap @CosmonautCExplanation:
14 different indicators 4 public ones (RSI, StochRSI, CCI and Wavetrend oscillator) the rest are custom private ones of preexisting momentum indicators or completely custom ones created by me.
To determine green-red color the indicators are assesed on 7 different metrics and then given a score of 1-100 based on the current state of those 7 metrics. The length input is universal meaning all indicators and metrics will be affected by it. Source input is only for indicators.
It might take a bit to load as the code is all in all around 600 lines and due to a large amount of custom functions and if statements
Usage:
darker green = buy
Darker red = sell
light green= approaching good buy opportunity/buy opportunity in shaky markets
Light red = same as light green but for sells
gray/almost no color = undecided/turning point
Enjoy!
Momentum Oscillator Momentum Oscillator
Concept for this leading indicator presented in IFTA by By M.Fawzy.
Momentum Linear RegressionThe original script was posted on ProRealCode by user Nicolas.
This is an indicator made of the linear regression applied to the rate of change of price (or momentum). I made a simple signal line just by duplicating the first one within a period decay in the past, to make those 2 lines cross. You can add more periods decay to made signal smoother with less false entry.
MomentumIndicatorsLibrary "MomentumIndicators"
This is a library of 'Momentum Indicators', also denominated as oscillators.
The purpose of this library is to organize momentum indicators in just one place, making it easy to access.
In addition, it aims to allow customized versions, not being restricted to just the price value.
An example of this use case is the popular Stochastic RSI.
# Indicators:
1. Relative Strength Index (RSI):
Measures the relative strength of recent price gains to recent price losses of an asset.
2. Rate of Change (ROC):
Measures the percentage change in price of an asset over a specified time period.
3. Stochastic Oscillator (Stoch):
Compares the current price of an asset to its price range over a specified time period.
4. True Strength Index (TSI):
Measures the price change, calculating the ratio of the price change (positive or negative) in relation to the
absolute price change.
The values of both are smoothed twice to reduce noise, and the final result is normalized
in a range between 100 and -100.
5. Stochastic Momentum Index (SMI):
Combination of the True Strength Index with a signal line to help identify turning points in the market.
6. Williams Percent Range (Williams %R):
Compares the current price of an asset to its highest high and lowest low over a specified time period.
7. Commodity Channel Index (CCI):
Measures the relationship between an asset's current price and its moving average.
8. Ultimate Oscillator (UO):
Combines three different time periods to help identify possible reversal points.
9. Moving Average Convergence/Divergence (MACD):
Shows the difference between short-term and long-term exponential moving averages.
10. Fisher Transform (FT):
Normalize prices into a Gaussian normal distribution.
11. Inverse Fisher Transform (IFT):
Transform the values of the Fisher Transform into a smaller and more easily interpretable scale is through the
application of an inverse transformation to the hyperbolic tangent function.
This transformation takes the values of the FT, which range from -infinity to +infinity, to a scale limited
between -1 and +1, allowing them to be more easily visualized and compared.
12. Premier Stochastic Oscillator (PSO):
Normalizes the standard stochastic oscillator by applying a five-period double exponential smoothing average of
the %K value, resulting in a symmetric scale of 1 to -1
# Indicators of indicators:
## Stochastic:
1. Stochastic of RSI (Relative Strengh Index)
2. Stochastic of ROC (Rate of Change)
3. Stochastic of UO (Ultimate Oscillator)
4. Stochastic of TSI (True Strengh Index)
5. Stochastic of Williams R%
6. Stochastic of CCI (Commodity Channel Index).
7. Stochastic of MACD (Moving Average Convergence/Divergence)
8. Stochastic of FT (Fisher Transform)
9. Stochastic of Volume
10. Stochastic of MFI (Money Flow Index)
11. Stochastic of On OBV (Balance Volume)
12. Stochastic of PVI (Positive Volume Index)
13. Stochastic of NVI (Negative Volume Index)
14. Stochastic of PVT (Price-Volume Trend)
15. Stochastic of VO (Volume Oscillator)
16. Stochastic of VROC (Volume Rate of Change)
## Inverse Fisher Transform:
1.Inverse Fisher Transform on RSI (Relative Strengh Index)
2.Inverse Fisher Transform on ROC (Rate of Change)
3.Inverse Fisher Transform on UO (Ultimate Oscillator)
4.Inverse Fisher Transform on Stochastic
5.Inverse Fisher Transform on TSI (True Strength Index)
6.Inverse Fisher Transform on CCI (Commodity Channel Index)
7.Inverse Fisher Transform on Fisher Transform (FT)
8.Inverse Fisher Transform on MACD (Moving Average Convergence/Divergence)
9.Inverse Fisher Transfor on Williams R% (Williams Percent Range)
10.Inverse Fisher Transfor on CMF (Chaikin Money Flow)
11.Inverse Fisher Transform on VO (Volume Oscillator)
12.Inverse Fisher Transform on VROC (Volume Rate of Change)
## Stochastic Momentum Index:
1.Stochastic Momentum Index of RSI (Relative Strength Index)
2.Stochastic Momentum Index of ROC (Rate of Change)
3.Stochastic Momentum Index of VROC (Volume Rate of Change)
4.Stochastic Momentum Index of Williams R% (Williams Percent Range)
5.Stochastic Momentum Index of FT (Fisher Transform)
6.Stochastic Momentum Index of CCI (Commodity Channel Index)
7.Stochastic Momentum Index of UO (Ultimate Oscillator)
8.Stochastic Momentum Index of MACD (Moving Average Convergence/Divergence)
9.Stochastic Momentum Index of Volume
10.Stochastic Momentum Index of MFI (Money Flow Index)
11.Stochastic Momentum Index of CMF (Chaikin Money Flow)
12.Stochastic Momentum Index of On Balance Volume (OBV)
13.Stochastic Momentum Index of Price-Volume Trend (PVT)
14.Stochastic Momentum Index of Volume Oscillator (VO)
15.Stochastic Momentum Index of Positive Volume Index (PVI)
16.Stochastic Momentum Index of Negative Volume Index (NVI)
## Relative Strength Index:
1. RSI for Volume
2. RSI for Moving Average
rsi(source, length)
RSI (Relative Strengh Index). Measures the relative strength of recent price gains to recent price losses of an asset.
Parameters:
source : (float) Source of series (close, high, low, etc.)
length : (int) Period of loopback
Returns: (float) Series of RSI
roc(source, length)
ROC (Rate of Change). Measures the percentage change in price of an asset over a specified time period.
Parameters:
source : (float) Source of series (close, high, low, etc.)
length : (int) Period of loopback
Returns: (float) Series of ROC
stoch(kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Stochastic Oscillator. Compares the current price of an asset to its price range over a specified time period.
Parameters:
kLength
kSmoothing : (int) Period for smoothig stochastic
dSmoothing : (int) Period for signal (moving average of stochastic)
maTypeK : (int) Type of Moving Average for Stochastic Oscillator
maTypeD : (int) Type of Moving Average for Stochastic Oscillator Signal
almaOffsetKD : (float) Offset for Arnaud Legoux Moving Average for Oscillator and Signal
almaSigmaKD : (float) Sigma for Arnaud Legoux Moving Average for Oscillator and Signal
lsmaOffSetKD : (int) Offset for Least Squares Moving Average for Oscillator and Signal
Returns: A tuple of Stochastic Oscillator and Moving Average of Stochastic Oscillator
stoch(source, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Stochastic Oscillator. Customized source. Compares the current price of an asset to its price range over a specified time period.
Parameters:
source : (float) Source of series (close, high, low, etc.)
kLength : (int) Period of loopback to calculate the stochastic
kSmoothing : (int) Period for smoothig stochastic
dSmoothing : (int) Period for signal (moving average of stochastic)
maTypeK : (int) Type of Moving Average for Stochastic Oscillator
maTypeD : (int) Type of Moving Average for Stochastic Oscillator Signal
almaOffsetKD : (float) Offset for Arnaud Legoux Moving Average for Stoch and Signal
almaSigmaKD : (float) Sigma for Arnaud Legoux Moving Average for Stoch and Signal
lsmaOffSetKD : (int) Offset for Least Squares Moving Average for Stoch and Signal
Returns: A tuple of Stochastic Oscillator and Moving Average of Stochastic Oscillator
tsi(source, shortLength, longLength, maType, almaOffset, almaSigma, lsmaOffSet)
TSI (True Strengh Index). Measures the price change, calculating the ratio of the price change (positive or negative) in relation to the absolute price change.
The values of both are smoothed twice to reduce noise, and the final result is normalized in a range between 100 and -100.
Parameters:
source : (float) Source of series (close, high, low, etc.)
shortLength : (int) Short length
longLength : (int) Long length
maType : (int) Type of Moving Average for TSI
almaOffset : (float) Offset for Arnaud Legoux Moving Average
almaSigma : (float) Sigma for Arnaud Legoux Moving Average
lsmaOffSet : (int) Offset for Least Squares Moving Average
Returns: (float) TSI
smi(sourceTSI, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
SMI (Stochastic Momentum Index). A TSI (True Strengh Index) plus a signal line.
Parameters:
sourceTSI : (float) Source of series for TSI (close, high, low, etc.)
shortLengthTSI : (int) Short length for TSI
longLengthTSI : (int) Long length for TSI
maTypeTSI : (int) Type of Moving Average for Signal of TSI
almaOffsetTSI : (float) Offset for Arnaud Legoux Moving Average
almaSigmaTSI : (float) Sigma for Arnaud Legoux Moving Average
lsmaOffSetTSI : (int) Offset for Least Squares Moving Average
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
Returns: A tuple with TSI, signal of TSI and histogram of difference
wpr(source, length)
Williams R% (Williams Percent Range). Compares the current price of an asset to its highest high and lowest low over a specified time period.
Parameters:
source : (float) Source of series (close, high, low, etc.)
length : (int) Period of loopback
Returns: (float) Series of Williams R%
cci(source, length, maType, almaOffset, almaSigma, lsmaOffSet)
CCI (Commodity Channel Index). Measures the relationship between an asset's current price and its moving average.
Parameters:
source : (float) Source of series (close, high, low, etc.)
length : (int) Period of loopback
maType : (int) Type of Moving Average
almaOffset : (float) Offset for Arnaud Legoux Moving Average
almaSigma : (float) Sigma for Arnaud Legoux Moving Average
lsmaOffSet : (int) Offset for Least Squares Moving Average
Returns: (float) Series of CCI
ultimateOscillator(fastLength, middleLength, slowLength)
UO (Ultimate Oscilator). Combines three different time periods to help identify possible reversal points.
Parameters:
fastLength : (int) Fast period of loopback
middleLength : (int) Middle period of loopback
slowLength : (int) Slow period of loopback
Returns: (float) Series of Ultimate Oscilator
ultimateOscillator(source, fastLength, middleLength, slowLength)
UO (Ultimate Oscilator). Customized source. Combines three different time periods to help identify possible reversal points.
Parameters:
source : (float) Source of series (close, high, low, etc.)
fastLength : (int) Fast period of loopback
middleLength : (int) Middle period of loopback
slowLength : (int) Slow period of loopback
Returns: (float) Series of Ultimate Oscilator
macd(source, fastLength, slowLength, signalLength, maTypeFast, maTypeSlow, maTypeMACD, almaOffset, almaSigma, lsmaOffSet)
MACD (Moving Average Convergence/Divergence). Shows the difference between short-term and long-term exponential moving averages.
Parameters:
source : (float) Source of series (close, high, low, etc.)
fastLength : (int) Period for fast moving average
slowLength : (int) Period for slow moving average
signalLength : (int) Signal length
maTypeFast : (int) Type of fast moving average
maTypeSlow : (int) Type of slow moving average
maTypeMACD : (int) Type of MACD moving average
almaOffset : (float) Offset for Arnaud Legoux Moving Average
almaSigma : (float) Sigma for Arnaud Legoux Moving Average
lsmaOffSet : (int) Offset for Least Squares Moving Average
Returns: A tuple with MACD, Signal, and Histgram
fisher(length)
Fisher Transform. Normalize prices into a Gaussian normal distribution.
Parameters:
length
Returns: A tuple with Fisher Transform and signal
fisher(source, length)
Fisher Transform. Customized source. Normalize prices into a Gaussian normal distribution.
Parameters:
source : (float) Source of series (close, high, low, etc.)
length
Returns: A tuple with Fisher Transform and signal
inverseFisher(source, length, subtrahend, denominator)
Inverse Fisher Transform.
Transform the values of the Fisher Transform into a smaller and more easily interpretable scale is
through the application of an inverse transformation to the hyperbolic tangent function.
This transformation takes the values of the FT, which range from -infinity to +infinity,
to a scale limited between -1 and +1, allowing them to be more easily visualized and compared.
Parameters:
source : (float) Source of series (close, high, low, etc.)
length : (int) Period for loopback
subtrahend : (int) Denominator. Useful in unbounded indicators. For example, in CCI.
denominator
Returns: (float) Series of Inverse Fisher Transform
premierStoch(length, smoothlen)
Premier Stochastic Oscillator (PSO).
Normalizes the standard stochastic oscillator by applying a five-period double exponential smoothing
average of the %K value, resulting in a symmetric scale of 1 to -1.
Parameters:
length : (int) Period for loopback
smoothlen : (int) Period for smoothing
Returns: (float) Series of PSO
premierStoch(source, smoothlen, subtrahend, denominator)
Premier Stochastic Oscillator (PSO) of custom source.
Normalizes the source by applying a five-period double exponential smoothing average.
Parameters:
source : (float) Source of series (close, high, low, etc.)
smoothlen : (int) Period for smoothing
subtrahend : (int) Denominator. Useful in unbounded indicators. For example, in CCI.
denominator
Returns: (float) Series of PSO
stochRsi(sourceRSI, lengthRSI, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
sourceRSI
lengthRSI
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochRoc(sourceROC, lengthROC, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
sourceROC
lengthROC
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochUO(fastLength, middleLength, slowLength, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
fastLength
middleLength
slowLength
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochTSI(source, shortLength, longLength, maType, almaOffset, almaSigma, lsmaOffSet, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
shortLength
longLength
maType
almaOffset
almaSigma
lsmaOffSet
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochWPR(source, length, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
length
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochCCI(source, length, maType, almaOffset, almaSigma, lsmaOffSet, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
length
maType
almaOffset
almaSigma
lsmaOffSet
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochMACD(source, fastLength, slowLength, signalLength, maTypeFast, maTypeSlow, maTypeMACD, almaOffset, almaSigma, lsmaOffSet, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
fastLength
slowLength
signalLength
maTypeFast
maTypeSlow
maTypeMACD
almaOffset
almaSigma
lsmaOffSet
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochFT(length, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
length
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochVolume(kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochMFI(source, length, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
length
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochOBV(source, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochPVI(source, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochNVI(source, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochPVT(source, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochVO(shortLen, longLen, maType, almaOffset, almaSigma, lsmaOffSet, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
shortLen
longLen
maType
almaOffset
almaSigma
lsmaOffSet
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochVROC(length, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
length
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
iftRSI(sourceRSI, lengthRSI, lengthIFT)
Parameters:
sourceRSI
lengthRSI
lengthIFT
iftROC(sourceROC, lengthROC, lengthIFT)
Parameters:
sourceROC
lengthROC
lengthIFT
iftUO(fastLength, middleLength, slowLength, lengthIFT)
Parameters:
fastLength
middleLength
slowLength
lengthIFT
iftStoch(kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD, lengthIFT)
Parameters:
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
lengthIFT
iftTSI(source, shortLength, longLength, maType, almaOffset, almaSigma, lsmaOffSet, lengthIFT)
Parameters:
source
shortLength
longLength
maType
almaOffset
almaSigma
lsmaOffSet
lengthIFT
iftCCI(source, length, maType, almaOffset, almaSigma, lsmaOffSet, lengthIFT)
Parameters:
source
length
maType
almaOffset
almaSigma
lsmaOffSet
lengthIFT
iftFisher(length, lengthIFT)
Parameters:
length
lengthIFT
iftMACD(source, fastLength, slowLength, signalLength, maTypeFast, maTypeSlow, maTypeMACD, almaOffset, almaSigma, lsmaOffSet, lengthIFT)
Parameters:
source
fastLength
slowLength
signalLength
maTypeFast
maTypeSlow
maTypeMACD
almaOffset
almaSigma
lsmaOffSet
lengthIFT
iftWPR(source, length, lengthIFT)
Parameters:
source
length
lengthIFT
iftMFI(source, length, lengthIFT)
Parameters:
source
length
lengthIFT
iftCMF(length, lengthIFT)
Parameters:
length
lengthIFT
iftVO(shortLen, longLen, maType, almaOffset, almaSigma, lsmaOffSet, lengthIFT)
Parameters:
shortLen
longLen
maType
almaOffset
almaSigma
lsmaOffSet
lengthIFT
iftVROC(length, lengthIFT)
Parameters:
length
lengthIFT
smiRSI(source, length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiROC(source, length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiVROC(length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiWPR(source, length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiFT(length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiFT(source, length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiCCI(source, length, maTypeCCI, almaOffsetCCI, almaSigmaCCI, lsmaOffSetCCI, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
length
maTypeCCI
almaOffsetCCI
almaSigmaCCI
lsmaOffSetCCI
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiUO(fastLength, middleLength, slowLength, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
fastLength
middleLength
slowLength
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiMACD(source, fastLength, slowLength, signalLength, maTypeFast, maTypeSlow, maTypeMACD, almaOffset, almaSigma, lsmaOffSet, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
fastLength
slowLength
signalLength
maTypeFast
maTypeSlow
maTypeMACD
almaOffset
almaSigma
lsmaOffSet
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiVol(shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiMFI(source, length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiCMF(length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiOBV(source, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiPVT(source, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiVO(shortLen, longLen, maType, almaOffset, almaSigma, lsmaOffSet, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
shortLen
longLen
maType
almaOffset
almaSigma
lsmaOffSet
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiPVI(source, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiNVI(source, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
rsiVolume(length)
Parameters:
length
rsiMA(sourceMA, lengthMA, maType, almaOffset, almaSigma, lsmaOffSet, lengthRSI)
Parameters:
sourceMA
lengthMA
maType
almaOffset
almaSigma
lsmaOffSet
lengthRSI
Median Momentum with Buy/Sell Signals and Bar ColorMomentum Calculation:
Momentum is calculated as the difference between the current close price and the close price momentum_length periods ago: momentum = close - close .
Highest and Lowest Momentum:
The highest and lowest momentum values over the specified length are calculated.
Median Momentum:
The median momentum is calculated as the average of the highest and lowest momentum values.
Color Setting:
medianColor is set based on whether the momentum is above, below, or equal to the median momentum.
barColor is set similarly for bar coloring.
Plotting:
The script plots the median momentum and the actual momentum values.
Buy and sell signals are generated when momentum crosses over or under the median momentum.
The script also plots the buy and sell signals with arrows on the chart.
MomentumLibrary "Momentum"
Contains utilities varying algorithms for measuring momentum.
simple(fast, slow, src, fastType, slowType) Derives momentum from two moving averages of different lengths.
Parameters:
fast : The length of the fast moving average.
slow : The length of the slow moving average.
src : The series to measure from. Default is 'close'.
fastType : The type of moving average the fast should use. Values allowed are: SMA, EMA, WMA, VWMA and VAWMA.
slowType : The type of moving average the slow should use. Values allowed are: SMA, EMA, WMA, VWMA and VAWMA.
stochRSI(fast, fast, rsiLen, stochLen, src, kmode) Returns the K and D values of a Stochastic RSI. Allows for different moving averages to produce the K value.
Parameters:
fast : The length to average the stochastic.
fast : The length to smooth out K and produce D.
rsiLen : The length of the RSI.
stochLen : The length of stochastic.
src : The series to measure from. Default is 'close'.
kmode : The type of moving average to generate. Values allowed are: SMA, EMA, WMA, VWMA and VAWMA.
Returns:
macd(fast, slow, signal, src, fastType, slowType, slowType) Same as well-known MACD formula but allows for different moving averages types to be used.
Parameters:
fast : The length of the fast moving average.
slow : The length of the slow moving average.
signal : The length of average to applied to smooth out the signal.
src : The series to measure from. Default is 'close'.
fastType : The type of moving average the fast should use. Values allowed are: SMA, EMA, WMA, VWMA and VAWMA.
slowType : The type of moving average the slow should use. Values allowed are: SMA, EMA, WMA, VWMA and VAWMA.
slowType : The type of moving average the signal should use. Values allowed are: SMA, EMA, WMA, VWMA and VAWMA.
Returns:
GRJMOM - Risk-Adjusted MomentumGRJMOM – Risk-Adjusted Momentum
GRJMOM stands for Generalized Risk-Adjusted Momentum. This indicator adjusts traditional momentum by dividing it by realized volatility over the same formation period. The result is a cleaner, more risk-sensitive momentum signal designed to avoid momentum crashes and volatility-driven false breakouts.
How it works:
Calculates raw momentum: Close - Close
Computes realized volatility using standard deviation of log returns
Outputs a risk-adjusted momentum score (Momentum / Volatility)
Optional smoothing can be applied to reduce short-term noise
Background coloring highlights bullish (green) and bearish (red) regimes
Use Cases:
GRJMOM > 0 suggests a bullish risk-adjusted trend
GRJMOM < 0 indicates a weakening or bearish trend
Can be used as a trend confirmation filter
Pairs well with cycle indicators like HHT or FFT for timing
Best for:
Swing traders, trend followers, and systematic strategy builders looking for smarter momentum signals with built-in risk awareness
Adaptive Z-Momentum (AZM) [Blk0ut]Adaptive Z-Momentum (AZM) is a momentum indicator that expresses the normalized deviation of price from a dynamic anchor (VWAP or EMA) in standard-score (z-score) terms, with adaptive “extreme” thresholds, trend sensitivity, and optional regime filtering. The line color, background shading, and labels help you visually discern when momentum is mild, building, or overextended.
---
## Features & Concept
* Computes **z = (price – anchor) / σ**, where the anchor is either Session VWAP (intraday) or EMA (non-intraday).
* Uses exponential moving averages (EWMA) to adaptively estimate the running mean and variance, making the indicator responsive to regime changes.
* Defines an **adaptive extreme threshold** (±z threshold) based on the chosen percentile of |z| over a lookback window (e.g. 90th percentile) — dynamically adjusting to volatility environment.
* Colors the main z-line **differently when inside vs. outside the extreme thresholds**, giving immediate visual feedback.
* Optionally shades the background when momentum is over the extremes (bullish or bearish).
* Supports a **self-tuning mode** (ADX-aware) that tightens or relaxes lookback/smoothing in strong trend vs. chop regimes.
* Regime filtering options (EMA slope or ADX threshold) let you filter signals in trend vs. non-trend markets.
* Plots Δz (the change in z) in various styles to help detect acceleration or deceleration in momentum.
* Adds optional thrust/fade labels to highlight when z crosses ±extreme zones, or when momentum stalls.
---
## How to Use
* Look for **z crossing** above zero (bullish momentum) or below zero (bearish momentum).
* When **z enters the extreme band**, it suggests strong momentum; when it exits, that may indicate exhaustion or reversal.
* Watch **Δz** (momentum acceleration) for clues of weakening or strengthening momentum before z itself reacts.
* Use the **regime filter** to enforce that signals only count in favorable directional markets.
* Customize inputs: lookback window, smoothing length, extreme percentile, ADX/auto settings, colors, etc., to match your trading style and timeframe.
*Use VWAP as the anchor on intraday/session charts — because it resets each session, it highlights deviations from session “fair value” and captures volume-flow bias.
*Use EMA on swing or multi-day charts — it doesn’t reset, so it preserves trend structure and gives a smoother momentum baseline across sessions.
*In trending markets, EMA tends to deliver more reliable momentum extremes; in range or mean-reversion regimes, VWAP often gives more intuitive reversal zones.
---
## Limitations & Disclaimers
* Like all indicators, AZM is **lagging** (though adaptive) and should not be used as a standalone entry/exit trigger — always combine with price action, structure, or confirmation.
* The extreme thresholds are **percentile-based**, meaning in very quiet or very noisy periods, “extreme” may shift rapidly; use your eyes alongside the indicator.
* Because the script uses historical data and smoothing, earlier bars may differ from real-time behavior.
* Past behavior is no guarantee of future performance. Use proper risk management and test ideas on historical data before trading live.
---
## Inputs & Customization
* **Anchor** mode: Session VWAP (intraday) or EMA
* **Lookback window** and **smoothing EMA** for computing z
* **Extreme percentile** (e.g. 90) to define ±z thresholds
* **Auto / ADX-based tuning** to allow dynamic parameter changes in trending vs chop markets
* **Regime filter** (EMA slope or ADX) to restrict signals to trending conditions
* **Color settings** for inside vs outside extremes, background shading, zero line, Δz style, labels, etc.
* **Show/hide labels**, choose Δz style (columns, histogram, line, etc.)
---
## Why It’s Useful
By combining standard-score normalization with adaptive thresholds and regime sensitivity, AZM helps you see **relative momentum extremes** in a way that adjusts to market regime shifts. The dual visual cues (line color + background) reduce ambiguity at a glance.
---
Triple EMA Momentum Oscillator (TEMO) HistogramThis Pine Script code replicates the Python indicator you provided, calculating the Triple EMA Momentum Oscillator (TEMO) and generating signals based on its value and momentum.
Explanation of the Code:
User Inputs:
Allows you to adjust the periods for the short, mid, and long EMAs.
Calculate EMAs:
Computes the Exponential Moving Averages for the specified periods.
Calculate EMA Spreads (Distances):
Finds the differences between the EMAs to understand the spread between them.
Calculate Spread Velocities:
Determines the change in spreads from the previous period, indicating momentum.
Composite Strength Score:
Weighted calculation of the spreads normalized by the EMA values.
Velocity Accelerator:
Weighted calculation of the velocities normalized by the EMA values.
Final TEMO Oscillator:
Combines the spread strength and velocity accelerator to create the TEMO.
Generate Signals:
Signals are generated when TEMO is positive and increasing (buy), or negative and decreasing (sell).
Plotting:
Zero Line: Helps visualize when TEMO crosses from positive to negative.
TEMO Oscillator: Plotted with green for positive values and red for negative values.
Signals: Displayed as a histogram to indicate buy (1) and sell (-1) signals.
Usage:
Buy Signal: When TEMO is above zero and increasing.
Sell Signal: When TEMO is below zero and decreasing.
Note: This oscillator helps identify momentum changes based on EMAs of different periods. It's useful for detecting trends and potential reversal points in the market.
Fat Tony's Composite Momentum Histogram (v01)# Fat Tony's Composite Momentum Histogram
## What It Does
This indicator combines four momentum oscillators into a single composite signal that ranges approximately from -100 to +100. It identifies potential overbought and oversold conditions while weighting signals by volume activity to filter out weak moves.
The histogram shows momentum strength with color-coded bars:
- **Red bars** indicate extreme overbought conditions (above +100)
- **Green bars** indicate extreme oversold conditions (below -100)
- **Blue bars** show positive momentum in normal range
- **Orange bars** show negative momentum in normal range
## Core Components
The indicator blends these four momentum measures:
1. **Williams %R** - Measures where price closed relative to the high-low range
2. **Stochastic %K** - Compares closing price to the recent price range
3. **MACD Histogram** - Shows momentum changes via moving average convergence/divergence
4. **ROC (Rate of Change)** - Measures percentage price change, normalized by volatility
Each component is scaled to a -50 to +50 range, then averaged together. The MACD component uses adaptive scaling based on its historical volatility to remain relevant across different market conditions.
## Volume Weighting
The indicator amplifies signals when volume is elevated and dampens them when volume is low. It uses a logarithmic scaling approach to smooth extreme volume spikes. There's also a minimum volume filter that prevents signals from triggering during very low-volume periods.
## Settings Explained
**Momentum Settings:**
- **Length (14)** - Lookback period for Williams %R and Stochastic calculations
- **MACD Fast/Slow/Signal (12/26/9)** - Standard MACD parameters
- **ROC Length (10)** - Lookback for rate of change calculation
- **MACD StDev Length (200)** - Historical window for normalizing MACD values
**Levels:**
- **Overbought Level (+100)** - Threshold for extreme upside momentum
- **Oversold Level (-100)** - Threshold for extreme downside momentum
**Volume Settings:**
- **Enable Volume Weighting** - Toggle volume amplification on/off
- **Volume Sensitivity (1.5)** - Controls how much volume impacts the signal (higher = stronger impact)
- **Min Avg Volume (50,000)** - Filters out signals when 5-bar average volume is too low
**Components:**
- **Include ROC Component** - Toggle to add/remove ROC from the calculation
- **Enable Trend Filter** - Only allows signals aligned with the 200-period EMA trend
- **Show Component Plots** - Displays individual oscillator values for tuning purposes
## Trading Signals
**Entry Signals:**
- **Long (green triangle)** - Composite crosses above the oversold level with adequate volume
- **Short (red triangle)** - Composite crosses below the overbought level with adequate volume
**Exit Signals (when trend filter enabled):**
- **Long Exit** - Composite crosses below zero from positive territory
- **Short Exit** - Composite crosses above zero from negative territory
The indicator also provides alert conditions for automated notifications on these signal events.
Clenow MomentumClenow Momentum Method
The Clenow Momentum Method, developed by Andreas Clenow, is a systematic, quantitative trading strategy focused on capturing medium- to long-term price trends in financial markets. Popularized through Clenow’s book, Stocks on the Move: Beating the Market with Hedge Fund Momentum Strategies, the method leverages momentum—an empirically observed phenomenon where assets that have performed well in the recent past tend to continue performing well in the near future.
Theoretical Foundation
Momentum investing is grounded in behavioral finance and market inefficiencies. Investors often exhibit herding behavior, underreact to new information, or chase trends, causing prices to trend beyond fundamental values. Clenow’s method builds on academic research, such as Jegadeesh and Titman (1993), which demonstrated that stocks with high returns over 3–12 months outperform those with low returns over similar periods.
Clenow’s approach specifically uses **annualized momentum**, calculated as the rate of return over a lookback period (typically 90 days), annualized to reflect a yearly percentage. The formula is:
Momentum=(((Close N periods agoCurrent Close)^N252)−1)×100
- Current Close: The most recent closing price.
- Close N periods ago: The closing price N periods back (e.g., 90 days).
- N: Lookback period (commonly 90 days).
- 252: Approximate trading days in a year for annualization.
This metric ranks stocks by their momentum, prioritizing those with the strongest upward trends. Clenow’s method also incorporates risk management, diversification, and volatility adjustments to enhance robustness.
Methodology
The Clenow Momentum Method involves the following steps:
1. Universe Selection:
- A broad universe of liquid stocks is chosen, often from major indices (e.g., S&P 500, Nasdaq 100) or global exchanges.
- Filters should exclude illiquid stocks (e.g., low average daily volume) or those with extreme volatility.
2. Momentum Calculation:
- Stocks are ranked based on their annualized momentum over a lookback period (typically 90 days, though 60–120 days can be common tests).
- The top-ranked stocks (e.g., top 10–20%) are selected for the portfolio.
3. Volatility Adjustment (Optional):
- Clenow sometimes adjusts momentum scores by volatility (e.g., dividing by the standard deviation of returns) to favor stocks with smoother trends.
- This reduces exposure to erratic price movements.
4. Portfolio Construction:
- A diversified portfolio of 10–25 stocks is constructed, with equal or volatility-weighted allocations.
- Position sizes are often adjusted based on risk (e.g., 1% of capital per position).
5. Rebalancing:
- The portfolio is rebalanced periodically (e.g., weekly or monthly) to maintain exposure to high-momentum stocks.
- Stocks falling below a momentum threshold are replaced with higher-ranked candidates.
6. Risk Management:
- Stop-losses or trailing stops may be applied to limit downside risk.
- Diversification across sectors reduces concentration risk.
Implementation in TradingView
Key features include:
- Customizable Lookback: Users can adjust the lookback period in pinescript (e.g., 90 days) to align with Clenow’s methodology.
- Visual Cues: Background colors (green for positive, red for negative momentum) and a zero line help identify trend strength.
- Integration with Screeners: TradingView’s stock screener can filter high-momentum stocks, which can then be analyzed with the custom indicator.
Strengths
1. Simplicity: The method is straightforward, relying on a single metric (momentum) that’s easy to calculate and interpret.
2. Empirical Support: Backed by decades of academic research and real-world hedge fund performance.
3. Adaptability: Applicable to stocks, ETFs, or other asset classes, with flexible lookback periods.
4. Risk Management: Diversification and periodic rebalancing reduce idiosyncratic risk.
5. TradingView Integration: Pine Script implementation enables real-time visualization, enhancing decision-making for stocks like NVDA or SPY.
Limitations
1. Mean Reversion Risk: Momentum can reverse sharply in bear markets or during sector rotations, leading to drawdowns.
2. Transaction Costs: Frequent rebalancing increases trading costs, especially for retail traders with high commissions. This is not as prevalent with commission free trading becoming more available.
3. Overfitting Risk: Over-optimizing lookback periods or filters can reduce out-of-sample performance.
4. Market Conditions: Underperforms in low-momentum or highly volatile markets.
Practical Applications
The Clenow Momentum Method is ideal for:
Retail Traders: Use TradingView’s screener to identify high-momentum stocks, then apply the Pine Script indicator to confirm trends.
Portfolio Managers: Build diversified momentum portfolios, rebalancing monthly to capture trends.
Swing Traders: Combine with volume filters to target short-term breakouts in high-momentum stocks.
Cross-Platform Workflow: Integrate with Python scanners to rank stocks, then visualize on TradingView for trade execution.
Comparison to Other Strategies
Vs. Minervini’s VCP: Clenow’s method is purely quantitative, while Minervini’s Volatility Contraction Pattern (your April 11, 2025 query) combines momentum with chart patterns. Clenow is more systematic but less discretionary.
Vs. Mean Reversion: Momentum bets on trend continuation, unlike mean reversion strategies that target oversold conditions.
Vs. Value Investing: Momentum outperforms in bull markets but may lag value strategies in recovery phases.
Conclusion
The Clenow Momentum Method is a robust, evidence-based strategy that capitalizes on price trends while managing risk through diversification and rebalancing. Its simplicity and adaptability make it accessible to retail traders, especially when implemented on platforms like TradingView with custom Pine Script indicators. Traders must be mindful of transaction costs, mean reversion risks, and market conditions. By combining Clenow’s momentum with volume filters and alerts, you can optimize its application for swing or position trading.
Long Short MomentumThis indicator is designed to visualize short-term and long-term momentum trends.The indicator calculates two momentum lines based on customizable lengths: a short momentum (Short Momentum) over a smaller period and a long momentum (Long Momentum) over a longer period. These lines are plotted relative to the chosen price source, typically the closing price.
The histogram, colored dynamically based on momentum direction, gives visual cues:
Green: Both short and long momentum are positive, indicating an upward trend.
Red: Both are negative, indicating a downward trend.
Gray: Mixed momentum, suggesting potential trend indecision.






















