Skip to the content.

← All indicators

zeonta.williams_ad() — Running total gated by whether today extended a rising or falling close.

What it measures

Larry Williams’ predecessor to adl: where ADL weighs a bar by where the close sits inside that bar’s own range, WAD anchors each bar against the prior close instead — a bar that gapped up only gets credit for the move above yesterday’s close, not its own full range. No volume term, despite living in this category alongside ADL/OBV.

Formula

TRH = max(Close[-1], High); TRL = min(Close[-1], Low); WAD += (Close-TRL) if Close rose, (Close-TRH) if Close fell, else unchanged

Parameters

Required inputs: high, low, close

None.

Returns

Column
WAD

Usage

Examples run against the 300-bar OHLCV fixture in tests/data/ohlcv.csv, loaded as df. The output shown is the real output.

import pandas as pd
import zeonta

df = pd.read_csv('tests/data/ohlcv.csv', parse_dates=['date']).set_index('date')
zeonta.williams_ad(df['high'], df['low'], df['close']).tail(3)
date
2024-10-25   -17.4391
2024-10-26   -18.5619
2024-10-27   -19.7192
Name: WAD, dtype: float64

Accessor form: df.zta.williams_ad(...)

How to read it

Read the same way as adl/obv — a rising line alongside rising price confirms the trend; a failure to make a new high alongside price is a divergence warning.

Pitfalls

A running total with an arbitrary starting level, like adl/obv/pvt — only its slope and its divergence from price carry meaning.

Reference

Formula source: https://tulipindicators.org/wad