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

合并Bollinger Band与Triple EMA Crossover指标时找不到study函数求助

问题排查

你遇到的报错核心由三个语法问题导致:

  • 单个Pine Script脚本不允许同时声明两个版本,你在首行声明了//@version=5,第16行又重复声明//@version=3,版本冲突导致语法解析异常
  • Pine Script v5已经废弃study()函数,统一使用indicator()声明指标,你TEMA部分用的v3版本study()语法在v5环境下无法识别,这是你收到报错的直接原因
  • 两个指标合并不需要重复声明指标头,仅需保留1个v5版本的indicator()声明即可,同时TEMA部分的v3语法需要适配v5的调用规则
修复后完整代码
//@version=5
indicator(shorttitle="BB+TEMAC", title="Bollinger Bands + TEMA Crossover", overlay=true, timeframe="", timeframe_gaps=true)
// 布林带逻辑
length = input.int(20, minval=1, title="BB Length")
src = input(close, title="BB Source")
mult = input.float(2.0, minval=0.001, maxval=50, title="BB StdDev Multiplier")
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
offset = input.int(0, "BB Offset", minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
fill(p1, p2, title = "BB Background", color=color.rgb(33, 150, 243, 95))

// TEMA交叉逻辑
len1 = input.int(10, minval=1, title="TEMA Length 1")
len2 = input.int(20, minval=2, title="TEMA Length 2")
ema1 = ta.ema(close, len1)
ema11 = ta.ema(ema1, len1)
ema111 = ta.ema(ema11, len1)
tema1 = 3 * (ema1 - ema11) + ema111
ema2 = ta.ema(close, len2)
ema22 = ta.ema(ema2, len2)
ema222 = ta.ema(ema22, len2)
tema2 = 3 * (ema2 - ema22) + ema222
plot(tema1, color=color.black, alpha=20, title="TEMA 1")
plot(tema2, color=color.maroon, alpha=20, title="TEMA 2")
关键修改说明
  • 移除重复的版本声明和study()声明,统一使用v5版本的单个indicator()头,调整指标标题适配合并后的功能
  • 给TEMA部分的所有ema函数添加ta.前缀,符合v5内置技术指标函数的调用规则
  • 将TEMA部分的input()替换为更规范的input.int(),明确输入参数类型
  • 将原v3语法的transp参数替换为v5推荐的alpha参数,实现相同的透明度效果
  • 给两个指标的参数添加区分前缀,避免参数命名冲突

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 02:36:04