TradingView Pine Script绘制竖线不显示问题求助
问题原因及解决方法
原脚本画不出竖线的核心问题有两个:
- 参数逻辑错误:
line.new()的前四个参数是(x1, y1, x2, y2),你当前设置的x1=fromTime、x2=time,这会画一条从指定时间到当前K线的斜线,而非竖线。竖线要求x1和x2必须是同一个时间戳。 - 重复创建线条:脚本会在每一根K线都执行一次
line.new(),生成大量冗余线条,同时可能因时间范围不匹配导致目标线条被覆盖或未加载。
修正后的脚本
//@version=4 study("Vertical Line", overlay=true) fromTime = timestamp(2023, 5, 10, 21, 0, 0) // 仅在目标时间戳对应的K线创建一次竖线 if time == fromTime // 竖线:x1和x2用同一个时间戳,y1/y2设置为你需要的价格范围 line.new(fromTime, 80, fromTime, 120, color=color.blue, width=2, extend=extend.none)
额外优化建议
如果希望竖线自动适配当前图表的价格区间,不需要手动写80/120,可以替换为:
// 自动取目标K线的高低价作为竖线的上下端点 line.new(fromTime, low, fromTime, high, color=color.blue, width=2, extend=extend.none)
或者让竖线贯穿整个图表高度:
line.new(fromTime, ta.lowest(1000), fromTime, ta.highest(1000), color=color.blue, width=2, extend=extend.none)
验证要点
- 确认
fromTime的时间在当前图表的显示范围内(可以缩放图表到2023年5月10日前后) - 亚马逊股价在80-120区间内,确保图表的Y轴范围包含这个区间(如果Y轴是自动缩放,一般会包含)
内容的提问来源于stack exchange,提问作者Michael
相关产品推荐
相关产品推荐

