#pine-script
Вопрос:
Привет, я пытаюсь сделать свой формат сюжетной линии ADX условным. Я бы хотел, чтобы он стал зеленым, когда До сих пор у меня есть следующее, но я не могу заставить его работать
////////ADX
len = input(14)
th = input(0.15)
TrueRange = max(max(high-low, abs(high-nz(close[1]))), abs(low-nz(close[1])))
DirectionalMovementPlus = high-nz(high[1]) > nz(low[1])-low ? max(high-nz(high[1]), 0): 0
DirectionalMovementMinus = nz(low[1])-low > high-nz(high[1]) ? max(nz(low[1])-low, 0): 0
SmoothedTrueRange = 0.0
SmoothedTrueRange := nz(SmoothedTrueRange[1]) - (nz(SmoothedTrueRange[1])/len) TrueRange
SmoothedDirectionalMovementPlus = 0.0
SmoothedDirectionalMovementPlus := nz(SmoothedDirectionalMovementPlus[1]) - (nz(SmoothedDirectionalMovementPlus[1])/len) DirectionalMovementPlus
SmoothedDirectionalMovementMinus = 0.0
SmoothedDirectionalMovementMinus := nz(SmoothedDirectionalMovementMinus[1]) - (nz(SmoothedDirectionalMovementMinus[1])/len) DirectionalMovementMinus
DIPlus = SmoothedDirectionalMovementPlus / SmoothedTrueRange
DIMinus = SmoothedDirectionalMovementMinus / SmoothedTrueRange
DX = abs(DIPlus-DIMinus) / (DIPlus DIMinus)
ADX = sma(DX, len)
adxup = ADX>=0.15
adxdown = ADX<0.15
plotColour = (ADX > 0.15) ? green : red
plot(ADX, color=plotColour, linewidth=3)
hline(th, color=color.black)
Ответ №1:
надеюсь, с тобой все в порядке.
сегодня вышел v5, так что это может быть смесь версий, а также этот сценарий выглядит так, как будто он, возможно, пришел из v3. Вы должны быть готовы и работать, обеспечив наличие следующих строк: сначала нам нужно убедиться, что версия 4 и указано это исследование. Далее на нашей линии цвета участка нам нужно изменить цвет с зеленого на цвет.зеленый и т.д., Как показано ниже
//@version=4
study('Blake ADX')
plotColour = (ADX > th) ? color.green : color.red
В качестве альтернативы мы могли бы довести все работы до v5:
//@version=5
indicator('Blake ADX')
len = input(14)
th = input(0.15)
TrueRange = math.max(math.max(high - low, math.abs(high - nz(close[1]))), math.abs(low - nz(close[1])))
DirectionalMovementPlus = high - nz(high[1]) > nz(low[1]) - low ? math.max(high - nz(high[1]), 0) : 0
DirectionalMovementMinus = nz(low[1]) - low > high - nz(high[1]) ? math.max(nz(low[1]) - low, 0) : 0
SmoothedTrueRange = 0.0
SmoothedTrueRange := nz(SmoothedTrueRange[1]) - nz(SmoothedTrueRange[1]) / len TrueRange
SmoothedDirectionalMovementPlus = 0.0
SmoothedDirectionalMovementPlus := nz(SmoothedDirectionalMovementPlus[1]) - nz(SmoothedDirectionalMovementPlus[1]) / len DirectionalMovementPlus
SmoothedDirectionalMovementMinus = 0.0
SmoothedDirectionalMovementMinus := nz(SmoothedDirectionalMovementMinus[1]) - nz(SmoothedDirectionalMovementMinus[1]) / len DirectionalMovementMinus
DIPlus = SmoothedDirectionalMovementPlus / SmoothedTrueRange
DIMinus = SmoothedDirectionalMovementMinus / SmoothedTrueRange
DX = math.abs(DIPlus - DIMinus) / (DIPlus DIMinus)
ADX = ta.sma(DX, len)
adxup = ADX >= th
adxdown = ADX < th
plotColour = adxup ? color.green : color.red
plot(ADX, color=plotColour, linewidth=3)
hline(th, color=color.black)
Приветствия от коллеги-канадца 😉
Комментарии:
1. Спасибо, Бьоргум. Мне действительно нужно купить тебе выпить или 10 🙂