LazyBear

Squeeze Momentum Indicator [LazyBear]



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

Updated source: http://pastebin.com/UCpcX8d7

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
- Using Squeeze with ADX: http://www.tradethemarkets.com/public/ma...

List of all my indicators:

从常用的脚本中删除 添加到常用的脚本
//
// @author LazyBear 
// List of all my indicators: https://www.tradingview.com/v/4IneGo8h/
//
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)), 
            lengthKC,0)

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)
NO REPAINT strategy -> -> -> MOEX:SBER No repaint 10M/5M DEMO! Without 2 weeks
+1 回复
How to change the colors of Ttm squeeze? I want to make it look like the one in thinkorswim
+1 回复
xSHADx Moneyman31
@Moneyman31, looks like Red and maroon, lime and green are listed. you try changing those?
回复
Wanna make money? It is simple and "It doesnt repaint"

+2 回复
your settings and code show the possibility of a blue signal, but I never saw that generated no chart - what is that for and when it should show up?
+17 回复
WELL DONE.
+1 回复
Looks nice.
There is a bug on line 30 of the code when I try to copy it for Tradingview.
+6 回复
Very good works applying the system from Mr John Carter. However as mentioned by you, I also experienced missed good entry points and max TP points. Thanks god I get a best entry using my own system while applying this but do some adjustment (i.e. KC multipliers to 2.0) as I'm scalping and want to get in and out (FIFO) faster.
+6 回复
首页 股票筛选器 外汇筛选器 加密货币筛选器 财经日历 如何运作 图表功能 价格 网站规则 版主 网站 & 经纪商解决方案 插件 图表解决方案 寻求帮助 功能请求 博客 & 新闻 常见问题 维基百科 Twitter
概述 个人资料设置 账号和账单 寻求帮助 已发表观点 粉丝 正在关注 私人消息 聊天 退出