Отображать вертикальную полосу при каждом изменении тренда

#pine-script

Вопрос:

По какой-то причине иногда предыдущий бар возвращает значение false, когда оно должно быть истинным. Я пытаюсь отображать вертикальную полосу всякий раз, когда меняется тренд.

Я создал тестовый индикатор на основе супертренда, и вы можете видеть, что при ссылке на предыдущее значение он иногда не работает (вертикальная линия не отображается), но если я ссылаюсь на значение 2 бара назад, отображается вертикальная линия!

 //@version=5 indicator("test", overlay=true, timeframe="3", timeframe_gaps=false) atrPeriod = input(25, "ATR Length") factor = input.float(15, "Factor", step = 0.01)   [supertrend, direction] = ta.supertrend(factor, atrPeriod) supertrendUp = direction lt; 0 supertrendUpPrev = direction[1] lt; 0  supertrendDown = direction gt; 0  supertrendDownPrev = direction[1] gt; 0   bodyMiddle = plot((open   close) / 2, display=display.none) upTrend = plot(direction lt; 0 ? supertrend : na, "Up Trend", color = color.green , style=plot.style_linebr, linewidth=3) downTrend = plot(direction gt; 0? supertrend : na, "Down Trend", color = color.red, style=plot.style_linebr, linewidth=3)  // bgcolor(supertrendDown ? color.purple : na) // bgcolor(supertrendUp ? color.yellow :na)  //doesn't always work bgcolor(direction lt; 0 and direction[1] gt; 0 ? color.green : na) bgcolor(direction gt; 0 and direction[1] lt; 0 ? color.red : na)  //seems to work //bgcolor(direction lt; 0 and direction[2] gt; 0 ? color.green : na) //bgcolor(direction gt; 0 and direction[2] lt; 0 ? color.red : na)  

Вызовы на direction[1] gt; 0 и gt; direction[1] направление[2] gt; 0 и направление[2] gt;

Обратите внимание, что вертикальные полосы не отображаются со direction[1] значениями…

введите описание изображения здесь

Комментарии:

1. Можете ли вы прикрепить скриншот? В моем случае это работает.