Weighted Moving Average (WMA)

get_wma(quotes, lookback_periods, candle_part=CandlePart.CLOSE)


name type notes
quotes Iterable[Quote] Iterable of the Quote class or its sub-class.
See here for usage with pandas.DataFrame
lookback_periods int Number of periods (N) in the moving average. Must be greater than 0.
candle_part CandlePart, default CandlePart.CLOSE Specify candle part to evaluate. See CandlePart options below.

Historical quotes requirements

You must have at least N periods of quotes to cover the warmup periods.

quotes is an Iterable[Quote] collection of historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See the Guide for more information.

CandlePart options

from stock_indicators.indicators.common.enums import CandlePart
type description
CandlePart.OPEN open price
CandlePart.HIGH high price
CandlePart.LOW low price
CandlePart.CLOSE close price
CandlePart.VOLUME volume
CandlePart.HL2 (high+low)/2
CandlePart.HLC3 (high+low+close)/3
CandlePart.OC2 (open+close)/2
CandlePart.OHL3 (open+high+low)/3
CandlePart.OHLC4 (open+high+low+close)/4




name type notes
date datetime Date
wma float, Optional Weighted moving average


See Utilities and Helpers for more information.


from stock_indicators import indicators
from stock_indicators import CandlePart     # Short path, version >= 0.8.1

# This method is NOT a part of the library.
quotes = get_historical_quotes("SPY")

# Calculate 20-period WMA
results = indicators.get_wma(quotes, 20, CandlePart.CLOSE)

About Weighted Moving Average (WMA)

Weighted Moving Average is the linear weighted average of close price over N lookback periods. This also called Linear Weighted Moving Average (LWMA). [Discuss] 💬