Guppy EMA Trend Based Indicator Requested by 2use

General RULES

1. If Fast and Slow EMA's are ALL in Uptrend. Fast EMA=Aqua Slow EMA's=Green.

2. If Fast And Slow EMA's are ALL in DownTrend. Fast EMA's=Orange Slow EMA's=Red.

3. If Conditions 1 or 2 = False the Color=Silver.

4. If Down Trend Slow EMA's = Resistance.

5. If Up Trend Slow EMA's = Support.

6. Great Moves Start when Color=Silver, then colors change to Up or Down Trend.

7. Conservative move is to wait for 1st or 2nd Pullback.

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 a publication is governed by House Rules. You can favorite it to use it on a chart.


The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.

Want to use this script on a chart?
//Created By ChrisMoody on 8/10/2014 by Request for 2use
//Daryl Guppy EMA's
study(title="CM_Guppy_EMA'S", shorttitle="CM_Guppy_EMA's", overlay=true)
src = close, 
len1 = input(3, minval=1, title="Fast EMA 1")
len2 = input(5, minval=1, title="Fast EMA 2")
len3 = input(8, minval=1, title="Fast EMA 3")
len4 = input(10, minval=1, title="Fast EMA 4")
len5 = input(12, minval=1, title="Fast EMA 5")
len6 = input(15, minval=1, title="Fast EMA 6")
//Slow EMA
len7 = input(30, minval=1, title="Slow EMA 7")
len8 = input(35, minval=1, title="Slow EMA 8")
len9 = input(40, minval=1, title="Slow EMA 9")
len10 = input(45, minval=1, title="Slow EMA 10")
len11 = input(50, minval=1, title="Slow EMA 11")
len12 = input(60, minval=1, title="Slow EMA 12")

//Fast EMA
ema1 = ema(src, len1)
ema2 = ema(src, len2)
ema3 = ema(src, len3)
ema4 = ema(src, len4)
ema5 = ema(src, len5)
ema6 = ema(src, len6)
//Slow EMA
ema7 = ema(src, len7)
ema8 = ema(src, len8)
ema9 = ema(src, len9)
ema10 = ema(src, len10)
ema11 = ema(src, len11)
ema12 = ema(src, len12)

//Fast EMA Color Rules
colfastL = (ema1 > ema2 and ema2 > ema3 and ema3 > ema4 and ema4 > ema5 and ema5 > ema6)
colfastS = (ema1 < ema2 and ema2 < ema3 and ema3 < ema4 and ema4 < ema5 and ema5 < ema6)
//Slow EMA Color Rules
colslowL = ema7 > ema8 and ema8 > ema9 and ema9 > ema10 and ema10 > ema11 and ema11 > ema12 
colslowS = ema7 < ema8 and ema8 < ema9 and ema9 < ema10 and ema10 < ema11 and ema11 < ema12 
//Fast EMA Final Color Rules
colFinal = colfastL and colslowL? aqua : colfastS and colslowS? orange : gray
//Slow EMA Final Color Rules
colFinal2 = colslowL  ? lime : colslowS ? red : gray
//Fast EMA Plots
p1=plot(ema1, title="Fast EMA 1", style=line, linewidth=2, color=colFinal)
plot(ema2, title="Fast EMA 2", style=line, linewidth=1, color=colFinal)
plot(ema3, title="Fast EMA 3", style=line, linewidth=1, color=colFinal)
plot(ema4, title="Fast EMA 4", style=line, linewidth=1, color=colFinal)
plot(ema5, title="Fast EMA 5", style=line, linewidth=1, color=colFinal)
p2=plot(ema6, title="Fast EMA 6", style=line, linewidth=2, color=colFinal)
fill(p1,p2,color=silver, transp=60)
//Slow EMA Plots
p3=plot(ema7, title="Slow EMA 7", style=line, linewidth=4, color=colFinal2)
plot(ema8, title="Slow EMA 8", style=line, linewidth=3, color=colFinal2)
plot(ema9, title="Slow EMA 9", style=line, linewidth=3, color=colFinal2)
plot(ema10, title="Slow EMA 10", style=line, linewidth=3, color=colFinal2)
plot(ema11, title="Slow EMA 11", style=line, linewidth=3, color=colFinal2)
p4=plot(ema12, title="Slow EMA 12", style=line, linewidth=4, color=colFinal2)
fill(p3,p4, color=silver, transp=60)