www.gusucode.com > econ 案例源码程序 matlab代码 > econ/EstimateAnEgarchModelExample.m
%% Estimate EGARCH Model % Fit an EGARCH model to an annual time series of Danish nominal stock % returns from 1922-1999. The example follows from % <docid:econ_ug.buo61o_-1>. %% % Load the |Data_Danish| data set. Plot the nominal returns (|RN|). % Copyright 2015 The MathWorks, Inc. load Data_Danish; nr = DataTable.RN; figure; plot(dates,nr); hold on; plot([dates(1) dates(end)],[0 0],'r:'); % Plot y = 0 hold off; title('Danish Nominal Stock Returns'); ylabel('Nominal return (%)'); xlabel('Year'); %% % The nominal return series seems to have a nonzero conditional mean offset % and seems to exhibit volatility clustering. That is, the variability is % smaller for earlier years than it is for later years. For this example, % assume that an EGARCH(1,1) model is appropriate for this series. %% % Create an EGARCH(1,1) model. The conditional mean offset is zero by % default. To estimate the offset, specify that it is |NaN|. Include a leverage % lag. Mdl = egarch('GARCHLags',1,'ARCHLags',1,'LeverageLags',1,'Offset',NaN); %% % Fit the EGARCH(1,1) model to the data. EstMdl = estimate(Mdl,nr); %% % |EstMdl| is a fully specified |egarch| model object. That is, it does not % contain |NaN| values. You can assess the adequacy of the model by % generating residuals using |infer|, and then analyzing them. %% % To simulate conditional variances or responses, pass |EstMdl| to % |simulate|. See <docid:econ_ug.bupa8ip-1>. %% % To forecast innovations, pass |EstMdl| to |forecast|. See % <docid:econ_ug.bupa8it-1>.