How to Plot First Bar of Day


New member
2019 Donor
I am looking for a way to determine the value of the close of the first 1 minute bar.

Getting the open is fairly straight forward:

def openValue = open(period = AggregationPeriod.DAY);

Getting the Range of the first bar is fairly straightforward as well since we define a range (1 min) and return the high/low of that range. But I can't figure out a good way for the close.

If anybody can help, I would really appreciate it.


New member
2019 Donor
Someone helped me figure it out, thanks anyways!

15:01 Mobius©: Time Bracket: Objective, get first bar of RTH

def FirstBar = if SecondsFromTime(0930) == 0 and
SecondsTillTime(0930) == 0
               then get barNumber()
               else FirstBar[1];

15:10 Krafty: Mobius - I can understand how that code would work on a chart, where the code is called repeatedly, but I still don't understand how something like barNumber() would work in a scan that only calls it once. Would I put that in a script and use parameters for the brackets?

5:13 Mobius©: Krafty - a scan is a one pass event but the bar numbers are still there. The limitations are different in the scanner. As long as you don't try to go to far back it works exactly like the charts do. If you make it a dynamic scan it updates about every 3 minutes.

def na = double.nan;
def condition = if SecondsFromTime(0930) == 0 && SecondsTillTime(0930) == 0
                            then barNumber()
                            else na;
def StartBar = condition;
def StartBarOpen =  if barNumber() == StartBar
                                    then open
                                    else StartBarOpen[1];
def timecondition = if !isnan(startBarOpen)
                                    then startbarOpen
                                    else na;
addchartbubble(timecondition,HIGH,"Market Open");


New member
Hi all, is it possible to create an indicator to show the first bar of any moving average? The indicator could be an arrow or a vertical line to highlight it.

#plot line from open of first bar of day
def day = getDay();
def firstBar = day != day[1];
AssignPriceColor(if firstBar then color.ORANGE else color.CURRENT);
rec dayOpen = if firstBar then high else dayOpen[1];
plot x = dayOpen;