繁体   English   中英

为什么我不能合并 PineScript V1 代码和 V5 代码上的交易视图指标,这一直给我错误?

[英]Why cant I merge trading view indicators on PineScript V1 Code and V5 code which keeps giving me errors?

当我尝试在 Tradingview 上合并两个指标时,谁能告诉我我做错了什么? 一个指标代码是V5,另一个是V1。 为什么不能将它们合并为一个指标? 我不知道我在做什么,因为我对这一切都很陌生。 以下是我正在复制粘贴的两个指标的代码,其中包含迄今为止编写的所有逻辑。

//@version=5

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/

indicator(title='SUPER TREND CANDLES', overlay=true, shorttitle='STC')
src = close
len = input.int(8, minval=1, title='Length')
up = ta.rma(math.max(ta.change(src), 0), len)
down = ta.rma(-math.min(ta.change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - 100 / (1 + up / down)

//coloring method below``
src1 = close
len = input.int(8, minval=1, title='Length')
src2 = close
len2 = input.int(50, minval=1, title='DownLevel')
   rsi > len1
isdown() =>
   rsi < len2
isdown_1 = isdown()
barcolor(isup() ? color.green : isdown_1 ? color.red : an)

//study('buy/sell arrows', overlay=true)

out = ta.sma(close, 50)
data = rsi > len1 ? open[1] > close[1] ? close > open ? close >= open[1] ? close[1] >= open ? close - open > open[1] - close[1] ? high > out : na : na : na : na : na : na
data1 = rsi < len2 ? close[1] > open[1] ? open > close ? open >= close[1] ? open[1] >= close ? open - close > close[1] - open[1] ? low < out : na : na : na : na : na : an


ema1 = input(34, minval=1, maxval=300, title="EMA UpTrend")
shema = input(true, title="Show EMA Trend is Based On?")

usedEma = ema(close, ema1)

emaUpColor() => hlc3 >= usedEma
emaDownColor() => hlc3  < usedEma


col = hlc3  >= usedEma ? lime : hlc3  < usedEma ? red : white

barcolor(emaUpColor() ? lime: emaDownColor() ? red : an)
plot(shema and usedEma ? usedEma : na, title="EMA", style=line, linewidth=3, color=col

当我尝试将这两个代码合并到一个指标时,我收到以下错误....

添加到图表操作失败,原因:第 34 行:arguments 'maxval'、'minval' 和 'step' 不能与 input() function 一起使用。 您可以使用 input.int() 或 input.float() 函数来指定输入数据值的范围。

在我开始破坏我的电脑之前,请帮我解决这个问题。 多谢你们。

错误消息告诉您解决方案。 如果你想使用minvalmaxval arguments,你不能使用普通的input() function。

您应该改用input.int()input.float()

ema1 = input.int(34, minval=1, maxval=300, title="EMA UpTrend")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM