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

如何在TradingView Pine Script中获取交易时段的最高高点、最低低点与收盘价

Pine Script 获取特定交易时段高低收数值实现方案

核心实现逻辑是先匹配目标交易时段的时间边界,再在边界范围内统计对应行情值,具体实现步骤如下:

  • 第一步:定义目标时段筛选规则
    使用内置time()函数匹配你需要的时段范围,示例如下:
// 示例匹配北京时间每日15:00-23:00的交易时段,时区参数可根据需求调整为"UTC"或交易所时区
inTargetSession = time(timeframe.period, "1500-2300", "UTC+8")

如果需要匹配周、月维度的特定时段,修改第二个参数即可,比如匹配每月1-15日的时段,参数改为"01-15:D"。

  • 第二步:统计时段内最高高(highest high)、最低低(lowest low)
    通过检测时段开始边界来重置统计值,累加计算当前时段的高低极值:
// 检测时段开始节点
sessionStart = ta.change(inTargetSession) and inTargetSession
// 定义变量存储时段极值,时段开始时重置数值
var float sessionHH = na
var float sessionLL = na
sessionHH := sessionStart ? high : ta.highest(high, ta.barssince(sessionStart) + 1)
sessionLL := sessionStart ? low : ta.lowest(low, ta.barssince(sessionStart) + 1)
  • 第三步:获取时段结束时的收盘价
    检测时段结束节点,存储时段最后一根K线的收盘价:
// 检测时段结束节点
sessionEnd = ta.change(inTargetSession) and not inTargetSession
// 存储时段收盘价,仅在时段结束时更新
var float sessionClose = na
sessionClose := sessionEnd ? close[1] : sessionClose

注意:如果你的脚本运行在低于1小时的时间级别(比如1分钟、5分钟K线),需要确保时段长度覆盖足够的K线数量,避免统计遗漏;时区参数要和你K线的显示时区一致,否则会出现时段偏移问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 01:09:04