www.gusucode.com > econ 案例源码程序 matlab代码 > econ/TestAutocorrelationofSquaredResidualsExample.m
%% Test Autocorrelation of Squared Residuals % This example shows how to inspect a squared residual series for autocorrelation % by plotting the sample autocorrelation function (ACF) and partial autocorrelation % function (PACF). Then, conduct a Ljung-Box Q-test to more formally assess % autocorrelation. % Copyright 2015 The MathWorks, Inc. %% Load the Data. % Load the NASDAQ data included with the toolbox. Convert the daily close % composite index series to a percentage return series. load Data_EquityIdx; y = DataTable.NASDAQ; r = 100*price2ret(y); T = length(r); figure plot(r) xlim([0,T]) title('NASDAQ Daily Returns') %% % The returns appear to fluctuate around a constant level, but exhibit % volatility clustering. Large changes in the returns tend to cluster % together, and small changes tend to cluster together. That is, the series % exhibits conditional heteroscedasticity. %% % The returns are of relatively high frequency. Therefore, the daily % changes can be small. For numerical stability, it is good practice to % scale such data. %% Plot the Sample ACF and PACF. % Plot the sample ACF and PACF for the squared residual series. e = r - mean(r); figure subplot(2,1,1) autocorr(e.^2) subplot(2,1,2) parcorr(e.^2) %% % The sample ACF and PACF show significant autocorrelation in the squared % residual series. This indicates that volatility clustering is present % in the residual series. %% Conduct a Ljung-Box Q-test. % Conduct a Ljung-Box Q-test on the squared residual series at lags 5 and 10. [h,p] = lbqtest(e.^2,'Lags',[5,10]) %% % The null hypothesis is rejected for the two tests (|h = 1|). The p values % for both tests is |0|. Thus, not all of the autocorrelations up to lag % 5 (or 10) are zero, indicating volatility clustering in the residual series.