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

如何将Pine Script V2成交量买卖动量指标转换为V5版本

Pine Script V2转V5:成交量买卖动量(VBSM)指标转换及中文注释

转换后的V5版本代码(带中文注释)

//@version=5
indicator(title="成交量买卖动量(VBSM)", shorttitle="VBSM", overlay=false)

// 输入参数:均线长度,最小值1
均线长度 = input.int(25, title="均线长度", minval=1)
// 计算收盘价1周期变动率
变动率 = ta.roc(close, 1)

// 缩量时累加变动率,否则延续前值
缩量动量 = ta.iff(volume < volume[1], ta.nz(缩量动量[1], 0) + 变动率, ta.nz(缩量动量[1], 0))
// 放量时累加变动率,否则延续前值
放量动量 = ta.iff(volume > volume[1], ta.nz(放量动量[1], 0) + 变动率, ta.nz(放量动量[1], 0))
// 总动量 = 缩量动量 + 放量动量
总动量 = 缩量动量 + 放量动量
// 总动量均线 = 缩量动量均线 + 放量动量均线
总动量均线 = ta.sma(缩量动量, 均线长度) + ta.sma(放量动量, 均线长度)

// 绘制总动量曲线(蓝色)
总动量曲线 = plot(总动量, color=color.new(color.blue, 0), title="PVI+NVI")
// 绘制总动量均线(红色)
均线曲线 = plot(总动量均线, color=color.new(color.red, 0), title="均线")

// 填充颜色:总动量大于均线时蓝色,否则红色
填充颜色 = 总动量 > 总动量均线 ? color.new(color.blue, 90) : color.new(color.red, 90)
fill(总动量曲线, 均线曲线, color=填充颜色)

转换说明

  1. 核心API适配:将V2的study()替换为V5标准的indicator(),指定overlay=false确保指标在独立窗口显示
  2. 输入参数升级:用input.int()替代原input(),符合V5类型规范
  3. 函数前缀统一:所有技术分析函数添加ta.前缀(如ta.roc、ta.sma),是V5的强制要求
  4. 变量命名优化:将原英文变量名改为中文,更易理解
  5. 填充透明度调整:新增color.new()设置填充区域透明度,提升视觉可读性

指标逻辑说明

  • 缩量动量:当当日成交量小于前一日时,累加收盘价的1周期变动率,否则保持前值
  • 放量动量:当当日成交量大于前一日时,累加收盘价的1周期变动率,否则保持前值
  • 总动量为缩量与放量动量之和,反映整体买卖动量变化
  • 总动量均线用于判断动量趋势,填充区域直观展示当前动量与趋势的相对位置

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 15:45:35