Products & Services Solutions Academia Support User Community Company

Learn more about Econometrics Toolbox   

pptest - Phillips-Perron unit root test

Syntax

h = pptest(y)
h = pptest(y,'ParameterName',ParameterValue,...)
[h,pValue] = pptest(...)
[h,pValue,stat] = pptest(...)
[h,pValue,stat,cValue] = pptest(...)
[h,pValue,stat,cValue,reg] = pptest(...)

Description

h = pptest(y) assesses the null hypothesis of a unit root in a univariate time series y.

h = pptest(y,'ParameterName',ParameterValue,...) accepts optional inputs as one or more comma-separated parameter-value pairs. 'ParameterName' is the name of the parameter inside single quotation marks. ParameterValue is the value corresponding to 'ParameterName'. Specify parameter-value pairs in any order; names are case-insensitive. Perform multiple tests by passing a vector value for any parameter. Multiple tests yield vector results.

[h,pValue] = pptest(...) returns p-values of the test statistics.

[h,pValue,stat] = pptest(...) returns the test statistics.

[h,pValue,stat,cValue] = pptest(...) returns critical values for the tests.

[h,pValue,stat,cValue,reg] = pptest(...) returns a structure of regression statistics.

Inputs

y

Vector of time-series data. The last element is the most recent observation. The test ignores NaN values, which indicate missing entries.

Parameter/Value Pairs

'alpha'

Scalar or vector of nominal significance levels for the tests. Set values between 0.001 and 0.999.

Default: 0.05

'lags'

Scalar or vector of nonnegative integers indicating the number of autocovariance lags to include in the Newey-West estimator of the long-run variance.

For best results, give a suitable value for 'lags'. For information on selecting 'lags', see Determine Appropriate Lags.

Default: 0

'model'

String or cell vector of strings indicating the model variant. Values are:

  • 'AR' (autoregressive)

    pptest tests the null model

    yt = yt – 1 + e(t).

    against the alternative model

    yt = a yt – 1 + e(t).

    with AR(1) coefficient a < 1.

  • 'ARD' (autoregressive with drift)

    pptest tests the 'AR' null model against the alternative model

    yt = c + a yt – 1 + e(t).

    with drift coefficient c and AR(1) coefficient a < 1.

  • 'TS' (trend stationary)

    pptest tests the null model

    yt = c + yt – 1 + e(t).

    against the alternative model

    yt = c + d t + a yt – 1 + e(t).

    with drift coefficient c, deterministic trend coefficient d, and AR(1) coefficient a < 1.

Default: 'AR'

'test'

String or cell vector of strings indicating the test statistic. Values are:

  • 't1'

    pptest computes a standard t statistic

    t1 = (a – l)/se

    from OLS estimates of the AR(1) coefficient and its standard error (se) in the alternative model. The test assesses the significance of the restriction a – 1 = 0.

  • 't2'

    pptest computes a lag-adjusted, "unstudentized" t statistic

    t2 = T (a – 1)/(1– b1– ...– bp)

    from OLS estimates of the AR(1) coefficient and the stationary coefficients in the alternative model. T is the effective sample size, adjusted for lags and missing values. The test assesses the significance of the restriction a – 1 = 0.

Default: 't1'

Outputs

h

Vector of Boolean decisions for the tests, with length equal to the number of tests. Values of h equal to 1 indicate rejection of the unit-root null in favor of the alternative model. Values of h equal to 0 indicate a failure to reject the unit-root null.

pValue

Vector of p-values of the test statistics, with length equal to the number of tests. p-values are left-tail probabilities.

stat

Vector of test statistics, with length equal to the number of tests. Statistics are computed using OLS estimates of the coefficients in the alternative model.

cValue

Vector of critical values for the tests, with length equal to the number of tests. When the value of 'test' is 't1' or 't2', critical values are for left-tail probabilities. When the value of 'test' is 'F', critical values are for right-tail probabilities.

reg

Structure of regression statistics for the OLS estimation of coefficients in the alternative model. The number of records equals the number of tests. Each record has the following fields:

numLength of input series with NaNs removed
sizeEffective sample size, adjusted for lags
namesRegression coefficient names
coeffEstimated coefficient values
seEstimated coefficient standard errors
CovEstimated coefficient covariance matrix
tStatst statistics of coefficients and p-values
FStatF statistic and p-value
yMuMean of the lag-adjusted input series
ySigmaStandard deviation of the lag-adjusted input series
yHatFitted values of the lag-adjusted input series
resRegression residuals
autoCovEstimated residual autocovariances
NWEstNewey-West estimator
DWStatDurbin-Watson statistic
SSRRegression sum of squares
SSEError sum of squares
SSTTotal sum of squares
MSEMean square error
RMSEStandard error of the regression
RSqR^2 statistic
aRSqAdjusted R^2 statistic
LLLoglikelihood of data under Gaussian innovations
AICAkaike information criterion
BICBayesian (Schwarz) information criterion
HQCHannan-Quinn information criterion

Definitions

The Phillips-Perron model is

yt = c + dt + a yt – 1 + e(t).

where e(t) is the innovations process.

The null hypothesis restricts a = 1.

The test assesses the null hypothesis under the model variant appropriate for series with different growth characteristics (c = 0 or d = 0).

Examples

Test GDP data for a unit root using a trend-stationary alternative with 0, 1, and 2 lags for the Newey-West estimator:

load unitRootData
y = log(GDP);
h = pptest(y,'model','TS','lags',0:2)

The result

h =
     0     0     0

means the test fails to reject the unit-root null for each set of lags.

Algorithm

pptest performs a least-squares regression to estimate coefficients in the null model.

The tests use modified Dickey-Fuller statistics (see adftest) to account for serial correlations in the innovations process e(t). Phillips-Perron statistics follow nonstandard distributions under the null, even asymptotically. Critical values for a range of sample sizes and significance levels have been tabulated using Monte Carlo simulations of the null model with Gaussian innovations. For small samples, values are valid only for Gaussian innovations; for large samples, values are also valid for non-Gaussian innovations. pptest interpolates critical values and p-values from the tables. Tables for tests of type 't1' and 't2' are identical to those for adftest.

References

[1] Davidson, R., and J. G. MacKinnon. Econometric Theory and Methods. Oxford, UK: Oxford University Press, 2004.

[2] Elder, J., and P. E. Kennedy. "Testing for Unit Roots: What Should Students Be Taught?" Journal of Economic Education. Vol. 32, 2001, pp. 137–146.

[3] Hamilton, J. D. Time Series Analysis. Princeton, NJ: Princeton University Press, 1994.

[4] Newey, W. K., and K. D. West. "A Simple Positive Semidefinite, Heteroskedasticity and Autocorrelation Consistent Covariance Matrix." Econometrica. Vol. 55, 1987, pp. 703–708.

[5] Perron, P. "Trends and Random Walks in Macroeconomic Time Series: Further Evidence from a New Approach." Journal of Economic Dynamics and Control. Vol. 12, 1988, pp.297–332.

[6] Phillips, P. "Time Series Regression with a Unit Root." Econometrica. Vol. 55, 1987, pp. 277–301.

[7] Phillips, P., and P. Perron. "Testing for a Unit Root in Time Series Regression." Biometrika. Vol. 75, 1988, pp. 335–346.

[8] Schwert, W. "Tests for Unit Roots: A Monte Carlo Investigation." Journal of Business and Economic Statistics. Vol. 7, 1989, pp. 147–159.

[9] White, H., and I. Domowitz. "Nonlinear Regression with Dependent Observations." Econometrica. Vol. 52, 1984, pp. 143–162.

See Also

adftest | kpsstest | vratiotest

How To

  


Free Interactive Computational Finance CD

View demos and recorded presentations led by industry experts.

Now On Demand
Network with industry peers and learn the latest applications of the leading software product for computational finance.

 © 1984-2009- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS