| Financial Time Series | ![]() |
Moving Average Convergence/Divergence (MACD)
Syntax
[macdvec, nineperma] = macd(data) [macdvec, nineperma] = macd(data, dim) macdts = macd(tsobj, series_name)
Arguments
data |
Data vector |
dim |
Dimension. Default = 2. |
|
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 vector, 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 whether to buy or sell a stock; when an overbought or oversold condition is occurring; and when the end of a trend may 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 or each column is a set of observations. If orientation is not specified, macd assumes column-orientation (dim = 2).
macdts = macd(tsobj, series_name)
calculates the Moving Average Convergence/Divergence (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. macdts 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 latter is the nine-period exponential moving average of the MACD line.
Example
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')
See Also
| log10 | max | ![]() |