Tradeview: ошибка pinescript: ожидание «конца строки без продолжения строки» - PullRequest
1 голос
/ 22 марта 2019

Я получаю ошибку ниже при компиляции кода ниже в tradeview. В основном я пытаюсь использовать строку EMA / SMA для расчета MACD.

строка 20: несоответствующий вход 'ema', ожидающий 'конец строки без продолжения строки'

Может кто-нибудь дать мне знать, что мне здесь не хватает? Есть ли лучший способ кодировать это?

Кроме того, можем ли мы иметь несколько строк внутри оператора if-else или у меня должны быть только одиночные символы?

study("MACD BB - PRD")

//MACD Inputs
//---------------------------------------------------------------
fastLength  =   input(defval=12,     title="MACD.FastPeriod",   minval=1, maxval=50,  step=1) 
slowLength  =   input(defval=26,     title="MACD.SlowPeriod",   minval=1, maxval=200, step=1)
signalLength=   input(defval=9,      title="MACD.SignalLength", minval=1, maxval=100, step=1)
macdMode    =   input(defval="EMA",  title="MACD.AverageMode",  options=["EMA","SMA"])

//Bollinger Bands Inputs
//---------------------------------------------------------------
bbPeriod    =   input(defval=9,      title="MACD.SignalLength",          minval=1, maxval=100, step=1)
bbMultipler =   input(defval=1,      title="MACD.SignalLength",          minval=1, maxval=10,  step=0.1)
bbMode      =   input(defval="EMA",  title="BollingerBands.AverageMode", options=["EMA","SMA"])

//---------------------------------------------------------------
// MACD calculation
macd = if (macdMode == "EMA")
ema(close, fastLength) - ema(close, slowLength)  // line20
else
sma(close, fastLength) - sma(close, slowLength)

1 Ответ

1 голос
/ 22 марта 2019

Ваша проблема отступ . Вы должны сместить код внутри тела оператора if на 4 пробела или 1 табуляцию.

// MACD calculation
macd = if (macdMode == "EMA")
    ema(close, fastLength) - ema(close, slowLength)  // line20
else
    sma(close, fastLength) - sma(close, slowLength)

можем ли мы иметь несколько строк внутри оператора if-else или я должен быть просто односложно?

Да.

Существует полезное руководство по 1013 * Pine Script от TradingView, которое может вам помочь.

...