OPEN-SOURCE SCRIPT

Squeeze Momentum [Plus]

Updated
The "Momentum" in this indicator is smoothed out using linear regression. The Momentum is what is displayed on the indicator as a histogram, its purpose is obvious (to show momentum).

What is a Squeeze? A squeeze occurs when Bollinger Bands tighten up enough to slip inside of Keltner Channels .
This is interpreted as price is compressing and building up energy before releasing it and making a big move.

Traditionally, John Carter's version uses 20 period SMAs as the basis lines on both the BB and the KC.
In this version, I've given the freedom to change this and try out different types of moving averages.

The original squeeze indicator had only one Squeeze setting, though this new one has three.
The gray dot Squeeze, call it a "low squeeze" or an "early squeeze" - this is the easiest Squeeze to form based on its settings.
The orange dot Squeeze is the original from the first Squeeze indicator.
And finally, the yellow dot squeeze, call it a "high squeeze" or "power squeeze" - is the most difficult to form and suggests price is under extreme levels of compression.

Now to explain the parameters:
Squeeze Input - This is just the source for the Squeeze to use, default value is closing price.
Length - This is the length of time used to calculate the Bollinger Bands and Keltner Channels .
Bollinger Bands Calculation Type - Selects the type of moving average used to create the Bollinger Bands .
Keltner Channel Calculation Type - Selects the type of moving average used to create the Keltner Channel.
Color Format - you to choose one of 5 different color schemes.
Draw Divergence - Self explanatory here, this will auto-draw divergence on the indicator.
Gray Background for Dark Mode - to make them more visually appealing.

Added ADX (Average Directional Index) that measure a trend’s strength. The higher the ADX value, the stronger the trend. The ADX line is white when it has a positive slope, otherwise it is gray. When the ADX has a very large dispersion with respect to the momentum histogram, increase the scale number.

Added "H (Hull Moving Average) Signal". Hull is a extremely responsive and smooth moving average created by Alan Hull in 2005. Have option to chose between 3 Hull variations.

Added "Williams Vix Fix" signal. The Vix is one of the most reliable indicators in history for finding market bottoms. The Williams Vix Fix is simply a code from Larry Williams creating almost identical results for creating the same ability the Vix has to all assets.

The VIX has always been much better at signaling bottoms than tops. Simple reason is when market falls retail traders panic and increase volatility, and professionals come in and capitalize on the situation. At market tops there is no one panicking... just liquidity drying up.

The FE green triangles are "Filtered Entries"
The AE green triangles are "Aggressive Filtered Entries"
Release Notes
Small modification in the ADX chart.

Added "Wilder's Moving Average" in the Squeeze.

Momentum and Squeeze now have separate source and period.
Release Notes
👍🏻
Release Notes
Code reorganization and improvement.

Added "Hull Moving Average" background.

Colored Directional Movement Index (CDMI), a custom interpretation of J. Welles Wilder’s Directional Movement Index (DMI), where :
DMI is a collection of three separate indicators ( ADX , +DI , -DI ) combined into one and measures the trend’s strength as well as its direction.
CDMI with a color scale - representing the trend’s strength, color density - representing momentum/slope of the trend’s strength, and triangle up/down shapes - representing the trend’s direction. CDMI provides all the information in a single line with colored triangle shapes plotted on the bottom. DMI can provide quality information and even trading signals but it is not an easy indicator to master, whereus CDMI simplifies its usage. The CDMI adds additional insight of verifying/confirming the trend as well as its strength.

Label :
Displaying the trend strength and direction
Displaying ADX and di+/di- values
Displaying adx's momentum (growing or falling)
Where tooltip label describes "howto read colored dmi line"
Ability to display historical values of DMI readings displayed in the label.

Elliott Wave Principle, developed by Ralph Nelson Elliott , proposes that the seemingly chaotic behaviour of the different financial markets isn’t actually chaotic. In fact the markets moves in predictable, repetitive cycles or waves and can be measured and forecast using Fibonacci numbers. These waves are a result of influence on investors from outside sources primarily the current psychology of the masses at that given time. Elliott wave predicts that the prices of the a traded currency pair will evolve in waves: five impulsive waves and three corrective waves. Impulsive waves give the main direction of the market expansion and the corrective waves are in the opposite direction (corrective wave occurrences and combination corrective wave occurrences are much higher comparing to impulsive waves)

The Elliott Wave Oscillator ( EWO ) helps identifying where you are in the 5 / 3 Elliott Waves , mainly the highest/lowest values of the oscillator might indicate a potential bullish / bearish Wave 3. Mathematically expressed, EWO is the difference between a 5 period and 35 period moving average. In this study instead 35-period, Fibonacci number 34 is implemented for the slow moving average and formula becomes ewo = sma ( HL2 , 5) - sma ( HL2 , 34)

The Elliott Wave Oscillator enables traders to track Elliott Wave counts and divergences. It allows traders to observe when an existing wave ends and when a new one begins. Included with the EWO are the breakout bands that help identify strong impulses.

The Expert Trend Locator ( XTL ) was developed by Tom Joseph (in his book Applying Technical Analysis ) to identify major trends, similar to Elliott Wave 3 type swings.
Blue bars are bullish and indicate a potential upwards impulse.
Red bars are bearish and indicate a potential downwards impulse.
White bars indicate no trend is detected at the moment.
Release Notes
Migrated to v5.

Now you can choose the type of MA in the Momentum.

Added the Bollinger Bands Multiplier.

The option of distance between the zero line and the key level was added. A negative value places it at the bottom of the zero line and a positive value places it at the top.

Added Alerts to Williams Vix Fix (Aggressive Entry and Filtered Entry). Alerts are Pre-Set to only Alert on Bar Close.

Added Alerts to DMI (Bearish or Bullish Trend). Alerts are Pre-Set to only Alert on Bar Close.
Release Notes
Added "HLCC4" source.

Added alternate moving average types:
- Median
- COVWMA: Coefficient of Variation Weighted Moving Average.
- FRAMA: Fractal Adaptive Moving Average.
- ADX Weighted Moving Average.
- EMA RSI Adaptive.

Improved DMI label.

The algorithm of the divergences was changed by the version of the user DoctaBot
Please note, you may notice while using this version that some of the older divergences do not show any lines between the oscillator pivots . THIS IS NOT A BUG! In order to draw divergence lines properly for multiple pivots back, I had to use the line.new functions rather than plot functions. These line functions will delete old lines when a certain number have been drawn on the chart so these old ones are automatically erased as time passes.
Release Notes
Configuration modifications:
1) Selecting the EWO indicator deactivates Momentum and ADX.
2) Added the Momentum signal line and the Momentum strength, which is the difference between the Momentum and its signal.
3) The DMI label was improved.
4) The options were grouped at the beginning to show the different indicators.
ADXBollinger Bands (BB)cdmiDMIEWOhullmovingaverageKeltner Channels (KC)Momentum Indicator (MOM)squeezesqueezemomentumvixfixXTL

Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in publication is governed by House rules. You can favorite it to use it on a chart.

Want to use this script on a chart?

Disclaimer