Pine Script代码问题:无法标记高点低于下一根K线收盘价的K线
修复Pine Script标记高点低于下一根K线收盘价的问题
你的代码核心错误是引用了错误的K线收盘价:原代码里的close[1]指向的是当前K线的前一根收盘价,而你需要判断的是当前K线高点低于下一根K线的收盘价,应该用close[-1](Pine Script中[-n]代表n根之后的K线数据)。
修复后的代码如下:
//@version=5 indicator("Mark High < Next Close", overlay=true) condition = high < close[-1] plotshape(condition, title="High < Next Close", style=shape.arrowup, location=location.belowbar, color=color.green)
关键修改说明:
- 修正条件逻辑:将
close[1]改为close[-1],准确指向当前K线的下一根收盘价。 - 新增
indicator()声明:Pine Script v5需要显式声明指标,加上overlay=true让标记直接显示在K线图上。 - 调整箭头位置:把
location改为location.belowbar,箭头会显示在符合条件的K线下方,更直观(颜色可根据需求自行修改)。
注意事项:
使用close[-1]会触发Pine Script的「未来数据」警告,这是正常现象——因为你的需求本身需要用到下一根K线的数据来判断当前K线,属于合理的未来引用,无需担心。
内容的提问来源于stack exchange,提问作者Flow
相关产品推荐
相关产品推荐

