chiropteraphile
New member
Plots prior day high (green), low (red), and halfback (dark orange), anchored to globex RTH hours, for futures.
Chart timeframe should be XD:XM or similar (not Today:XM).
#
def na = Double.NaN;
def bn = BarNumber();
def h = high;
def l = low;
script prior {
input prior = close;
def priorOf = if prior != prior[1] then prior[1] else priorOf[1];
plot priorBar = priorOf;
}
def cb = HighestAll(if !IsNaN(h) then bn else na);
def time = GetTime();
def rts = RegularTradingStart(GetYYYYMMDD());
def rte = RegularTradingEnd(GetYYYYMMDD());
def RTH = if time crosses above rts
then bn else RTH[1];
def globex = if time crosses below rte
then bn else globex[1];
def priorRTH = prior(RTH);
def priorGlobex = prior(globex);
def hRTH = HighestAll(RTH);
def hGX = HighestAll(globex);
def hPRTH = HighestAll(priorRTH);
def hPGX = HighestAll(priorGlobex);
def gXhigh = HighestAll(if bn >= hGX && bn < hRTH
then h else if hRTH < hGX && bn >= hGX
then h else na);
def gXlow = LowestAll(if bn >= hGX && bn < hRTH
then l else if hRTH < hGX && bn >= hGX
then l else na);
def RTHhigh = HighestAll(if bn >= hRTH && bn < hGX
then h else if hGX < hRTH && bn >= hRTH
then h else na);
def RTHlow = LowestAll(if bn >= hRTH && bn < hGX
then l else if hGX < hRTH && bn >= hRTH
then l else na);
def priorRTHhigh = HighestAll(if bn >= hPRTH
&& bn < if hGX < hRTH then hGX
else hPGX then h else na);
def priorRTHlow = LowestAll(if bn >= hPRTH
&& bn < if hGX < hRTH then hGX
else hPGX then l else na);
def rTHrange = priorRTHhigh - priorRTHlow;
def sumHighLow = priorRTHhigh + priorRTHLow;
plot PriorDayHigh = priorRTHhigh;
PriorDayHigh.SetDefaultColor(Color.Green);
PriorDayHigh.SetPaintingStrategy(PaintingStrategy.Line);
PriorDayHigh.SetStyle(Curve.FIRM);
PriorDayHigh.SetLineWeight(2);
PriorDayHigh.HideBubble();
PriorDayHigh.HideTitle();
plot Halfback = sumHighLow / 2;
Halfback.SetDefaultColor(Color.Dark_Orange);
Halfback.SetPaintingStrategy(PaintingStrategy.Line);
Halfback.SetStyle(Curve.Firm);
Halfback.SetLineWeight(2);
Halfback.HideBubble();
Halfback.HideTitle();
plot PriorDayLow = priorRTHlow;
PriorDayLow.SetDefaultColor(Color.Red);
PriorDayLow.SetPaintingStrategy(PaintingStrategy.Line);
PriorDayLow.SetStyle(Curve.FIRM);
PriorDayLow.SetLineWeight(2);
PriorDayLow.HideBubble();
PriorDayLow.HideTitle();
#
Chart timeframe should be XD:XM or similar (not Today:XM).
#
def na = Double.NaN;
def bn = BarNumber();
def h = high;
def l = low;
script prior {
input prior = close;
def priorOf = if prior != prior[1] then prior[1] else priorOf[1];
plot priorBar = priorOf;
}
def cb = HighestAll(if !IsNaN(h) then bn else na);
def time = GetTime();
def rts = RegularTradingStart(GetYYYYMMDD());
def rte = RegularTradingEnd(GetYYYYMMDD());
def RTH = if time crosses above rts
then bn else RTH[1];
def globex = if time crosses below rte
then bn else globex[1];
def priorRTH = prior(RTH);
def priorGlobex = prior(globex);
def hRTH = HighestAll(RTH);
def hGX = HighestAll(globex);
def hPRTH = HighestAll(priorRTH);
def hPGX = HighestAll(priorGlobex);
def gXhigh = HighestAll(if bn >= hGX && bn < hRTH
then h else if hRTH < hGX && bn >= hGX
then h else na);
def gXlow = LowestAll(if bn >= hGX && bn < hRTH
then l else if hRTH < hGX && bn >= hGX
then l else na);
def RTHhigh = HighestAll(if bn >= hRTH && bn < hGX
then h else if hGX < hRTH && bn >= hRTH
then h else na);
def RTHlow = LowestAll(if bn >= hRTH && bn < hGX
then l else if hGX < hRTH && bn >= hRTH
then l else na);
def priorRTHhigh = HighestAll(if bn >= hPRTH
&& bn < if hGX < hRTH then hGX
else hPGX then h else na);
def priorRTHlow = LowestAll(if bn >= hPRTH
&& bn < if hGX < hRTH then hGX
else hPGX then l else na);
def rTHrange = priorRTHhigh - priorRTHlow;
def sumHighLow = priorRTHhigh + priorRTHLow;
plot PriorDayHigh = priorRTHhigh;
PriorDayHigh.SetDefaultColor(Color.Green);
PriorDayHigh.SetPaintingStrategy(PaintingStrategy.Line);
PriorDayHigh.SetStyle(Curve.FIRM);
PriorDayHigh.SetLineWeight(2);
PriorDayHigh.HideBubble();
PriorDayHigh.HideTitle();
plot Halfback = sumHighLow / 2;
Halfback.SetDefaultColor(Color.Dark_Orange);
Halfback.SetPaintingStrategy(PaintingStrategy.Line);
Halfback.SetStyle(Curve.Firm);
Halfback.SetLineWeight(2);
Halfback.HideBubble();
Halfback.HideTitle();
plot PriorDayLow = priorRTHlow;
PriorDayLow.SetDefaultColor(Color.Red);
PriorDayLow.SetPaintingStrategy(PaintingStrategy.Line);
PriorDayLow.SetStyle(Curve.FIRM);
PriorDayLow.SetLineWeight(2);
PriorDayLow.HideBubble();
PriorDayLow.HideTitle();
#