Squeeze Momentum Indicator [LazyBear]

จำนวนเข้าชม 498919

Fixed a typo in the code where BB multiplier was stuck at 1.5. Thanks @ucsgears for bringing it to my notice.

Updated source:

Use the updated source instead of the what TV shows below.

This is a derivative of John Carter's "TTM Squeeze" volatility indicator, as discussed in his book "Mastering the Trade" (chapter 11).

Black crosses on the midline show that the market just entered a squeeze ( Bollinger Bands are with in Keltner Channel). This signifies low volatility , market preparing itself for an explosive move (up or down). Gray crosses signify "Squeeze release".

Mr.Carter suggests waiting till the first gray after a black cross, and taking a position in the direction of the momentum (for ex., if momentum value is above zero, go long). Exit the position when the momentum changes (increase or decrease --- signified by a color change). My (limited) experience with this shows, an additional indicator like ADX / WaveTrend, is needed to not miss good entry points. Also, Mr.Carter uses simple momentum indicator , while I have used a different method (linreg based) to plot the histogram.

More info:
- Book: Mastering The Trade by John F Carter

List of all my indicators:
ลบออกจากสคริปส์โปรด เพิ่มเข้าไปในสคริปส์โปรด
// @author LazyBear 
// List of all my indicators:
study(shorttitle = "SQZMOM_LB", title="Squeeze Momentum Indicator [LazyBear]", overlay=false)

length = input(20, title="BB Length")
mult = input(2.0,title="BB MultFactor")
lengthKC=input(20, title="KC Length")
multKC = input(1.5, title="KC MultFactor")

useTrueRange = input(true, title="Use TrueRange (KC)", type=bool)

// Calculate BB
source = close
basis = sma(source, length)
dev = multKC * stdev(source, length)
upperBB = basis + dev
lowerBB = basis - dev

// Calculate KC
ma = sma(source, lengthKC)
range = useTrueRange ? tr : (high - low)
rangema = sma(range, lengthKC)
upperKC = ma + rangema * multKC
lowerKC = ma - rangema * multKC

sqzOn  = (lowerBB > lowerKC) and (upperBB < upperKC)
sqzOff = (lowerBB < lowerKC) and (upperBB > upperKC)
noSqz  = (sqzOn == false) and (sqzOff == false)

val = linreg(source  -  avg(avg(highest(high, lengthKC), lowest(low, lengthKC)),sma(close,lengthKC)), 

bcolor = iff( val > 0, 
            iff( val > nz(val[1]), lime, green),
            iff( val < nz(val[1]), red, maroon))
scolor = noSqz ? blue : sqzOn ? black : gray 
plot(val, color=bcolor, style=histogram, linewidth=4)
plot(0, color=scolor, style=cross, linewidth=2)
List of my free indicators:
List of my indicators at Appstore:


Hi Hope you are well,
This Strategy is looking so much interesting but anyone can explain me for following questions So It will be easy for everyone to follow this strategy.
If anyone have Video then it will be great or I can make video for everyone if @Leazy Bear is happy to use his page on video?
I have given answer but not 100% sure that are these correct or not?

1) What should be starting point. (First Grey after black)
2) What should be close point. (First Colour Change after start)
3) Should I buy or Sell? (Light Green - Buy, Dark Green Sell, Light Red Sell, Dark Red Buy)
4) What time should be great for selecting chart for this strategy? (1 Min, 3 Min, 5 Min, 1 Hour, 1 day or something else?)
5) Is this strategy is useful for Binary Trading? (If yes then what should be indicators)
6) Why colour is changing sometime dark red to Red or green to dark green.
7) can we start on dark Green and Close on Dark red?
8) Can we start on dark red and close on dark green

+305 ตอบกลับ
holamono118 bestmvpatel
@bestmvpatel, Yeah, it seems to me that the strategy works best entering on dark green and exiting on dark red (for shorting) and viceversa (for longing).
+69 ตอบกลับ
shravan202 bestmvpatel
@bestmvpatel, hi, can me plz share me you inputs,
I'm also very confused about this how to use this,
plz help me
+50 ตอบกลับ
chinnammand bestmvpatel
+18 ตอบกลับ
What time frame works better? Thanks.Good Job.
+175 ตอบกลับ
Hey guys,

why is this indicator better than TTM Squeeze?

I'm trying to understand the differences. I feel like the gray crosses appear too late, when the move already happened. Isn't the purpose of the TTM Squeeze to catch a move before it happens? Maybe I use this one wrong, is there some kind of tutorial?

How do you use it?

Thanks in advance!
+111 ตอบกลับ
This is awesome. Anyone able to convert this into a buy and sell signal directly on the chart?
+84 ตอบกลับ
In which interval this indicator works best ?
+76 ตอบกลับ
+21 ตอบกลับ
Excellent indicator, here the version with the auto divergence detection, regular and hidden:

+61 ตอบกลับ
หน้าแรก ตัวช่วยคัดกรองหุ้น ตัวคัดกรองฟอเร็กซ์ ตัวคัดกรองคริปโต ปฏิทินเศรษฐกิจ มันทำงานได้อย่างไร ฟีเจอร์ของชาร์ต อัตราค่าบริการ แนะนำเพื่อน กฎระเบียบการใช้งาน ศูนย์ช่วยเหลือ โซลูชั่นสำหรับเว็บไซต์ & โบรกเกอร์ วิดเจ็ต ชาร์ตโซลูชั่น Lightweight ชาร์ตไลบรารี บล็อก & ข่าว Twitter
โปรไฟล์ ตั้งค่าโปรไฟล์ บัญชีและการเรียกเก็บเงิน แนะนำเพื่อน ตั๋วการขอความสนับสนุนของฉัน ศูนย์ช่วยเหลือ ไอเดียที่เผยแพร่ ผู้ติดตาม ติดตาม ข้อความส่วนตัว แชท ออกจากระบบ