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

如何在Pine Script中获取连续两根K线的总区间?

在Pine Script中计算指定连续K线的合并区间

如果你需要在当前周期内,计算连续N根K线的合并区间(而非切换到高周期),核心思路是利用Pine Script的回溯函数,提取目标K线段的最高、最低价,以及可选的合并后开收盘价。

一、固定数量连续K线的合并区间

直接使用ta.highest()和ta.lowest()函数指定回溯数量,就能快速拿到合并区间的上下限,同时可提取合并段的首尾开收盘价:

//@version=5
indicator("固定数量K线合并区间", overlay=true)

// 可自定义的合并K线数量
mergeCount = input.int(2, title="合并K线数", minval=2)

// 计算合并区间的关键数值
mergeHigh = ta.highest(high, mergeCount)  // 合并段最高价(区间上沿)
mergeLow = ta.lowest(low, mergeCount)    // 合并段最低价(区间下沿)
mergeOpen = open[mergeCount - 1]         // 合并段第一根K线的开盘价
mergeClose = close                       // 合并段最后一根K线的收盘价

// 可视化合并区间的高低边界
plot(mergeHigh, color=color.red, linewidth=2, title="合并区间高点")
plot(mergeLow, color=color.green, linewidth=2, title="合并区间低点")

// 可选:绘制合并后的实体K线
var line mergedBody = na
if barstate.islast
    mergedBody := line.new(bar_index - mergeCount + 1, mergeOpen, bar_index, mergeClose, width=3, color=color.blue)

代码说明:

  • ta.highest(high, mergeCount):回溯mergeCount根K线,返回这段内的最高价,即合并区间的顶部
  • ta.lowest(low, mergeCount):返回这段内的最低价,即合并区间的底部
  • open[mergeCount - 1]:当前K线往前数mergeCount-1根,就是合并段的第一根K线,取其开盘价作为合并后的开盘价
  • close:当前K线的收盘价即为合并段的最后一根收盘价

二、自定义时间范围的合并区间

如果需要按时间长度(比如过去15分钟)而非K线数量计算合并区间,可通过时间戳判断+回溯计数实现:

//@version=5
indicator("时间范围K线合并区间", overlay=true)

// 自定义合并时间范围(单位:分钟)
timeWindow = input.int(15, title="合并时间范围(分钟)")

// 计算时间窗口的起始时间戳(当前时间减去窗口时长)
windowStart = time - timeWindow * 60 * 1000

// 找到超出时间窗口的最近K线位置,计算窗口内的高低点
barsInWindow = ta.barssince(time < windowStart) + 1
rangeHigh = ta.highest(high, barsInWindow)
rangeLow = ta.lowest(low, barsInWindow)

// 绘制时间窗口的合并区间
plot(rangeHigh, color=color.orange, linewidth=2, title="时间窗口高点")
plot(rangeLow, color=color.purple, linewidth=2, title="时间窗口低点")

代码说明:

  • ta.barssince(time < windowStart):返回距离当前K线最近的、时间超出窗口起始点的K线数量,加1后得到窗口内的K线总数
  • 再用ta.highest()和ta.lowest()提取这段K线的高低点,得到时间窗口内的合并区间

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 13:54:52