czwartek, 25 stycznia 2018

ANNI zamiast PKB?

Jedną z wad PKB jako miernika dobrobytu może być to, że nie odejmuje on amortyzacji. Moglibyśmy posłużyć się więc Produktem Narodowym Netto (PNN), który odejmuje amortyzację. Zamiast tego możemy posłużyć się też wskaźnikiem o nazwie Adjusted net national income (ANNI) podawanym przez Bank Światowy. Nie jest to dokładnie to samo co PNN, ale może spokojnie stanowić jego aproksymację, bo:

ANNI = PNB - Zużycie aktywów trwałych - Wyczerpanie aktywów naturalnych (energia, minerały, lasy, drewno). W sumie można powiedzieć, że:
ANNI = PNN - wyczerpanie aktywów naturalnych.

Najpierw porównamy ogólnie jak się kształtuje ANNI na tle PKB w latach 1996-2016. Dane ANNI dla 2016 nie są jeszcze podane. W dalszej analizie użyłem ANNI per capita (constant 2010 US$) i odpowiednio GDP per capita (constant 2010 US$):




Dostrzegamy, że różnica w ciągu 20 lat znacznie wzrosła: jeśli PKB rośnie procentowo, to i amortyzacja musi rosnąć procentowo.

Na kolejnym wykresie pokazałem roczne zmiany procentowe ANNI i PKB:


Roczne tempa zmian są do siebie bardzo zbliżone, więc na tym poziomie nie ma znaczenia którą wielkość analizujemy.

Poniżej porównałem procentowe zmiany ANNI Polski, UE i USA:



Nasz kraj wyraźnie prowadzi. Następnie przeanalizujemy stosunek ANNI do GDP w tych samych regionach:







Tutaj nasuwają się 4 wnioski:
1) Średnia dla Polski wyniosła nieco ponad 84% i jest to podobna wartość do PNN / PNB ( wg GUS w każdym roku wynosi ok. 88%). 
2) W roku 2015 mieliśmy najwyższy od 20 lat poziom ANNI do PKB. Można się spodziewać, że w najbliższych latach wróci do średniej.
3) Mamy zbliżoną średnią do UE, jednak ANNI UE znajduje się obecnie w kryzysie i jest poniżej średniej. Kontrastuje to z wartością naszego kraju.
4) USA okazuje się mieć najlepszy stosunek ANNI do PKB. Średnia historyczna wynosi prawie 86% i w dodatku ostatnio jest znacznie powyżej średniej.

Załóżmy, że amortyzacja rośnie ciągle w tym samym tempie. Jeśli ANNI/GDP zaczyna spadać, to znaczy, że "realne dochody" rosną coraz wolniej. Takie ryzyko rośnie oczywiście wtedy, gdy wskaźnik znajduje się powyżej średniej. Obecnie taka sytuacja ma miejsce w przypadku Polski i USA.

Źródło:
1. http://stat.gov.pl/;
2. https://data.worldbank.org/

piątek, 12 stycznia 2018

Prognoza WIG dwiema metodami

Pośrednio prognozę sporządziłem w poprzednim artykule analizując PKB, który jest skorelowany z WIG. Każda inna prognoza, która nie uwzględnia warstwy ekonomicznej do końca prawidłowa. Jednak w tym momencie zajmę się tylko warstwą historyczną indeksu, tak aby uzyskać nieco inną perspektywę.
Metody prognozy będą dwie. Pierwsza to model log-periodyczny oszacowany NMNK. Druga to połączenie filtru Hodricka-Prescotta i analizy spektralnej. Nie będę ponownie tłumaczył swoich metod - odniosę jedynie Czytelnika do artykułów, w których je objaśniałem.

1. Model log-periodyczny ( zob. Zmagania z modelem log-periodycznym ):

Ściągnąłem ze stooq.pl dzienne dane WIG od początku 1994 do 11.01.2018 (5952 obserwacji) i zlogarytmowałem. Wyniki:



Z punktu widzenia prognozy WIG przekracza od góry "krzywą trendu". Trzeba zauważyć, że punkt krytyczny tc to dopiero 7741. Skoro liczba danych = 5952, to prognozujemy punkt załamania po 7741-5952 = 1789 dniach. Jeżeli przyjąć, że w roku jest 250 dni sesyjnych, to znaczy, że nastąpi on po ok. 7 latach. W sumie krach raczej nie nastąpi w najbliższym czasie, ale fala wzrostowa jest w końcówce.


2. Połączenie analizy spektralnej z filterm Hodricka-Prescotta ( zob. Prognoza PKB na 2018 czterema metodami ):
Tym razem ściągnąłem kwartalne dane WIG od początku 1994 do końca 2017 (96 danych), które zlogarytmowałem.

2a) Analiza spektralna logarytmicznych zmian WIG:


Ujawniła się nam 13-14-kwartalna długość cyklu. To znaczy, że cykl giełdowy trwa w Polsce ok. 3,5 lat. Pokrywa się to z analizą spektralną PKB.

2b) Filtr Hodricka-Prescotta (lambda = 1600) 


Filtr H-P wskazuje, że WIG znajduje się powyżej linii regresji, powyżej poziomu równowagi i wydaje się wracać do tego poziomu.

2c) Analiza spektralna składnika cyklicznego H-P


Obraz trochę się zmienia w stosunku do pkt (2a). Oprócz 3,5 letniej cykliczności dostajemy także wyraźny 32-kwartalny cykl, tzn. 8-letni. To sugeruje, że długie 7-8-letnie cykle, o których często wspominają analitycy, nie są złudzeniem. Jeśli chodzi o testy KPSS i ADF-GLS, to dają sprzeczne wyniki. ADF-GLS potwierdza niestacjonarność kwartalnych zmian WIGa (w tym także składnika cyklicznego H-P), na wielu poziomach częstości (opóźnienia), natomiast KPSS już nie. Z tym że KPSS przy opóźnieniu 29 (czyli powiedzmy dla 30-kwartalnego cyklu) uzyskuje dla składnika cyklicznego wartość statystyki bliską 0,25, czyli nie tak odległą od 0,35. Po zwiększeniu opóźnienia następuje spadek statystyki. Jeżeli to tylko kwestia zbyt małej próbki (przecież niecałe 100), to 30 kwartałów, czyli 7,5-8 lat stanowi faktycznie okres długiego cyklu giełdowego.

Przeanalizujmy 2 rodzaje cykli: 7-8 letni oraz 3-4 letni, przyglądając się z bliska składnikowi cyklicznemu WIG:



Długi cykl zaczyna się na początku 2009 r. Dodając 7 lat dostajemy początek 2016 r. Czyli w 2016 r powinien zakończyć się stary i wystartować nowy (i trwać do 2022 - 2023) . Teraz weźmy krótszy cykl. Wg wykresu ostatni taki cykl zaczął się od 2016, a więc powinien trwać do 2018 lub 2019. Biorąc pod uwagę, że miną za chwilę 2 lata od jego początku, to kolejne 2 powinny stanowić kontrakcję.

Z powyższej analizy wynika, że znajdujemy się w fazie wzrostowej cyklu długiego 7,5-letniego, natomiast w fazie schyłkowej cyklu krótkiego 3,5-letniego. W związku z tym prognoza na 2018 jest negatywna i pokrywa się ona z prognozą PKB. Niemniej ze względu na pozytywną fazę długiego cyklu apokaliptyczne wizje krachu nie powinny się spełnić.

czwartek, 4 stycznia 2018

Prognoza PKB na 2018 czterema metodami

Rok 2018 może być bardzo ryzykowny dla inwestora giełdowego. Wskazywałem niedawno na przewartościowanie S&P 500 oraz inne negatywne sygnały ( Bańka na S&P500. Czy Amerykanie dobiją leżącego? ). W poprzednim artykule przykładowo stworzyłem długoterminową prognozę dla kwartalnych zmian PKB, która koresponduje z negatywnym scenariuszem. Dzisiejszy artykuł stanowi pewną kontynuację tej prognozy.

Istnieją setki (a jeśli wziąć pod uwagę detale, to może i tysiące) różnych metod ekonometrycznych, które różnią się czasami podejściem a czasami założeniami. Wybiorę spośród nich trzy: analizę spektralną, metodę parametryczną - ARIMA oraz nieparametryczną - filtr Hodricka-Prescotta. Czwarta metoda to proste połączenie wszystkich tych metod. Stworzę prognozę zmian PKB na podstawie kwartalnych danych GUS z okresu 1.2003-3.2017 (59 danych):



1) Analiza spektralna (por. z artykułem Jakie opóźnienie stosować w KPSS i ADF-GLS?):
Wymaga ona stacjonarności badanej zmiennej. Testujemy więc procentowe zmiany PKB za pomocą KPSS i ADF-GLS. Obydwie metody przyniosły tę samą odpowiedź: zmiany są niestacjonarne. Dlatego analizę spektralną wykonujemy na przyrostach zmian PKB (czyli różnicach z procentowych zmian PKB). Uzyskane z nich spektrum zamieściłem poniżej:



Analiza spektralna wskazuje na długość cyklu = 14,5 (najwyższa wartość periodogramu). Ponieważ są to kwartały, zamieńmy to na lata. Podzielmy to na 4, dostajemy 14,5 / 4 = 3,6. Zatem cykl polskiego PKB wydaje się trwać niecałe 4 lata. Patrząc na wykres od 2013 rozpoczął się nowy cykl, czyli musiał się średnio skończyć w 2016 r. I od 2016 lub 2017 rozpocząć się nowy cykl. Rzeczywiście w 2016 r. rozpoczęła się jakby nowa fala ekspansji. Można by sądzić, że jesteśmy w środku tego cyklu. A jeśli przez cykl rozumiemy najpierw falę ekspansji, a następnie falę depresji, to znaczy, że za chwilę zacznie się fala "depresji" - ponieważ jesteśmy w środku cyklu.

2) ARMA: 
Mimo niestacjonarności zmiennej, nie stosowałem tutaj przyrostów zmian PKB, tylko bezpośrednie zmiany (czyli używam nie ARIMA, tylko ARMA). Gdyby użyć zmian przyrostów, to wyniki nie różniłyby prawie wcale. Do estymacji zastosowałem dwie metody: właściwą metodę największej wiarygodności (MNW) oraz jej warunkowy odpowiednik (CMNW). Do oszacowania rzędów użyłem dodatku armax (zob. ten wpis), który oblicza AIC, BIC  i HQC dla wszystkich modeli ARMA do jakiegoś maksymalnego rzędu, który sami ustalamy. HQC jest kryterium rozsądnym, bo jest czymś pomiędzy AIC a BIC. Przy mniejszej liczbie danych AIC może jednak dawać lepsze rezultaty niż HQC, więc w tym przypadku AIC był dla mnie nieco ważniejszy przy wyborze modelu.

Dodatkowo sprawdziłem czy dodanie sezonowości poprawi wyniki. Okazało się, że tak - użyłem w obydwu metodach sezonowego AR(1), czyli skorelowanie danego kwartału względem kwartału z poprzedniego roku - jest to całkiem naturalne. W sumie więc otrzymałem model
SARMA(p, q)(1, 0), tj sezonowa ARMA.

MNW: wskazała bardzo jednoznacznie rzędy p = 0 i q = 6. W sumie użyłem SARMA(0, 6)(1, 0). Prognoza:



CMNW: użyłem modelu SARMA(9, 0)(1, 0) - wg kryterium AIC. Prognoza:


Obydwie metody dają podobne rezultaty. Mam wrażenie, że MNW  trochę zawyża 4 kwartał, bo przewiduje ponad 6% wzrostu. CMNW - 5,5%. Z drugiej strony później pokazuje też większy spadek. Kolejne kwartały 2018 będą charakteryzować się obniżoną dynamiką aż do 3-4%. Oczywiście na tle UE to ciągle jest pokaźne tempo.


3) Filtr Hodricka-Prescotta (H-P)
Opisywałem go w art. Filtr Hodricka-Prescotta . Zgodnie ze sposobem H-P dla kwartalnych szeregów ustawiamy lambdę = 1600. Dostajemy:


Mimo iż długoterminowy trend gospodarczy zwyżkuje, to ostatnie zmiany PKB są powyżej linii trendu regresji. Negatywny scenariusz z ARMA zostaje potwierdzony przez H-P.

4) Połączenie wszystkich metod
Najlepszym i najprecyzyjniejszym sposobem jest połączenie 3 poprzednich metod.  Składnik cykliczny H-P możemy zbadać analizą spektralną, następnie skontruować prognozę z ARMA.

a) Analiza spektralna:
Sprawdzamy stacjonarność. Zarówno KPSS jak i ADF-GLS wskazały, że składnik cyklu H-P jest stacjonarny. Wobec tego możemy go użyć:


Długość cyklu = 14,75 kwartały, czyli podobnie jak poprzednio. Cykl gospodarczy trwa 3 lata i 3 kwartały, czyli znów ok. 4 lat. Jednakże użycie składnika cyklu H-P pozwala spostrzec dokładniej, kiedy ostatni cykl się zaczął. Jeśli założymy, ze cykl trwa od ostatniego dołka przed kolejnym poziomem 0 do następnego dołka za poprzednim poziomem 0, to dostaniemy pełny cykl. Z tej perspektywy od 3 kwartału 2016 rozpoczął się nowy cykl, czyli do dziś trwa 1,5 roku. Kolejne 1,5-2 lata mogą więc stanowić kontrakcję. 

b) ARMA:
Użyję tutaj już tylko MNW. HQC wskazał ARMA(2, 1), a AIC ARMA(2, 8). Wybieram AIC, także dlatego że q = 8 może wskazywać na długość trendu. Tym razem dodanie sezonowości pogorszyło model, dlatego nie dodałem rzędów sezonowych. Prognoza:

poniedziałek, 1 stycznia 2018

Czy ARMA estymować warunkową metodą największej wiarygodności?

W programach ekonometrycznych powszechnie znajdujemy dwie metody estymacji procesu ARMA: dokładną metodę największej wiarygodności (MNW) oraz warunkową metodę największej wiarygodności (CMNW)*. Którą wybrać? Dowiedziono, że MNW jest efektywniejsza w tym sensie, że parametr oszacowany tą metodą posiada mniejszą wariancję, tj. odchylenie od wartości oczekiwanej (oszacowanego) parametru jest mniejsze [1]. Jednakże istnieją 2 powody, dla których warto używać CMNW. Po pierwsze Andersen [1] wykazał, że różnica pomiędzy błędami standardowymi obydwu metod nie jest duża. Po drugie Neyman i Scott [2] pokazali, że gdy parametr zależy od nieznanych wariancji, które pochodzą z nieskończonej liczby populacji (to znaczy np. wariancja ciągle się zmienia w czasie), to MNW przestaje być estymatorem zgodnym (to znaczy prawdopodobieństwo, że w bardzo dużej próbie oszacowany parametr MNW będzie równy prawdziwemu parametrowi z populacji, nie równa się 1). Natomiast Andersen wykazał, że CMNW pozostaje w takiej sytuacji zgodny.

Ale zostawmy teorię na boku i przyjrzyjmy się prostemu przykładowi. Wrócę do poprzedniego artykułu, w którym przykładowo analizowałem funkcję sinus z nałożonym szumem białym, 1000 obserwacji:



Normalnie zawsze sprawdzamy przed estymacją niestacjonarność, aby usunąć pozorne trendy i korelacje. Stwierdziłem już, że proces cykliczny może być uznany za stacjonarny chociaż intuicyjnie wydaje się to nieprawidłowe. Taka sinusoida zawiera po prostu silne autokorelacje, a same autokorelacje nie są warunkiem wystarczającym do niestacjonarności. Gdybyśmy potraktowali ten proces jako stacjonarny, wtedy moglibyśmy użyć modelu ARMA(p, q) w Gretlu. Aby odnaleźć właściwe rzędy opóźnień p i q,  użyjemy dodatku armax w Gretlu, o którym pisałem tutaj. Dodatek pozwala wybrać MNW lub CMNW. Dla MNW działa wolno przy ustawieniu dużych maksymalnych poziomów p i q. Dla CMNW działa bardzo szybko, co stanowi dodatkowy walor tej metody. Zróbmy więc eksperyment dla MNW i CMNW.

MNW: Ustawmy w armax maksymalne rzędy p = 10 i q = 10. Te wartości wynikają z tego, że gdy potem chcemy użyć modelu ARIMA (już poza dodatkiem), to na obecną chwilę maksymalnymi rzędami AR i MA jest właśnie poziom 10. Upewniamy się, że jest ustawiona MNW (ML - maximum likelihood). Gdy dodatek armax zakończy pracę, musimy wybrać, wg którego kryterium będziemy szacować model. Na podstawie dwóch artykułów: Dla ARIMA najlepszym kryterium jest BIC? oraz  Nieprawda, że dla ARIMA najlepszym kryterium jest BIC. Nowy sprawdzian i prognoza WIG-u  wnioskujemy, że w ARIMA powinniśmy posługiwać się tylko HQC i BIC (kolejność ma znaczenie). Obydwa kryteria wskazały, że optymalnym wyborem jest p = 10 i q = 1. Wracamy więc teraz do ARIMA i używamy tych rzędów, przy czym pamiętamy, żeby ustawić d = 0 oraz MNW. Otrzymujemy wyniki i konstruujemy prognozę:



CMNW: Jeszcze raz wchodzimy do armaxa, upewniamy się, że max p = 10 i max q = 10 i dodatkowo zaznaczamy CMNW (CML - conditional maximum likelihood). Uzyskany mówi, że dla HQC optymalnym wyborem jest p = 4 i q = 3. Wobec tego wracamy do ARIMA i zmieniamy rzędy, tak aby estymować model ARIMA(4, 0, 3), czyli ARMA(4, 3). Następnie zmieniamy ustawienie MNW na CMNW.  Dostajemy wyniki i konstruujemy prognozę:



Gdy pierwszy raz to robiłem, byłem zdziwiony, że CMNW tak dokładnie odwzorowało funkcję sinus tylko na podstawie danych historycznych. CMNW może okazać się znacznie lepsza dla długoterminowych (niestacjonarnych) prognoz.

Należy tu jeszcze zwrócić uwagę, że gdy w armax zwiększymy maksymalne poziomy rzędów, np. do 12, to MNW się zmieni i wskaże p = 12 i q = 1, natomiast przy CMNW optimum zostaje zachowane - ciągle p =4 i q = 3. Wynika to z tego, że MNW wymaga dokładnej liczby parametrów, aby dać najlepsze możliwe wyniki, a CMNW potrafi sobie poradzić bez nich, wykorzystując pewne przybliżenia. Spodziewałbym się, że ze względu na cykliczność 200 rzędów w tym przypadku, MNW do tego poziomu właśnie zmieniałaby się, doprowadzając do globalnego optimum p = 200 i q = 1. Tutaj zaznaczam jednak, że to tylko moje przypuszczenie.

Funkcja sinus jest prosta, więc spróbujmy jeszcze przetestować bardziej skomplikowaną funkcję fraktalną, w której na sinus nakładamy mniejszy sinus i na ten mniejszy sinus nakładamy szum biały:




Powtórzmy eksperyment z poprzednich kroków.

MNW:  Dodatek Armax wskazał (dla wszystkich kryteriów) p = 3 i q = 10. Prognoza:



W długim terminie prognoza jest zbyt wygasająca.

CMNW: Armax pokazał (dla wszystkich kryteriów) p = 7 i q = 7. Prognoza:


Prognoza fantastyczna. CMNW niesamowicie dobrze prognozuje długoterminowe skomplikowane zmiany sinusoidalne tylko na podstawie historii.

CMNW okazuje się nie tylko dużo bardziej dokładna dla długoterminowych prognoz skomplikowanych wzorów ale także jest praktyczniejsza, bo dużo szybsza. Wynika z tego, że warto się tą metodą posługiwać.

 W takim razie spróbujmy wykorzystać CMNW do długoterminowej prognozy kwartalnego PKB od 4 kwartału 2017 do 4 kwartału 2021 r. Dane historyczne pochodzą z bazy GUS - kwartalnych zmian PKB z okresu 1.2003-3.2017. Przedstawię dwie prognozy - wg kryterium HQC oraz BIC. Prognozy wykonane analogicznie jak wyżej. Nie sprawdzamy więc stacjonarności, tylko od razu zakładamy d = 0 (tj. ARMA).

 -HQC (daje nieco lepsze dostosowania dla procesu ARMA): optymalny model = ARMA(8, 0):



 -BIC (lepiej wykrywa błądzenie przypadkowe - tutaj go z pewnością jednak nie ma): optymalny model = ARMA(5, 0):



Obydwa kryteria sygnalizują, że jeszcze 4 kwartał 2017 będzie bardzo dobry, natomiast od 2018 nastąpi deprecjacja i osłabienie gospodarczego wzrostu aż do końca roku.

* Metoda najmniejszych kwadratów (MNK) nie jest stosowana, bo się okazuje tutaj gorsza, opierając się tylko na historycznych danych. Podczas gdy MNW wykorzystuje dodatkowo teoretyczny rozkład prawdopodobieństwa - zob. [3] oraz [4]. Beach [5] także wykazał empirycznie, że MNW jest dla ARMA bardziej efektywna od MNK.  


 Literatura:
[1] Andersen, E. B., Asymptotic Properties of Conditional Maximum-Likelihood Estimators, 1970;
[2] Neyman, J., Scott, E. L., Consistent Estimates Based on Partially Consistent Observations, Jan. 1948;
[3]  Osborn, D. R., Maximum Likelihood Estimation of Moving Average Processes, 1976;
[4] Osborn, D. R.,  On the Criteria Functions used for the Estimation of Moving Average Processes, Jun., 1982;
[5] Beach, C. M., MacKinnon, J. G., A Maximum Likelihood Procedure for Regression with Autocorrelated Errors, Jan. 1978.

środa, 27 grudnia 2017

Jakie opóźnienie stosować w KPSS i ADF-GLS?

Testując stacjonarność szeregów czasowych w Gretlu natrafiamy na opcjonalne ustawienie maksymalnego opóźnienia wariancji (z próbki) błędu modelu regresji. Powstaje pytanie czy możemy manewrować tym opóźnieniem. Odpowiedź zależy od tego czy chcemy zbadać cykliczność czy samą tylko zmianę parametrów rozkładu szeregu czasowego. Z tego punktu widzenia artykuł podzieliłem na dwie części.

CZĘŚĆ 1: cykliczność:
Samo opóźnienie wariancji najłatwiej zrozumieć obrazowo. Skonstruujmy funkcję sinus z nałożonym białym szumem, niech będzie 1000 obserwacji:


Testując niestacjonarność tego procesu, okazuje się, że przy automatycznych ustawieniach Gretla standardowe testy jak ADF, ADF-GLS i KPSS nie odróżniają go od procesu stacjonarnego. Dlaczego? Dlatego, że dla nich ten proces jest to po prostu ARMA o dalekich rzędach autokorelacji. Procesy ARMA są procesami stacjonarnymi i w tym sensie można rozumieć, że przedstawiona próba jest stacjonarna. Jej funkcja autokorelacji wygląda następująco:


I tak testując KPSS, przy standardowych ustawieniach, lag truncation = 7, dostaniemy:


Czyli tak jak mówiłem proces został uznany za stacjonarny. Przy zwiększaniu czy zmniejszaniu tego poziomu sytuacja się zbytnio nie zmienia. Dopiero jeśli opóźnienie l zwiększymy do poziomu, który będzie odpowiadał długości okresu cyklu, tj. l = 200, sytuacja się zmienia. Dostaniemy wtedy:


Statystyka testu > 0,35, a więc proces zostaje teraz uznany za zmienny w czasie na poziomie 10% istotności. Podobny rezultat dostaniemy gdy użyjemy ADF-GLS. Wynika z tego, że l można traktować jako długość cyklu. A skoro tak, to znaczy, że precyzyjnie możemy oszacować wielkość l za pomocą periodogramu czy spektrum. W Gretlu używając periodogramu w skali logarytmicznej dostaniemy:


Najwyższa wartość na osi rzędnej odpowiada najwyższej częstotliwości (gęstości prawdopodobieństwa) sygnału. Te wartości można przeanalizować w tabeli:


Zaznaczyłem największą częstotliwość, tj. gęstość spektralną, z tabeli = 3,5. Sama ta wielkość nie jest dla nas istotna. Ważne, że odpowiada ona długości okresu = 200 (górna oś wykresu), co oznacza, że występuje 5 razy (1000 danych / 200 = 5). Czyli 5 jest to częstość cyklu, tj. mówi ile razy "zdarzenie cyklu" występuje w całej próbie (dolna oś wykresu). W takim telegraficznym skrócie przy okazji nauczyliśmy się analizy spektralnej.

Kiedy już wiemy czym jest opóźnienie w testach na niestacjonarność, możemy sami zacząć eksperymentować na danych ekonomicznych. Powrócę do CMR, którego ostatnio testowałem:



Stwierdziłem wtedy, że zmiany CMR są stacjonarne, jednak nie zmieniałem w ogóle ustawień l. Spójrzmy więc na periodogram zmian CMR:



Na pierwszy rzut oka wybijają się dwie długości okresów: 3 oraz 11. Można by sądzić, że występuje jakiś 3-dniowy oraz 11-dniowy cykl. Oznaczałoby to, że powinniśmy przetestować l = 3 oraz l = 11. Jednakże zastosowanie obydwu parametrów w KPSS (a także w ADF-GLS) nie zmieniło w ogóle wyników, co zaprzecza cykliczności, a to co jest widoczne na spektrum to prawdopodobnie jest przypadek. Nie jest to pewne, możliwe, że KPSS i ADF-GLS czegoś nie uwzględniają, bo jest mnóstwo różnych innych testów na wykrywanie cykli. Z drugiej strony zawsze trzeba mieć porównanie ze zwykłym ruchem Browna. Oto przykład periodogramu dla tego ruchu:




CZĘŚĆ 2: zmiana parametrów w dowolnym momencie:
W poprzednim poście stworzyłem proces niestacjonarny w ten sposób, że dla kilkuset danych procesu stacjonarnego od pewnego momentu zwiększyłem stopę zwrotu o różne poziomy: 0,1, 0,2 i 0,3 pktów proc. Test KPSS zaczął wykrywać zmienną strukturę procesu dla 0,3 pkt proc., jednak już 0,2 sugerowało, że proces może być niestacjonarny. Wówczas nie zmieniałem automatycznych ustawień testu, dla których opóźnienie l wyniosło 7. Gdybym zwiększył l do 21, statystyka testu jeszcze bardziej by wzrosła, do ponad 30, a więc jeszcze bardziej zbliżyłoby to do prawidłowej oceny. Gdybym jednak zwiększył l na przykład do 44, statystyka by spadła do 26. Przy l = 100, spadłaby do 23. Przy maksymalnym możliwym l (który byłby równy połowie wielkości próby), statystyka znów rośnie do 31.

Kwiatkowski et al. [1] dokładnie analizują różne poziomy opóźnienia i stwierdzają, że zbyt duża wartość obniża moc testu. W jaki sposób wybierają właściwy poziom? Używają oni w testach oddzielnie l0 = 0 oraz dodatkowo dwóch wzorów:

oraz

gdzie int() oznacza liczbę całkowitą z (), zaokrągloną w dół. T - liczba danych.

Zauważają, że przy mniejszych próbkach, powiedzmy do 200, l4 ma większą moc, natomiast l12 staje się lepszy przy większych próbach, powiedzmy powyżej 200. Przy występowaniu autokorelacji najgorszym wyborem jest l = 0.

I teraz uwaga: Gretl w KPSS używa wzoru na l4, natomiast w ADF-GLS używa l12 - to stąd ten automatyczny wybór. Gdy użyjemy w KPSS l12 dla próby CMR, to wtedy l12 = 21. I rzeczywiście wtedy statystyka wzrasta do ponad 30, jest to więc lepszy wybór niż automatycznie wybrany przez Gretla. Myślę, że tutaj twórcy mogliby poprawić algorytm w ten sposób, że dla T > 200, należy zastosować l12.

Możemy jeszcze sprawdzić co się stanie w odwrotnej sytuacji, tj. dla błądzenia przypadkowego. Przetestujmy dwie sytuacje: dla niedużej oraz dużej próby.

A) Weźmy taką próbę błądzenia przypadkowego z T = 51


Gretl ustawił l4 = 3, wtedy dla różnic poziomów otrzymamy


Użyjmy teraz l12 = 10. Wynik:


Jak się okazuje, test ciągle prawidłowo działa. Zastosujmy jednak maksymalny możliwy l, który wyniesie 25:


A więc test błędnie przyjmuje niestacjonarność skoro 0,39 > 0,351. Dowodzi to, że rzeczywiście nie można przyjmować maksymalnego opóźnienia.

B) Błądzenie przypadkowe z T = 398. Specjalnie wybrałem taki przypadek, gdzie w połowie próby "trend" się odwraca. Tutaj dochodzi jeszcze widoczna mniejsza zmienność przy spadkach, która przypomina nam bessę giełdową, gdy spadki są silne i jakby nieprzerwane:


Gretl ustawił l4 = 5, wtedy dla różnic poziomów otrzymamy


Zatem KPSS tym razem nie sprawdza się dla l4, przynajmniej na poziomie 10% istotności.

Użyjmy teraz l12 = 16. Wynik:


Tym razem l12 okazuje się lepszy, bo test nie odrzuca stacjonarności na poziomie 10%, chociaż jest blisko.

Czyli rzeczywiście dla większej liczby, np. powyżej 200 danych, należy użyć l12, aby nie wyciągnąć błędnych wniosków.

Nie oznacza to jednak, że KPSS zawsze super działa i nigdy się nie myli. Mimo naocznej zmiany kierunku w połowie zakresu, to ostatnie 100 danych ruchu Browna zatrzymuje kierunek wzrostu. Usuńmy te dane i sprawdźmy co wtedy:


Dla l4 = 5

Dla l12 = 15:


A więc test odrzuca stacjonarność nawet na poziomie 5%. Popełnilibyśmy więc błąd, bo bylibyśmy pewni, że mamy do czynienia z prawdziwym trendem rosnącym; prognozowalibyśmy zapewne dalsze zwyżki, weszlibyśmy na rynek i skończylibyśmy ze stratami albo najwyżej wyszlibyśmy na zero.

Natomiast gdybyśmy użyli tutaj ADF-GLS z automatycznym wyborem l12 = 15, to uzyskalibyśmy:



Test ten działa na odwrót, tzn. hipoteza zerowa to niestacjonarność. Skoro więc p = 0, to znaczy, że ADF-GLS odrzuca niestacjonarność. Test ten jest uogólnieniem ADF, jest więc od niego mocniejszy. Widać warto się nim wspomagać. KPSS i ADF-GLS uzupełniają się nazwzajem i przez to wzmacniają.

Literatura:
[1] Kwiatkowski, D., Phillips, P. C.B., Schmidt, P., Shin, Y., Testing the null hypothesis of stationarity against the alternative of a unit root, 1992.


DODATEK:

KPSS posługują się następującym estymatorem wariancji:

gdzie
T - długość próby;
w(s, l) - funkcja determinująca wielkość okna spektralnego - w tym przypadku okna Barletta:


e(t) - reszty modelu regresji, która jest testowana: y(t) = a + y(t-1) + e(t).
t - jednostka czasu;
l - opóźnienie, o którym mowa w artykule.

Powyżej opisany estymator przybliża długo-terminową wariancję błędów regresji:

gdzie: