#Opening Range Breakout #http://tradethebid.blogspot.com/p/test.html input ShowORB = Yes; input ORBRange = 30; def Market_Open_Time = 930; def Market_Close_Time = 1600; def day = GetDay(); def pastOpen = If((SecondsTillTime(Market_Open_Time) > 0), 0, 1); def pastClose = If((SecondsTillTime(Market_Close_Time) > 0), 0, 1); def IsmarketOpen = If(pastOpen and !pastClose, 1, 0); def firstBar = If (day[1] != day, day – 1, 0); def secondsUntilOpen = SecondsTillTime(Market_Open_Time); def regularHours = SecondsTillTime(Market_Close_Time); def secondsFromOpen1 = SecondsFromTime(Market_Open_Time); def pastOpeningRange = If(secondsFromOpen1 >= ((ORBRange - 15) * 60), 1, 0); input marketOpenTime = 0730; input marketCloseTime = 1600; def closeByPeriod = close(period = “DAY”)[-1]; def secondsFromOpen = SecondsFromTime(marketOpenTime); def secondsTillClose = SecondsTillTime(marketCloseTime); def marketOpen = if secondsFromOpen >= 0 and secondsTillClose > 0 then yes else no; def newDay = if !IsNaN(closeByPeriod) then 0 else 1; def today = if GetDay() == GetLastDay() and SecondsFromTime(marketOpenTime) >= 0 then 1 else 0; rec displayedHigh = If(high > displayedHigh[1] and IsmarketOpen and ShowORB, high, If(IsmarketOpen and !firstBar, displayedHigh[1], high)); rec displayedLow = If(low < displayedLow[1] and IsmarketOpen and ShowORB, low, If(IsmarketOpen and !firstBar, displayedLow[1], low)); rec ORHigh = If(pastOpeningRange, ORHigh[1], displayedHigh); rec ORLow = If(pastOpeningRange, ORLow[1], displayedLow); plot Scan = If(marketOpen and newDay and today and pastOpeningRange and IsmarketOpen and ShowORB, ORHigh, Double.NaN);