LazyBear

Indicator: 8x MA with configurable lengths

Generic 8x MA plotter. Marks all MA crossings.

Also, you can specify the type of MA -- SMA or EMA.

I actually added an option to disable a specific MA line by specifying ZERO for it. This seems to break the Pinescript Engine. So, for now, please specify all MA values, though I have support for disabling a line in the code.

List of my free indicators: bit.ly/1LQaPK8
List of my indicators at Appstore: blog.tradingview.com/?p=970
开源脚本

本着真正的TradingView精神,该脚本的作者将其开源发布,以便交易者可以理解和验证它。为作者喝彩!您可以免费使用它,但在出版物中重复使用此代码受网站规则的约束。 您可以收藏它以在图表上使用。

免责声明

这些信息和出版物并不意味着也不构成TradingView提供或认可的金融、投资、交易或其它类型的建议或背书。请在使用条款阅读更多信息。

想在图表上使用此脚本?
//
// @author LazyBear
// Generic 8x EMA plotter. Marks all EMA crossings. 
//
// 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="8x MA [LazyBear]", shorttitle="8xMA_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

use_ema=input(false, "Use EMA (default: SMA)?", type=bool)

ma1_p=input(8, title="MA1 Length", type=integer)
ma2_p=input(13, title="MA2 Length", type=integer)
ma3_p=input(41, title="MA3 Length", type=integer)
ma4_p=input(200, title="MA4 Length", type=integer)
ma5_p=input(243, title="MA5 Length", type=integer)
ma6_p=input(300, title="MA6 Length", type=integer)
ma7_p=input(500, title="MA7 Length", type=integer)
ma8_p=input(700, title="MA8 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

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

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) : 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) : na
ma3_cross= ma3_valid ? cross(ma3, ma4) or cross(ma3, ma5) or cross(ma3, ma6) or cross(ma3, ma7) or cross(ma3, ma8) : na
ma4_cross= ma4_valid ? cross(ma4, ma5) or cross(ma4, ma6) or cross(ma4, ma7) or cross(ma4, ma8) : na
ma5_cross= ma5_valid ? cross(ma5, ma6) or cross(ma5, ma7) or cross(ma5, ma8) : na
ma6_cross= ma6_valid ? cross(ma6, ma7) or cross(ma6, ma8) : na
ma7_cross= ma7_valid ? cross(ma7, ma8) : na

// Plot the EMAs
plot(ma1_valid ? ma1 : na, color = ma1_color, linewidth = 2)
plot(ma2_valid ? ma2 : na, color = ma2_color, linewidth = 2)
plot(ma3_valid ? ma3 : na, color = ma3_color, linewidth = 2)
plot(ma4_valid ? ma4 : na, color = ma4_color, linewidth = 2)
plot(ma5_valid ? ma5 : na, color = ma5_color, linewidth = 2)
plot(ma6_valid ? ma6 : na, color = ma6_color, linewidth = 2)
plot(ma7_valid ? ma7 : na, color = ma7_color, linewidth = 2)
plot(ma8_valid ? ma8 : na, color = ma8_color, linewidth = 2)

// Plot any crossings
plot(not na(ma1_cross) and ma1_cross ? ma1 : na, style = circles, linewidth = 4 , color = ma1_color)
plot(not na(ma2_cross) and ma2_cross ? ma2 : na, style = circles, linewidth = 4 , color = ma2_color)
plot(not na(ma3_cross) and ma3_cross ? ma3 : na, style = circles, linewidth = 4 , color = ma3_color)
plot(not na(ma4_cross) and ma4_cross ? ma4 : na, style = circles, linewidth = 4 , color = ma4_color)
plot(not na(ma5_cross) and ma5_cross ? ma5 : na, style = circles, linewidth = 4 , color = ma5_color)
plot(not na(ma6_cross) and ma6_cross ? ma6 : na, style = circles, linewidth = 4 , color = ma6_color)
plot(not na(ma7_cross) and ma7_cross ? ma7 : na, style = circles, linewidth = 4 , color = ma7_color)