class_docstr: By Larry Williams. It does cumulatively measure if the price is
  accumulating (upwards) or distributing (downwards) by using the concept of
  UpDays and DownDays.
  
  Prices can go upwards but do so in a fashion that no longer shows
  accumulation because updays and downdays are canceling out each other,
  creating a divergence.
  
  See:
  - http://www.metastock.com/Customer/Resources/TAAZ/?p=125
  - http://ta.mql4.com/indicators/trends/williams_accumulation_distribution
code: def __init__(self):
      upday = UpDay(self.data.close)
      downday = DownDay(self.data.close)
  
      adup = If(upday, self.data.close - TrueLow(self.data), 0.0)
      addown = If(downday, self.data.close - TrueHigh(self.data), 0.0)
  
      self.lines.ad = Accum(adup + addown)
  
      super(WilliamsAD, self).__init__()
  
file_path: backtrader/backtrader/indicators/williams.py
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  from .None import Indicator, Highest, Lowest, If, UpDay, DownDay, Accum, TrueLow, TrueHigh
label_desc: Use image node_id 1 to create a new WilliamsAD object from inherited base classes: Indicator with example: obj = WilliamsAD()