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

如何在Pine Script中判断当前bar_index是否为枢轴高点?

在Pine Script中实时判断枢轴高点

为什么默认ta.pivothigh无法实时识别

ta.pivothigh(leftBars, rightBars)的核心逻辑是:只有当枢轴高点右侧的rightBars根K线全部走完后,才会在对应枢轴高点的位置返回true。比如你设置rightBars=2,枢轴高点出现在bar索引10,那只有当bar索引走到12时,ph[2]才会显示true——在bar10和bar11时,你无法通过这个函数直接知道bar10是枢轴高点。

解决方案1:自定义实时识别逻辑(确认型)

如果你想在右侧rightBars根K线走完的瞬间,就标记出对应的枢轴高点(而不是依赖默认函数的回溯索引),可以自己实现判断逻辑:

//@version=5
indicator("实时枢轴高点识别", overlay=true)

leftBars = input.int(2, "左侧对比K线数")
rightBars = input.int(2, "右侧对比K线数")

// 自定义函数:判断当前K线的前_rightBars根K线是否是枢轴高点
isConfirmedPivotHigh(_left, _right) =>
    pivotBarIdx = bar_index - _right
    // 获取候选枢轴高点的价格
    pivotHigh = high[_right]
    // 候选点左侧_left根K线的最高值(不包含候选点本身)
    leftHighest = ta.highest(high, _left)[_right + 1]
    // 候选点右侧_right根K线的最高值(包含当前K线之前的_right根)
    rightHighest = ta.highest(high, _right)
    // 候选点高点同时大于左右两侧的最高值
    pivotHigh > leftHighest and pivotHigh > rightHighest

// 实时确认枢轴高点
confirmedPH = isConfirmedPivotHigh(leftBars, rightBars)

// 标记枢轴高点
var label[] phLabels = array.new_label()
if confirmedPH
    // 在对应的枢轴高点K线绘制标记
    lbl = label.new(bar_index - rightBars, high[rightBars], "枢轴高点", color=color.red, style=label.style_label_down)
    array.push(phLabels, lbl)

这段代码会在右侧rightBars根K线走完的瞬间,在对应的枢轴高点K线上绘制标记,不需要你手动回溯索引。

解决方案2:识别潜在枢轴高点(预判型)

如果你想在当前K线走完时,就判断它是否满足枢轴高点的左侧条件(成为潜在候选),可以用以下逻辑:

//@version=5
indicator("潜在枢轴高点识别", overlay=true)

leftBars = input.int(2, "左侧对比K线数")
rightBars = input.int(2, "右侧对比K线数")

// 判断当前K线是否是左侧_leftBars根中的最高点
isPotentialPivotHigh(_left) =>
    currentHigh = high
    leftHighest = ta.highest(high, _left)
    currentHigh > leftHighest

// 潜在枢轴高点标记
potentialPH = isPotentialPivotHigh(leftBars)

// 绘制潜在候选标记
plotshape(potentialPH, location=location.abovebar, color=color.orange, style=shape.triangledown, size=size.small, title="潜在枢轴高点")

这种方式会在当前K线走完时,只要它的高点超过左侧leftBars根K线的最高点,就标记为潜在枢轴高点。后续随着右侧K线的走完,你可以再结合方案1的逻辑确认它是否真的是枢轴高点。

关键说明

  • 真正的枢轴高点必须满足左右两侧K线高点都低于自身,所以必然需要等待右侧rightBars根K线走完才能100%确认,没有办法在当前K线走完时就完全确定(除非你接受预判)。
  • 自定义逻辑可以让你更灵活地控制识别时机,无论是提前标记候选,还是在确认瞬间立刻定位枢轴高点。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 20:45:38