pine-script - 找不到函数或函数引用“ema”
问题描述
我收到错误第 13 行:找不到函数或函数引用“ema”。当我知道 ema 是一个函数时。
我正在尝试做一个简单的策略,如果价格高于 200 DEMA,则进入多头交易,并且 SuperTrend 指标发出“买入”信号。如果 SuperTrend 指标给出“卖出”信号,我想卖出。我的代码是否朝着正确的方向发展?真的很感激一些帮助!
//@version=5
strategy("DEMA and SuperTrend", overlay=true)
// SuperTrend
atrPeriod = input(12, "ATR Length")
factor = input.float(3.0, "Factor", step = 0.01)
[_, direction] = ta.supertrend(factor, atrPeriod)
// DEMA
demaLength = input(200)
src = input(close, title="Source")
e1 = ema(src, demaLength)
e2 = ema(e1, demaLength)
dema = 2 * e1 - e2
if ta.change(direction) < 0 and close > dema
strategy.entry("long", strategy.long)
if ta.change(direction) > 0
strategy.close("long", strategy.close)
解决方案
v5 pine 中有新的命名空间。例如ema()
现在是ta.ema()
https://www.tradingview.com/pine-script-reference/v5/#fun_ta{dot}ema