First Bar Range

pine

New member
I am interested in the high/low horizontal lines for the first bar of the day, doesn't matter which intraday time frame. I was able to accomplish most of what I need using the following code. How do I get the horizontal lines to span the whole day and not just the first bar? Thanks!

Code:
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;
def h = if !timecondition then na else high;
def l = if !timecondition then na else low;

plot marketHigh = h;
marketHigh.SetDefaultColor(color.green);
marketHigh.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);
#marketHigh.SetPaintingStrategy(PaintingStrategy.LINE);

plot marketLow = l;
marketLow.SetDefaultColor(color.red);
marketLow.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);

addchartbubble(timecondition,high, "High: "+ high, color.green, yes);
addchartbubble(timecondition,low, "Low: "+ low, color.red, no);

sWTzM45.png
 

generic

Active member
@pine Removed all the extra code. You'll need to change the chartlabel condition as well.
Code:
def condition = SecondsFromTime(0930) == 0 && SecondsTillTime(0930) == 0;
def h = if condition then high else h[1];
def l = if condition then low else l[1];
 

pine

New member
@pine Removed all the extra code. You'll need to change the chartlabel condition as well.
Code:
def condition = SecondsFromTime(0930) == 0 && SecondsTillTime(0930) == 0;
def h = if condition then high else h[1];
def l = if condition then low else l[1];

That worked perfectly! Thank you!

Updated code:

Code:
def condition = SecondsFromTime(0930) == 0 && SecondsTillTime(0930) == 0;
def h = if condition then high else h[1];
def l = if condition then low else l[1];

plot firstBarHigh = h;
firstBarHigh.SetDefaultColor(color.green);
firstBarHigh.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);

plot firstBarLow = l;
firstBarLow.SetDefaultColor(color.red);
firstBarLow.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);

addchartbubble(condition,high, "High: "+ h, color.white, yes);
addchartbubble(condition,low, "Low: "+ l, color.white, no);

ohMzFTe.png
 

Similar threads

Top