You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pine Script如何获取pmonlow变量的UNIX时间值调整画线起始位置

实现方案

可以直接获取上月最低价对应的UNIX时间戳,不需要手动换算,修改后的完整代码如下:

//@version=4
study(title="Low Lines", overlay=true)

// 获取上月最低价
pmonlow = security(syminfo.tickerid, 'M', low[1])
// 判断是否为当月第一根K线
is_new_month = change(month) != 0

var float low_time = na
var line lowLine = na

if is_new_month
    // 新月份触发时遍历上月所有K线,找到最低价对应的时间戳
    idx = 1
    // 仅遍历上月范围内的K线
    while month[idx] == month[1]
        if low[idx] == pmonlow
            // 记录最低价K线的UNIX毫秒时间戳
            low_time := time[idx]
            break
        idx := idx + 1

if not na(low_time)
    // 使用时间戳定位线条起点,指定xloc为bar_time匹配时间坐标
    lowLine := line.new(
         x1=low_time, y1=pmonlow,
         x2=bar_index, y2=pmonlow,
         extend=extend.right, color=color.red, width=2,
         xloc=xloc.bar_time
    )
    // 删除前一次绘制的旧线条避免重叠
    line.delete(lowLine[1])

关键改动说明

  • Pine Script内置的time变量本身就是当前K线起始时间的UNIX毫秒时间戳,完全符合你line.setxloc的坐标调用要求
  • 新增月份切换判断逻辑,仅在每月第一根K线时遍历上月K线匹配最低价对应的时间,性能开销极低
  • 调用line.new时新增xloc=xloc.bar_time参数,指定x坐标使用时间戳解析规则,线条就会从最低价实际发生的K线位置开始延伸

内容的提问来源于stack exchange,提问作者Trade_Pine

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 17:48:02