如何在策略脚本中解决此错误

问题描述 投票:0回答:1

帮助我修复策略脚本中的错误“无法从以下语言翻译脚本:| B | a:= n 。在我看来,该错误发生在第一个指标的最后一行。在我看来,这是一个积分器字符串。enter link description here另外没有战略,指标就没有问题了。

strategy("Strategy long ", overlay=true)

//study("Trend Step")
length = input(50)
src = close
dev = stdev(src,length)*2
a = 0.
a := n < length ? src : src > nz(a[1],src) + dev ? src : src < nz(a[1],src) - dev ? src : a[1]

//study("Slowema")
slow_ema_period = input(20,"Slow EMA Period")
avg_price = input(hlc3)
smooth_length = input(5, minval=1)
fast_end = input(2.5,step=.5)
slow_end = input(20)
abs_noise = abs(avg_price - avg_price[1])
noise = sum(abs_noise, smooth_length)
signal = abs(avg_price - avg_price[smooth_length])
smooth = pow(iff(noise != 0, signal / noise, 0) * (2/(fast_end + 1) - 2/(slow_end + 1)) + 2/(slow_end + 1), 2) 
avg_ma = nz(avg_ma[1]) + smooth * (avg_price - nz(avg_ma[1]))
ha_symbol = heikinashi(tickerid)
ha_close = security(ha_symbol, period, avg_ma)
slow_ema = ema(ha_close,slow_ema_period)

plot(a,color=color.lime,linewidth=2,transp=0)
plot(slow_ema,color=yellow,linewidth=2,style=line)

//Strategy
longCondition =  crossover(a,slow_ema) 
closeCondition = crossunder(a,slow_ema)
strategy.entry("long",strategy.long,when = longCondition)
strategy.close("long",when = closeCondition)
pine-script algorithmic-trading indicator
1个回答
0
投票

您是否只是复制随机代码,将它们放在一起,然后将结果扔到这里?我在您的脚本中看到了三个不同版本的pine。当然,采用这种方法后,您会得到一些奇怪的错误。您能否对别人表示敬意并编写自己的代码,或者至少学习一些有关pine编程的知识?首先,主要问题是冗余代码a = 0.。应该只是a = n < length ... etc

第二个问题:color.lime应该为lime

© www.soinside.com 2019 - 2024. All rights reserved.