Skip to content

Latest commit

 

History

History
112 lines (77 loc) · 3.8 KB

File metadata and controls

112 lines (77 loc) · 3.8 KB
title Simple Moving Average (SMA)
permalink /indicators/Sma/
type moving-average
layout indicator

{{ page.title }}

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

Parameters

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 lookback window. 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.

{% include candlepart-options.md %}

Returns

SMAResults[SMAResult]
  • This method returns a time series of all available indicator values for the quotes provided.
  • SMAResults is just a list of SMAResult.
  • It always returns the same number of elements as there are in the historical quotes.
  • It does not return a single incremental indicator value.
  • The first N-1 periods will have None values since there's not enough data to calculate.

SMAResult

name type notes
date datetime Date
sma float, Optional Simple moving average

Utilities

See Utilities and Helpers for more information.

Example

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 SMA
results = indicators.get_sma(quotes, 20, CandlePart.CLOSE)

Extended analysis

This indicator has an extended version with more analysis.

get_sma_analysis(quotes, lookback_periods)

Return with analysis

SMAAnalysisResults[SMAAnalysisResult]

SMAAnalysisResult

name type notes
date datetime Date
sma float, Optional Simple moving average
mad float, Optional Mean absolute deviation
mse float, Optional Mean square error
mape float, Optional Mean absolute percentage error

Example for analysis

# usage
results = indicators.get_sma_analysis(quotes, lookback_periods)

About {{ page.title }}

Simple Moving Average is the average price over a lookback window. The extended analysis option includes mean absolute deviation (MAD), mean square error (MSE), and mean absolute percentage error (MAPE). [Discuss] 💬

image

Sources