
In
statistics
Statistics (from German language, German: ', "description of a State (polity), state, a country") is the discipline that concerns the collection, organization, analysis, interpretation, and presentation of data. In applying statistics to a s ...
, a moving average (rolling average or running average or moving mean or rolling mean) is a calculation to analyze data points by creating a series of
average
In colloquial, ordinary language, an average is a single number or value that best represents a set of data. The type of average taken as most typically representative of a list of numbers is the arithmetic mean the sum of the numbers divided by ...
s of different selections of the full data set. Variations include:
simple
Simple or SIMPLE may refer to:
*Simplicity, the state or quality of being simple
Arts and entertainment
* ''Simple'' (album), by Andy Yorke, 2008, and its title track
* "Simple" (Florida Georgia Line song), 2018
* "Simple", a song by John ...
,
cumulative, or
weighted forms.
Mathematically, a moving average is a type of
convolution
In mathematics (in particular, functional analysis), convolution is a operation (mathematics), mathematical operation on two function (mathematics), functions f and g that produces a third function f*g, as the integral of the product of the two ...
. Thus in
signal processing
Signal processing is an electrical engineering subfield that focuses on analyzing, modifying and synthesizing ''signals'', such as audio signal processing, sound, image processing, images, Scalar potential, potential fields, Seismic tomograph ...
it is viewed as a
low-pass
A low-pass filter is a filter that passes signals with a frequency lower than a selected cutoff frequency and attenuates signals with frequencies higher than the cutoff frequency. The exact frequency response of the filter depends on the filt ...
finite impulse response
In signal processing, a finite impulse response (FIR) filter is a filter whose impulse response (or response to any finite length input) is of ''finite'' duration, because it settles to zero in finite time. This is in contrast to infinite impuls ...
filter. Because the
boxcar function outlines its filter coefficients, it is called a boxcar filter. It is sometimes followed by
downsampling
In digital signal processing, downsampling, compression, and decimation are terms associated with the process of ''resampling'' in a multi-rate digital signal processing system. Both ''downsampling'' and ''decimation'' can be synonymous with ''co ...
.
Given a series of numbers and a fixed subset size, the first element of the moving average is obtained by taking the average of the initial fixed subset of the number series. Then the subset is modified by "shifting forward"; that is, excluding the first number of the series and including the next value in the series.
A moving average is commonly used with
time series
In mathematics, a time series is a series of data points indexed (or listed or graphed) in time order. Most commonly, a time series is a sequence taken at successive equally spaced points in time. Thus it is a sequence of discrete-time data. ...
data to smooth out short-term fluctuations and highlight longer-term trends or cycles - in this case the calculation is sometimes called a time average. The threshold between short-term and long-term depends on the application, and the parameters of the moving average will be set accordingly. It is also used in
economics
Economics () is a behavioral science that studies the Production (economics), production, distribution (economics), distribution, and Consumption (economics), consumption of goods and services.
Economics focuses on the behaviour and interac ...
to examine gross domestic product, employment or other macroeconomic time series. When used with non-time series data, a moving average filters higher frequency components without any specific connection to time, although typically some kind of ordering is implied. Viewed simplistically it can be regarded as smoothing the data.
Simple moving average
In financial applications a simple moving average (SMA) is the unweighted
mean
A mean is a quantity representing the "center" of a collection of numbers and is intermediate to the extreme values of the set of numbers. There are several kinds of means (or "measures of central tendency") in mathematics, especially in statist ...
of the previous
data-points. However, in science and engineering, the mean is normally taken from an equal number of data on either side of a central value. This ensures that variations in the mean are aligned with the variations in the data rather than being shifted in time. An example of a simple equally weighted running mean is the mean over the last
entries of a data-set containing
entries. Let those data-points be
. This could be closing prices of a stock. The mean over the last
data-points (days in this example) is denoted as
and calculated as:
When calculating the next mean
with the same sampling width
the range from
to
is considered. A new value
comes into the sum and the oldest value
drops out. This simplifies the calculations by reusing the previous mean
.
This means that the moving average filter can be computed quite cheaply on real time data with a FIFO /
circular buffer
In computer science, a circular buffer, circular queue, cyclic buffer or ring buffer is a data structure that uses a single, fixed-size buffer as if it were connected end-to-end. This structure lends itself easily to buffering data streams. The ...
and only 3 arithmetic steps.
During the initial filling of the FIFO / circular buffer the sampling window is equal to the data-set size thus
and the average calculation is performed as a
cumulative moving average.
The period selected (
) depends on the type of movement of interest, such as short, intermediate, or long-term.
If the data used are not centered around the mean, a simple moving average lags behind the latest datum by half the sample width. An SMA can also be disproportionately influenced by old data dropping out or new data coming in. One characteristic of the SMA is that if the data has a periodic fluctuation, then applying an SMA of that period will eliminate that variation (the average always containing one complete cycle). But a perfectly regular cycle is rarely encountered.
For a number of applications, it is advantageous to avoid the shifting induced by using only "past" data. Hence a central moving average can be computed, using data equally spaced on either side of the point in the series where the mean is calculated. This requires using an odd number of points in the sample window.
A major drawback of the SMA is that it lets through a significant amount of the signal shorter than the window length. This can lead to unexpected artifacts, such as peaks in the smoothed result appearing where there were troughs in the data. It also leads to the result being less smooth than expected since some of the higher frequencies are not properly removed.
Its frequency response is a type of low-pass filter called
sinc-in-frequency.
Continuous moving average
The continuous moving average is defined with the following integral. The
environment
around
defines the intensity of smoothing of the graph of the function.
:
The continuous moving average of the function
is defined as:
:
A larger
smoothes the source graph of the function (blue)
more. The animations below show the moving average as animation in dependency of different values for
. The fraction
is used, because
is the interval width for the integral.
File:Moving average sin polynom mov av.gif, Continuous moving average sine and polynom - visualization of the smoothing with a small interval for integration
File:Moving average sine and polynom with a larger interval.gif, Continuous moving average sine and polynom - visualization of the smoothing with a larger interval for integration
File:Moving average sine and polynom - visualization of interval width.gif, Animation showing the impact of interval width and smoothing by moving average.
Cumulative average
In a cumulative average (CA), the data arrive in an ordered datum stream, and the user would like to get the average of all of the data up until the current datum. For example, an investor may want the average price of all of the stock transactions for a particular stock up until the current time. As each new transaction occurs, the average price at the time of the transaction can be calculated for all of the transactions up to that point using the cumulative average, typically an equally weighted
average
In colloquial, ordinary language, an average is a single number or value that best represents a set of data. The type of average taken as most typically representative of a list of numbers is the arithmetic mean the sum of the numbers divided by ...
of the sequence of ''n'' values
up to the current time:
The brute-force method to calculate this would be to store all of the data and calculate the sum and divide by the number of points every time a new datum arrived. However, it is possible to simply update cumulative average as a new value,
becomes available, using the formula
Thus the current cumulative average for a new datum is equal to the previous cumulative average, times ''n'', plus the latest datum, all divided by the number of points received so far, ''n''+1. When all of the data arrive (), then the cumulative average will equal the final average. It is also possible to store a running total of the data as well as the number of points and dividing the total by the number of points to get the CA each time a new datum arrives.
The derivation of the cumulative average formula is straightforward. Using
and similarly for , it is seen that
Solving this equation for
results in
Weighted moving average
A weighted average is an average that has multiplying factors to give different weights to data at different positions in the sample window. Mathematically, the weighted moving average is the
convolution
In mathematics (in particular, functional analysis), convolution is a operation (mathematics), mathematical operation on two function (mathematics), functions f and g that produces a third function f*g, as the integral of the product of the two ...
of the data with a fixed weighting function. One application is removing
pixelization
Pixelization (in British English pixelisation) or mosaic processing is any technique used in editing images or video, whereby an image is blurred by displaying part or all of it at a markedly lower resolution. It is primarily used for censorshi ...
from a digital graphical image. This is also known as
Anti-aliasing
In the financial field, and more specifically in the analyses of financial data, a weighted moving average (WMA) has the specific meaning of weights that decrease in arithmetical progression. In an ''n''-day WMA the latest day has weight ''n'', the second latest
, etc., down to one.
The denominator is a
triangle number
A triangular number or triangle number counts objects arranged in an equilateral triangle. Triangular numbers are a type of figurate number, other examples being square numbers and cube numbers. The th triangular number is the number of dots in ...
equal to
In the more general case the denominator will always be the sum of the individual weights.
When calculating the WMA across successive values, the difference between the numerators of
and
is
. If we denote the sum
by
, then
The graph at the right shows how the weights decrease, from highest weight for the most recent data, down to zero. It can be compared to the weights in the exponential moving average which follows.
Exponential moving average
An exponential moving average (EMA), also known as an exponentially weighted moving average (EWMA), is a first-order
infinite impulse response
Infinite impulse response (IIR) is a property applying to many linear time-invariant systems that are distinguished by having an impulse response h(t) that does not become exactly zero past a certain point but continues indefinitely. This is in ...
filter that applies weighting factors which decrease
exponentially. The weighting for each older
datum
Data ( , ) are a collection of discrete or continuous value (semiotics), values that convey information, describing the quantity, qualitative property, quality, fact, statistics, other basic units of meaning, or simply sequences of symbols t ...
decreases exponentially, never reaching zero.
This formulation is according to Hunter (1986).
There is also a multivariate implementation of EWMA, known as MEWMA.
Other weightings
Other weighting systems are used occasionally – for example, in share trading a volume weighting will weight each time period in proportion to its trading volume.
A further weighting, used by actuaries, is Spencer's 15-Point Moving Average (a central moving average). Its symmetric weight coefficients are
��3, −6, −5, 3, 21, 46, 67, 74, 67, 46, 21, 3, −5, −6, −3 which factors as and leaves samples of any quadratic or cubic polynomial unchanged.
Outside the world of finance, weighted running means have many forms and applications. Each weighting function or "kernel" has its own characteristics. In engineering and science the frequency and phase response of the filter is often of primary importance in understanding the desired and undesired distortions that a particular filter will apply to the data.
A mean does not just "smooth" the data. A mean is a form of low-pass filter. The effects of the particular filter used should be understood in order to make an appropriate choice. On this point, the French version of this article discusses the spectral effects of 3 kinds of means (cumulative, exponential, Gaussian).
Moving median
From a statistical point of view, the moving average, when used to estimate the underlying trend in a time series, is susceptible to rare events such as rapid shocks or other anomalies. A more robust estimate of the trend is the simple moving median over ''n'' time points:
where the
median
The median of a set of numbers is the value separating the higher half from the lower half of a Sample (statistics), data sample, a statistical population, population, or a probability distribution. For a data set, it may be thought of as the “ ...
is found by, for example, sorting the values inside the brackets and finding the value in the middle. For larger values of ''n'', the median can be efficiently computed by updating an
indexable skiplist.
Statistically, the moving average is optimal for recovering the underlying trend of the time series when the fluctuations about the trend are
normally distributed
In probability theory and statistics, a normal distribution or Gaussian distribution is a type of continuous probability distribution for a real number, real-valued random variable. The general form of its probability density function is
f(x ...
. However, the normal distribution does not place high probability on very large deviations from the trend which explains why such deviations will have a disproportionately large effect on the trend estimate. It can be shown that if the fluctuations are instead assumed to be
Laplace distributed, then the moving median is statistically optimal.
[G.R. Arce, "Nonlinear Signal Processing: A Statistical Approach", Wiley:New Jersey, US, 2005.] For a given variance, the Laplace distribution places higher probability on rare events than does the normal, which explains why the moving median tolerates shocks better than the moving mean.
When the simple moving median above is central, the smoothing is identical to the
median filter
The median filter is a non-linear digital filtering technique, often used to remove signal noise, noise from an image, signal, and video. Such noise reduction is a typical pre-processing step to improve the results of later processing (for example ...
which has applications in, for example, image signal processing. The Moving Median is a more robust alternative to the Moving Average when it comes to estimating the underlying trend in a time series. While the Moving Average is optimal for recovering the trend if the fluctuations around the trend are normally distributed, it is susceptible to the impact of rare events such as rapid shocks or anomalies. In contrast, the Moving Median, which is found by sorting the values inside the time window and finding the value in the middle, is more resistant to the impact of such rare events. This is because, for a given variance, the Laplace distribution, which the Moving Median assumes, places higher probability on rare events than the normal distribution that the Moving Average assumes. As a result, the Moving Median provides a more reliable and stable estimate of the underlying trend even when the time series is affected by large deviations from the trend. Additionally, the Moving Median smoothing is identical to the Median Filter, which has various applications in image signal processing.
Moving average regression model
In a
moving average regression model, a variable of interest is assumed to be a weighted moving average of unobserved independent error terms; the weights in the moving average are parameters to be estimated.
Those two concepts are often confused due to their name, but while they share many similarities, they represent distinct methods and are used in very different contexts.
See also
*
Exponential smoothing
Exponential smoothing or exponential moving average (EMA) is a rule of thumb technique for smoothing time series data using the exponential window function. Whereas in the simple moving average the past observations are weighted equally, exponen ...
*
Local regression (LOESS and LOWESS)
*
Kernel smoothing
*
Moving average convergence/divergence indicator
*
Martingale (probability theory)
In probability theory, a martingale is a stochastic process in which the expected value of the next observation, given all prior observations, is equal to the most recent value. In other words, the conditional expectation of the next value, given ...
*
Moving average crossover
*
Moving least squares
*
Rising moving average
The rising moving average is a technical indicator used in stock market trading. Most commonly found visually, the pattern is spotted with a moving average overlay on a stock chart or price series. When the moving average has been rising consecuti ...
*
Rolling hash
*
Running total
*
Savitzky–Golay filter
*
Window function
In signal processing and statistics, a window function (also known as an apodization function or tapering function) is a mathematical function that is zero-valued outside of some chosen interval. Typically, window functions are symmetric around ...
*
Zero lag exponential moving average
References
{{DEFAULTSORT:Moving Average
Statistical charts and diagrams
Time series
Chart overlays
Technical analysis