vremenske serije i primene u finansijama regresija u … · domaćinstvo troši više novca da bi...

38
VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u analizi vremenskih serija

Upload: others

Post on 19-Jan-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

VREMENSKE SERIJE I PRIMENE U FINANSIJAMA

Regresija u analizi vremenskih serija

Page 2: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

1

Sadržaj

1. Svrha regresije ................................................................................................................................................................................ 2

2. Linearni modeli ............................................................................................................................................................................... 3

2.1 Definicija ............................................................................................................................................................................. 3

2.2 Stacionarnost ...................................................................................................................................................................... 4

2.3 Simulacije ............................................................................................................................................................................ 4

3. Fitovani modeli ............................................................................................................................................................................... 5

3.1 Fitovanje modela simuliranim podacima ............................................................................................................................ 5

3.2 Primer – indeksi potrošačkih cena ...................................................................................................................................... 7

3.3 Autokorelacija i ocenivanje uzoračkih statistika ............................................................................................................... 10

4. Uopšteni metod najmanjih kvadrata ............................................................................................................................................ 12

4.1 Fitovanje modela simuliranoj seriji pomoću funkcije GLS ................................................................................................. 12

4.2 Interval poverenja za indekse potrošačkih cena ............................................................................................................... 13

5. Linearni modeli sa sezonskim komponentama ............................................................................................................................. 14

5.1 Uvod .................................................................................................................................................................................. 14

5.2 Aditivne sezonske indikatorske slučajne veličine .............................................................................................................. 14

5.3 Primer – nezaposlenost žena ............................................................................................................................................ 15

6. Prognoziranje pomoću regresije ................................................................................................................................................... 17

6.1 Uvod .................................................................................................................................................................................. 17

6.2 Predviđanje u R-u .............................................................................................................................................................. 17

7. Harmonijski sezonski modeli ........................................................................................................................................................ 19

7.1 Simulacije .......................................................................................................................................................................... 20

7.2 Fitovanje modela simuliranoj seriji .................................................................................................................................. 21

7.3 Primer – globalne prosečne temperature ......................................................................................................................... 23

8. Logaritamske transformacije ........................................................................................................................................................ 28

8.1 Uvod .................................................................................................................................................................................. 28

8.2 Primer – vrednost izvezenih proizvoda iz SAD-a u Kinu .................................................................................................... 29

9. Nelinearni modeli ......................................................................................................................................................................... 33

9.1 Uvod .................................................................................................................................................................................. 33

9.2 Primer simulacije i fitovanja nelinearnog modela ............................................................................................................. 34

10. Inverzna transformacija i korekcija pristrasnosti ........................................................................................................................ 35

10.1 Log-normalni reziduali .................................................................................................................................................... 35

10.2 Empirijsko određivanje faktora korekcije za predviđanje srednjih vrednosti ................................................................. 36

Literatura .......................................................................................................................................................................................... 37

Page 3: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

2

1. SVRHA REGRESIJE

Trendovi u vremenskim serijama mogu biti stohastički ili deterministički. Možemo smatrati da je trend

stohastički ako na njemu vidimo promene u kretanju koje se ne mogu objasniti nekom pogodnom

funkcijom vremena, a uočljive prolazne trendove pripisujemo jakoj serijskoj korelaciji sa slučajnom

greškom. Trendovi ovog tipa su česti u serijama vezanim za finansije i mogu biti simulirani u R-u koristeći

modele kao što su slučajno lutanje ili autoregresivni proces. S druge strane, kada imamo neko razumno

fizičko objašnjenje trenda, to želimo i da iskoristimo i objasnimo trend deterministički. Na primer,

deterministički rastući trend može biti posledica porasta populacije, a neke promene koje se ciklično

ponavljaju mogu nastati zbog određene sezonske komponente. Deterministički trendovi i sezonske

varijacije mogu se modelovati pomoću regresije.

Praktična razlika između stohastičkih i determinističkih trendova je da determinističke možemo

ekstrapolirati radi prognoziranja budućeg ponašanja serije. Opravdavamo kratkoročnu ekstrapolaciju

time da se trend ne može značajno promeniti u toku vremenskog intervala za koji pravimo predviđanje.

Iz istog razloga, za kratkoročnu ekstrapolaciju trenda više se preporučuje aproksimacija pravom nego

nekim polinomom višeg reda, i to ponekad uzimajući u obzir samo podatke iz bliske prošlosti.

U ovom radu bavimo se različitim regresionim modelima pogodnim za analizu vremenskih serija koje

sadrže deterministički trend i regularne sezonske promene. Počinjemo posmatrajući linearne modele

trendova, a kasnije se upoznajemo sa regresionim modelima kojima se mogu objasniti sezonske varijacije

koristeći indikatorske i harmonijske promenljive. Regresioni modeli takođe mogu uključivati i promenljive

objašnjenja. Logaritamske transformacije, koje se često koriste radi stabilizacije disperzije, su takođe

razmatrane.

Regresija kod vremenskih serija se najčešće razlikuje od standardne regresione analize jer su reziduali,

koji takođe čine jednu vremensku seriju, najčešće serijski korelisani. Kada je serijska korelacija pozitivna,

ocene standardnih grešaka ocenjenih parametara, koje u R-u dobijamo primenjujući standardni postupak

za regresionu analizu, teže da budu manje od njihovih stvarnih vrednosti. Zbog toga se statističkim

testovima dodeljuje veća značajnost nego što bi trebalo (p-vrednosti testova su manje nego što treba da

budu) u standardnom izlazu koji se dobija u R-u. Prilikom statističke obrade podataka, važno je

predstaviti ispravne statističke dokaze izvedenih zaključaka. Na primer, neka organizacija za ekološku

zaštitu bi mogla biti optužena za objavljivanje trendova koji su lažno statistički značajni. U ovom radu,

koristi se uopšteni metod najmanjih kvadrata kako bi se dobile popravljene ocene standardnih grešaka i

kako bi se objasnila autokorelacija u vremenskoj seriji reziduala.

Page 4: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

3

2. LINEARNI MODELI

2.1 Definicija

Kažemo da je model vremenske serije linearan ako se može napisati u obliku

gde je vrednost -te promenljive objašnjenja u trenutku , greška u

trenutku , a su prametri modela, koji mogu biti ocenjeni metodom najmanjih kvadrata.

Greške formiraju vremensku seriju , sa funkcijom srednje vrednosti koja je identički jednaka nuli,

koja ne mora da bude Gausova niti beli šum. Primer linearnog modela je polinom -tog stepena u funkciji

od

Promenljive objašnjenja u ovom slučaju su . Izraz “linearan” ovde se odnosi na

linearnost u odnosu na parametre, a ne prediktore.

Jednostavan primer linearnog modela je prava, čija se jednačina dobija zamenom u jednačini :

. U ovom slučaju, vrednost trenda u trenutku , je tačka sa prave, tj. .

Za polinome višeg reda, vrednost trenda u trenutku je vrednost polinoma iz jednačine u tački tj.

.

Mnogi nelinearni modeli mogu biti transformisani u linearne. Na primer model

vremenske serije može biti transormisan u linearni logaritmovanjem.

U jednačini standardnom metodom najmanjih kvadrata možemo oceniti vrednosti parametara i

i napraviti predviđanja za . Da bismo dobili prognozu za , potrebno je inverzno transformisati , u

ovom slučaju ta transformacija je Međutim, ovaj metod često ima za posledicu pogrešno

predviđanje srednjih vrednosti, i u odeljku razmatramo moguće korekcije.

Od prirodnih procesa koji generišu vremenske serije se ne očekuje da budu baš linearni, ali linearne

aproksimacije su često adekvatne. Ipak nismo ograničeni samo linearnim modelima; primer nelinearnog

modela bi bio tzv. Basov model koji se može dodeliti korišćenjem funkcije nls.

Page 5: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

4

2.2 Stacionarnost

Linearni model vremenske serije biće nestacionaran ako sadrži neke funkcije koje zavise od vremena.

Diferenciranje često može transformisati nestacionarnu seriju sa determinističkim trendom u

stacionarnu. Na primer, ako je vremenska serija koje se modeluje linijskim trendom na koji je dodat

beli šum, , onda je jednom diferencirana serija zadata sa:

Ako važi da je serija grešaka stacionarna, onda je i serija stacionarna, jer je funkcija srednje

vrednosti konstantna i korelaciona funkcija zavisi samo od dužine vremenskog intervala. Diferenciranje

može da transformiše nestacionarnu seriju sa stohastičkim trendom u stacionarnu (primer je slučajno

lutanje), što znači da diferenciranje može ukloniti i stohastički i deterministički trend iz serije. Ako je

trend polinom stepena , početnu seriju treba diferencirati puta da bi se uklonio trend.

Primetimo da diferenciranjem serije predstavljene kao zbir linearnog trenda i belog šuma dobijamo

drugačiju seriju od one koju bismo dobili da smo samo oduzeli trend. U ovom drugom slučaju ostaje nam

samo beli šum, dok diferenciranje daje priraštaje belog šuma (što je primer MA procesa).

2.3 Simulacije

Uobičajeno je da vremenska serija grešaka , iz jednačine bude autokorelisana. Navodimo kod

kojim se simulira i grafički predstavlja vremenska serija sa rastućim linearnim trendom i

autokorelisanim rezidualima.

set.seed(1)

z <- w <- rnorm(100, sd = 20)

for (t in 2:100)

z[t] <- 0.8 * z[t-1] + w[t]

t <- 1:100

x <- 50 + 3 * t + z

plot(x, xlab = "vreme", type = "l")

Model koji odgovara navedenom kodu se može izraziti kao , gde je jedan AR(1) process

zadat sa , pri čemu je Gausovski beli šum sa standardnim odstupanjem .

Grafik dobijene vremenske serije (u zavisnosti od vremena) prikazan je na sledećoj slici:

Page 6: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

5

3. FITOVANI MODELI

3.1 Fitovanje modela simuliranim podacima

Linearni modeli se najčešće formiraju minimiziranjem sume kvadrata reziduala

,

što se u R-u postiže primenom funkcije lm, na sledeći način:

> x.lm <- lm(x ~ t)

> coef(x.lm)

(Intercept) t

58.551218 3.063275

> vcov(x.lm)

(Intercept) t

(Intercept) 23.815013 -0.355447951

t -0.355448 0.007038573

> sqrt(diag(vcov(x.lm)))

(Intercept) t

4.88006278 0.08389621

Ocene parametara linearnog modela se mogu izdvojiti ekstraktorskom funkcijom coef. Primetimo da su,

kao što je i očekivano, ocene bliske vrednostima parametara koje smo zadali prilikom simulacije:

ocenjena vrednost za intercept (presek sa -osom) je , što je relativno blisko broju , a nagib

Page 7: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

6

prave (koeficijent uz ) je . Standardne greške se mogu dobiti kao kvadratni koreni elemenata na

glavnoj dijagonali matrice koju čine ocenjene kovarijacije između ocenjenih parametara linearnog

modela. Ugrađena funkcija u R-u koja daje tu matricu je vcov, a kao argument joj se prosleđuje

posmatrani linearni ili nelinearni model. Međutim, ovako dobijene vrednosti standardnih grešaka su

često potcenjene zbog autokorelacije reziduala. Može se koristiti i funkcija summary za dobijanje

informacija o modelu, s tim što ona vraća i dodatne informacije, npr. o t-testovima, koje mogu biti

netačne za potrebe regresione analize vremenske serije, takođe zbog autokorelacije reziduala.

Nakon fitovanja odgovarajućeg modela, možemo razmotriti razne dijagnostičke grafike. U slučaju

regresije vremenskih serija, jedan od veoma bitnih dijagnostičkih grafika je korelogram reziduala.

Autokorelacija (serijska korelacija) je korelacija između vrednosti vremenske serije u različitim

vremenskim trenucima. Parcijalna autokorelacija sa kašnjenjem je korelacija između i nakon

što je eliminisan uticaj svih elemenata između. Grafik autokorelacione funkcije naziva se korelogram, a

grafik parcijalne autokorelacione funkcije – parcijalni korelogram. U R-u, funkcije acf i pacf redom

računaju ocenjenu (na osnovu realizovane vremenske serije) autokorelacionu, odnosno parcijalnu

autokorelacionu funkciju i po default-u crtaju odgovarajuće korelograme. Kao argument tim funkcijama

prosleđujemo seriju reziduala, koja se iz modela izdvaja pomoću funkcije resid.

acf(resid(x.lm))

pacf(resid(x.lm))

Page 8: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

7

Kao što je očekivano, sa prvog grafika vidimo da je serija reziduala autokorelisana, zato što više od 5%

vrednosti izlazi van segmenta ograničenog plavim isprekidanim linijama. Drugi grafik ukazuje na to da je

samo parcijalna autokorelacija sa kašnjenjem značajna, što implicira da serija reziduala predstavlja

AR(1) proces. Ovakav rezultat je očekivan, s obzirom da smo prilikom simulacije reziduala koristili upravo

AR(1) proces. Uzgred, primetimo da acf računa korelacije za kašnjenja počevši od nule, dok pacf

računa počevši od jedinice.

3.2 Primer – indeksi potrošačkih cena

Navešćemo primer linearog regresionog modela koji odgovara podacima o indeksima potrošačkih cena u

Sjedinjenim Američkim Državama. Indeksi potrošačkih cena (Consumer Price Indexes (CPI)) definišu se

kao mera prosečne promene maloprodajnih cena robe i usluga koje se koriste za ličnu potrošnju tipičnog

potrošača. Koristi se za praćenje promena troškova života u vremenu. Kada CPI raste, tipično

domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću CPI mogu

se prepoznati periodi inflacije i deflacije. Inflacija je stanje u privredi kada opšti nivo cena raste, a stopa

inflacije je procentualna promena CPI u odnosu na neki raniji period. Nagli porast vrednosti CPI u

kratkom vremenskom periodu može ukazati na period inflacije, dok nagli pad ukazuje na period deflacije.

Baza podataka je preuzeta sa linka koji je naveden pod rednim brojem [3] u literaturi. Sadrži vrednosti

indeksa potrošačkih cena u periodu od januara 1947. do marta 2015. godine. Nakon učitavanja baze,

koristimo funkciju ts koja kreira objekat klase vremenske serije i zadajemo početni i krajnji trenutak, kao

i frekvenciju (frequency=12, s obzirom da su mesečni podaci u pitanju).

Page 9: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

8

baza <- read.table("c:/Users/Mila/Documents/Radno/VS/seminarski/cp.txt", header=F)

serija <- ts(baza, start=c(1947, 1), end=c(2015,3), frequency=12)

plot(serija, xlab="vreme", ylab="CPI", main="Consumer Price Index for All Urban Consumers")

Sa grafika se jasno vidi da postoji rastući deterministički trend, koji je u periodu od 1947. do oko 1975.

godine rastao sporijim tempom u odnosu na naredne godine u kojima je rast bio brži, sve do današnjeg

dana. Takođe, možemo uočiti skok i odmah zatim pad nivoa u 2009. godini, što je verovatno bila

posledica svetske ekonomske krize.

Izdvojićemo podatke od 1980. do 2007. godine kako bismo im pridružili odgovarajući linearni model, s

obzirom da su indeksi potrošačkih cena u tom periodu pratili približno linearni trend. Vreme je jedini

prediktor modela, pa ćemp funkcijom time izdvojiti vremenske trenutke iz ts objekta.

cpi <- window(serija, start=c(1980,1), end=c(2007,12))

cpi.lm <- lm(cpi ~ time(cpi))

plot(cpi, xlab="vreme", ylab="CPI", main="Consumer Price Index (1980 - 2007)")

abline(cpi.lm, lty=2, lwd=2, col='goldenrod1')

Page 10: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

9

> summary(cpi.lm)

Call:

lm(formula = cpi ~ time(cpi))

Residuals:

Min 1Q Median 3Q Max

-5.4168 -1.9114 0.2692 1.4515 5.4432

Coefficients:

Estimate Std. Error t value Pr(>|t|)

(Intercept) -8.611e+03 2.617e+01 -329.0 <2e-16 ***

time(cpi) 4.391e+00 1.313e-02 334.5 <2e-16 ***

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 1.945 on 334 degrees of freedom

Multiple R-squared: 0.997, Adjusted R-squared: 0.997

F-statistic: 1.119e+05 on 1 and 334 DF, p-value: < 2.2e-16

Kako je Adjusted R-squared: 0.997, možemo zaključiti da model gotovo savršeno odgovara podacima.

> confint(cpi.lm)

2.5 % 97.5 %

(Intercept) -8662.458216 -8559.487895

time(cpi) 4.365286 4.416926

Page 11: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

10

> acf(resid(cpi.lm))

Funkcijom confint određujemo 95%-tni interval poverenja za parametre modela. Interval poverenja za nagib prave ne sadrži nulu, što predstavlja statističko objašnjenje za postojanje trenda, u slučaju da je autokorelacija reziduala zanemarljiva. Međutim, serija reziduala je pozitivno autokorelisana, što dovodi do toga su vrednosti standardnih grešaka ocenjenih parametara manje nego što bi trebalo da budu, a samim tim su i intervali poverenja uži. Ukoliko u vremenskoj seriji postoji izraženi trend, onda autokorelaciona funkcija opada od jedinice skoro linearno, kao što je slučaj u ovom primeru.

U narednom odeljku je matematički objašnjeno kako pozitivna autokorelacija između uzastopnih vrednosti (koja nastaje zato što se slične vrednosti javljaju jedna za drugom) utiče na ocene standardnih grešaka u modelu.

3.3 Autokorelacija i ocenivanje uzoračkih statistika

Da bismo ilustrovali uticaj autokorelacije na ocenjivanje, koristićemo uzoračku sredinu, s obzirom da se

ona jednostavno određuje i analizira, a i koristi se u izračunavanjima drugih statističkih osobina.

Pretpostavimo da je vremenska serija nezavisnih slučajnih veličina sa srednjom

vrednošću i disperzijom . Poznato je da tada uzoračka sredina

ima

matematičko očekivanje i disperziju

, odnosno standardno odstupanje

.

Page 12: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

11

Sada pretpostavimo da je stacionarna vremenska serija sa srednjom vrednošću

i disperzijom , i autokorelacionom funkcijom . Odredimo disperziju uzoračke

srednje vrednosti u tom slučaju.

Koristeći jednakost

dalje dobijamo

Pritom, koristili smo uobičajene oznake za autokovarijacionu, odnosno autokorelacionu funkciju:

Kada uvrstimo i

, konačno se dobija

U jednačini (5), disperzija koja je jednaka

i koja odgovara prostom slučajnom uzorku, dobija se kao

specijalni slučaj kada važi za svako . Ukoliko je , onda važi

, što znači da će

ocena za biti manje precizna od ocene koja se dobija na osnovu prostog slučajnog uzorka istog obima.

U usprotnom, ukoliko je disperzija ocene zapravo može biti manja od disperzije koja se dobija pri

prostom slučajnom uzorku istog obima. To se dešava zbog toga što postoji tendencija da se nakon

vrednosti koja je iznad uzoračke sredine pojavi vrednost koja je ispod uzoračke sredine (zbog negativne

korelacije), čime se obezbeđuje povećanje efikasnosti ocene uzoračke srednje vrednosti. Kod pozitivne

korelacije je verovatnije da će vrednosti u kontinuitetu biti iznad, odnosno ispod uzoračke sredine, što

kao posledicu ima smanjenje efikasnosti ocena uzoračke sredine. Dakle, u slučaju pozitivne korelacije,

Page 13: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

12

potreban je uzorak većeg obima kako bi se postigao podjednak nivo preciznosti ocene za u poređenju

sa preciznošću ocene kada je vremenska serija negativno korelisana ili nije uopšte korelisana.

4. UOPŠTENI METOD NAJMANJIH KVADRATA

U regresiji vremenskih serija uobičajeno je i očekivano da serija reziduala bude autokorelisana. Kao što je

već rečeno, u slučaju pozitivne serijske korelacije u seriji reziduala, standardne greške ocenjenih

parametara imaju tendenciju da budu potcenjene, na osnovu jednakosti (5), pa bi stoga trebalo izvršiti

korekciju.

Uopšteni metod najmanjih kvadrata (generalised least squares (GLS)) se može koristiti za dobijanje boljih

ocena standardnih grešaka parametara regresije, tako da te ocene objašnjavaju autokorelaciju reziduala.

Ovaj metod se bazira na maksimiziranju verodostojnosti ukoliko je data autokorelacija podataka.

Odgovarajuća funkcija u R-u se naziva gls i nalazi se u paketu nlme.

4.1 Fitovanje modela simuliranoj seriji pomoću funkcije GLS

Naredni primer ilustruje upotrebu funkcije gls kojom se fituje model vremenskoj seriji simuliranoj u

odeljku 2.3.

> library(nlme)

> x.gls <- gls(x ~ t, cor = corAR1(0.8))

> summary(x.gls)

Generalized least squares fit by REML

Model: x ~ t

Data: NULL

AIC BIC logLik

862.8866 873.2265 -427.4433

Correlation Structure: AR(1)

Formula: ~1

Parameter estimate(s):

Phi

0.7161368

Coefficients:

Value Std.Error t-value p-value

(Intercept) 58.23302 11.924568 4.883449 0

t 3.04225 0.202445 15.027538 0

Page 14: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

13

Correlation:

(Intr)

t -0.857

Standardized residuals:

Min Q1 Med Q3 Max

-1.6171329 -0.6195428 0.0353972 0.5836326 2.3184155

Residual standard error: 25.58595

Degrees of freedom: 100 total; 98 residual

> sqrt(diag(vcov(x.gls))) # možemo i ovako da odredimo std. greške

(Intercept) t

11.9245679 0.2024447

Argumentom cor = corAR1(0.8) precizira se da je autokorelacija sa kašnjenjem jednaka (zato

što je ta vrednost korišćena prilikom simulacije podataka u odeljku 2.3). U slučaju realnih podataka, tj.

neke vremenske serije koja je nastala na osnovu podataka iz prošlosti, autokorelacija sa kašnjenjem se

procenjuje na osnovu korelograma reziduala fitovanog linearnog modela. To znači da prvo mora da se

napravi linearni model običnom metodom najmanjih kvadrata i da se, zatim, iz korelograma reziduala tog

modela očita vrednost autokorelacije sa kašnjenjem .

U navedenom primeru, standardne greške parametara modela su za presek sa -osom i za

nagib prave, tj. znatno su veće od standardnih grešaka dobijenih primenom obične metode najmanjih

kvadrata (u poglavlju 3), koje su iznosile za presek sa -osom i za nagib. Ocene standardnih

grešaka koje su dobijene pomoću gls su tačnije, zato što uzimaju u obzir serijsku korelaciju reziduala.

Mogu se pročitati iz izlaza koji daje funkcija summary ili se mogu “ručno” odrediti naredbom

sqrt(diag(vcov(x.gls))).

Takođe, možemo primetiti da se ocene samih parametara dva posmatrana modela malo razlikuju, zbog

ponderisanja. Na primer, nagib prave iznosi prema lm modelu, odnosno prema gls modelu.

4.2 Interval poverenja za indekse potrošačkih cena

Da bismo odredili 95%-tni interval poverenja za trend u seriji sa indeksima potrošačkih cena, tako da

serijska korelacija u seriji reziduala bude uzeta u obzir, koristimo funkciju gls. Kao argument funkcije

gls navodimo da serija reziduala otprilike prati AR(1) proces sa autokorelacijom sa kašnjenjem koja

iznosi , što se može očitati sa korelograma iz odeljka 3.2.

> acf(resid(cpi.lm))[1] # autokorelacija sa kašnjenjem 1

Page 15: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

14

Autocorrelations of series ‘resid(cpi.lm)’, by lag

1

0.959

> cpi.gls <- gls(cpi ~ time(cpi), cor = corAR1(0.959))

> confint(cpi.gls)

2.5 % 97.5 %

(Intercept) -10352.056812 -8421.215908

time(cpi) 4.318123 5.242116

Iako su intervali poverenja sada širi nego u odeljku 3.2, nula i dalje nije sadržana u intervalima, što znači

da su ocene parametara statistički značajne. Stoga, postoji statistički dokaz rastućeg trenda za vrednosti

CPI u periodu od 1980. do 2007. godine, i očekuje se da se takav trend nastavi u narednim godinama.

5. LINEARNI MODELI SA SEZONSKIM KOMPONENTAMA

5.1 Uvod

Kako vremenske serije predstavljaju opservacije merene u toku vremena, sezonske komponente se često

javljaju u podacima, posebno godišnje ciklične promene koje su direktna ili indirektna posledica kretanja

Zemlje oko Sunca. U ovom odeljku ćemo razmatrati linearne regresione modele sa prediktorima koji

opisuju efekat sezonskih promena.

5.2 Aditivne sezonske indikatorske slučajne veličine

Neka vremenska serija sadrži sezona. Na primer, kod vremenskih serija gde se podaci beleže svakog

kalendarskog meseca, , odnosno kod serija kod kojih su kvartalni podaci, . Sezonski

indikatorski model za seriju koja ima sezona i trend , zadat je sa:

gde je ukoliko se trenutak javlja u -toj sezoni , a serija

reziduala, koja može biti autokorelisana. Ovaj model ima isti oblik kao aditivna dekompozicija modela, ali

se razlikuje u parametrima koji definišu trend. U jednakosti (6), nema slobodan član (intercept),

npr. bi mogao da bude polinom stepena sa koeficijentima . Dakle, jednakost (6) je

ekvivalentna polinomijalnom trendu u kom slobodan član zavisi od sezone, tako da sezonskim

Page 16: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

15

parametrima odgovara mogućih slobodnih članova iz jednakosti (2). Jednakost (6) se

drugačije može zapisati:

Na primer, za vremensku seriju čije su vrednosti beležene svakog meseca počevši sa u januaru, sezonski indikatorski model sa linearnim trendom zadat je na sledeći način:

Parametri modela (8) mogu se oceniti običnom ili uopštenom metodom najmanjih kvadrata, tretirajući

sezonsku komponentu kao faktor. U R-u se funkcija factor može primeniti na sezonske indekse koji iz

vremenske serije mogu izdvojiti funkcijom cycle.

5.3 Primer – nezaposlenost žena

Ilustrovaćemo opisani model na primeru vremenske serije koja beleži broj nezaposlenih žena u

Sjedinjenim Američkim Državama u periodu od januara 1948. do aprila 2015. godine. Baza podataka je

preuzeta sa linka koji je naveden pod rednim brojem [4] u literaturi.

women <- read.table("c:/Users/Mila/Documents/Radno/VS/seminarski/LNU03000002. txt", header=T)

wmn <- ts(women, start=c(1948, 1), end=c(2015,4), frequency=12)

plot(wmn, xlab="vreme", ylab="hiljada osoba", main="Nezaposlenost žena")

Na -osi je naznačeno da ova vremenska serija prati koliko hiljada žena je nezaposleno u određenom

vremenskom trenutku. Kao što možemo videti sa grafika, gledano na duže staze, deluje kao da postoji

izvestan rastući trend, što je verovatno posledica porasta broja stanovnika u SAD-u u poslednjih

šezdesetak godina (s obzirom da se posmatra broj, a ne procenat, nezaposlenih). Takođe, uočava se i

nagli skok u broju nezapolenih u 2009. i 2010. godini, zbog svetske ekonomske krize.

Ukoliko se nacrta grafik za kraći vremenski interval, postojanje sezonske komponente je sasvim uočljivo.

U okviru jedne godine, najviši je nivo nezapolenosti u letnjim mesecima (jul i avgust), a najmanji u

periodu pre Nove godine (novembar i decembar) i u aprilu.

Page 17: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

16

Page 18: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

17

Napravićemo model (8), čiji je trend prava linija, a sezonske komponente predstavljene indikatorskim

slučajnim veličinama. Potrebno je eksplicitno navesti nulu u formulaciji modela: lm(wmn ~ 0 + vreme +

factor(sezone), data=wmn), da u modelu ne bi postojao slobodan član. Ukoliko bi se izostavila nula,

dobijeni model bi imao slobodan član i jedan sezonski parametar manje. Parametre smo mogli da

ocenimo i pomoću funkcije gls, umesto ovde korišćene lm.

> sezone <- cycle(wmn)

> vreme <- time(wmn)

> wmn.lm <- lm(wmn ~ 0 + vreme + factor(sezone), data=wmn)

> coef(wmn.lm)

vreme factor(sezone)1 factor(sezone)2 factor(sezone)3

62.19358 -120360.01227 -120406.41566 -120497.89257

factor(sezone)4 factor(sezone)5 factor(sezone)6 factor(sezone)7

-120628.86949 -120541.10102 -120121.88084 -120134.09348

factor(sezone)8 factor(sezone)9 factor(sezone)10 factor(sezone)11

-120244.96285 -120351.71281 -120477.16427 -120507.73512

factor(sezone)12

-120709.24628

6. PROGNOZIRANJE POMOĆU REGRESIJE

6.1 Uvod

Bitna stavka u regresionoj analizi vremenskih serija je predviđanje budućnosti na osnovu podataka iz

prošlosti. Pritom se koristi ekstrapolacija odabranog modela, tj. nalaze se vrednosti u budućim

trenucima. Glavni problem ovakvog pristupa je u tome što se trend može promeniti u budućnosti. Zbog

toga je bolje gledati na predviđanje, koje se bazira na regresionom modelu, kao na očekivanu vrednost

pod uslovom da se trend iz prošlosti nastavlja i u budućnosti.

6.2 Predviđanje u R-u

Sada ćemo odrediti dvadesetomesečnu prognozu budućeg broja nezposlenih žena iz primera 5.3,

pomoću napravljenog modela. U narednom kodu, prvo kreiramo vremenske trenutke koji odgovaraju

mesecima počev od januara 2015. do decembra 2016. a zatim odstranjujemo prva 4 meseca, zato što već

Page 19: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

18

imamo realizovane vrednosti zaključno sa aprilom 2015. i time dobijamo vektor new.t sa budućim

vremenskim trenucima.

Prvo navodimo “ručno izračunatu” prognozu: nagib prave koja predstavlja trend je alpha, dok beta čine

sezonski parametri, pa su tada prognozirane vrednosti (alpha * new.t + beta).

> new.t <- seq(2015, len = 2 * 12, by = 1/12)[5:24]

> new.t

[1] 2015.333 2015.417 2015.500 2015.583 2015.667 2015.750 2015.833

[8] 2015.917 2016.000 2016.083 2016.167 2016.250 2016.333 2016.417

[15] 2016.500 2016.583 2016.667 2016.750 2016.833 2016.917

> alpha <- coef(wmn.lm)[1]

> beta <- rep(coef(wmn.lm)[2:13], 2)[5:24]

> (alpha * new.t + beta)

factor(sezone)5 factor(sezone)6 factor(sezone)7 factor(sezone)8

4799.686 5224.089 5217.059 5111.373

factor(sezone)9 factor(sezone)10 factor(sezone)11 factor(sezone)12

5009.805 4889.537 4864.149 4667.820

factor(sezone)1 factor(sezone)2 factor(sezone)3 factor(sezone)4

5022.237 4981.017 4894.722 4768.928

factor(sezone)5 factor(sezone)6 factor(sezone)7 factor(sezone)8

4861.880 5286.283 5279.253 5173.566

factor(sezone)9 factor(sezone)10 factor(sezone)11 factor(sezone)12

5071.999 4951.730 4926.342 4730.014

Alternativno, može se koristiti generička funkcija za predviđanje u R-u, koja se naziva predict. Kao

parametri joj se prosleđuju fitovani model i novi podaci (novi vremenski trenuci, u slučaju analize

vremenskih serija) u kojima želimo da odredimo prognozirane vrednosti. Posebno treba obratiti pažnju

na to da novi podaci budu adekvatno definisani i imenovani u okviru objekta klase data.frame.

Neophodno je da kolone budu imenovane isto kao prediktori modela (vreme i sezone, u ovom

primeru). U suprotnom, R će javiti grešku.

> new.dat <- data.frame(vreme = new.t, sezone = c(5:12, 1:12))

> predict(wmn.lm, new.dat)

1 2 3 4 5 6 7 8

4799.686 5224.089 5217.059 5111.373 5009.805 4889.537 4864.149 4667.820

9 10 11 12 13 14 15 16

5022.237 4981.017 4894.722 4768.928 4861.880 5286.283 5279.253 5173.566

17 18 19 20

5071.999 4951.730 4926.342 4730.014

Na oba načina dobijaju se iste vrednosti.

Page 20: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

19

7. HARMONIJSKI SEZONSKI MODELI

U prethodnim odeljcima za svaku sezonu ocenjivali smo po jedan parametar. Ipak, sezonski efekat često

varira tokom sezona glatko, pa bi bilo efikasnije, što se tiče broja parametara za ocenjivanje, posmatrati

neke glatke funkcije sa manje parametara koje bi odjednom ocenile sezonski efekat za sve sezone.

Sinusna i kosinusna funkcija mogu biti korišćene kao glatke ocene sezonske varijacije. Sinusni talas

frekvencije , amplitude , i faze može biti, korišćenjem adicionih formula, zapisan na sledeći način:

gde su i . Izraz sa desne strane jednakosti je linearan po parametrima i

, dok leva strana nije linearna jer se nalazi unutar sinusne funkcije. Iz tog razloga izraz sa desne

strane je poželjan za definisanje regresionog modela sezonske komponente, a parametre i

ocenjujemo metodom najmanjih kvadrata. Za vremensku seriju sa sezona postoji mogućih

ciklusa. Harmonijski sezonski model definišemo sa:

gde je trend koji uključuje slobodan član, a i su takođe nepoznati parametri. Trend možemo

oceniti polinomom kao u jednačini . Ako je paran broj, vrednost sinusne funkcije za frekvenciju

(kada je u sumi u jednačini (10)) će biti nula za sve vrednosti , pa taj sabirak nestaje. Dakle,

maksimalni broj parametara harmonijskog sezonskog modela koje treba oceniti je jednak broju

parametara za sezonski model iz jednačine .

Na prvi pogled može biti čudno kako harmonijski model ima cikluse frekvencije veće u odnosu na

sezonsku koja je . Dodavanje dodatnih harmonika ima ulogu da izmeni talas kako bismo imali

realističniji model u odnosu na običan sinusni talas perioda . Svakako, komponenta perioda bi trebalo

da bude dominantna. Neka je, na primer, data mesečna vremenska serija. Nacrtaćemo dva grafika; na

prvom je sezonska komponenta sinusni talas perioda , a na drugom smo u skladu sa prethodnim

razmatranjem sinusnom talasu perioda koji je u osnovi, dodali još dva harmonika, frekvencija i

. Navedeni kod ilustruje jednu od bezbroj mogućnosti kombinovanja harmonika, koje može da

posluži za modelovanje širokog spektra mogućih sezonskih pravilnosti.

TIME <- seq(1, 12, len = 1000)

plot(TIME, sin(2 * pi * TIME/12), type = "l")

plot(TIME, sin(2 * pi * TIME/12) + 0.2 * sin(2 * pi * 2 * TIME/12)

+ 0.1 * sin(2 * pi * 4 * TIME/12)

+ 0.1 * cos(2 * pi * 4 * TIME/12), type = "l")

Page 21: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

20

7.1 Simulacije

U skladu sa modelom datim u jednačini navodimo jedan konkretan primer vremenske serije

gde je Gausov beli šum sa standardnom devijacijom Ovaj harmonijski model ima sezonsku

komponentu koja je već grafički prikazana na prethodnoj slici, a za trend smo izabrali kvadratnu funkciju.

Ovu seriju ćemo sada simulirati i nacrtati grafik.

set.seed(1)

TIME <- 1:(10 * 12)

w <- rnorm(10 * 12, sd = 0.5)

Page 22: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

21

Trend <- 0.1 + 0.005 * TIME + 0.001 * TIME^2

Seasonal <- sin(2*pi*TIME/12) + 0.2*sin(2*pi*2*TIME/12) +

0.1*sin(2*pi*4*TIME/12) + 0.1*cos(2*pi*4*TIME/12)

x <- Trend + Seasonal + w

plot(x, type = "l", xlab="Time")

7.2 Fitovanje modela simuliranoj seriji

Radi preglednosti, sve moguće harmonike iz jednačine možemo staviti da budu komponente

matrice.

SIN <- COS <- matrix(nr = length(TIME), nc = 6) for (i in 1:6) { COS[, i] <- cos(2 * pi * i * TIME/12) SIN[, i] <- sin(2 * pi * i * TIME/12) }

U većini slučajeva red harmonika i polinomijalni trend su nepoznati. Pretpostavljamo da su koeficijenti harmonika nezavisne slučajne veličine, tako da u slučaju da dobijemo vrednosti koeficijenata koje nisu statistički značajne, te prediktore, možemo isključiti iz linearnog modela.

x.lm1 <- lm(x ~ TIME + I(TIME^2) + COS[, 1] + SIN[, 1] + + COS[, 2] + SIN[, 2] + COS[, 3] + SIN[, 3] + COS[, 4] +

Page 23: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

22

+ SIN[, 4] + COS[, 5] + SIN[, 5] + COS[, 6] + SIN[, 6]) > summary(x.lm1) Call: lm(formula = x ~ TIME + I(TIME^2) + COS[, 1] + SIN[, 1] + COS[, 2] + SIN[, 2] + COS[, 3] + SIN[, 3] + COS[, 4] + SIN[, 4] + COS[, 5] + SIN[, 5] + COS[, 6] + SIN[, 6]) Residuals: Min 1Q Median 3Q Max -1.0782 -0.2871 0.0045 0.2547 1.1128 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 1.558e-01 1.258e-01 1.239 0.218080 TIME 5.392e-03 4.793e-03 1.125 0.263112 I(TIME^2) 9.951e-04 3.837e-05 25.933 < 2e-16 *** COS[, 1] 1.908e-02 5.822e-02 0.328 0.743761 SIN[, 1] 9.015e-01 5.838e-02 15.442 < 2e-16 *** COS[, 2] -3.008e-02 5.845e-02 -0.515 0.607890 SIN[, 2] 2.025e-01 5.875e-02 3.447 0.000817 *** COS[, 3] 1.350e-02 5.826e-02 0.232 0.817146 SIN[, 3] -4.102e-02 5.837e-02 -0.703 0.483775 COS[, 4] 1.328e-02 5.835e-02 0.228 0.820379 SIN[, 4] 6.131e-02 5.825e-02 1.053 0.294982 COS[, 5] -6.785e-02 5.900e-02 -1.150 0.252712 SIN[, 5] 5.063e-02 5.906e-02 0.857 0.393199 COS[, 6] -1.473e-02 4.753e-02 -0.310 0.757165 SIN[, 6] 1.080e+12 2.823e+12 0.382 0.702943 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 0.4509 on 105 degrees of freedom Multiple R-squared: 0.9912, Adjusted R-squared: 0.99 F-statistic: 846.7 on 14 and 105 DF, p-value: < 2.2e-16

Na osnovu izlaza funkcije summary vidimo da su jedino statistički značajni parametri uz prediktore TIME^2, SIN[, 1] i SIN[, 2]. Ovi parametri korišćeni su za sledeći model.

> x.lm2 <- lm(x ~ I(TIME^2) + SIN[, 1] + SIN[, 2]) > coef(x.lm2)/sqrt(diag(vcov(x.lm2))) (Intercept) I(TIME^2) SIN[, 1] SIN[, 2] 4.627904 111.143693 15.786425 3.494708

Sada su svi parametri statistički značajni. Model koji smo dobili je sledeći:

Za poređenje ova dva modela možemo koristitii AIC (Akaike Information Criterion).

Page 24: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

23

> AIC(x.lm1) [1] 165.3526 > AIC(x.lm2) [1] 149.7256

Kao što je očekivano, drugi model ima manju vrednost AIC, i zato predstavlja bolji model za našu seriju. Zbog komponente greške, stvarni model na osnovu kog je simulirana serija neće biti najbolji mogući model u smislu vrednosti AIC, što se lako može proveriti nalaženjem AIC vrednosti simuliranog modela, za koju se ispostavlja da je , što je veće od malopre dobijenog

> AIC(lm(x ~ TIME +I(TIME^2) +SIN[,1] +SIN[,2] +SIN[,4] +COS[,4])) [1] 153.0309

U R-u postoji algoritam step koji automatski pravi izbor najboljeg mogućeg modela u smislu vrednosti AIC tako što od početnog modela postepeno pravi najbolji model izbacivanjem po jednog (najmanje značajnog) prediktora u svakom koraku. Za navedeni primer, odgovarajuća komanda bi bila step(x.lm1), tj. kao prvi model treba proslediti onaj model koji sadrži sve prediktore.

7.3 Primer – globalne prosečne temperature

Baza podataka je preuzeta sa linka koji je naveden pod rednim brojem [5] u literaturi. Podaci

predstavljaju globalne prosečne mesečne temperature u periodu od januara 1856. do decembra 2005.

godine. Ova vremenska serija se koristi za proučavanje globalnog zagrevanja čije su posledice na naš svet

ogromne. Najizraženiji je rast u periodu od 1970. do 2000. godine, pa ćemo izdvojiti seriju u tom

vremenskom periodu radi daljeg proučavanja. Nakon učitavanja baze, koristimo funkciju ts koja kreira

objekat klase vremenske serije i zadajemo početni i krajnji trenutak, kao i frekvenciju.

Kako je vreme (niz svih trenutaka u kojima su vršena merenja) dato u godinama, pri formiranju matrice

sa vrednostima sinusa i kosinusa nije potrebno deliti sa . Nakon formiranja te matrice standardizovali

smo vreme da bismo smanjili greške izračunavanja u linearnom modelu koje su posledica velikih

vrednosti te promenljive.

www<-"http://staff.elena.aut.ac.nz/Paul-Cowpertwait/ts/global.dat" Global<-scan(www) Global.ts<-ts(Global,start=c(1856,1),end=c(2005,12),fr=12) time(Global.ts) plot(Global.ts)

Page 25: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

24

temp<-window(Global.ts, start=c(1970,1),end=c(2005,12)) plot(temp)

> SIN <- COS <- matrix(nr = length(temp), nc = 6) > for (i in 1:6) { + COS[, i] <- cos(2 * pi * i * time(temp)) + SIN[, i] <- sin(2 * pi * i * time(temp)) + } > TIME <- (time(temp) - mean(time(temp)))/sd(time(temp)) > mean(time(temp)) [1] 1987.958 > sd(time(temp)) [1] 10.40433 > temp.lm1 <- lm(temp ~ TIME + I(TIME^2) + + COS[,1] + SIN[,1] + COS[,2] + SIN[,2] + + COS[,3] + SIN[,3] + COS[,4] + SIN[,4] +

Page 26: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

25

+ COS[,5] + SIN[,5] + COS[,6] + SIN[,6]) > summary(temp.lm1) Call: lm(formula = temp ~ TIME + I(TIME^2) + COS[, 1] + SIN[, 1] + COS[, 2] + SIN[, 2] + COS[, 3] + SIN[, 3] + COS[, 4] + SIN[, 4] + COS[, 5] + SIN[, 5] + COS[, 6] + SIN[, 6]) Residuals: Min 1Q Median 3Q Max -0.37106 -0.07893 -0.00509 0.07682 0.43212 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 1.664e-01 9.117e-03 18.257 <2e-16 *** TIME 1.843e-01 6.087e-03 30.280 <2e-16 *** I(TIME^2) 8.673e-03 6.810e-03 1.274 0.2035 COS[, 1] 6.402e-03 8.595e-03 0.745 0.4568 SIN[, 1] 2.050e-02 8.596e-03 2.385 0.0175 * COS[, 2] 1.065e-02 8.810e-03 1.209 0.2275 SIN[, 2] 1.667e-02 8.633e-03 1.931 0.0541 . COS[, 3] 5.541e-03 8.593e-03 0.645 0.5194 SIN[, 3] 3.413e-03 8.594e-03 0.397 0.6914 COS[, 4] 4.699e-03 8.593e-03 0.547 0.5848 SIN[, 4] 1.445e-03 8.593e-03 0.168 0.8665 COS[, 5] 2.724e-03 8.593e-03 0.317 0.7514 SIN[, 5] 3.012e-03 8.593e-03 0.350 0.7262 COS[, 6] -2.858e-03 6.354e-03 -0.450 0.6530 SIN[, 6] -7.821e+08 1.258e+09 -0.622 0.5345 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 0.1263 on 417 degrees of freedom Multiple R-squared: 0.6896, Adjusted R-squared: 0.6792 F-statistic: 66.18 on 14 and 417 DF, p-value: < 2.2e-16

Na osnovu izlaza funkcije summary vidimo koji su prediktori značajni, a zatim pravimo drugi model koji uključuje samo one statistički značajne promenljive iz prvog modela.

> temp.lm2 <- lm(temp ~ TIME + SIN[, 1] + SIN[, 2]) > summary(temp.lm2) Call: lm(formula = temp ~ TIME + SIN[, 1] + SIN[, 2]) Residuals: Min 1Q Median 3Q Max -0.38904 -0.08341 -0.00240 0.07654 0.44564 Coefficients:

Page 27: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

26

Estimate Std. Error t value Pr(>|t|) (Intercept) 0.175012 0.006039 28.982 <2e-16 *** TIME 0.184096 0.006047 30.443 <2e-16 *** SIN[, 1] 0.020418 0.008542 2.390 0.0173 * SIN[, 2] 0.016154 0.008540 1.891 0.0592 . --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 0.1255 on 428 degrees of freedom Multiple R-squared: 0.6854, Adjusted R-squared: 0.6832 F-statistic: 310.8 on 3 and 428 DF, p-value: < 2.2e-16

Funkcijom AIC poredimo dva dobijena modela.

> AIC(temp.lm1) [1] -545.0491 > AIC(temp.lm2) [1] -561.1779

Još jedan način da se proveri adekvatnost drugog modela je ispitivanjem serije reziduala. Ako je potreban polinom višeg stepena za ocenu trenda, grafik serije reziduala će imati krivolinijski oblik. Na osnovu korelograma serije reziduala možemo da ocenimo da li je ta serija autokorelisana.

plot(time(temp), resid(temp.lm2), type = "l") abline(0, 0, col = "red") acf(resid(temp.lm2)) pacf(resid(temp.lm2))

Sa grafika serije reziduala možemo da zaključimo da se oni ponašaju slučajno, pa je linearni model trenda

odgovarajući. Ako primetimo da serija reziduala ima tendenciju da se zadržava ispod ili iznad -ose, to je

znak pozitivne autokorelisanosti serije. Na osnovu korelograma zaključujemo da je serija reziduala

autokorelisana.

Page 28: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

27

Vrednosti funkcije parcijalne autokorelacije sa kašnjenjem 1 i 2 su statistički značajne što upućuje na to

da je odgovarajući model za seriju reziduala AR(2) model. Primenom funkcije ar, kojom fitujemo AR

model, došli smo do istog zaključka i pritom ocenili parametre ovog modela.

> res.ar <- ar(resid(temp.lm2), method = "mle")

> res.ar$ar

[1] 0.4938189 0.3071598

> acf(res.ar$res[-(1:2)])

> sd(res.ar$res[-(1:2)])

[1] 0.08373324

Korelogram reziduala fitovanog AR(2) modela dat je na sledećoj slici, odakle je jasno da oni približno čine

beli šum.

Page 29: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

28

Ovaj krajnji model ima sledeći oblik

gde je vreme mereno u godinama, a serija reziduala koju smo objasili AR(2) modelom

i je beli šum sa srednjom vrednosti i standardnom devijacijom

Radi tačnijih ocena standardne greške potrebno je koristiti funkciju gls i pretpostaviti AR(2) strukturu

serije reziduala pošto su pretpostavke o nekorelisanosti reziduala kod linearnog modela narušene.

8. LOGARITAMSKE TRANSFORMACIJE

8.1 Uvod

Model vremenske serije koji ima oblik

gde je trend,

sezonska komponenta, a serija greške, je multiplikativni model. Logaritmovanjem

ove jednačine multiplikativni model svodimo na aditivni za novu seriju

Page 30: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

29

Ako su još i linearne funkcije, parametri u jednačini mogu biti ocenjeni metodom najmanjih

kvadrata. Logaritmovanje je moguće izvršiti samo ako su sve vrednosti serije pozitivne.

8.2 Primer – vrednost izvezenih proizvoda iz SAD-a u Kinu

Baza podataka je preuzeta sa linka koji je naveden pod rednim brojem [6] u literaturi. Podaci

predstavljaju ukupnu vrednost (u američkim dolarima) dobara koja se izvoze u Kinu na mesečnom nivou,

od januara 1992. do aprila 2015. godine.

VGC<-read.table("C:/Users/Anica/Desktop/vs/VGC.txt",header=TRUE)

VGC.ts<-ts(VGC, start=c(1992,1),end=c(2015,3),freq=12)

plot(VGC.ts,ylab="")

plot(log(VGC.ts))

Page 31: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

30

Na osnovu prvog grafika možemo da pretpostavimo da serija ima približno eksponencijalni trend. Na

kraju 2008. i početku 2009. godine vidimo veliki pad u količini izvoza, što je posledica svetske ekonomske

krize. Takođe primećujemo da i varijabilnost podataka raste sa vremenom. U ovakvim situacijama

pogodno je nastaviti ispitivanje na logaritmovanoj seriji, jer kao što vidimo na drugom grafiku,

logaritmovanje je stabilizovalo disperziju za koju sada možemo da pretpostavimo da je konstantna tokom

vremena. Ovoj seriji ćemo sada dodeliti harmonijski sezonski model i polinomijalni trend.

SIN <- COS <- matrix(nr = length(VGC.ts), nc = 6)

for (i in 1:6) {

COS[, i] <- cos(2 * pi * i * time(VGC.ts))

SIN[, i] <- sin(2 * pi * i * time(VGC.ts))

}

TIME <- (time(VGC.ts) - mean(time(VGC.ts)))/sd(time(VGC.ts))

VGC.lm1 <- lm(log(VGC.ts) ~ TIME + I(TIME^2) + I(TIME^3) + I(TIME^4) +

SIN[,1] + COS[,1] + SIN[,2] + COS[,2] + SIN[,3] + COS[,3] +

SIN[,4] + COS[,4] + SIN[,5] + COS[,5] + SIN[,6] + COS[,6])

> summary(VGC.lm1)

Call:

lm(formula = log(VGC.ts) ~ TIME + I(TIME^2) + I(TIME^3) + I(TIME^4) +

SIN[, 1] + COS[, 1] + SIN[, 2] + COS[, 2] + SIN[, 3] +

COS[, 3] + SIN[, 4] + COS[, 4] + SIN[, 5] + COS[, 5] +

SIN[, 6] + COS[, 6])

Residuals:

Min 1Q Median 3Q Max

-0.63927 -0.08984 -0.00509 0.09574 0.46553

Coefficients:

Estimate Std. Error t value Pr(>|t|)

(Intercept) 2.437e+01 1.642e-02 1484.022 < 2e-16 ***

TIME 1.337e+00 2.196e-02 60.877 < 2e-16 ***

I(TIME^2) 1.733e-01 3.442e-02 5.036 8.85e-07 ***

I(TIME^3) -1.285e-01 1.122e-02 -11.455 < 2e-16 ***

I(TIME^4) -7.424e-02 1.288e-02 -5.763 2.31e-08 ***

SIN[, 1] -7.367e-02 1.242e-02 -5.934 9.35e-09 ***

COS[, 1] -6.474e-02 1.238e-02 -5.231 3.45e-07 ***

SIN[, 2] -6.477e-02 1.242e-02 -5.216 3.71e-07 ***

COS[, 2] -3.404e-02 1.273e-02 -2.673 0.0080 **

SIN[, 3] -7.586e-02 1.241e-02 -6.111 3.56e-09 ***

COS[, 3] -3.086e-02 1.236e-02 -2.497 0.0132 *

SIN[, 4] -5.828e-02 1.238e-02 -4.707 4.07e-06 ***

COS[, 4] -1.885e-02 1.238e-02 -1.522 0.1292

SIN[, 5] -2.003e-02 1.240e-02 -1.615 0.1076

Page 32: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

31

COS[, 5] -9.510e-03 1.237e-02 -0.769 0.4426

SIN[, 6] 3.443e+08 1.802e+09 0.191 0.8486

COS[, 6] -1.877e-03 9.160e-03 -0.205 0.8378

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.1462 on 262 degrees of freedom

Multiple R-squared: 0.9842, Adjusted R-squared: 0.9832

F-statistic: 1018 on 16 and 262 DF, p-value: < 2.2e-16

Na osnovu izlaza funkcije summary vidimo koji su prediktori značajni, a zatim pravimo drugi model koji uključuje samo one statistički značajne promenljive iz prvog modela.

VGC.lm2<-lm(log(VGC.ts) ~ TIME + I(TIME^2) + I(TIME^3) + I(TIME^4) + SIN[,1] + COS[,1] + SIN[,2] + COS[,2] + SIN[,3] + COS[,3] + SIN[,4] ) > summary(VGC.lm2) Call: lm(formula = log(VGC.ts) ~ TIME + I(TIME^2) + I(TIME^3) + I(TIME^4) + SIN[, 1] + COS[, 1] + SIN[, 2] + COS[, 2] + SIN[, 3] + COS[, 3] + SIN[, 4]) Residuals: Min 1Q Median 3Q Max -0.67075 -0.09765 -0.00355 0.09694 0.49522 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 24.36594 0.01644 1482.520 < 2e-16 *** TIME 1.33591 0.02196 60.845 < 2e-16 *** I(TIME^2) 0.17326 0.03445 5.029 9.06e-07 *** I(TIME^3) -0.12802 0.01122 -11.406 < 2e-16 *** I(TIME^4) -0.07424 0.01290 -5.757 2.34e-08 *** SIN[, 1] -0.07349 0.01243 -5.912 1.03e-08 *** COS[, 1] -0.06487 0.01239 -5.235 3.34e-07 *** SIN[, 2] -0.06442 0.01240 -5.194 4.08e-07 *** COS[, 2] -0.03485 0.01240 -2.811 0.0053 ** SIN[, 3] -0.07570 0.01242 -6.095 3.81e-09 *** COS[, 3] -0.03119 0.01237 -2.520 0.0123 * SIN[, 4] -0.05836 0.01239 -4.709 4.01e-06 *** --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 0.1464 on 267 degrees of freedom Multiple R-squared: 0.9838, Adjusted R-squared: 0.9832 F-statistic: 1477 on 11 and 267 DF, p-value: < 2.2e-16

Funkcijom AIC poredimo dva dobijena modela.

Page 33: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

32

> AIC(VGC.lm2) [1] -266.7157 > AIC(VGC.lm1) [1] -262.672

Dakle, drugi model je bolji. Proveravamo njegovu adekvatnost.

> acf(resid(VGC.lm2))

Korelogram reziduala ukazuje na postojanje pozitivne autokorelacije. Zbog toga pravimo odgovarajući AR

model za seriju reziduala.

> ar(resid(VGC.lm2))$ar

[1] 0.24423685 0.32857813 0.15194788 0.10644370 0.12114045 0.07261867

[7] -0.04523650 -0.06391561 -0.04723421 -0.09945263 -0.21087808 0.52397223

[13] -0.07390691 -0.17893865

> VGC.ar=ar(resid(VGC.lm2))

> acf(VGC.ar$res[-(1:14)])

Page 34: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

33

Ukoliko bi na korelogramu reziduala fitovanog AR(14) modela samo autokorelacija sa kašnjenjem bila

značajna, onda bismo mogli da smatramo da novodobijeni reziduali čine beli šum. Ipak, uočavamo da su i

autokorelacije sa kašnjenjem , odnosno , statistički značajne, što znači da ovaj model nije uspeo da

u potpunosti objasni sezonske varijacije u podacima. To može zvučati čudno, s obzirom da smo fitovali

potpuni harmonijski sezonski model. Međutim, sezonski efekti mogu biti stohastički, baš kao i trend, a

harmonijski model koji smo upravo koristili je deterministički.

9. NELINEARNI MODELI

9.1 Uvod

Kao što je već rečeno u odeljku 2, linearni modeli se mogu primeniti na širok spektar vremenskih serija.

Međutim, za neke serije je zgodno direktno odrediti nelinearni model, umesto korišćenja logaritamskih

transformacija ili aproksimiranja polinomom. Na primer, ako je poznato da je serija nastala kao realizacija

nelinearnog procesa, koji se bazira na nekom determinističkom naučnom zakonu, onda bi bilo bolje

koristiti tu informaciju za pri formulaciji modela i podacima direktno fitovati nealinearni model.

Nelinearni model se u R-u može fitovati pomoću funkcije nls, koja se zasniva na metodi najmanjih

kvadrata.

U prethodnom odeljku smo zaključili da prirodni logaritam serije može da stabilizuje disperziju. Sa druge

strane, korišćenje logaritama može napraviti komplikacije kada serija sadrži negativne vrednosti, zato što

Page 35: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

34

logaritam nije definisan za negativne vrednosti. Jedan način za prevazilaženje ovog problema je dodati

neku pozitivnu konstantu svim članovima serije. Dakle, ako sadrži negativne vrednosti, dodavanjem

konstante za koju je sve vrednosti postaju pozitivne, pa je logaritmovana serija

dobro definisana. Linearni model (npr. sa pravolinijskim trendom) bi onda mogao da se

dodeli transformisanoj seriji i time bismo dobili model

gde su i parametri linearnog modela, a serija reziduala grešaka koja može biti autokorelisana.

Glavni problem ovog pristupa koji vodi do modela opisanog jednačinom je to što bi trebalo da

bude ocenjeno kao bilo koji drugi parametar modela, dok se u praksi ta konstanta često bira proizvoljno

tako da zadovoljava uslov . Ako postoji sumnja da neka serija odgovara modelu , a

nema dokaza o tome da je komponenta greške multiplikativni faktor, onda bi konstanta trebalo da

bude ocenjena zajedno sa drugim parametrima koristeći nelinearnu metodu najmanjih kvadrata, to jest

fitujemo sledeći model

9.2 Primer simulacije i fitovanja nelinearnog modela

Kako se nelinearni modeli koriste uglavnom kada je pomenuta nelinearna funkcija poznata, simuliraćemo

nelinearnu seriju baziranu na jednačini gde je , i uporedićemo stvarne vrednosti parametara

sa njihovim ocenama dobijenim funkcijom nls.

U narednim redovima simuliramo pomenutu seriju tim što seriju grešaka opisujemo AR(1) modelom, a

odgovarajući grafik dat je na slici.

set.seed(1)

w <- rnorm(100, sd = 10)

z <- rep(0, 100)

for (t in 2:100) z[t] <- 0.7 * z[t - 1] + w[t]

Time <- 1:100

f <- function(x) exp(1 + 0.05 * x)

x <- f(Time) + z

plot(x, type = "l")

abline(0, 0)

Page 36: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

35

Kao što vidimo na slici, serija eksponencijalno raste, tako da je logaritmovanje dobar izbor, ali pošto serija

sadrži negativne vrednosti to ne možemo odmah da uradimo pa je potrebno fitovati nelinearni model dat

jednačinom . U R-u se kao argument funkcije nls zadaje poznati oblik nelinearne funkcije u

zavisnosti od parametara. Početne vrednosti parametara se moraju precizirati i navode se u okviru liste.

> x.nls <- nls(x ~ exp(alp0 + alp1 * Time), start = list(alp0 = 0.1,

alp1 = 0.5))

> summary(x.nls)$parameters

Estimate Std. Error t value Pr(>|t|)

alp0 1.17640120 0.0742954447 15.83410 9.204055e-29

alp1 0.04828424 0.0008188462 58.96619 2.347543e-78

Dobijene vrednosti parametara i su bliske stvarnim vrednostima koje su korišćene za simuliranje

serije, ali treba imati u vidu da su standardne greške njihovih ocena potcenjene zbog postojanja

autokorelacije u seriji reziduala.

10. INVERZNA TRANSFORMACIJA I KOREKCIJA PRISTRASNOSTI

10.1 Log-normalni reziduali

Kao što je već najavljeno u odeljku 2.1, predviđanja koja se dobijaju primenjivanjem eksponencijalne

funkcije na predviđanja logaritmovane serije kojoj smo dodelili odgovarajući model, često dovodi do

pogrešno ocenjenih srednjih vrednosti.

Page 37: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

36

Na primer, ako pretpostavimo da je serija reziduala log-regresionog modela Gausov beli šum sa

srednjom vrednošću i standardnom devijacijom , onda je raspodela slučajnih veličina u vremenskoj

seriji log-normalna sa srednjom vrednošću

. Dakle, za seriju reziduala koja je Gausov beli šum

nakon logaritamske i inverzne transformacije potrebno je pomnožiti predviđene vrednosti faktorom

korekcije. Uticaj faktora korekcije zavisi od vrednosti . Ako je malo, faktor korecije neće uticati na

predviđene vrednosti i može biti isključen iz razmatranja.

10.2 Empirijsko određivanje faktora korekcije za predviđanje srednjih vrednosti

Faktor korekcije

koristimo kada je serija reziduala fitovanog log-regresionog modela Gausov beli

šum. U opštem slučaju serija reziduala log-regresionog modela često ima negativan koeficijent

asimetrije i u tom slučaju koeficijent korekcije se ocenjuje empirijski srednjom vrednošću serije .

Predviđanja početne serije tada su data sa

gde je serija vrednosti predviđenih linearnim modelom.

Page 38: VREMENSKE SERIJE I PRIMENE U FINANSIJAMA Regresija u … · domaćinstvo troši više novca da bi se održao isti nivo potrošnje, tj. životnog standarda. Pomoću PI mogu se prepoznati

37

Literatura

[1] Paul Cowpertwait, Andrew Metcalfe: “Introductory Time Series with R”, Springer, 2009.

[2] Robert Shumway, David Stoffer: “Time Series Analysis and Its Applications: With R Examples”, 3rd

edition, Springer, 2011.

[3] US. Bureau of Labor Statistics, Consumer Price Index for All Urban Consumers: All Items, FRED,

http://research.stlouisfed.org/fred2/series/CPIAUCSL

[4] US. Bureau of Labor Statistics, Unemployment Level – Women, FRED,

http://research.stlouisfed.org/fred2/series/LNU03000002

[5] http://staff.elena.aut.ac.nz/Paul-Cowpertwait/ts/global.dat

[6] Organisation for Economic Co-operation and Development, Exports: Value Goods for China,

FRED, http://research.stlouisfed.org/fred2/series/XTEXVA01CNM667N

[6] Zorica Mladenović, Aleksandra Nojković: “Primenjena analiza vremenskih serija”, Centar za

izdavačku delatnost Ekonomskog fakulteta u Beogradu, 2012.