Exponential Moving Average Indicator in Excel

You can use this template to build your own Exponential Moving Average technical indicator for any stock.

Exponential Moving Average Excel Template

In this article, we will be covering the following.

  1. Exponential Moving Average – Concept
  2. Template and its Features

Video Demo

Technical Indicators

Technical Analysis is the study of market action, primarily through the use of charts, for the purpose of forecasting future price trends. ‘Market action’ includes the three principal sources of information available to the technician – Price, Volume and open Interest.

Technical Analysis of the Financial Markets – John J. Murphy

Technical indicators are calculations that are performed on the history of the stock, primarily the price and trading volume of the stock, in order to determine when to buy or sell.

There is a lot of technical indicators, commonly used by traders. There is also no limit to what calculation you use to identify trading signals – when to buy, when to sell, when not to buy or sell.

We will see how we can use Excel to calculate some of the most used technical indicators.

How to calculate Exponential Moving Average?

Moving Average is one of the most used technical indicators.

Exponential Moving Average is a type of moving average. It is designed to address a couple of the criticisms of the other Moving Averages.

  1. Simple Moving Average it gives equal importance (or weight) to all the data points considered in calculating the average.
  2. Weighted Moving Average completely ignores the history beyond the length of the weighted moving average. For example, a 50 period weighted moving average only considers the price of the 50 periods and completely ignores the history beyond the 50 periods.

This is where the Exponential Moving Average  (EMA) comes in.

Let’s take a simple example where we have closing price of a stock for each trading day.

Exponential Moving Average – Concept

To calculate the EMA of 12 periods, for March 26th,

  1. We calculate the Multiplier first.
    1. Multiplier = Smoothing / (1+ Length)
    2. Most used Smoothing is 2
    3. For a 12 period EMA, this multiplier is 0.154 (rounded)
  2. EMA = (Today’s Value * Multiplier) + Yesterday’s EMA * (1-Multiplier)
    1. You can see that today’s value is given 15.4% weight but yesterday’s EMA is given 84.6%  (100-15.4%) weight
    2. Yesterday’s EMA will depend on the day before yesterday’s EMA. This keeps going on. This is how the entire price history is considered when we arrive at today’s EMA. Thus this addresses the downside of the Weighted Moving Average.
    3. In the example,  ($232.34 * 0.154) + $234.98 (1-0.154) = $232.98

This is how we calculate the 12 period EMA.

A couple of parameters in this calculation are

1) Length of the moving average – how many periods to use for calculating average. In the example above, we used 5.

Common moving average lengths are 10, 20, 50, 100 and 200.

If the length is greater, the smoothing effect is greater and the indicator is less impacted by sudden price fluctuations.

2) Source – what value are we averaging. In the example we used the closing price of the stock.

Though Closing price is the most used for calculating simple moving average, you can also use High, Low, Open, and Volume as well.

Trading Signals

Commonly used trading signals using the Exponential Moving Average (EMA) method is listed below.

There is no golden rule or a rule that works all the time. Otherwise, everyone will use that rule and make a lot of money easily.

  1. If the closing price moves from below the EMA line to above the EMA line, then a Buy signal is generated.
  2. If the closing price moves from above the EMA line to below the EMA line, then a Sell signal is generated.

Exponential Moving Average Template

The template will help you create the Exponential Moving Average line and also calculate the trading signals instantly for any stock.

Exponential Moving Average Technical Indicator in Excel


How to create Exponential Moving Averages in Excel?

Type in a stock sticker symbol. If Excel does not recognize your stock symbol, it will pop up this data selector box.

Choose the Stock

You can select the stock you are interested in.


The template can pull up to 5 years of price history by default. You can choose how much history to display on the chart easily using the slicer buttons.

History Period to choose for chart display

The options are 5 Days, Month Till Date, 1 Month, 3 Months, 6 Months, Year Till Date, 1 Year, 5 Years.


The template allows price history at 3 different intervals.

Interval of Stock History Data

Daily/Weekly/Monthly are the options.

Exponential Moving Average Inputs – Length and Source

Exponential Moving Average – Parameters

Length: You can type in a length in periods. For example, in the above screenshot, we have entered 5 periods.

Source: Choose from the drop down list of the 5 options for source values.

The chart will update automatically based on all the above inputs.

Trading Signals

The template shows the buy and sell signals on the chart.

Buy and Sell Trading Signals
  1. If the closing price moves from below the EMA line to above the EMA line, then a Buy signal is generated.
  2. If the closing price moves from above the EMA line to below the EMA line, then a Sell signal is generated.
  3. If neither is true, no signal will be generated.

In addition, if the latest day has a Buy or Sell signal, it is displayed on the top next to the current price.

Current Trading Signal – Buy Signal
Sell Signal


On the top right you can see the maximum of the last trade time of these currencies.

The default time that Microsoft provides is UTC.  The offset is set to -7 hrs, to convert to pacific time zone.

You can modify this if you need the time in a different time zone.

Visit to view offset


Microsoft has introduced a new feature in Excel called Data types. One of the data types is ‘Stocks’. That’s what we will be using for these templates. This feature is available in Microsoft 365 Subscription Plans for PC and Web

For all the templates in this ‘Excel for Stock Market’ series, please visit


The foundation of this template is the Stocks Data type and StockHistory function.

Please read more on Stocks Data Type.
Please read more on StockHistory function and how we use to extract the price history of a stock or currency.

Here is the link to the article from Microsoft which shows which exchanges are available and the delay in data refresh for each.

How to refresh?

To refresh the price and other information, just use the regular Excel refresh in the Data ribbon.

Refresh stocks data


Please share your experience. I expect this to be different with different exchanges and countries. Is it working for you? Is it working differently? I would love to hear from you.

Related Templates

One Comment

  • Hi, Impressive work on the EMA excel template. I’m wondering if you have another video that can show me how to get the EMA for a cell value?


Leave a Reply

Your email address will not be published. Required fields are marked *