# Cumulative_TICK
# Mobius
# V01_2016
## verticals added by ZupDog for Cumulative_TICK histogram crossing above or below zero
## histogram color criteria modified by ZupDog
# declare on_volume;
declare lower;
input TICK = {default "$TICK", "$TIKSP", "$TIKSPC", "$TICK/Q", "$TICKA", "$TICKAC", "$TICKAR", "$TICKARC", "$TICKC", "$TICKC/Q", "$TIKI", "$TIKIC", "$TIKND", "$TIKNDC", "$TIKRL", "$TIKUS", "$TIKUSC"};
#def T = OHLC4(symbol = TICK);
input showverticals = yes;
def T = OHLC4(symbol = TICK);
def RTH = if SecondsFromTime(0930) > 0 and
SecondsTillTime(1600) >= 0
then 1
else 0;
def cT = if RTH and !RTH[1]
then T
else if RTH
then cT[1] + T
else cT[1];
plot zero = if RTH then 0 else Double.NaN;
zero.SetDefaultColor(Color.WHITE);
plot Cumulative_TICK = if RTH then cT else Double.NaN;
Cumulative_TICK.SetStyle(Curve.POINTS);
Cumulative_TICK.SetPaintingStrategy(PaintingStrategy.Histogram);
Cumulative_TICK.SetLineWeight(3);
# Cumulative_TICK.AssignValueColor(if Cumulative_TICK > Cumulative_TICK[1] then Color.Green else Color.Red);
Cumulative_TICK.AssignValueColor(if Cumulative_TICK > zero then Color.BLUE else Color.Red);
#AddVerticalLine(RTH and !RTH[1], "Open", Color.DARK_GRAY, Curve.LONG_DASH);
#AddVerticalLine(SecondsTillTime(1030) == 0 and
# SecondsFromTime(1030) == 0, "EU", Color.DARK_GRAY, Curve.LONG_DASH);
#AddVerticalLine(SecondsTillTime(1500) == 0 and
# SecondsFromTime(1500) == 0, "Last H", Color.DARK_GRAY, Curve.LONG_DASH);
#AddVerticalLine(!RTH and RTH[1], "Close", Color.DARK_GRAY, Curve.LONG_DASH);
AddVerticalLine(showverticals and Cumulative_TICK crosses above zero, " Cumulative_TICK Long", Color.CYAN, Curve.SHORT_DASH);
AddVerticalLine(showverticals and Cumulative_TICK crosses below zero, " Cumulative_TICK Short", Color.YELLOW,
Curve.SHORT_DASH);
# End Code Cumulative Tick