Watch how to download trading robots for free
Find us on Telegram!
Join our fan page
Interesting script?
So post a link to it -
let others appraise it
You liked the script? Try it in the MetaTrader 5 terminal
2005.11.29 11:54
2016.11.22 07:32
Need a robot or indicator based on this code? Order it on Freelance Go to Freelance

The Moving Average Technical Indicator shows the mean instrument price value for a certain period of time. When one calculates the moving average, one averages out the instrument price for this time period. As the price changes, its moving average either increases, or decreases.
    There are four different types of moving averages: Simple (also referred to as Arithmetic), Exponential, Smoothed and Linear Weighted. Moving averages may be calculated for any sequential data set, including opening and closing prices, highest and lowest prices, trading volume or any other indicators. It is often the case when double moving averages are used.
    The only thing where moving averages of different types diverge considerably from each other, is when weight coefficients, which are assigned to the latest data, are different. In case we are talking of  simple moving average, all prices of the time period in question, are equal in value. Exponential and Linear Weighted Moving Averages attach more value to the latest prices.
    The most common way to interpreting the price moving average is to compare its dynamics to the price action. When the instrument price rises above its moving average, a buy signal appears, if theprice falls below its moving average, what we have is a sell signal. 
    This trading system, which is based on the moving average, is not designed to provide entrance into the market right in its lowest point, and its exit right on the peak. It allows to act according to the following trend: to buy soon after the prices reach the bottom, and to sell soon after the prices have reached their peak.


    Simple Moving Average (SMA)

    Simple, in other words, arithmetical moving average is calculated by summing up the prices of instrument closure over a certain number of single periods (for instance, 12 hours). This value is then divided by the number of such periods.


N — is the number of calculation periods.

    Exponential Moving Average (EMA)

    Exponentially smoothed moving average is calculated by adding the moving average of a certain share of the current closing price to the previous value. With exponentially smoothed moving averages, the latest prices are of more value. P-percent exponential moving average will look like:

    EMA = (CLOSE(i)*P)+(EMA(i-1)*(100-P))

CLOSE(i) — the price of the current period closure;
EMA(i-1) — Exponentially Moving Average of the previous period closure;
P — the percentage of using the price value.

    Smoothed Moving Average (SMMA)

    The first value of this smoothed moving average is calculated as the simple moving average (SMA):

    SUM1 = SUM(CLOSE, N)

    SMMA1 = SUM1/N

    The second and succeeding moving averages are calculated according to this formula:

    SMMA(i) = (SUM1-SMMA1+CLOSE(i))/N

SUM1 — is the total sum of closing prices for N periods;
SMMA1 — is the smoothed moving average of the first bar;
SMMA(i) — is the smoothed moving average of the current bar (except for the first one);
CLOSE(i) — is the current closing price;
N — is the smoothing period.

    Linear Weighted Moving Average (LWMA)

    In the case of weighted moving average, the latest data is of more value than more early data. Weighted moving average is calculated by multiplying each one of the closing prices within the considered series, by a certain weight coefficient.

    LWMA = SUM(Close(i)*i, N)/SUM(i, N)

SUM(i, N) — is the total sum of weight coefficients.


Moving averages may also be applied to indicators. That is where the interpretation of indicator moving averages is similar to the interpretation of price moving averages: if the indicator rises above its moving average, that means that the ascending indicator movement is likely to continue: if the indicator falls below its moving average, this means that it is likely to continue going downward.

    Here are the types of moving averages on the chart:

  • Simple Moving Average (SMA)

  • Exponential Moving Average (EMA)

  • Smoothed Moving Average (SMMA)

  • Linear Weighted Moving Average (LWMA)

Technical Indicator Description

Full description of MA is available in the Technical analysis: Moving Averages

Translated from Russian by MetaQuotes Ltd.
Original code:

Momentum Momentum

The Momentum indicator measures the amount that a security’s price has changed over a given time span.

Moving Average Convergence Divergence, MACD Moving Average Convergence Divergence, MACD

Moving Average Convergence/Divergence (MACD) is the next trend-following dynamic indicator.

Moving Average of Oscillator, OsMA Moving Average of Oscillator, OsMA

Moving Average of Oscillator is the difference between the oscillator and oscillator smoothing.

Parabolic SAR, Parabolic Parabolic SAR, Parabolic

Parabolic SAR Indicator was developed for analyzing the trending markets.