Abstract: In the work, relevant methods of stock price forecasting are applied and compared: statistical time series (ARIMA, SARIMA) and neural network-based (LSTM). The results of stock price (Ama- zon, Apple, Google, Netflix, and Tesla companies) simulations are evaluated using MAE and MRE measures. The conclusions obtained in the work made it possible to identify shortcomings of the approaches and specify guidelines for improvements and further research.
Keywords: time series, neural networks, forecasting, ARIMA, SARIMA, LSTM.
Summary: Darbe yra pritaikomi ir palyginami akcijų kainų prognozavimo metodai: sta- tistiniai laiko eilučių metodai (ARIMA, SARIMA) bei neuroniniais tinklais grįstas metodas (LSTM). Bendrovių Amazon, Apple, Google, Netflix ir Tesla akcijų kainų modeliavimo rezul- tatai yra vertinami pasitelkiant MAE ir MRE matus. Darbe gautos išvados leido nustatyti taikytų metodų trūkumus ir apsibrėžti patobulinimų ir tolimesnių tyrimų gaires.
Keywords: laiko eilutės, neuroniniai tinklai, prognozavimas, ARIMA, SARIMA, LSTM.
Articles
Akcijų kainų ARIMA ir LSTM prognozavimo metodų lyginamoji analizė
Comparative analysis of stock price ARIMA and LSTM forecasting methods

Recepción: 30 Junio 2022
Publicación: 10 Diciembre 2022
Akcijų kainų prognozavimas yra plačiai nagrinėjama tema pasaulyje. Egzistuojantys metodai yra nuolat tobulinami, yra ieškoma naujų kelių, vykdomi aktualių įvykių ir procesų tyrimai. Aktualus klausimas yra laiko eilučių metodų efektyvumo palyginimas su giliuoju mokymusi grįstomis prognozavimo priemonėmis. Iš naujausių (2021– 2022 m.m.) publikacijų paskelbtuose leidiniuose, įtrauktuose į Clarivate Analytics Web of Science DB, kuriuose yra lyginami stochastiniai ARIMA (angl. Autoregressive Integrated Moving Average) ir neuroninių tinklų (pvz., LSTM, angl. Long Short-Term Memory) modeliai, galima pažymėti Menculini et al. (nagrinėjusius didmenines maisto kainas) [9], Mbah et al. (nagrinėjusius kalkakmenio kainų svyravimus) [8], Vuong et al. (nagrinėjusius svyravimus valiutų rinkoje) [16] ir Dou et al. (nagrinėjusius perh arbatos kainas) [5].
Menculini et al. rezultatai parodė, kad ir ARIMA modelis, ir LSTM modelis veikia panašiai atliekant nagrinėjamą prognozavimo užduotį. Mbah et al. gavo, kad ARIMA modelio tikslumas yra 95,7%, o rekurentinio neuroninio tinklo, naudojančio ilgos laikinosios atminties (LSTM) sluoksnius, tikslumas yra 91,8%, t.y., ARIMA modelis pranoko RNN modelį nagrinėjamam uždaviniui (palyginimui buvo naudota simetrinė vidurkio absoliuti procentinė paklaida (SMAPE angl. Symmetric Mean Absolute Percentage Error)). Vuong et al. pasiūlytas hibridinis XGBoost+LSTM modelis pasirodė geriau už bazinį ARIMA. Dou et al. rezultatai parodė, kad ARIMA labiau tinka trumpalaikiam prognozavimui. Reikia pažymėti, kad 2018 m. (tačiau labai intensyviai cituojamo) Siami-Namini et al. (Texas Tech) tyrimo, palyginančio ARIMA ir LSTM modelių adekvatumą, rezultatai parodė neuroniniais tinklais grįsto modelio pranašumą [13].
Lietuvoje, kaip rodo Lietuvos akademinė elektroninė biblioteka eLABa, šios srities tyrimai vykdomi mažesniu intensyvumu. Iš naujesnių publikacijų galima pažymėti Gasparėnienės et al. [6] (nagrinėjamos aukso kainos tendencijų prognozės; skaičiavimai parodė, kad ARIMA modelis tinka tik trumpalaikėms aukso kainų prognozėms (ne daugiau kaip 1 metai)), Česnavičiaus [4] (darbe pristatoma ARIMA modeliu paremta Lietuvos elektros energijos kainos prognozė), Belovo et al. [1, 3]. Nors nuo 2015 m. kainų prognozavimo tematikoje buvo apginta nemažai (dešimtys) bakalauro ir magistro baigiamųjų darbų, daktaro disertacijos buvo apgintos tik dvi [7, 15].
Kainų prognozavimas yra netriviali problema, glaudžiai susijusi su beprecedenčiais ekonominių tendencijų ir sąlygų pokyčiais iš vienos pusės, ir nepilna informacija – iš kitos. Šiame straipsnyje ARIMA ir LSTM modeliai lyginami efektyvumo mažinant paklaidos lygį atžvilgiu. Tradicinių prognozavimo metodų atstovas, ARIMA, pasirinktas dėl jo gebėjimo apibūdinti nestacionarios prigimties empirinius duomenis. Giliojo mokymosi pagrįstų algoritmų atstovas, LSTM, naudojamas dėl jo gebėjimo išsaugoti ir modeliuoti specifines duomenų savybes ilgesniuose laiko intervaluose.
ARIMA modeliai yra vieni paprasčiausių ir dažniausiai naudojamų ekonometrinių metodų, skirtų vieno kintamojo laiko eilučių modeliavimui [10]. ARIMA yra autoregresinio (AR, angl. Autoregressive) ir slenkančio vidurkio (MA, angl. Moving-Average) modelių junginys, žymimas ARIMA(p, d, q), su pagrindiniais parametrais , atitinkančiais koreliuotų vėlavimų bei diferencijavimo eiles. Parametras nusako autoregresinę priklausomybę su vėlavimais – diferencijavimo eilę, o – slenkančio vidurkio vėlavimo eilę ARIMA procesas aprašomas lygtimi
cia ir yra autoregresinio ir slenkančio vidurkio modelių koeficientai, yra konstanta, o žymi baltąjį triukšmą su nulinių vidurkiu ir dispersija.
Tiriant laiko eilutes neretai pasitaiko, kad jos pasižymi periodiškumu, t.y. laike pasikartojančiais dėsniais. Todėl pravartu naudoti ARIMA modelio išplėtimą, pridedant sezoninę dalį, vertinančią per sezoną perstumtų vėlavimų koreliaciją [10]. SARIMA modelis žymimas SARIMA(p, d, q)(P, D, Q).. Čia . yra parametras, apibūdinantis sezono trukmę, o P , Q ir D– sezonines SAR(P), SMA(Q) modelių eiles ir sezoninio diferencijavimo eilę.
Dirbtinio intelekto, ypač mašininio mokymosi, atsiradimas paskatino sukurti metodų rinkinį, kuris pasirodė esąs labai naudingas daugelyje skirtingų krypčių. Vienas proveržis, be abejo, buvo gilusis mokymasis, kuris iš esmės pakeitė mūsų būdą tvarkyti ir naudoti duomenyse esančią informaciją. Gilusis mokymasis gali veiksmingai aptikti ir modeliuoti paslėptus dėsningumus, automatiškai išgaudamas funkcijas, kurios kitu atveju turėtų būti išgaunamos rankiniu būdu tikrinant duomenų rinkinį. Standartinis pasirinkimas susidūrus su laiko eilučių problemomis yra LSTM neuroninių tinklų panaudojimas. Ilgos laikinosios atminties neuroniniai tinklai (LSTM, angl. Long Short-Term Memory) yra specialus rekurentinių neuroninių tinklų (RNN, angl. Recurrent Neural Network) tipas, galintis prisiminti ankstesnių etapų reikšmes naudojimui ateityje [11]. LSTM pagrindinis pranašumas lyginant su RNN yra tas, kad LSTM įvertina, ar perduodama informacija yra svarbi, ar ne, ir jeigu informacija nėra svarbi, ji pašalinama.
Vidutinė absoliučioji paklaida (MAE, ang. Mean Absolute Error) ir vidutinė santykinė paklaida (MRE, ang. Mean Relative Error) yra matai naudojami šiame darbe prognozės paklaidai įvertinti,
čia yra laiko eilutės elementų skaičius,– stebėta laiko eilutės reikšmė laiko momentu , o – prognozė laiko momentu .
Buvo tiriamos istorinės Tesla, Amazon, Netflix, Google, Apple įmonių akcijų kainos (https://finance.yahoo.com/). Empiriniai duomenys (akcijų kaina dienos pradžioje) buvo išskirstyti keturiais skirtingais periodais: 6 metų, nuo 2016-05-31 iki 2022-05-31 dienos, kuriuos sudarė 1511 elementų, 4 metų, nuo 2018-05-31 iki 2022-05-31 dienos, kuriuos sudarė 1008 elementai, 2 metų, nuo 2020-05-31 iki 2022-05-31, dienos kuriuos sudarė 504 elementai ir 1 metų, nuo 2021-05-31 iki 2022-05-31 dienos, kuriuos sudarė 252 elementai. Visiems keturiems periodams testavimai buvo atlikti dienų periodui nuo 2022-03-01 iki 2022-05-31 dienos.
Darbe ARIMA ir SARIMA modeliai skaičiuojami pasitelkiant Python kalboje esančios bibliotekos statsmodels.tsa.statespace.sarimax paketo SARIMAX pagalba. Prieš

atliekant modeliavimą, yra patikrinamas laiko eilutės stacionarumas; stacionarumui nustatyti naudojamas Dickey–Fuller testas [10]. Nestacionarias eilutes paversti stacionariomis yra naudojama skirtuminė transformacija (diferencijavimas), atliekama pradinių duomenų laiko eilutę keičiant skirtumų laiko eilute. Diferencijavimo eilę nusako parametras d,
Reikia pažymėti, kad visoms laiko eilutėms užteko pirmos eilės diferencijavimo, taigi ARIMA ir SARIMA modeliuose . Stochastinių modelių parametrai buvo vertinami pasitelkiant Akaike informacijos kriterijų (AIC) [10]. Gautos optimalios parametrų reikšmės buvo naudojamos prognozavimui (žr. 1 lentelę).
LSTM modelis kuriamas pasitelkiant Python kalboje esančią biblioteką keras. Prieš pradedant darbą su LSTM, treniravimui ir testavimui skirti duomenys buvo normalizuoti (tiesinė transformacija siekiant, kad duomenų sklaida nebūtų pervertinta. Išbandžius kelis skirtingus paslėptų sluoksnių skaičius, šiame darbe parinktas paslėptų sluoksnių skaičius yra 10. Modelio optimizavimo algoritmas naudojamas Adam, o praradimams skaičiuoti naudojama MAE funkcija, praradimai skaičiuojami MSE. Atlikus bandymus buvo nuspręsta, kad optimali mokymosi trukmė yra 20 epochų, todėl šiame darbe pasirinkta naudoti tokią mokymosi trukmę.
Gauti rezultatai rodo (žr. 2 lentelę), kad ARIMA modelis prognozavimo užduotį geriau atlieka su trumpalaikėmis eilutėmis, kas visiškai atitinka Dou et al. išvadą: “Rezultatai rodo, kad ARIMA labiau tinka trumpalaikiam prognozavimui ir metodo

prognozavimo paklaida didės, kai prognozavimo laikotarpis ilgėja” [5]. SARIMA modelis tokios tendencijos nerodo.
LSTM prognozės yra tiksliausios visoms tirtoms laiko eilutėms, kas patvirtina Siami-Namini et al. išvadą: “giliuoju mokymusi pagrįsti algoritmai, tokie kaip LSTM, pranoksta tradicinius algoritmus, tokius kaip ARIMA modelis” [13]. Priešingai ARIMA rezultatams, LSTM prognozės yra geriausios ilgiausiuose intervaluose (6 metai, žr. 1 pav.).

Darbe nagrinėtų akcijų kainų elgesys pasirodė gana panašus, todėl labai didelio skir- tumo prognozuojant jų duomenis nebuvo pastebėta. LSTM modelis prognozavimo užduotį atliko geriau už tradicinius (ARIMA, SARIMA) stochastinius modelius, kurie nedavė patenkinamų prognozavimo rezultatų. Kadangi rezultatai (nors ir patvirtinę ankstesnių tyrėjų išvadas) palieka vietos darbo tobulinimui, planuojamas jo tęsinys. Ateities tyrimo planas:
pritaikyti alternatyvius informacinius kriterijus, vertinant ARIMA ir SARIMA parametrus (pvz., Bajeso informacijos kriterijų (BIC, ang. Bayesian Information Criteria) arba Apibendrintą informacijos kriterijų (GIC, ang. Generalized Information Criteria ) vietoje AIC, žr. [14]), išbandyti daugiau skirtingų LSTM modelio struktūrų;
optimizuoti ir išlygiagretinti kodą, nes Python SARIMAX paketo reikalaujamas ilgų laiko eilučių apdorojimo kompiuterinis laikas yra nepatenkinamas.
išbandyti hibridinį (ARIMA ir neuroninių tinklų) modelį (pl. [12, 17]);
atliekant eksperimentus, naudoti daugiau įvairesnių akcijų; taip pat naudoti ir išvestines finansines priemones (opcionai, uždirbimą nuo akcijos kritimo, varantai); paliesti aktualią elektros kainų sprogimo problemą ir prognozavimo galimybes;
sujungti prognozavimo metodus su portfelio optimizavimo metodais [2] (kuriant portfelį pridėti išvestines finansines priemones bei pridėti daugiau galimų investavimo priemonių, tokių kaip tarpusavio skolinimas, nekilnojamas turtas, biržos prekės);
akcijų kainas vertinti ne tik pagal jų istorinius duomenis, bet ir pagal kitus kriterijus: įmonės finansinius rezultatus, įmonės teigiamas/neigiamas naujienas, politinę bei ekonominę padėtį pasaulyje bei valstybėje, kurioje yra įmonės centrinė būstinė.


