Как я могу перекрасить самую первую свечу на tradingview.com, используя сосновый скрипт, если он пробивает определенную цену? - PullRequest
0 голосов
/ 21 апреля 2020

Я бы хотел закрасить первую свечу другим цветом на 15-минутном графике в зависимости от определенных условий. Возможно ли это?

Я использую приведенный ниже код для окрашивания первой свечи в желтый или фиолетовый, если она удовлетворяет некоторым условиям, но, похоже, она также окрашивает все последующие свечи.

study(title="OR", shorttitle="OpeningRange", overlay=true)
up15on = input(true, title="15 Minute Opening Range High")
down15on = input(true, title="15 Minute Opening Range Low")
is_newbar(res) => change(time(res)) != 0 
adopt(r, s) => security(syminfo.tickerid, r, s) 
high_range = valuewhen(is_newbar('D'),high,0)
low_range = valuewhen(is_newbar('D'),low,0)
candle_color = close>adopt('15', high_range) ? color.purple :
 close<adopt('15', low_range) ? color.yellow :
 na
barcolor( candle_color )

1 Ответ

1 голос
/ 21 апреля 2020

Я предполагаю, что под первой свечой вы на самом деле имеете в виду последнюю, а не свечу, где bar_index = 0

. В этом случае вы можете использовать show_last в barcolor следующим образом:

barcolor(candle_color,show_last=1)

Это закрасит только последнюю свечу на графике. Если вы на самом деле имеете в виду первую свечу, то bar_index=0, тогда используйте:

barcolor(barstate.isfirst ? candle_color : na)

...