# macd

Moving Average Convergence/Divergence (MACD)

## Syntax

```[macdvec, nineperma] = macd(data)
[macdvec, nineperma] = macd(data, dim)
macdts = macd(tsobj, series_name)
```

## Arguments

 `data` Data matrix `dim` Dimension. Default = 1 (column orientation). `tsobj` Financial time series object `series_name` Data series name

## Description

`[macdvec, nineperma] = macd(data)` calculates the Moving Average Convergence/Divergence (MACD) line, `macdvec`, from the data matrix, data, as well as the nine-period exponential moving average, `nineperma`, from the MACD line.

When the two lines are plotted, they can give you an indication of whether to buy or sell a stock, when an overbought or oversold condition is occurring, and when the end of a trend might occur.

The MACD is calculated by subtracting the 26-period (7.5%) exponential moving average from the 12-period (15%) moving average. The 9-day (20%) exponential moving average of the MACD line is used as the signal line. For example, when the MACD and the 20% moving average line have just crossed and the MACD line falls below the other line, it is time to sell.

`[macdvec, nineperma] = macd(data, dim)` lets you specify the orientation direction for the input. If the input data is a matrix, you need to indicate whether each row is a set of observations (`dim = 2`) or each column is a set of observations (`dim = 1`, the default).

`macdts = macd(tsobj, series_name)` calculates the MACD line from the financial time series `tsobj`, as well as the nine-period exponential moving average from the MACD line. The MACD is calculated for the closing price series in `tsobj`, presumed to have been named `Close`. The result is stored in the financial time series object `macdts`. The `macdts` object has the same dates as the input object `tsobj` and contains only two series, named `MACDLine` and `NinePerMA`. The first series contains the values representing the MACD line and the second is the nine-period exponential moving average of the MACD line.

## Examples

collapse all

### Compute the Moving Average Convergence/Divergence (MACD)

This example shows how to compute the MACD for Disney stock and plot the results.

```load disney.mat dis_CloseMACD = macd(dis); dis_OpenMACD = macd(dis, 'OPEN'); plot(dis_CloseMACD); plot(dis_OpenMACD); title('MACD for Disney') ```

## References

Achelis, Steven B., Technical Analysis From A To Z, Second Printing, McGraw-Hill, 1995, pp. 166-168.