Hi
I have this code that seems to work fine but it doesn't show ONH and ONL previous days
Is it possible to make it show all the previous days?
Thanks
I have this code that seems to work fine but it doesn't show ONH and ONL previous days
Is it possible to make it show all the previous days?
Thanks
Code:
input aggregationPeriod = AggregationPeriod.DAY;
input length = 1;
#input displace = -1;
input displace_amount = {default zero, negative_one};
input price = open;
def displacement;
switch (displace_amount) {
case zero:
displacement = 0;
case negative_one:
displacement = -1;}
input showOnlyLastPeriod = no;
plot PrevDayOpen;
plot PrevDayHigh;
plot PrevDayLow;
plot PrevDayClose;
if showOnlyLastPeriod and !IsNaN(open(period = aggregationPeriod)[-1]) and !IsNaN(high(period = aggregationPeriod)[-1]) and !IsNaN(low(period = aggregationPeriod)[-1]) and !IsNaN(close(period = aggregationPeriod)[-1]){
PrevDayOpen = Double.NaN;
PrevDayHigh = Double.NaN;
PrevDayLow = Double.NaN;
PrevDayClose = Double.NaN;}else{
PrevDayOpen = Highest(open(period = aggregationPeriod)[displace_amount], length);
PrevDayHigh = Highest(high(period = aggregationPeriod)[displace_amount], length);
PrevDayLow = Highest(low(period = aggregationPeriod)[displace_amount], length);
PrevDayClose = Highest(close(period = aggregationPeriod)[displace_amount], length);}
PrevDayOpen.SetDefaultColor(GetColor(4));
PrevDayOpen.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);
PrevDayHigh.SetDefaultColor(GetColor(4));
PrevDayHigh.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);
PrevDayLow.SetDefaultColor(GetColor(4));
PrevDayLow.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);
PrevDayClose.SetDefaultColor(GetColor(4));
PrevDayClose.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);
input PlotOverNightExtremes = yes;
def o = open;
def h = high;
def l = low;
def c = close;
def v = volume;
def bar = BarNumber();
def GlobeX = GetTime() < RegularTradingStart(GetYYYYMMDD());
def vol = if GlobeX and !Globex[1]
then v
else if GlobeX
then vol[1] + v
else Double.NaN;
def GlobeX_Volume = vol;
def ONhigh = if GlobeX and !Globex[1]
then h
else if Globex and
h > ONhigh[1]
then h
else ONhigh[1];
def ONhighBar = if GlobeX and h == ONhigh
then Bar
else double.nan;
def ONlow = if GlobeX and !GlobeX[1]
then l
else if GlobeX and
l < ONlow[1]
then l
else ONlow[1];
def ONlowBar = if GlobeX and l == ONlow
then Bar
else double.nan;
def OverNightHigh = if BarNumber() == HighestAll(ONhighBar)
then ONhigh
else OverNightHigh[1];
def OverNightLow = if BarNumber() == HighestAll(ONlowBar)
then ONlow
else OverNightLow[1];
plot ONH = if OverNightHigh > 0
then OverNightHigh
else Double.NaN;
ONH.SetHiding(!PlotOverNightExtremes);
ONH.SetPaintingStrategy(PaintingStrategy.SQUARES);
ONH.SetDefaultColor(Color.BLUE);
ONH.HideBubble();
ONH.HideTitle();
plot ONL = if OverNightLow > 0
then OverNightLow
else Double.NaN;
ONL.SetHiding(!PlotOverNightExtremes);
ONL.SetPaintingStrategy(PaintingStrategy.SQUARES);
ONL.SetDefaultColor(Color.LIGHT_GRAY);
ONL.HideBubble();
ONL.HideTitle();
def MaxBar = Max(HighestAll(ONhighBar), HighestAll(ONlowBar));
# End Code