Code created on the basis of Nicolas’ work, thanks to him and the time he spends for us.
18 moving averages which are in fact the same with a time lag. You can change the period in the code and thus adjust it. Ideally buy on a rebound when the price is below the rainbow with stop loss just below the previous low. Or sell on a retracement candle when the price is above the rainbow.
Or sell on a retracement candle when the price is above the rainbow. Basic but visual.
//---settings
MAmode=0
Period=3
NumberOfMA=100
//---end of settings
MA2=undefined
MA3=undefined
MA4=undefined
MA5=undefined
MA6=undefined
MA7=undefined
MA8=undefined
MA9=undefined
MA10=undefined
MA11=undefined
MA12=undefined
MA13=undefined
MA14=undefined
MA15=undefined
MA16=undefined
MA17=undefined
MA18=undefined
M19=undefined
numberofMA=max(min(numberofma,18),1)
MA1=average[period](close)
if numberofMA=2 then
MA2=average[period,mamode](MA1)
elsif numberofMA=3 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
elsif numberofMA=4 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
elsif numberofMA=5 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
elsif numberofMA=6 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
MA6=average[period,mamode](MA5)
elsif numberofMA=7 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
MA6=average[period,mamode](MA5)
MA7=average[period,mamode](MA6)
elsif numberofMA=8 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
MA6=average[period,mamode](MA5)
MA7=average[period,mamode](MA6)
MA8=average[period,mamode](MA7)
elsif numberofMA=9 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
MA6=average[period,mamode](MA5)
MA7=average[period,mamode](MA6)
MA8=average[period,mamode](MA7)
MA9=average[period,mamode](MA8)
elsif numberofMA=10 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
MA6=average[period,mamode](MA5)
MA7=average[period,mamode](MA6)
MA8=average[period,mamode](MA7)
MA9=average[period,mamode](MA8)
MA10=average[period,mamode](MA9)
elsif numberofMA=11 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
MA6=average[period,mamode](MA5)
MA7=average[period,mamode](MA6)
MA8=average[period,mamode](MA7)
MA9=average[period,mamode](MA8)
MA10=average[period,mamode](MA9)
MA11=average[period,mamode](MA10)
elsif numberofMA=12 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
MA6=average[period,mamode](MA5)
MA7=average[period,mamode](MA6)
MA8=average[period,mamode](MA7)
MA9=average[period,mamode](MA8)
MA10=average[period,mamode](MA9)
MA11=average[period,mamode](MA10)
MA12=average[period,mamode](MA11)
elsif numberofMA=13 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
MA6=average[period,mamode](MA5)
MA7=average[period,mamode](MA6)
MA8=average[period,mamode](MA7)
MA9=average[period,mamode](MA8)
MA10=average[period,mamode](MA9)
MA11=average[period,mamode](MA10)
MA12=average[period,mamode](MA11)
MA13=average[period,mamode](MA12)
elsif numberofMA=14 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
MA6=average[period,mamode](MA5)
MA7=average[period,mamode](MA6)
MA8=average[period,mamode](MA7)
MA9=average[period,mamode](MA8)
MA10=average[period,mamode](MA9)
MA11=average[period,mamode](MA10)
MA12=average[period,mamode](MA11)
MA13=average[period,mamode](MA12)
MA14 =average[period,mamode](MA13)
elsif numberofMA=15 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
MA6=average[period,mamode](MA5)
MA7=average[period,mamode](MA6)
MA8=average[period,mamode](MA7)
MA9=average[period,mamode](MA8)
MA10=average[period,mamode](MA9)
MA11=average[period,mamode](MA10)
MA12=average[period,mamode](MA11)
MA13=average[period,mamode](MA12)
MA14 =average[period,mamode](MA13)
MA15 =average[period,mamode](MA14)
elsif numberofMA=16 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
MA6=average[period,mamode](MA5)
MA7=average[period,mamode](MA6)
MA8=average[period,mamode](MA7)
MA9=average[period,mamode](MA8)
MA10=average[period,mamode](MA9)
MA11=average[period,mamode](MA10)
MA12=average[period,mamode](MA11)
MA13=average[period,mamode](MA12)
MA14 =average[period,mamode](MA13)
MA15 =average[period,mamode](MA14)
MA16 =average[period,mamode](MA15)
elsif numberofMA=17 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
MA6=average[period,mamode](MA5)
MA7=average[period,mamode](MA6)
MA8=average[period,mamode](MA7)
MA9=average[period,mamode](MA8)
MA10=average[period,mamode](MA9)
MA11=average[period,mamode](MA10)
MA12=average[period,mamode](MA11)
MA13=average[period,mamode](MA12)
MA14 =average[period,mamode](MA13)
MA15 =average[period,mamode](MA14)
MA16 =average[period,mamode](MA15)
MA17 =average[period,mamode](MA16)
elsif numberofMA=18 then
MA2=average[period,mamode](MA1)
MA3=average[period,mamode](MA2)
MA4=average[period,mamode](MA3)
MA5=average[period,mamode](MA4)
MA6=average[period,mamode](MA5)
MA7=average[period,mamode](MA6)
MA8=average[period,mamode](MA7)
MA9=average[period,mamode](MA8)
MA10=average[period,mamode](MA9)
MA11=average[period,mamode](MA10)
MA12=average[period,mamode](MA11)
MA13=average[period,mamode](MA12)
MA14=average[period,mamode](MA13)
MA15=average[period,mamode](MA14)
MA16=average[period,mamode](MA15)
MA17=average[period,mamode](MA16)
MA18=average[period,mamode](MA17)
endif
return ma1 coloured("blue"), ma2 coloured("blue"), ma3 coloured("green"), ma4 coloured("green"), ma5 coloured("yellow"),MA6 coloured("yellow"),MA7 coloured("orange"),MA8 coloured("orange"),MA9 coloured("red")style(line,3),MA10 coloured("red"),MA11 coloured("pink"),MA12 coloured("pink"),MA13 coloured("fuchsia"),MA14 coloured("fuchsia"),MA15 coloured("brown"),MA16 coloured("brown"),MA17 coloured("cyan"),MA18 coloured("cyan")
// couleur "blue" "purple" "red" "orange" "fuchsia" "yellow" "brown" "white" "green" "pink"