TradingView三色成交量指标开发求助:含低量粉色柱标识规则
TradingView 三层分层成交量指标实现方案
核心判定规则
- 看涨行情量柱:当根K线收阳(收盘价高于开盘价),且不满足低量判定条件时,展示对应看涨标识颜色
- 看跌行情量柱:当根K线收阴(收盘价低于开盘价),且不满足低量判定条件时,展示对应看跌标识颜色
- 粉色低量柱:无论K线涨跌方向,只要当根成交量低于此前N个周期的参考量能阈值,就强制使用粉色标识,优先级高于涨跌方向的颜色判定
可直接运行的Pine Script 代码
//@version=5 indicator("分层量能指标", overlay=false, shorttitle="分层VOL", precision=0) // 可自定义参数区 lookbackN = input.int(20, title="低量判定回看周期数", minval=2, tooltip="计算前N个周期的平均量能作为低量判定阈值") colorBull = input.color(color.new("#26a69a", 0), title="看涨行情量柱颜色") colorBear = input.color(color.new("#ef5350", 0), title="看跌行情量柱颜色") colorLowVol = input.color(color.new("#ec407a", 0), title="低量标识颜色") colorDoji = input.color(color.new("#78909c", 0), title="十字星量柱颜色") // 判定逻辑计算 isBullBar = close > open isBearBar = close < open isDojiBar = close == open // 低量阈值计算:偏移1根K线,避免包含当前未走完的实时成交量 volThreshold = ta.sma(volume, lookbackN)[1] isLowVol = volume < volThreshold // 颜色优先级:低量标识 > 涨跌方向 > 十字星默认色 finalBarColor = isLowVol ? colorLowVol : isBullBar ? colorBull : isBearBar ? colorBear : colorDojiBar ? colorDoji : colorDoji // 绘制成交量柱 plot(volume, title="分层成交量", color=finalBarColor, style=plot.style_columns, linewidth=2)
自定义调整说明
- 低量判定逻辑可按需替换:如果需要用“低于此前N周期最低成交量”作为判定,可将
volThreshold = ta.sma(volume, lookbackN)[1]替换为volThreshold = ta.lowest(volume, lookbackN)[1];如果需要用分位数阈值(比如低于此前N周期20%分位的量能),可替换为volThreshold = ta.percentile_linear(volume, lookbackN, 20)[1] - 所有配置项均可在指标设置面板直接修改,无需改动代码:包括回看周期数、三类量柱及十字星柱的自定义颜色、柱体展示粗细
- 指标默认加载在独立副图区域,不会遮挡主图K线走势
内容的提问来源于stack exchange,提问作者wikbit
相关产品推荐
相关产品推荐

