快完成了,但是线不连续,正在更新

It's almost done, but the line is not continuous and is update

上次我问了一个关于画水平线的问题, 几天都没有答案所以我学习了几天 并成功地使用 For To 语法粗略地编写。

然而,与期望的结果不同的是,在传递For语句时, 现有行丢失并创建新行。

我想做的就是每天查看交易所的起始栏 并为信标绘制一条水平线,高值和低值 对于负数。

What I want to do

我想摆脱这个枷锁

//@version=4
study(title = "Horizen Line", shorttitle = "Come on...", overlay = true)

t = timestamp("GMT", year(timenow), month(timenow), dayofmonth(timenow), 00, 00, 00)

var float l = 0.0
var bool c_color = true

for i = 1 to 2
    if time >= t and na(l[1])
        if close > open
            l := high, c_color := true
        else
            l := low, c_color := false
    else
        l := l[1]
    line.new(t, l, time, l, xloc = xloc.bar_time, extend = extend.right, color = color.new(c_color ? color.teal : color.maroon, 80), style = line.style_solid, width = 1)
    t := t - 86400000 * i

这就是您要查找的内容,但经过了简化。

//@version=4
study(title = "Horizen Line", shorttitle = "Come on...", overlay = true)

var color   c1 = color.new(color.teal,   0)
var color   c2 = color.new(color.maroon, 0)

if change(dayofmonth)
    l = close > open ? high : low
    line.new(time, l, time+1, l, xloc = xloc.bar_time, extend = extend.right, color = l == high ? c1 : c2, style = line.style_solid, width = 1)

这会产生