Cumulative Delta / Tape Indicator for ThinkorSwim

I am looking to build a cumulative delta script. Does anyone have that done? I have tried my best to research the forums before posting these requests. There are many volume based indicators and couldn't really find anything I really liked. If any of you have read reminiscences of a stock operator- you will understand my request. In it, he speaks much about "the tape". "The tape is weak", "the tape is strong" etc. I'm looking for a way to gauge the strength or weakness of the tape.

All the great traders of the past used the tape & I want to build something around it. All indicators are lagging except the tape, it is real-time.

I'm looking for:
  • A simple Delta indicator that shows daily Cumulative delta.
  • A tape summary that adds all the buys orders and sells orders that went through the tape. For instance: Buy Volume 30,000 - Sell Volume 20,000. Would such an indicator be possible? A more complex request would be to list these volumes at particular levels.
For example:
  • 1000 shares volume at 340.
  • 700 Shares at 341.
According to Mobius, "We don't have access to volume at the Bid and Ask level. We do have the Tick values at Bid and Ask. So this study is about as good as we get right now."

# Tick Profile
# Mobius
# V01.01.23.2019

declare lower;

def active = GetTime() >= RegularTradingStart(getYYYYMMDD()) and
             GetTime() <= RegularTradingEnd(getYYYYMMDD());
def tick_Bid = if isNaN(tick_count(priceType = "BID"))
               then tick_Bid[1]
               else tick_count(priceType = "BID");
def tick_Ask = if isNaN(tick_count(priceType = "ASK"))
               then tick_Ask[1]
               else tick_count(priceType = "ASK");
def cum_TB = if active and !active[1]
             then tick_Bid
             else if active
                  then cum_TB[1] + tick_Bid
             else cum_TB[1];
def cum_TA = if active and !active[1]
             then tick_Ask
             else if active
                  then cum_TA[1] + tick_Ask
             else cum_TA[1];
plot TA = if isNaN(close) or !active
          then double.nan
          else cum_TA - cum_TB;
     TA.AssignValueColor(if TA > 0 and TA >= TA[1]
                         else if TA > 0 and TA <= TA[1]
                              then color.yellow
                              else if TA < 0 and TA <= TA[1]
AddLabel(1, "tick at Bid = " + tick_Bid +
          "  tick at Ask = " + tick_Ask, if tick_Bid > tick_Ask
                                         else if tick_Bid == tick_Ask
                                              then color.white

# End Tick Profile

Similar threads