You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

求TradingView PineScript新手易懂示例:识别5%以上跳空缺口

如何在Pine Script中识别并标记5%以上的跳空缺口?

嘿,我完全懂你从Java/C++转到Pine Script的那种别扭感——强类型、面向对象的思维突然切换到Pine这种声明式、面向图表的脚本,确实需要点适应时间。别担心,我给你写一个清晰易懂的脚本,完全实现你要的功能,还会逐行解释,帮你快速上手。

先明确你的需求逻辑:

若当日开盘价与前一日收盘价差值>5%,则根据跳空方向绘制绿色或红色圆圈。

完整实现代码

//@version=5
indicator("5%跳空缺口识别", overlay=true)

// 计算跳空幅度百分比
gapPercent = (open - close[1]) / close[1] * 100

// 定义向上/向下跳空的条件
bullishGap = gapPercent > 5  // 开盘较前收盘涨超5%
bearishGap = gapPercent < -5 // 开盘较前收盘跌超5%

// 在对应位置绘制标记圆圈
plotshape(bullishGap, title="向上跳空", location=location.belowbar, 
          color=color.green, style=shape.circle, size=size.small)
plotshape(bearishGap, title="向下跳空", location=location.abovebar, 
          color=color.red, style=shape.circle, size=size.small)

逐行解释(帮你理解Pine的核心逻辑)

  • //@version=5:指定使用Pine Script第5版,这是当前最常用的稳定版本,语法更简洁友好。
  • indicator("5%跳空缺口识别", overlay=true):声明这是一个指标脚本,overlay=true让指标直接叠加在K线图上,不用单独开子窗口,看盘更直观。
  • gapPercent = (open - close[1]) / close[1] * 100
    • open是当前K线的开盘价,close[1]前一根K线的收盘价(Pine用方括号[n]引用n周期前的历史数据,这和Java/C++的数组索引逻辑有点像,但这里是针对每根K线的回溯)。
    • 计算逻辑就是“(当日开盘-前收盘)/前收盘 ×100”,得到跳空的百分比幅度。
  • bullishGap = gapPercent > 5:判断当前K线是否是向上跳空(幅度超过5%)。
  • bearishGap = gapPercent < -5:判断当前K线是否是向下跳空(幅度超过5%,也就是跌超5%)。
  • plotshape():Pine的绘图函数,用来绘制各种形状:
    • location.belowbar表示把绿色圆圈画在向上跳空K线的下方,location.abovebar把红色圆圈画在向下跳空K线的上方,方向对应更清晰。
    • size.small控制圆圈大小,你也可以改成size.mediumsize.large调整视觉效果。

新手适配小贴士

  • Pine是逐K线执行的:每一根K线都会从头执行一遍脚本逻辑,这和Java/C++的线性执行思维差异较大,多写几个小脚本就能快速适应。
  • 灵活调整参数:如果想要识别3%的跳空,直接把5-5改成3-3就行,非常方便。
  • 实时调试:在TradingView里右键点击图表上的指标,选择“编辑”就能修改代码,点击“添加到图表”就能实时预览效果,调试成本很低。

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

火山引擎 最新活动