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

如何修改Pine Script V5代码检测Order Block与FVG重叠并标记

Pine Script V5 实现Order Block与FVG重叠标记功能

核心实现逻辑

要实现重叠标记,核心是判断Order Block(OB)的价格区间与Fair Value Gap(FVG)的价格区间是否存在交集,具体判断规则:

  • 看涨OB(Bullish OB):OB区间为[obLow, obHigh],FVG区间为[fvgLow, fvgHigh],当obLow <= fvgHigh and obHigh >= fvgLow时判定重叠
  • 看跌OB(Bearish OB):判断逻辑同上,区间存在交集即判定重叠

修改后的完整代码

//@version=5
indicator("OB & FVG Overlap Marker", overlay=true)

// -------------------------- 替换为你自己的OB检测逻辑 --------------------------
// 示例看涨Order Block检测(请替换成你原有代码)
bullishOB = ta.close > ta.open and ta.close[1] < ta.open[1] and ta.close[2] < ta.open[2]
bullOBLow = ta.low[1]
bullOBHigh = ta.high[1]

// 示例看跌Order Block检测(请替换成你原有代码)
bearishOB = ta.close < ta.open and ta.close[1] > ta.open[1] and ta.close[2] > ta.open[2]
bearOBLow = ta.low[1]
bearOBHigh = ta.high[1]

// -------------------------- 替换为你自己的FVG检测逻辑 --------------------------
// 示例FVG(失衡区间)检测(请替换成你原有代码)
fvgExists = ta.high[1] < ta.low[3] or ta.low[1] > ta.high[3]
fvgLow = ta.min(ta.low[3], ta.low[1])
fvgHigh = ta.max(ta.high[3], ta.high[1])

// -------------------------- 重叠检测与标记绘制 --------------------------
// 通用重叠判断函数
isOverlap(obLow, obHigh, fvgLow, fvgHigh) =>
    obLow <= fvgHigh and obHigh >= fvgLow

// 绘制看涨OB与FVG重叠的绿色圆形
bullOverlap = bullishOB and fvgExists and isOverlap(bullOBLow, bullOBHigh, fvgLow, fvgHigh)
var color bullMarkColor = color.new(color.green, 0)
circle.new(bar_index[1], (bullOBLow + bullOBHigh)/2, size=size.small, color=bullMarkColor, style=circle.style_circle, border_width=2)

// 绘制看跌OB与FVG重叠的红色圆形
bearOverlap = bearishOB and fvgExists and isOverlap(bearOBLow, bearOBHigh, fvgLow, fvgHigh)
var color bearMarkColor = color.new(color.red, 0)
circle.new(bar_index[1], (bearOBLow + bearOBHigh)/2, size=size.small, color=bearMarkColor, style=circle.style_circle, border_width=2)

// -------------------------- 保留你原有绘制代码(可选) --------------------------
// 示例绘制OB
plotshape(bullishOB, title="Bullish OB", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(bearishOB, title="Bearish OB", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)
// 示例绘制FVG区间
box.new(bar_index[3], fvgLow, bar_index[1], fvgHigh, color=color.new(color.blue, 80), border_color=color.blue)

关键说明

  1. 代码替换提示:将示例中的OB/FVG检测逻辑,直接替换成你已有的对应代码即可,无需改动重叠判断和标记绘制部分
  2. 标记位置:圆形默认绘制在OB区间的中点,确保精准对应重叠区域
  3. 性能优化:用var声明颜色变量,避免每根K线重复创建对象

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 23:00:04