This question was first asked on Stackoverflow, but as no one was able to answer, I wanted to ask it here.
The question is: is there a test for stationarity that is both able to identify stationary/non-stationary time-series in cases of increasing/decreasing/jumping mean and volatility measures?
In the question on Stackoverflow, I simulated six time-series, that look like this.
The first time-series is rightly classified as being stationary by all tests being used (Augmented-Dickey-Fuller Test (ADF), Box-Pierce/Ljung-Box Test (Box), Kwiatkowski-Phillips-Schmidt-Shin (KPSS), and the Phillips-Perron Test (PP)), however, especially the last 3 time-series are not rightly classified in many cases.
The results (p-values from the tests using
r (copied from the other question, where you also find the
r-code to recreate the same time-series)) look like this:
# p-values for different tests (note that the tests have different H_0's) # adf.test Box.test kpss.test PP.test # stat:non_stat # ts1 0.0100000 0.386053779 0.10 0.0100000 # 4:0 clearly stat # ts2 0.4195604 0.000000000 0.01 0.3260713 # 0:4 clearly non-stat # ts3 0.5467517 0.000000000 0.01 0.0100000 # 1:3 most-likely non-stat # ts4 0.0100000 0.004360365 0.10 0.0100000 # 2:2 ?! # ts5 0.0100000 0.033007310 0.10 0.0100000 # 2:2 ?! # ts6 0.0100000 0.307453035 0.10 0.0100000 # 4:0 stationary ?!
Are you aware of any tests that are able to distinguish between stationary/non-stationary time-series under the different circumstances?
Any help/solution/idea is greatly appreciated!