Line.标签上的新交叉.new(现在要解析) [英] line.new crosses over label.new (now to resolve)
本文介绍了Line.标签上的新交叉.new(现在要解析)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
下午,
我正在尝试创建标签和行。标签显示每日开盘,包括价值,然后显示从那里到价格轴的线。
但.new行部分覆盖了标签中的信息。我认为问题在于我使用的是bar_index(在line.new内),但我似乎不知道应该使用什么,这样,line.new将在Label.new之后开始。
感谢您抽出时间。
//@version=4
study(title="Label Testing", overlay=true)
dOpen = security(syminfo.tickerid, "D", open, lookahead = barmerge.lookahead_on)
var line dOpenLine = na
if PriceLine
dOpenLine := line.new(bar_index[1], dOpen, bar_index, dOpen, color=color.blue, style=line.style_dashed, width=2, extend=extend.right)
label dOpenLabel = label.new(bar_index, dOpen, text = "dOpen - "+tostring(dOpen), color=color.blue, textcolor=color.white, style=label.style_label_left, size=size.small )
line.delete(dOpenLine[1])
label.delete(dOpenLabel[1])
#更新18/03/2021#
line.new将优先于label.new
,并将覆盖Label.new中的文本。
稍有改动的是在文本中添加
,这将在标签内的行上方放置一个回车,并在该行下方放置价格。
label dOpenLabel = label.new(bar_index, dOpen, text = "dOpen
"+tostring(dOpen), color=color.blue, textcolor=color.white, style=label.style_label_left, size=size.small, xloc=xloc.bar_index )
或者,如果您患有强迫症并希望文本位于行上方。new,但这样您就不能拥有label.new
框或style = label.style_label_left
。
label mOpenLabel = label.new(bar_index, mOpen, text = "mOpen - "+tostring(mOpen), color=color.yellow, textcolor=color.yellow, style=label.style_none, size=size.normal, xloc=xloc.bar_index)
我试图解决的最后一个问题是如何定位文本。我希望将文本定位为紧贴价格轴(如下图所示)。
当前,我正在尝试使用空格移动文本,如下面的代码所示。
label mOpenLabel = label.new(bar_index, mOpen, text = " mOpen - "+tostring(mOpen), color=color.yellow, textcolor=color.yellow, style=label.style_none, size=size.normal, xloc=xloc.bar_index)
有没有更好的方法?
推荐答案
您可以让标签指向右侧,这样它就不会相交。
//@version=4
study("Label Testing", "LBL", overlay=true)
var bool PriceLine = true
var line dOpenLine = line.new(na, na, na, na, color=color.blue, style=line.style_dashed, width=2, extend=extend.right)
var label dOpenLabel = label.new(na, na, text = "", color=color.blue, textcolor=color.white, style=label.style_label_right, size=size.normal)
dOpen = security(syminfo.tickerid, "D", open, lookahead = barmerge.lookahead_on)
if PriceLine
line.set_xy1(dOpenLine, bar_index[1], dOpen)
line.set_xy2(dOpenLine, bar_index, dOpen)
label.set_xy(dOpenLabel, bar_index, dOpen)
label.set_text(dOpenLabel, "dOpen - " + tostring(dOpen))
这篇关于Line.标签上的新交叉.new(现在要解析)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文