Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // @author LazyBear
- // Generic 11x EMA plotter. Marks all EMA crossings, if configured to true.
- //
- // Notes: I actually added an option to disable a specific MA line by specifying ZERO for it.
- // This broke the Pinescript Engine. So, for now, please specify all MA values, though I have support
- // for disabling a line in the code.
- //
- study(title="11x MA [LazyBear]", shorttitle="11xMA_LB", overlay=true)
- src = close
- ma1_color = #00ffff
- ma2_color = #ff9800
- ma3_color = #cc4125
- ma4_color = #00ff00
- ma5_color = #000080
- ma6_color = #008080
- ma7_color = #ff3366
- ma8_color = #00cc66
- ma9_color = #0000ff
- ma10_color = #00cc00
- ma11_color = #ff0066
- use_ema=input(false, "Use EMA (default: SMA)?", type=bool)
- draw_cross=input(false, "Draw Cross points?", type=bool)
- ma1_p=input(25, title="MA1 Length", type=integer)
- ma2_p=input(30, title="MA2 Length", type=integer)
- ma3_p=input(35, title="MA3 Length", type=integer)
- ma4_p=input(40, title="MA4 Length", type=integer)
- ma5_p=input(45, title="MA5 Length", type=integer)
- ma6_p=input(50, title="MA6 Length", type=integer)
- ma7_p=input(55, title="MA7 Length", type=integer)
- ma8_p=input(60, title="MA8 Length", type=integer)
- ma9_p=input(65, title="MA9 Length", type=integer)
- ma10_p=input(70, title="MA10 Length", type=integer)
- ma11_p=input(75, title="MA11 Length", type=integer)
- ma1_valid = ma1_p > 0
- ma2_valid = ma2_p > 0
- ma3_valid = ma3_p > 0
- ma4_valid = ma4_p > 0
- ma5_valid = ma5_p > 0
- ma6_valid = ma6_p > 0
- ma7_valid = ma7_p > 0
- ma8_valid = ma8_p > 0
- ma9_valid = ma9_p > 0
- ma10_valid = ma10_p > 0
- ma11_valid = ma11_p > 0
- ma(x,y) => use_ema ? ema(x,y) : sma(x,y)
- ma1 = ma1_valid ? ma(src, ma1_p) : na
- ma2 = ma2_valid ? ma(src, ma2_p) : na
- ma3 = ma3_valid ? ma(src, ma3_p) : na
- ma4 = ma4_valid ? ma(src, ma4_p) : na
- ma5 = ma5_valid ? ma(src, ma5_p) : na
- ma6 = ma6_valid ? ma(src, ma6_p) : na
- ma7 = ma7_valid ? ma(src, ma7_p) : na
- ma8 = ma8_valid ? ma(src, ma8_p) : na
- ma9 = ma9_valid ? ma(src, ma9_p) : na
- ma10 = ma10_valid ? ma(src, ma10_p) : na
- ma11 = ma11_valid ? ma(src, ma11_p) : na
- ma1_cross= ma1_valid ? cross(ma1, ma2) or cross(ma1, ma3) or cross(ma1, ma4) or cross(ma1, ma5) or cross(ma1, ma6) or cross(ma1, ma7) or cross(ma1, ma8) or cross(ma1, ma9) or cross(ma1, ma10) or cross(ma1, ma11) : na
- ma2_cross= ma2_valid ? cross(ma2, ma3) or cross(ma2, ma4) or cross(ma2, ma5) or cross(ma2, ma6) or cross(ma2, ma7) or cross(ma2, ma8) or cross(ma2, ma9) or cross(ma2, ma10) or cross(ma2, ma11): na
- ma3_cross= ma3_valid ? cross(ma3, ma4) or cross(ma3, ma5) or cross(ma3, ma6) or cross(ma3, ma7) or cross(ma3, ma8) or cross(ma3, ma9) or cross(ma3, ma10) or cross(ma3, ma11): na
- ma4_cross= ma4_valid ? cross(ma4, ma5) or cross(ma4, ma6) or cross(ma4, ma7) or cross(ma4, ma8) or cross(ma4, ma9) or cross(ma4, ma10) or cross(ma4, ma11): na
- ma5_cross= ma5_valid ? cross(ma5, ma6) or cross(ma5, ma7) or cross(ma5, ma8) or cross(ma5, ma9) or cross(ma5, ma10) or cross(ma5, ma11): na
- ma6_cross= ma6_valid ? cross(ma6, ma7) or cross(ma6, ma8) or cross(ma6, ma9) or cross(ma6, ma10) or cross(ma6, ma11): na
- ma7_cross= ma7_valid ? cross(ma7, ma8) or cross(ma7, ma9) or cross(ma7, ma10) or cross(ma7, ma11): na
- ma8_cross= ma8_valid ? cross(ma8, ma9) or cross(ma8, ma10) or cross(ma8, ma11): na
- ma9_cross= ma9_valid ? cross(ma9, ma10) or cross(ma9, ma11): na
- ma10_cross= ma10_valid ? cross(ma10, ma11): na
- // Plot the EMAs
- l_ma1=plot(ma1_valid ? ma1 : na, color = ma1_color, linewidth = 2)
- l_ma2=plot(ma2_valid ? ma2 : na, color = ma2_color, linewidth = 2)
- l_ma3=plot(ma3_valid ? ma3 : na, color = ma3_color, linewidth = 2)
- l_ma4=plot(ma4_valid ? ma4 : na, color = ma4_color, linewidth = 2)
- l_ma5=plot(ma5_valid ? ma5 : na, color = ma5_color, linewidth = 2)
- l_ma6=plot(ma6_valid ? ma6 : na, color = ma6_color, linewidth = 2)
- l_ma7=plot(ma7_valid ? ma7 : na, color = ma7_color, linewidth = 2)
- l_ma8=plot(ma8_valid ? ma8 : na, color = ma8_color, linewidth = 2)
- l_ma9=plot(ma9_valid ? ma9 : na, color = ma9_color, linewidth = 2)
- l_ma10=plot(ma10_valid ? ma10 : na, color = ma10_color, linewidth = 2)
- l_ma11=plot(ma11_valid ? ma11 : na, color = ma11_color, linewidth = 2)
- fill(l_ma1, l_ma2, ma1_color)
- fill(l_ma2, l_ma3, ma2_color)
- fill(l_ma3, l_ma4, ma3_color)
- fill(l_ma4, l_ma5, ma4_color)
- fill(l_ma5, l_ma6, ma5_color)
- fill(l_ma6, l_ma7, ma6_color)
- fill(l_ma7, l_ma8, ma7_color)
- fill(l_ma8, l_ma9, ma8_color)
- fill(l_ma9, l_ma10, ma9_color)
- fill(l_ma10, l_ma11, ma10_color)
- // Plot any crossings
- plot(not na(ma1_cross) and draw_cross and ma1_cross ? ma1 : na, style = circles, linewidth = 4 , color = ma1_color)
- plot(not na(ma2_cross) and draw_cross and ma2_cross ? ma2 : na, style = circles, linewidth = 4 , color = ma2_color)
- plot(not na(ma3_cross) and draw_cross and ma3_cross ? ma3 : na, style = circles, linewidth = 4 , color = ma3_color)
- plot(not na(ma4_cross) and draw_cross and ma4_cross ? ma4 : na, style = circles, linewidth = 4 , color = ma4_color)
- plot(not na(ma5_cross) and draw_cross and ma5_cross ? ma5 : na, style = circles, linewidth = 4 , color = ma5_color)
- plot(not na(ma6_cross) and draw_cross and ma6_cross ? ma6 : na, style = circles, linewidth = 4 , color = ma6_color)
- plot(not na(ma7_cross) and draw_cross and ma7_cross ? ma7 : na, style = circles, linewidth = 4 , color = ma7_color)
- plot(not na(ma8_cross) and draw_cross and ma8_cross ? ma8 : na, style = circles, linewidth = 4 , color = ma8_color)
- plot(not na(ma9_cross) and draw_cross and ma9_cross ? ma9 : na, style = circles, linewidth = 4 , color = ma9_color)
- plot(not na(ma10_cross) and draw_cross and ma10_cross ? ma10 : na, style = circles, linewidth = 4 , color = ma10_color)
Advertisement
Advertisement