【问题标题】:How to extend a moving average plot?如何扩展移动平均线图?
【发布时间】:2020-12-12 17:06:59
【问题描述】:

如何扩展移动平均线图?

ma20= sma(close, 20)
plot(ma20, color = color.red)

extend = extend.right -> 在这里不工作,只有 line.new()

【问题讨论】:

    标签: pine-script


    【解决方案1】:

    地块不能在 Pine 中扩展。您将不得不为此使用线条。
    我以前解决过一个类似的问题,但它可能不是您想要的。
    不过,它可能会给你一些想法。

    //@version=4
    study(title="5 Horizontal EMA", shorttitle="5 H. EMA", overlay=true)
    
    len1 = input(10,  minval=8, title="Length entry ema")
    len2 = input(21,  minval=8, title="Length fast ema")
    len3 = input(55,  minval=8, title="Length medium ema")
    len4 = input(100, minval=8, title="Length slow ema")
    len5 = input(200, minval=8, title="Length very slow ema")
    src  = input(close, title="Source")
    
    var bool show_hlines = input(true, "Show horizontal lines", input.bool)
    var bool show_emas   = not show_hlines
    
    var color_entryema      = color.green
    var color_fastema       = color.orange
    var color_mediumema     = color.red
    var color_slowema       = color.white
    var color_veryslowema   = color.purple
    
    var line_entryema       = line.new(x1=na, y1=na, x2=na, y2=na, xloc=xloc.bar_time, extend=extend.right, color=show_hlines ? color_entryema    : na, style=line.style_dashed)
    var line_fastema        = line.new(x1=na, y1=na, x2=na, y2=na, xloc=xloc.bar_time, extend=extend.right, color=show_hlines ? color_fastema     : na, style=line.style_dashed)
    var line_mediumema      = line.new(x1=na, y1=na, x2=na, y2=na, xloc=xloc.bar_time, extend=extend.right, color=show_hlines ? color_mediumema   : na, style=line.style_dashed)
    var line_slowema        = line.new(x1=na, y1=na, x2=na, y2=na, xloc=xloc.bar_time, extend=extend.right, color=show_hlines ? color_slowema     : na, style=line.style_dashed)
    var line_veryslowema    = line.new(x1=na, y1=na, x2=na, y2=na, xloc=xloc.bar_time, extend=extend.right, color=show_hlines ? color_veryslowema : na, style=line.style_dashed)
    
    var label_entryema      = label.new(x=na, y=na, text=tostring(len1), xloc=xloc.bar_time, color=show_hlines ? color_entryema    : na, textcolor=show_hlines ? color_entryema    : na, style=label.style_none)
    var label_fastema       = label.new(x=na, y=na, text=tostring(len2), xloc=xloc.bar_time, color=show_hlines ? color_fastema     : na, textcolor=show_hlines ? color_fastema     : na, style=label.style_none)
    var label_mediumema     = label.new(x=na, y=na, text=tostring(len3), xloc=xloc.bar_time, color=show_hlines ? color_mediumema   : na, textcolor=show_hlines ? color_mediumema   : na, style=label.style_none)
    var label_slowema       = label.new(x=na, y=na, text=tostring(len4), xloc=xloc.bar_time, color=show_hlines ? color_slowema     : na, textcolor=show_hlines ? color_slowema     : na, style=label.style_none)
    var label_veryslowema   = label.new(x=na, y=na, text=tostring(len5), xloc=xloc.bar_time, color=show_hlines ? color_veryslowema : na, textcolor=show_hlines ? color_veryslowema : na, style=label.style_none)
    
    f_moveLine(_id, _x, _y) =>
        line.set_xy1(_id, _x,   _y)
        line.set_xy2(_id, _x+1, _y)
    
    f_moveLabel(_id, _x, _y) =>
        label.set_xy(_id, _x, _y)
    
    entryema    = ema(src, len1)
    fastema     = ema(src, len2)
    mediumema   = ema(src, len3)
    slowema     = ema(src, len4)
    veryslowema = ema(src, len5)
    
    if (hour==0 and minute==0 and year(time)==year(timenow) and month(time)==month(timenow) and dayofmonth(time)==dayofmonth(timenow))
        f_moveLine(line_entryema,      time, entryema)
        f_moveLine(line_fastema,       time, fastema)
        f_moveLine(line_mediumema,     time, mediumema)
        f_moveLine(line_slowema,       time, slowema)
        f_moveLine(line_veryslowema,   time, veryslowema)
        
        f_moveLabel(label_entryema,    time, entryema)
        f_moveLabel(label_fastema,     time, fastema)
        f_moveLabel(label_mediumema,   time, mediumema)
        f_moveLabel(label_slowema,     time, slowema)
        f_moveLabel(label_veryslowema, time, veryslowema)
        
    plot(entryema,    color=show_emas ? color_entryema    : na, linewidth=1, title="Entry EMA")
    plot(fastema,     color=show_emas ? color_fastema     : na, linewidth=1, title="Fast EMA")
    plot(mediumema,   color=show_emas ? color_mediumema   : na, linewidth=1, title="Medium EMA")
    plot(slowema,     color=show_emas ? color_slowema     : na, linewidth=1, title="Slow EMA")
    plot(veryslowema, color=show_emas ? color_veryslowema : na, linewidth=1, title="Veryslow EMA")
    

    来源:Label Horizontal EMA Lines (Variables)

    【讨论】:

    • 好的,谢谢。有没有办法加载超过 5000 支蜡烛?
    • 可以,但仅限订阅。见tradingview.com/gopro
    猜你喜欢
    • 1970-01-01
    • 2017-09-01
    • 2013-12-22
    • 1970-01-01
    • 1970-01-01
    • 2022-01-26
    • 1970-01-01
    • 2011-06-29
    • 2019-04-24
    相关资源
    最近更新 更多