niedziela, 31 marca 2019

Szybkie wyprowadzenie entropii informacyjnej Shannona

Entropia informacyjna jest ważnym pojęciem w statystyce i ekonometrii, ale raczej mało znanym w finansach. Czasami wykorzystuje się ją jako miarę ryzyka inwestycyjnego, lecz zanim jej użyjemy powinniśmy zrozumieć jej istotę. Spójrzmy najpierw na ten prosty wzór na entropię Shannona:

(1)

gdzie p(i) to prawdopodobieństwo zajścia pewnego zdarzenia x(i).

Pierwsze pytanie jakie przychodzi na myśl to: dlaczego w ogóle taki wzór? W polskich, a nawet zagranicznych opracowaniach internetowych nie znajdziemy szybkiej odpowiedzi. Oczywiście warto zajrzeć do oryginalnej pracy Shannona [2], która szczegółowo wyjaśnia użycie takiej a nie innej postaci, jednak dla laika w teorii informacji praca ta jest ciążka do przetrawienia i brakuje mi tam czysto matematycznego wyprowadzenia bez pojęcia bitów. Dlatego zacząłbym od prac, które wyprowadzają entropię wprost z rozkładów prawdopodobieństwa. Np. Hanel et al. [1] zaczynają od rozkładu dwumianowego, w którym występują tylko dwa zdarzenia: wyrzucenie orła albo reszki. Z tym że nie mamy pewności ani założenia, że rzucana moneta jest symetryczna i że oba zdarzenia są równie prawdopodobne, tj. nie muszą wynosić po 50%. Taką monetą rzucamy N razy (i każdy rzut jest niezależny od siebie). Powiedzmy, że k1 wskazuje ile razy wyrzucimy orła, a k2 ile razy wyrzucimy reszkę (czyli N = k1 + k2). Prawdopodobieństwo wyrzucenia k1 razy orła wynosi:

(2) 

gdzie p(1) to prawdopodobieństwo wyrzucenia raz orła, a p(2) to prawdopodobieństwo wyrzucenia raz reszki.

Jak wyżej powiedziano nie znamy teoretycznego p(i), jednak przy dużym N empiryczne prawdopodobieństwo będzie się zbliżać do teoretycznego. Dlatego uznajemy, że p(i) = k(i) / N. Dla dużego N można aproksymować wzór (2), korzystając z formuły Stirlinga. Wtedy (2) można zapisać w postaci:

(2)


gdzie H = -p(1)*ln(p1) - p(2)*ln(p2) = -[p(1)*ln(p1) + p(2)*ln(p2)].

Czyli widzimy, że:

(3)



Dlaczego entropia stanowi miarę nieporządku? Wiadomo, że N! / (k1! / (N - k1)!) to liczba kombinacji (bez powtórzeń) ułożenia k1 orłów w N rzutach. Czyli przy stałym N to właśnie entropia H mierzy liczbę tych kombinacji. Natomiast to, że im więcej kombinacji tym większy nieporządek, jest czymś intuicyjnie zrozumiałym. Oznacza to więcej możliwych niezależnych od siebie zdarzeń (trzeba zwrócić uwagę, że gdy zdarzenia są od siebie zależne, to liczba kombinacji nie będzie już oznaczać nieporządku, ale raczej mierzyć ilość informacji i wtedy taką definicję może przyjąć entropia - zob. ten wpis dotyczący termodynamiki nierównowagowej).

Teraz kolejne spostrzeżenie pozwoli nam zrozumieć znaczenie entropii. Powiedzmy, że wiemy, że moneta jest sprawiedliwa, czyli otrzymanie orła jest tak samo prawdopodobne jak reszki i musi wynieść 0,5. Podstawmy teraz p(1) = p(2) = 0,5 do wzoru (1):


Następnie przypuśćmy, że moneta nie byłaby sprawiedliwa, tak że p(1) = 0,6, a p(2) = 0,4. Wtedy H równa się:


W trzecim przykładzie niech p(1) = 0,8 i p(2) = 0,2:

W ostatnim przykładzie dla p(1) = 1 i p(2) = 0:

Wniosek nasuwa się sam: dla każdego innego prawdopodobieństwa niż 0,5 entropia będzie zawsze mniejsza. Czyli szansa wyrzucenia orła lub reszki równa 50% zapewnia najwyższą entropię. 

Co w sytuacji, gdy zdarzeń jest więcej niż 2? Dostajemy wtedy rozkład wielomianowy i prawdopodobieństwo wyrzucenia k(i) razy zdarzenia x(i) wynosi:

(4)

Wzór (4) możemy zapisać analogicznie jak (2):

(5)


gdzie H to właśnie wzór nr (1).

Idąc tym samym tropem co poprzednio zauważamy, że dla stałego N entropia H będzie warunkować liczbę kombinacji i tym samym mierzyć poziom nieuporządkowania układu.

Jeżeli układ ma pozostać "sprawiedliwy" dla każdego zdarzenia, to musimy przyjąć rozkład jednostajny, gdzie k1 = k2 = ... = kW = k. Wtedy p(i) = k / N, tzn. każde zdarzenie jest tak samo prawdopodobne. Domyślamy się już, że równa szansa każdego zdarzenia prowadzi do osiągnięcia maksimum entropii.

Powyższe wyprowadzenie stanowi źródło drugiej zasady termodynamiki, zgodnie z którą w układzie izolowanym entropia nie maleje. Gdy dodamy do tego izotropowość i jednorodność przestrzeni i czasu (np. symetryczność monety), wtedy entropia zawsze będzie maksymalna. 

Stąd rodzi się tzw. zasada maksimum entropii - ważna koncepcja w statystyce. O niej jednak więcej opowiem następnym razem.


Literatura:
[1] Hanel, R., Thurner, S., Gell-Mann, M., How multiplicity determines entropy and the derivation of the maximum entropy principle for complex systems, May 13, 2014,
[2] Shannon, C. E., A Mathematical Theory of Communication, July, 1948.

sobota, 30 marca 2019

Filtr Butterwortha + ARMA, czyli w górę albo w dół

Od kilku lat jestem negatywnie nastawiony do wzrostów na giełdzie, chociaż ostatnio w związku z zastosowaniem filtru Butterwortha (FB), pisałem, że WIG jest coraz bliżej dołka. Koniec FB sugeruje dołek na indeksie - tym razem wziąłem pod lupę WIG20 (kwartalne stopy od stycznia 2002 do marca 2019 r.):


Parametry: x_c = 27, n = 2. FB możemy teraz prognozować już klasyczną ekonometrią - tj. ARMA. Starujemy od wyrównanego szeregu FB:


Pierwsze różnice FB można uznać za stacjonarne (ADF i KPSS przemawiają za nią). Dodatek armax w gretlu wskazał optymalne parametry ARMA(4, 2) dla BIC i HQC jednocześnie. Możemy teraz użyć wskazanych pierwszych różnic FB do ARMA(4, 2) albo od razu zastosować oryginalny FB do ARIMA(4, 1, 2). Ta ostatnia pozwala graficznie ocenić kierunek FB. I tak otrzymałem prognozę na 4 kolejne kwartały:


Same przyrosty FB, czyli ARMA(4, 2), daje podobnie pozytywny sygnał:



Z powyższego wynikałoby, że mój negatywny sentyment do rynku jest błędny, a giełda chce się wzbijać. Jednakże problem z takimi modelami jak ARIMA jest tego typu, że prognoza silnie zależy od zakresu obserwacji. Pytanie brzmi czy zostałaby ona zachowana, gdyby obserwacje zacząć wcześniej, np. od stycznia 2000 r.? Okazuje się, że wtedy się zmienia. Optymalny model będzie to ARIMA(2, 1, 9), a prognoza:

 

Gdyby zrobić analizę na zmianach FB, czyli ARMA(2, 9), to jeszcze bardziej uwidacznia się ryzyko spadków:


A co, gdyby wziąć jeszcze wcześniejszy okres, np. od stycznia 1995? Wtedy optimum staje się ARIMA(2, 1, 6), a prognoza przedstawia się następująco:


Czyli znowu prognoza trendu rosnącego. Różnica jednak między pierwszą a ostatnią jest taka, że ta ostatnia jest mniej pewna wzrostów: sugeruje bardzo słaby zwyżkowy trend liniowy FB. W takim razie porównajmy to jeszcze z prognozą zmian, tj. użyjmy ARMA(2, 6):

  

Potwierdzona zostaje "prognoza niepewności i wątpliwości". Pamiętać trzeba tylko, że FB wykonywany był na stopach zwrotu, a więc ARMA na zmianach FB wskazuje kierunek zmian stóp zwrotu, a nie indeksu.