• Nebyly nalezeny žádné výsledky

Bakal´aˇrsk´a pr´ace

N/A
N/A
Protected

Academic year: 2022

Podíl "Bakal´aˇrsk´a pr´ace"

Copied!
61
0
0

Načítání.... (zobrazit plný text nyní)

Fulltext

(1)

Detekce vzor˚ u v ˇ casov´ ych ˇ rad´ ach

Jiˇ r´ı Bystroˇ n

Kvˇeten 2015

Vedouc´ı pr´ ace: Ing. Martin Mudroch, Ph.D.

Cesk´e vysok´e uˇcen´ı technick´e v Praze ˇ Fakulta elektrotechnick´ a

Katedra ˇr´ıd´ıc´ı techniky

(2)
(3)
(4)

T´ımto bych r´ad podˇekoval vedouc´ımu t´eto pr´ace, Ing. Martinu Mudrochovi, Ph.D., za velice konstruktivn´ı pozn´amky a vstˇr´ıcn´y pˇr´ıstup pˇri sestavov´an´ı jak individu´aln´ıho projektu, tak samotn´e bakal´aˇrsk´e pr´ace.

(5)

Prohlaˇsuji, ˇze jsem pˇredloˇzenou pr´aci vypracoval samostatnˇe a ˇze jsem uvedl veˇsker´e pouˇzit´e informaˇcn´ı zdroje v souladu s Metodick´ym pokynem o dodrˇzov´an´ı etick´ych princip˚u pˇri pˇr´ıpravˇe vysokoˇskolsk´ych z´avˇereˇcn´ych prac´ı.

V Praze dne ... Podpis autora ...

(6)

Tato bakal´aˇrsk´a pr´ace se zab´yv´a rozpozn´av´an´ım vzor˚u ve finanˇcn´ıch ˇcasov´ych ˇrad´ach meto- dami rule-based, fuzzy a pomoc´ı klasifik´atoru zaloˇzen´eho na podobnosti s pr˚umˇerem korektnˇe urˇcen´ych vzor˚u. Souˇc´ast´ı pr´ace je popis, n´avrh a implementace tˇechto metod v jazyce Java. Ja- ko podkladov´a data pro vyhled´av´an´ı vzor˚u byly vybr´any finanˇcn´ı ˇrady z trhu Forex. V´ystupem t´eto pr´ace je jak prokazateln´a schopnost vzory tˇemito metodami detekovat, tak srovn´an´ı tˇechto metod.

Kl´ıˇ cov´ a slova

pattern recognition, fuzzy, rule-based, time series, candlestick

vi

(7)

This bachelor thesis deals with the pattern recognition in financial time-series using rule-based method, fuzzy method and classification method, which is based on similiarity to an average of correctly specified patterns. This thesis consists of method description, design and imple- mentation in Java language. As underlying data for pattern recognition were chosen time-series from Forex market. The outcome of this thesis is both a demonstrable ability to recognize patterns with these methods and an evaluation of these methods.

Keywords

pattern recognition, fuzzy, rule-based, time series, candlestick

vii

(8)

Slovn´ık pouˇzit´ych v´yraz˚u x

Seznam pouˇzit´ych zkratek xi

1 Uvod´ 1

2 Souˇcasn´y stav 2

3 Teoretick´a ˇc´ast 3

3.1 Prostˇredky pro zpracov´an´ı dat . . . 3

3.1.1 Vytˇeˇzov´an´ı dat . . . 3

3.1.2 Strojov´e uˇcen´ı . . . 3

3.1.3 Rozpozn´av´an´ı vzor˚u . . . 3

3.2 Casov´ˇ e ˇrady . . . 4

3.2.1 Reprezentace ˇcasov´e ˇrady . . . 4

3.3 Klasifikace . . . 6

3.3.1 Dˇelen´ı dle supervize . . . 6

3.3.2 Dˇelen´ı dle klasifikaˇcn´ıho modelu . . . 6

3.3.3 Rule-based klasifikace . . . 7

3.3.4 Rozhodovac´ı stromy . . . 7

3.3.5 Soft computing . . . 7

3.4 Metody rozpozn´av´an´ı vzor˚u v ˇcasov´ych ˇrad´ach . . . 8

3.4.1 Nejbliˇzˇs´ı soused . . . 8

3.4.2 Umˇel´e neuronov´e s´ıtˇe . . . 8

3.4.3 Rozhodovac´ı stromy . . . 8

3.4.4 Clustering . . . 9

3.4.5 Fuzzy logika . . . 10

3.5 Popis zvolen´ych dat a jejich v´yznamu . . . 10

3.5.1 Struktura grafu a dat . . . 11

3.5.2 Sv´ıcov´y graf . . . 12

3.5.3 Trend . . . 13

3.5.4 Klouzav´y pr˚umˇer . . . 13

4 Aplikace zvolen´ych metod 15 4.1 Volba vhodn´ych metod pro detekci vzor˚u . . . 15

4.1.1 Rule-based metoda . . . 15

4.1.2 Fuzzy mnoˇziny . . . 15

4.1.3 Modifikovan´a klasifikaˇcn´ı metoda . . . 16

4.2 Modelace sv´ıc´ı a vzor˚u . . . 16

4.2.1 Uvodn´ı slovo k modelaci . . . .´ 16

4.2.2 Volba vzor˚u . . . 17

4.2.3 Parametry modelu d´ılˇc´ı sv´ıce . . . 18 viii

(9)

4.3.1 Urˇcen´ı z´akladn´ıch parametr˚u sv´ıc´ı . . . 19

4.3.2 Rule-based metoda . . . 20

4.3.3 Fuzzy metoda . . . 21

4.3.4 Modifikovan´a klasifikaˇcn´ı metoda . . . 24

4.4 Aplikace na datech . . . 25

4.4.1 Implementace . . . 25

4.4.2 Popis a uk´azky k´odu . . . 26

4.5 V´ysledky detekce a srovn´an´ı metod . . . 28

4.5.1 Statistick´y apar´at . . . 28

4.5.2 Data nalezen´a v tr´enovac´ı mnoˇzinˇe . . . 29

4.5.3 Urˇcov´an´ı korektn´ıch vzor˚u . . . 29

4.5.4 Korektn´ı data nalezen´a metodou rule-based . . . 30

4.5.5 Korektn´ı data nalezen´a metodou fuzzy . . . 32

4.5.6 Shrnut´ı . . . 32

5 Z´avˇer 34 5.1 Zhodnocen´ı c´ıl˚u . . . 34

5.2 N´avrh rozˇs´ıˇren´ı a zlepˇsen´ı . . . 35

Seznam pouˇzit´e literatury 36

A Seznam obr´azk˚u 42

B Obr´azky ve vˇetˇs´ım rozliˇsen´ı 43

C Matice pr˚umˇern´ych vzor˚u 48

D Vybran´e d´ılˇc´ı v´ypoˇcty a hodnoty 49

E Obsah pˇriloˇzen´eho CD 50

ix

(10)

ˇ

casov´y r´amec · · · time frame ˇ

c´asteˇcn´e uˇcen´ı s uˇcitelem · · · semi-supervised learning ˇ

clensk´a funkce · · · membership function clustering; shlukov´an´ı · · · clustering

dopˇredn´a neuronov´a s´ıt’ · · · feedforward neural network exponenci´aln´ı klouzav´y pr˚umˇer · · · exponential moving average

hol´a data · · · raw data

jednoduch´y klouzav´y pr˚umˇer · · · simple moving average k-nejbliˇzˇs´ıch soused˚u · · · k-nearest neighbors

klasifikaˇcn´ı a regresn´ı strom · · · classification and regression tree klasifikaˇcn´ı krok · · · classification step

klouzav´y pr˚umˇer · · · moving average kˇr´ıˇzov´a validace · · · cross validation lichobˇeˇzn´ıkov´a · · · trapezoidal nejbliˇzˇs´ı soused´e · · · nearest neighbors

ostr´a data · · · crisp data

ostr´a mnoˇzina · · · crisp set pˇreuˇcen´ı · · · overfitting regresn´ı stromy · · · regression trees

rekurentn´ı neuronov´a s´ıt’ · · · recurrent neural network rozhodovac´ı stromy · · · decision trees

rozpozn´av´an´ı vzor˚u · · · pattern recognition samoorganizuj´ıc´ı mapy · · · self-organizing maps schodov´y graf · · · bar chart

strojov´e uˇcen´ı · · · machine learning sv´ıcov´y graf · · · candlestick graph testovac´ı mnoˇzina · · · test set

tr´enovac´ı mnoˇzina · · · training set troj´uheln´ıkov´y · · · triangular

uˇcen´ı bez uˇcitele · · · unsupervised learning uˇcen´ı s uˇcitelem · · · supervised learning uˇc´ıc´ı krok · · · learning step

umˇel´a neuronov´a s´ıt’ · · · artificial neural network validaˇcn´ı mnoˇzina · · · validation set

v´aˇzen´y klouzav´y pr˚umˇer · · · weighted moving average

x

(11)

ARIMA · · · AutoRegressive Integrated Moving Average

ARMA · · · AutoRegressive Moving Average

BS · · · velikost tˇela sv´ıce (Body Size) – pouze pro ´uˇcely pr´ace

CART · · · Classification And Regression Tree

CBR · · · Case-Based Reasoning

CHF · · · ˇsv´ycarsk´y frank

CSV · · · Comma-Separated Values ˇci t´eˇz Character-Separated Values

DCT · · · Discrete Cosine Transform

DFT · · · Discrete Fourier Transform

DS · · · doln´ı st´ın sv´ıce (Doln´ı St´ın) – pouze pro ´uˇcely pr´ace

EUR · · · euro

FOREX · · · FOReign EXchange

GUI · · · Graphical User Interface

HMM · · · Hidden Markov Models

IPCC · · · Intergovernmental Panel on Climate Change

KDD · · · knowledge Discovery from Data

LHC · · · Large Hadron Collider

MA · · · Moving Average

MC · · · Markov chain

NN · · · Nearest Neighbor

OHLC · · · Open High Low Close

PAA · · · Piecewise Aggregate Approximation

RBS · · · velikost re´aln´eho tˇela sv´ıce (Real Body Size) – pouze pro ´uˇcely pr´ace

S&P 500 · · · Standard & Poor’s 500

SAX · · · Symbolic Aggregate approXimation

SL · · · d´elka st´ınu sv´ıce (Shadow Length) – pouze pro ´uˇcely pr´ace

STING · · · STatistical INformation Grid-based method

US · · · horn´ı st´ın sv´ıce (UpShadow) – pouze pro ´uˇcely pr´ace

USD · · · americk´y dolar

PPV · · · positive predictive value

xi

(12)

Mezi hlavn´ı c´ıle t´eto bakal´aˇrsk´e pr´ace patˇr´ı v prv´e ˇc´asti vypracov´an´ı reˇserˇse pro zadan´e t´ema vyhled´av´an´ı neurˇcit´ych vzor˚u ve ˇspatnˇe predikovateln´ych ˇcasov´ych ˇrad´ach. T´ım z´ısk´am z´akladn´ı pˇrehled o dostupn´ych metod´ach, technik´ach a vhodnosti jejich implementace pro dan´e prostˇred´ı.

V ˇc´asti druh´e je c´ılem se jiˇz prakticky zamˇeˇrit na volbu a vlastn´ı teoretick´y a programov´y n´avrh konkr´etn´ıch metod pro konkr´etn´ı ˇcasov´e ˇrady z oblasti finanˇcn´ıch trh˚u, v nichˇz budu detekovat konkr´etn´ı, obecnˇe uzn´avan´e vzory. V´ystupem bude demonstrace, ˇze mnou vybran´e a implementovan´e metody jsou schopny detekovat tyto vzory. Tˇret´ım c´ılov´ym bodem je, ˇze tyto metody a v´ystupy vhodnˇe zvolen´ymi metodami porovn´am. Tomu bude odpov´ıdat i struktura pr´ace.

Protoˇze se jedn´a o specifick´e t´ema, ve kter´em jsou anglick´e term´ıny ust´alen´e, ˇcesk´e pˇreklady jsou m´ısty i ke ˇskodˇe. Budu se tedy drˇzet sp´ıˇse anglick´ych term´ın˚u, jelikoˇz pˇreklad nˇekter´ych term´ın˚u de facto ani neexistuje nebo nen´ı zcela adekv´atn´ı a zav´ad´ı akor´at nejasnosti. Jsem si vˇedom toho, ˇze tento zp˚usob prezentace nen´ı zcela ide´aln´ı, nicm´enˇe s ohledem na to, ˇze je pr´ace ps´ana ˇcesky, se t´ımto budu snaˇzit vyhnout vytv´aˇren´ı nevhodn´ych ˇcesko-anglick´ych no- votvar˚u. Uv´ad´ım t´eˇz pˇrehledov´y slovn´ık, kde lze nal´ezt pˇreklady vybran´ych term´ın˚u s ohledem na pouˇzit´y kontext.

Jsem si t´eˇz vˇedom faktu, ˇze diskutovan´e teoretick´e t´ema nemus´ı b´yt bˇeˇzn´emu ˇcten´aˇri zn´amo, jako mu nemus´ı b´yt zn´ama i oblast vyb´ıran´ych dat – specifick´ych finanˇcn´ıch trh˚u. V nˇekter´ych sekc´ıch t´eto pr´ace proto budu volit bliˇzˇs´ı popis ˇci n´azorn´y pˇr´ıklad neˇz uveden´ı pouh´e definice.

Pojmy z m´eho pohledu odborn´e, pˇr´ıpadnˇe v´yrazy z ciz´ıho prostˇred´ı budu pˇri prvn´ım v´yskytu uv´adˇet v uvozovk´ach. Pˇri dalˇs´ıch v´yskytech tˇechto pojm˚u a v´yraz˚u uˇz uvozovky vynech´am.

Pokud pouˇziji nadnesen´e ˇci nepˇresn´e v´yrazy, vˇzdy je uvedu v uvozovk´ach.

1

(13)

V souˇcasn´e dobˇe, kter´a je t´eˇz pˇrezd´ıvan´a

”informaˇcn´ım vˇekem“, se ˇc´ım d´al ˇcastˇeji setk´av´ame s mnoˇzstv´ım oblast´ı, ve kter´ych je potˇreba zpracov´avat enormn´ı mnoˇzstv´ı r˚uznorod´ych dat. At’

uˇz se jedn´a o data v podobˇe z´aznam˚u z pr˚umyslov´ych senzor˚u, l´ekaˇrsk´ych pˇr´ıstroj˚u, klinick´ych datab´az´ı nebo o data kosmologick´a, finanˇcn´ı, seismick´a, meteorologick´a ˇci data z webov´ych server˚u spoleˇcnost´ı jako je napˇr´ıklad Google, vˇzdy je potˇreba tato data vhodn´ymi zp˚usoby uchov´avat, tˇr´ıdit a analyzovat.

Zamˇeˇr´ıme-li se na aktu´aln´ı trendy a smˇer budouc´ıho v´yvoje, bez ´ujmy na obecnosti se d´a ho- voˇrit o pojmu

”big data“. Ten lze ch´apat jako

”term´ın aplikovan´y na soubory dat, jejichˇz velikost je mimo schopnosti zachycovat, spravovat a zpracov´avat data bˇeˇznˇe pouˇz´ıvan´ymi softwarov´ymi n´astroji v rozumn´em ˇcase“ [1]. O vzr˚ustaj´ıc´ı popularitˇe tohoto pojmu svˇedˇc´ı mimojin´e fakta, ˇ

ze za posledn´ı rok vzrostla v USA popt´avka po datov´ych analytic´ıch se specializac´ı na big data t´emˇeˇr o 100 % [6], d´ale vznik´a velk´e mnoˇzstv´ı kurz˚u zamˇeˇren´ych na big data [7] a ostatnˇe minul´y rok byl i na Fakultˇe elektrotechnick´e ˇCVUT otevˇren voliteln´y pˇredmˇet Technologie pro velk´a data [4].

Pro pˇredstavu, napˇr´ıklad v roce 2008 servery spoleˇcnosti Google zpracovaly poˇzadavky ˇ

c´ıtaj´ıc´ı v pr˚umˇeru pˇres 20 petabajt˚u dat dennˇe. [2] Jako dalˇs´ı pˇr´ıklad m˚uˇzeme uv´est, ˇze kaˇzdou hodinu je uˇzivateli nahr´ano na servery spoleˇcnosti Facebook pˇres 10 milion˚u fotografi´ı [5, s. 16].

Nebo tak´e data z mˇeˇren´ı ve velk´em hadronov´em urychlovaˇci ˇc´astic (LHC) ˇc´ıtaj´ı pˇribliˇznˇe 30 petabajt˚u za rok [3]. Je zˇrejm´e, ˇze pˇri takov´ych objemech dat je nutn´e se zab´yvat metodami, kter´e umoˇzˇnuj´ı s daty efektivnˇe pracovat jak po str´ance v´ypoˇcetn´ı, tak po str´ance interpretaˇcn´ı.

Svˇedˇc´ı o tom napˇr´ıklad i fakt, ˇze aˇckoliv m´a b´yt spoleˇcnost Google schopna mapovat v´yskyt chˇripky d´ıky vyhled´avac´ım poˇzadavk˚um uˇzivatel˚u z cel´eho svˇeta stejnˇe dobˇre, jako jej mapuj´ı data z l´ekaˇrsk´ych ordinac´ı [5, s. 19][8], ukazuje se, ˇze to nemus´ı b´yt ´uplnˇe pravda, jak rozeb´ır´a Steven Salzberg [9]. Probl´emem je totiˇz ˇspatn´e pochopen´ı lidsk´eho chov´an´ı v tomto kontextu a s t´ım d´ale spojen´a interpretace dat jako i jejich vytˇeˇzov´an´ı. V odkazovan´em zdroji se k tomuto v´aˇze vhodn´a vˇeta:

”The folks at Google figured that, with all their massive data, they could outsmart anyone.“ Povaˇzuji tedy za vhodn´e zamˇeˇrit se na metody vytˇeˇzov´an´ı klasick´ych dat z ˇcasov´ych ˇrad.

2

(14)

3.1 Prostˇ redky pro zpracov´ an´ı dat

Jelikoˇz se budu zab´yvat oblastmi jako je rozpozn´av´an´ı vzor˚u, strojov´e uˇcen´ı ˇci vytˇeˇzov´an´ı dat a autoˇri se ne vˇzdy v definici tˇechto pojmu shoduj´ı, je vhodn´e tyto z´akladn´ı pojmy nejdˇr´ıve objasnit pro lepˇs´ı zasazen´ı do naˇseho kontextu.

3.1.1 Vytˇ eˇ zov´ an´ı dat

Nˇekteˇr´ı autoˇri [10, s. 5–6] se pouˇstˇej´ı do polemiky o definici tohoto pojmu a tvrd´ı, ˇze by se mˇel jmenovat sp´ıˇse

”knowledge mining from data“. Na coˇz plynule navazuj´ı tvrzen´ım, ˇze je tento pojem na jednu stranu ch´ap´an jako synonymum pro pojem

”knowledge discovery from data“

(KDD), na stranu druhou uv´adˇej´ı, ˇze m˚uˇze b´yt t´eˇz ch´ap´an jako pouh´y jeden krok v komplexn´ım procesu extrakce vˇedomost´ı z dat. Pozdˇeji vˇsak doch´az´ı ke konsensu s jin´ymi autory [11, s. 5]

v tom, ˇze vytˇeˇzov´an´ı dat lze popsat jako automatizovan´y ˇci ˇc´asteˇcnˇe automatizovan´y proces objevov´an´ı vzor˚u ve zpravidla vˇetˇs´ım mnoˇzstv´ı dat, nalezen´e vzory mus´ı m´ıt smyslupln´y v´yznam dle poˇzadovan´eho zad´an´ı a obecnˇe se jedn´a o ˇreˇsen´ı probl´em˚u anal´yzou dat, kter´a jiˇz existuj´ı v datab´azi. Pˇriˇcemˇz datab´az´ı je zde myˇslen v podstatˇe libovoln´y, avˇsak dostateˇcnˇe objemn´y informaˇcn´ı zdroj.

3.1.2 Strojov´ e uˇ cen´ı

Bez ´ujmy na obecnosti lze vyj´ıt z tvrzen´ı, ˇze strojov´e uˇcen´ı se zab´yv´a metodami, jak se poˇc´ıtaˇcov´e programy mohou uˇcit automatick´emu rozpozn´av´an´ı komplexn´ıch vzor˚u, pˇr´ıpadnˇe jak se mohou inteligentnˇe rozhodovat na z´akladˇe vstupn´ıch dat. Napˇr´ıklad klasickou ´ulohou, kter´a b´yv´a ˇcasto v tomto kontextu uv´adˇena, je schopnost programu korektnˇe urˇcit ruˇcnˇe psan´e poˇstovn´ı smˇerovac´ı ˇc´ıslo na z´akladˇe pˇredloˇzen´ych, spr´avnˇe urˇcen´ych vzor˚u – tr´enovac´ı mnoˇziny, viz d´ale. [10, s. 24]

3.1.3 Rozpozn´ av´ an´ı vzor˚ u

Rozpozn´av´an´ı vzor˚u je obecnˇe ch´ap´ano jako podmnoˇzina strojov´eho uˇcen´ı, respektive jeho konkr´etn´ı aplikace, aˇckoliv v nˇekter´ych pˇr´ıpadech je kladeno do stejn´e roviny jako samotn´e strojov´e uˇcen´ı [12, s. vii]. Rozpozn´avan´ı vzor˚u je moˇzno uplatnit na rozliˇcn´a vstupn´ı data, textem nebo zvukem poˇc´ınaje a symboly na dopravn´ıch znaˇck´ach konˇce. V pˇr´ıpadˇe t´eto pr´ace se jedn´a o ˇcasov´e ˇrady, respektive data, kter´ymi jsou tyto ˇrady reprezentov´any.

3

(15)

3.2 Casov´ ˇ e ˇ rady

Casovou ˇradu je moˇˇ zn´e obecnˇe ch´apat jako soubor hodnot z´ıskan´y sekvenˇcn´ımi mˇeˇren´ımi za urˇcit´y ˇcasov´y ´usek. Form´aln´ı definici je moˇzn´e zapsat n´asledovnˇe.

Definice 1. Casov´ˇ a ˇrada T d´elky n je takov´a posloupnost dvojic

T = [(p1, t1),(p2, t2), ...,(pi, ti), ...,(pn, tn)], (3.1) kde t1 < t2 < ... < ti < ... < tn a kde kaˇzd´e pi pˇredstavuje datov´y bod v d-dimenzion´aln´ım prostoru a kaˇzd´e ti pˇredstavuje ˇcas, kdy byl pi zmˇeˇren. [14, s. 11]

Je zˇrejm´e, ˇze se vzr˚ustaj´ıc´ım poˇctem dat a dimenz´ı prostoru se d´a oˇcek´avat vˇetˇs´ı n´aroˇcnost at’ uˇz co se t´yˇce v´ypoˇct˚u ˇci definov´an´ı podobnosti ˇcasov´ych ˇrad. Vyvst´avaj´ı pot´e z´akladn´ı ot´azky a probl´emy. [13, s. 12:2]

Reprezentace dat

Jak je moˇzn´e reprezentovat z´akladn´ı tvarovou charakteristiku ˇcasov´e ˇrady, jak´e by mˇela m´ıt vlastnosti? Reprezentace by mˇela ide´alnˇe redukovat dimenzi dat se zachov´an´ım pod- statn´ych charakteristik datov´e ˇrady.

Mˇeˇren´ı podobnosti

Jak m˚uˇze b´yt mezi dvˇema libovoln´ymi ˇcasov´ymi ˇradami nalezena shoda ˇci jak mohou b´yt odliˇseny? Jak je moˇzn´e formalizovat vzd´alenost tˇechto dvou ˇrad, pˇr´ıpadnˇe jak je moˇzn´e rozpoznat intuitivn´ı podobnost ˇrad, aˇckoliv nejsou po matematick´e str´ance identick´e?

Indexovac´ı metoda

Jak by mˇely b´yt organizov´any velk´e objemy dat, kter´e ˇcasov´e ˇrady reprezentuj´ı, aby bylo moˇzn´e v nich rychle vyhled´avat? S pˇrihl´ednut´ım k minim´aln´ı v´ypoˇcetn´ı a datov´emu objemu?

V´yˇcet vˇsak nen´ı koneˇcn´y, jde jen o j´adro problematiky vytˇeˇzov´an´ı dat z ˇcasov´ych ˇrad.

3.2.1 Reprezentace ˇ casov´ e ˇ rady

Jelikoˇz v´ypoˇcetn´ı operace na hol´ych datech by byly n´aroˇcn´e, zav´ad´ı se pojem reprezentace.

Vedlejˇs´ım jevem zaveden´ı reprezentace b´yv´a t´eˇz sn´ıˇzen´ı ˇsumu, jako i sn´ıˇzen´ı datov´eho objemu uloˇzen´ych dat. [13, s. 12:13]

Definice 2. Reprezentac´ı ˇcasov´e ˇrady T d´elky n nazveme takov´y model ¯T s redukovan´ymi dimenzemi, pro kter´y plat´ı, ˇze ¯T aproximuje T. [14, s. 11]

Mezi obecn´e poˇzadavky na optim´aln´ı reprezentaci dat, kter´a pˇredstavuj´ı ˇcasov´e ˇrady, patˇr´ı zejm´ena n´asleduj´ıc´ı body. [13, s. 12:13]

v´yznamn´a redukce dimenze dat

zachov´an´ı tvarov´ych charakteristik ˇcasov´e ˇrady v lok´aln´ım i glob´aln´ım mˇeˇr´ıtku

rekonstrukce p˚uvodn´ıch dat z redukovan´e reprezentace je kvalitn´ı

necitlivost v˚uˇci ˇsumu nebo implicitn´ı potlaˇcen´ı ˇsumu

(16)

Mezi z´akladn´ı metody a techniky reprezentace dat, respektive ˇcasov´ych ˇrad patˇr´ı zejm´ena n´asleduj´ıc´ı. [13, s. 12:13]

Non-data adaptive

Parametry transformace respektive redukce dimenze jsou stejn´e pro jakoukoliv ˇcasovou ˇradu nehledˇe na podstatu dat, kter´a ˇradu tvoˇr´ı. Patˇr´ı zde zejm´ena diskr´etn´ı Fourierova transformace (DFT), diskr´etn´ı kosinov´a transformace (DCT) nebo napˇr´ıklad piecewise aggregate approximation (PAA). Ta je unik´atn´ı v tom, ˇze ˇcasovou ˇradu rozdˇel´ı na N segment˚u stejn´e d´elky, pro kter´e spoˇcte stˇredn´ı hodnotu, ˇc´ımˇz vznik´a nov´a ˇrada o N bodech. Dle nˇekter´ych studi´ı [15] vˇsak poskytuje nepˇresn´e v´ysledky vlivem velk´e ztr´aty informace.

Data adaptive

Na rozd´ıl od pˇredchoz´ı metody tato metoda jiˇz podkladov´a data zohledˇnuje a t´emˇeˇr kaˇzd´y non-data adaptive postup se st´av´a data adaptive t´ım, ˇze pˇrid´ame do metody krok, kter´y vyb´ır´a konkr´etn´ı parametry metod. V pˇr´ıpadˇe diskr´etn´ı Fourierovy transformace je to napˇr´ıklad vhodn´a selekce koeficient˚u, v pˇr´ıpadˇe PAA je to volba dynamick´e [16]

d´elky segment˚u. Unik´atn´ı metodou je t´eˇz symbolic aggregate approximation (SAX), kter´a vych´az´ı z PAA, nicm´enˇe z´ıskan´e segmenty na stejn´ych ˇci bl´ızk´ych ´urovn´ıch oznaˇcuje p´ısmeny, ˇc´ımˇz z´ısk´av´ame posloupnosti p´ısmen. Dle druhu aplikace dosahuje t´eˇz lepˇs´ıch v´ysledk˚u neˇz napˇr´ıklad DFT a dalˇs´ı [17].

Model based

U t´eto metody se pˇredpokl´ad´a, ˇze data reprezentuj´ıc´ı ˇcasovou ˇradu byla generov´ana nˇejak´ym implicitn´ım modelem. C´ılem je tedy naj´ıt parametry dan´eho modelu, ˇc´ımˇz je nalezena i reprezentaci dat. Zde se nejv´ıce uplatˇnuj´ı napˇr´ıklad Markovovy ˇretˇezce (MC), autoregressive moving average (ARMA) modely, autoregressive integrated moving average (ARIMA) modely ˇci Hidden Markov Models (HMM).

Nakonec uv´ad´ım na obr. 3.1 pro pˇrehlednost detailnˇejˇs´ı rozdˇelen´ı reprezentace. Kvalitnˇejˇs´ı obr´azek je moˇzn´e nal´ezt v pˇr´ıloze B.

Obr´azek 3.1: Detailn´ı rozdˇelen´ı reprezentace ˇcasov´ych ˇrad (pˇrevzato z [18])

(17)

3.3 Klasifikace

S anal´yzou ˇcasov´ych ˇrad souvis´ı nˇekter´e z´akladn´ı ´ulohy, jmenovitˇe napˇr´ıklad:

”query by con- tent“,

”anomaly detection“,

”motif discovery“,

”prediction“,

”clustering“,

”classification“,

”seg- mentation“ [13, s. 12:1]. Pro potˇreby t´eto pr´ace se zamˇeˇr´ım pouze na klasifikaci. V kontextu ˇ

casov´ych ˇrad se klasifikace d´a popsat jednoduˇse podle n´asleduj´ıc´ı definice:

Definice 3. Mˇejme neklasifikovanou ˇcasovou ˇradu T. Klasifikac´ı ˇcasov´e ˇrady nazveme takov´y proces pˇriˇrazen´ı ˇcasov´e ˇrady do jedn´e z tˇr´ıdci z mnoˇzinyC ={ci}, kdeC reprezentuje mnoˇzinu pˇreddefinovan´ych tˇr´ıd [13, s. 12:7].

Tato definice plat´ı analogicky jak pro podposloupnosti ˇcasov´e ˇrady, tak pro jednotliv´e vzory, kter´e se v n´ı vyskytuj´ı. Klasifikace v obecn´em kontextu je tedy proces, kter´y vybran´ym vstup˚um pˇriˇrazuje vybran´e v´ystupy.

3.3.1 Dˇ elen´ı dle supervize

Prvn´ı metodou je

”uˇcen´ı s uˇcitelem“. Jedn´a se o dvoukrokov´y proces [10, s. 328], kdy prvn´ım krokem je krok uˇc´ıc´ı, ve kter´em doch´az´ı ke konstrukci klasifikaˇcn´ıho modelu na z´akladˇe tr´enovac´ı mnoˇziny. Ta obsahuje vybran´a data – vstupy – pro kter´a jsou jiˇz zn´amy korektn´ı klasifikaˇcn´ı tˇr´ıdy – v´ystupy. V´ystupy jsou zn´amy nejˇcastˇeji na z´akladˇe manu´aln´ıho oznaˇcen´ı. Druh´ym kro- kem je krok klasifikaˇcn´ı, ve kter´em jiˇz doch´az´ı ke klasifikaci konkr´etn´ıch tˇr´ıd pro data z mnoˇziny testovac´ı, pro kter´a nen´ı klasifikaˇcn´ı tˇr´ıda zn´ama.

Probl´emem pˇri tomto postupu b´yv´a pˇreuˇcen´ı, coˇz pˇredstavuje stav, kdy je v´ybˇer testovac´ı mnoˇziny pˇr´ıliˇs ´uzce zamˇeˇren, mnoˇzina nen´ı dostateˇcnˇe obecn´a [10, s. 330]. Pro ´uˇcely ovˇeˇren´ı spr´avnosti klasifik´atoru je moˇzno pouˇz´ıt validaˇcn´ı mnoˇzinu, pˇriˇcemˇz plat´ı obecn´e pravidlo, ˇze by tr´enovac´ı, testovac´ı a validaˇcn´ı mnoˇzina mˇely b´yt navz´ajem disjunktn´ı [19].

Opaˇcnou metodou je

”uˇcen´ı bez uˇcitele“, kdy nejsou zn´amy poˇzadovan´e v´ystupy. Jsou k dispozici jen data, na kter´a jsou aplikov´any metody, kter´e vych´az´ı zejm´ena z podobnost´ı ve vstupn´ıch parametrech dat. Jedn´a se zejm´ena o metodu shlukov´an´ı. [10, s. 330]

Existuje minim´alnˇe jeˇstˇe 1 dalˇs´ı metoda –

”ˇc´asteˇcn´e uˇcen´ı s uˇcitelem“, kter´a stoj´ı na pomez´ı dvou v´yˇse uveden´ych. Dle nˇekter´ych autor˚u je vˇsak obecn´e zaveden´ı nov´e metody diskutabiln´ı a dle d´ılˇc´ı konfigurace ji zaˇrazuj´ı pod metodu uˇcen´ı s uˇcitelem. [19, s. 15–16].

3.3.2 Dˇ elen´ı dle klasifikaˇ cn´ıho modelu

Existuj´ı v z´asadˇe 2 pˇr´ıstupy.

”Lazy learning“ a

”eager learning“.

Prvn´ı jmenovan´y je zaloˇzen na pouh´em uloˇzen´ı tr´enovac´ı mnoˇziny. Ke klasifikaci doch´az´ı aˇz po kontaktu s testovac´ı mnoˇzinou na z´akladˇe podobnosti s tr´enovac´ı mnoˇzinou, respek- tive nˇejak´ym jej´ım prvkem. Mezi typick´e z´astupce lazy learning metody patˇr´ı metoda

”nej- bliˇzˇs´ıch soused˚u“ ˇci metoda

”case-based reasoning“ (CBR) [10, s. 422–423]. Metoda CBR se vˇsak uplatˇnuje hlavnˇe ve znalostn´ıch datab´az´ıch, pro ˇcasov´e ˇrady existuj´ı daleko vhodnˇejˇs´ı me- tody, jak uk´aˇzi z´ahy.

Naproti tomu pˇr´ıstup eager learning spoˇc´ıv´a v tom, ˇze na z´akladˇe tr´enovac´ı mnoˇziny je pˇr´ımo vytvoˇren klasifikaˇcn´ı model jiˇz pˇred kontaktem s testovac´ı mnoˇzinou. Tento model je pot´e apli- kov´an na samotnou testovac´ı mnoˇzinu. Mezi z´astupce t´eto metody patˇr´ı de facto vˇsechny zbyl´e

(18)

metody mimo CBR a nearest neighbors [10, s. 422–423].

V n´asleduj´ıc´ıch sekc´ıch struˇcnˇe pop´ıˇsu nˇekter´e z´akladn´ı metody klasifikace, z nichˇz vych´azej´ı dalˇs´ı, pokroˇcilejˇs´ı metody klasifikace [10, s. 393]. Z tˇechto metod budu tak´e d´ale vych´azet v t´eto pr´aci.

3.3.3 Rule-based klasifikace

Jedn´a se o trivi´aln´ı IF-THEN pˇr´ıstup, kdy je moˇzn´e klasifikaˇcn´ı pravidla zapisovat ve tvaru IFrule antecedent THEN rule consequent,

pˇriˇcemˇz

”rule antecedent“ m´a v´yznam podm´ınky,

”rule consequent“ m´a v´yznam ´usudku [10, s. 355]. Je zˇrejm´e, ˇze podm´ınek m˚uˇze b´yt v´ıce. Ty jsou pot´e d´av´any do vztah˚u logick´ymi spoj- kami AND ˇci OR. Jedn´a se o metodu, kdy je nutn´e, aby rozhodovac´ı pravidla byla pˇresnˇe spe- cifikov´ana, nejˇcastˇeji ve spolupr´aci s dom´enov´ym expertem [23, s. 11]. Ten m´a hlubˇs´ı n´ahled do problematiky, pˇr´ıpadnˇe se t´eˇz m˚uˇze jednat o komunitn´ı znalosti, k ˇcemuˇz se dostanu v praktick´e ˇ

c´asti. Tyto metody obecnˇe b´yvaj´ı t´eˇz oznaˇcov´any jako

”hard computing“ metody.

3.3.4 Rozhodovac´ı stromy

Pojem

”strom“ je zde ch´ap´an v kontextu teorie graf˚u, pˇriˇcemˇz klasifikace atribut˚u pomoc´ı rozhodovac´ıch strom˚u spoˇc´ıv´a ve vytvoˇren´ı hierarchick´e stromov´e struktury tak, ˇze kaˇzd´y uzel (vˇetven´ı) reprezentuje test dan´eho atributu a kaˇzd´a vˇetev smˇeˇruj´ıc´ı z tohoto uzlu reprezentuje rozhodnut´ı. Je-li vˇetev zakonˇcena listem, pak se jedn´a pˇr´ımo o zaˇrazen´ı do klasifikaˇcn´ı tˇr´ıdy.

[19, s. 52–53] Rozhodovac´ı stromy je moˇzn´e pˇrev´est do klasick´eho IF-THEN pˇr´ıstupu, aniˇz by doch´azelo ke koliz´ım; klasifikaˇcn´ı pravidla se tedy budou navz´ajem vyluˇcovat. De facto tedy spadaj´ı pod rule-based metody, kam se t´eˇz nˇekdy zaˇrazuj´ı [10, s. 358].

3.3.5 Soft computing

Jedn´a se o mnoˇzinu v´ıce metod, kter´e vˇsak na rozd´ıl od rule-based metod vˇcetnˇe rozhodovac´ıch strom˚u nepotˇrebuj´ı detailn´ı rozhodovac´ı pravidla, ale pˇri tˇechto metod´ach postaˇcuje z´akladn´ı nutn´e minimum rozhodovac´ıch pravidel ˇci poˇzadovan´y v´ysledek klasifikace. Dan´a metoda se jiˇz samostatnˇe snaˇz´ı dos´ahnout poˇzadovan´ych v´ysledk˚u. Absence dom´enov´eho experta v tˇechto pˇr´ıpadech tedy b´yv´a daleko m´enˇe citelnˇejˇs´ı neˇz v pˇr´ıpadˇe rule-based metod. [23, s. 12]

(19)

3.4 Metody rozpozn´ av´ an´ı vzor˚ u v ˇ casov´ ych ˇ rad´ ach

V t´eto ˇc´asti jiˇz struˇcnˇe shrnu vybran´e metody respektive techniky rozpozn´av´an´ı (detekce) a klasifikace vzor˚u v ˇcasov´ych ˇrad´ach. Pˇri sestavov´an´ı seznamu metod jsem vych´azel z v´ıce zdroj˚u, kter´e se vˇsak v mnoha bodech shoduj´ı [20][21][22][24].

3.4.1 Nejbliˇ zˇ s´ı soused

Metoda nejbliˇzˇs´ıho souseda, 1-NN respektive k-NN, kde k pˇredstavuje poˇcet soused˚u, je rela- tivnˇe star´a metoda, kter´a byla pops´ana jiˇz v 50. letech 20. stolet´ı. Jedn´a se o metodu z mnoˇziny uˇcen´ı s uˇcitelem. Klasifikace prob´ıh´a ve 2 f´az´ıch. Tr´enovac´ı f´aze spoˇc´ıv´a v pouh´em uloˇzen´ı ob- jekt˚u z tr´enovac´ı mnoˇziny spoleˇcnˇe s klasifikovanou tˇr´ıdou. V klasifikaˇcn´ı f´azi je klasifikovan´emu objektu pˇriˇrazena stejn´a tˇr´ıda, jakou m´a k objekt˚u z tr´enovac´ı mnoˇziny, kter´e jsou klasifiko- van´emu objektu nejbl´ıˇze. Pojem

”nejbl´ıˇze“ zahrnuje r˚uzn´e druhy metrik, napˇr´ıklad euklidovsk´a ˇ

ci manhattansk´a a dalˇs´ı. [10, s. 423]

Metoda nejbliˇzˇs´ıch soused˚u obecnˇe je pro klasifikaci ˇcasov´ych ˇrad dle dostupn´ych zdroj˚u [26] ´uspˇeˇsnˇe pouˇziteln´a. Konkr´etnˇe metoda 1-NN je ud´av´ana [26][27] ve spolupr´aci s kˇr´ıˇzovou validac´ı jak standardn´ı metoda pro mˇeˇren´ı a vyhodnocov´an´ı pˇr´ınosnosti r˚uzn´ych reprezen- tac´ı ˇcasov´ych ˇrad, tak jako i standardn´ı metoda pro mˇeˇren´ı jejich podobnost´ı. Jej´ı znaˇcnou nev´yhodou je vˇsak ˇspatn´a odolnost v˚uˇci ˇsumu.

3.4.2 Umˇ el´ e neuronov´ e s´ıtˇ e

Jedn´a se o metodu, jej´ıˇz koˇreny sahaj´ı aˇz do roku 1942 [30][31], kter´a, dle konkr´etn´ıho typu neuronov´e s´ıtˇe, umoˇzˇnuje vˇsechny moˇznosti supervize. Z´akladem umˇel´e neuronov´e s´ıtˇe je ma- tematick´y model biologick´eho neuronu, respektive spojen´ı v´ıce tˇechto neuron˚u. Neuronov´a s´ıt’

je v ˇcase promˇenliv´a, je moˇzn´e [23, s. 19] rozliˇsit 3 stavy t´eto s´ıtˇe.

Organizaˇcn´ı stav, ve kter´em doch´az´ı ke zmˇenˇe topologie (architektury) s´ıtˇe. V z´akladˇe existuj´ı dva typy architektur a to rekurentn´ı s´ıt’ a dopˇredn´a s´ıt’.

Aktivn´ı stav, ve kter´em se specifikuj´ı inicializaˇcn´ı stavy s´ıtˇe a kter´y definuje zp˚usob zmˇeny stavu s´ıtˇe pˇri pevnˇe dan´e architektuˇre a konfiguraci.

Adaptivn´ı stav, ve kter´em doch´az´ı ke zmˇen´am vah d´ılˇc´ıch neuronov´ych spojen´ı. C´ılem adaptace je nal´ezt takovou konfiguraci, aby s´ıt’ v aktivn´ım reˇzimu realizovala poˇzadovanou funkci.

Problematika a dˇelen´ı neuronov´ych s´ıt´ı je znaˇcnˇe hlubok´e t´ema, nicm´enˇe ve zkratce je moˇzn´e ˇr´ıci, ˇze je tato metoda pro naˇse ´uˇcely pouˇziteln´a [10, s. 398–408][28]. V tomto kontextu maj´ı t´eˇz

´

uspˇechy samoorganizaˇcn´ı mapy [38]. ˇCasto zmiˇnovanou komplikac´ı vˇsak b´yv´a netransparent- nost metody, relativnˇe komplexn´ı implementace r˚uzn´ych metod, na druhou stranu jsou vˇsak neuronov´e s´ıtˇe znaˇcnˇe flexibiln´ı, odoln´e v˚uˇci ˇsumu a jsou obecnˇe robustn´ı [26] [10, s. 398] [29, s. 333–353].

3.4.3 Rozhodovac´ı stromy

Jak jsem jiˇz uv´adˇel v sekci 3.3.4, jedn´a se o vytvoˇren´ı hierarchick´e rozhodovac´ı struktury.

Pro klasifikaci ˇcasov´ych ˇrad a vyhled´av´an´ı vzor˚u v tˇechto ˇrad´ach je vˇsak tato metoda znaˇcnˇe nevhodn´a. A to hlavnˇe z d˚uvod˚u v´ıcedimenzionality ˇcasov´ych ˇrad ˇci z neodolnosti v˚uˇci ˇsumu.

Vznikl´e stromy jsou ud´av´any jako pˇr´ıliˇs hlubok´e a hust´e. [32] Coˇz znamen´a v´ypoˇcetn´ı n´aroˇcnost

(20)

a v kombinaci s ud´avanou nepˇresnost´ı je ˇcin´ı nevhodnou volbou.

Tento probl´em zˇc´asti ˇreˇs´ı zaveden´ı metody regresn´ıch strom˚u [33]. Narozd´ıl od klasifikaˇcn´ıch nejsou pˇriˇrazov´any objekt˚um konkr´etn´ı tˇr´ıdy, ale jsou pro nˇe odhadov´any numerick´e atribu- ty. Obˇe tyto metody zastˇreˇsuje metoda

”classification and regression tree“ (CART). Dalˇs´ı zlepˇsov´an´ı v´ysledk˚u pot´e uˇz z´aleˇz´ı jen na konkr´etn´ıch pouˇzit´ych algoritmech. [34]

Casto uv´ˇ adˇenou nev´yhodou u metody CART je fakt, ˇze tato metoda nen´ı zaloˇzena na pravdˇepodobnostn´ım modelu pˇri vyvozov´an´ı predikc´ı, ale spol´eh´a se pouze na splnˇen´ı poˇzadovan´e predikce za urˇcen´ych podm´ınek. Na druhou stranu mezi jej´ı v´yhody patˇr´ı mimo jin´e schopnost vypoˇr´adat se s vyˇsˇs´ı dimenzionalitou analyzovan´ych dat [35].

3.4.4 Clustering

Metody shlukov´an´ı nevyˇzaduj´ı supervizi a reprezentuj´ı techniky, kdy jsou datov´e objekty shlu- kov´any do shluk˚u neboli cluster˚u, pˇriˇcemˇz objekty v clusteru jsou si podobn´e a z´aroveˇn jsou nepodobn´e objekt˚um v jin´ych clusterech [10, s. 108]. Jedn´ım z hlavn´ıch probl´em˚u pˇri identifi- kov´an´ı cluster˚u v datech je specifikace podobnosti objekt˚u a zp˚usob, jak tuto podobnost mˇeˇrit [36, s. 3].

Casov´ˇ e ˇrady je moˇzn´e shlukovat dle tˇr´ı z´akladn´ıch pˇr´ıstup˚u. V prvn´ım se uvaˇzuje ˇcasov´a ˇrada jako celek, d´ale je moˇzn´e uvaˇzovat d´ılˇc´ı podposloupnosti t´eto ˇcasov´e ˇrady a nakonec samotn´e d´ılˇc´ı body v ˇcasov´e ˇradˇe. [37] Pˇri tˇechto postupech je moˇzn´e uˇz´ıvat n´asleduj´ıc´ıch z´akladn´ıch metod clusteringu [37] [10, s. 448–451, 491].

Partitioning method – nejprve je vytvoˇrena mnoˇzina k segment˚u, kde k pˇredstavuje poˇcet tˇechto segment˚u. Pot´e je pouˇzita

”iterative relocation technique“, kter´a se pokouˇs´ı o zlepˇsen´ı segmentace pˇresouv´an´ım d´ılˇc´ıch objekt˚u mezi segmenty. Mezi nejzn´amˇejˇs´ı me- tody patˇr´ı zejm´ena

”k-means“.

Hierarchical method – spoˇc´ıv´a ve vytvoˇren´ı hierarchick´e struktury. Existuj´ı dva pˇr´ıstupy.

Prvn´ım je

”bottom-up“, kdy doch´az´ı ke shlukov´an´ı menˇs´ıch cluster˚u do vˇetˇs´ıch, druh´ym je ”top-down“, kdy se jeden velk´y cluster rozpad´a na v´ıce menˇs´ıch. V´yhodou je pˇrehledn´a vizualizace, nev´yhodou uplatnitelnost sp´ıˇse na menˇs´ı datov´e sady, nebot’ tato metoda m´a kvadratickou sloˇzitost.

Density-based method – objekty jsou shlukov´any bud’ na z´akladˇe hustoty sousedn´ıch objekt˚u nebo na z´akladˇe hustotn´ı funkce.

Grid-based method – v prvn´ı f´azi jsou objekty uspoˇr´ad´any do mˇr´ıˇzkov´eho prostoru a ve druh´e f´azi je clustering prov´adˇen v r´amci tohoto prostoru. Jednou z metod je napˇr´ıklad STING (z angl.

”STatistical INformation Grid“).

Jak se ukazuje, je metoda shlukov´an´ı ´uspˇeˇsnˇe aplikovateln´a napˇr´ıklad v situaci, kdy je ˇcasov´a ˇrada rozdˇelena na segmenty, kter´e jsou n´aslednˇe hierarchicky shlukov´any metodou bottom- up [39]. Je t´eˇz uplatniteln´a pro hierarchickou top-down metodu [41]. Rozdˇelen´ım ˇcasov´e ˇrady na podposloupnosti, kter´e jsou pot´e r˚uzn´ymi metodami shlukov´any, se obecnˇe zab´yvalo vˇetˇs´ı mnoˇzstv´ı studi´ı. V´ysledky jejich b´ad´an´ı vˇsak byly ˇcasto nejasn´e a ukazuje se t´eˇz, ˇze efektivita b´yv´a sporn´a s ohledem na potˇrebn´e pamˇet’ov´e zdroje [37]. Nˇekter´e zdroje dokonce tvrd´ı, ˇze shlukov´an´ı podposloupnost´ı je bezv´yznamn´e [40].

(21)

3.4.5 Fuzzy logika

Fuzzy logika, respektive fuzzy mnoˇziny zjemˇnuj´ı striktn´ı bin´arn´ı klasifikaci, ˇcernob´ıl´y pohled na vˇec. Jsou tedy daleko bl´ıˇze intuitivn´ımu lidsk´emu uvaˇzov´an´ı. Pro lepˇs´ı pochopen´ı uv´ad´ım ilustrativn´ı obr. 3.2. Jedn´a se o klasifikaci platov´ych tˇr´ıd v z´avislosti na v´yˇsi pˇr´ıjmu.

Obr´azek 3.2: Pˇr´ıklad fuzzy mnoˇzin pˇri klasifikaci platov´ych tˇr´ıd (pˇrevzato z [10])

Je zˇrejm´e, ˇze pokud by se klasifikovalo bin´arnˇe, v´ysledkem by byly 3 ostr´e, neprot´ınaj´ıc´ı se mnoˇziny. Jelikoˇz ale je uvaˇzov´an fuzzy pˇr´ıstup, je v´ysledkem vˇerohodnˇejˇs´ı popis, kdy kaˇzd´e hodnotˇe income z osy x odpov´ıd´a stupeˇn pˇr´ısluˇsnosti na ose y z intervalu [0,1].

V kontextu detekce vzor˚u v ˇcasov´ych ˇrad´ach b´yv´a tato metoda pouˇz´ıv´ana nejˇcastˇeji ve spolupr´aci s neuronov´ymi s´ıtˇemi [41], pˇr´ıpadnˇe existuj´ı aplikace ve spolupr´aci se shlukovac´ımi metodami [42]. Zahrnut´ı fuzzy elementu je t´eˇz velice popul´arn´ı i ve finanˇcn´ı sf´eˇre [43, s. 279].

D´ale existuj´ı i samotn´e modely fuzzy ˇcasov´ych ˇrad, kter´e najdou uplatnˇen´ı jak v detekci vzor˚u v nejist´em (ve smyslu nepˇresn´em) prostˇred´ı, tak v predikci tˇechto ˇcasov´ych ˇrad [44].

3.5 Popis zvolen´ ych dat a jejich v´ yznamu

Jako data, ve kter´ych budu vzory detekovat, jsem zvolil finanˇcn´ı ˇcasov´e ˇrady z trhu Forex (z an- gl. ”FOReing EXchange“). Ten minim´alnˇe v posledn´ım desetilet´ı zaˇz´ıv´a obrovsk´y rozvoj, co se t´yˇce podpory potenci´aln´ıch investor˚u. Jedn´a se zejm´ena o vznik brokersk´ych spoleˇcnost´ı, inter- netov´ych komunit, vyd´av´an´ı knih a dalˇs´ıˇs´ıˇren´ı informaˇcn´ı a vzdˇel´avac´ı osvˇety. T´ım se dost´av´am k nejpodstatnˇejˇs´ımu d˚uvodu volby tˇechto ˇcasov´ych ˇrad. Lze si relativnˇe snadno opatˇrit histo- rick´a data i v minim´aln´ım ˇcasov´em r´amci 1M, tedy 1 minuta, a to od dob samotn´eho vzniku trhu Forex. V pˇr´ıpadˇe t´eto pr´ace se jedn´a o data z obchodn´ı platformy spoleˇcnosti Oanda. Jako dalˇs´ı d˚uvod lze uv´est fakt, ˇze v tˇechto ˇcasov´ych ˇrad´ach existuj´ı obecnˇe popsan´e a definovan´e vzory, kter´e je moˇzn´e hledat.

Na obr. 3.3 je uvedena uk´azku grafu, kter´y se skl´ad´a z element´arn´ıch sv´ıc´ı r˚uzn´ych druh˚u, jejichˇz v´yznam vysvˇetl´ım d´ale. Jedn´a se o ˇcasovou ˇradu s ˇcasov´ym r´amcem 1 hodina (1H). Tato ˇrada charakterizuje v´yvoj kursu eura (EUR) v˚uˇci americk´emu dolaru (USD). Je zobrazen pouze omezen´y ˇcasov´y interval, datov´a sada od roku 1999 pro ˇcasov´y r´amec 1H ˇc´ıt´a pˇribliˇznˇe 100 000 sv´ıc´ı. M´ym c´ılem je nal´ezt v takov´ych ˇrad´ach vˇsechny v´yskyty napˇr´ıklad vzoru zv´yraznˇen´eho

(22)

na obr. 3.3 ˇci jeho

”m´ırnˇe“ odliˇsn´e varianty. Takov´e vzory mus´ı b´yt nejdˇr´ıve form´alnˇe zaps´any.

Nav´ıc proces vyhled´an´ı vzoru je nutno zautomatizovat, jelikoˇz kontrolovat ruˇcnˇe napˇr´ıklad 8 r˚uzn´ych datov´ych sad po 100 000 sv´ıc´ıch pro nˇekolik r˚uzn´ych ˇcasov´ych r´amc˚u nen´ı optim´aln´ı jak z hlediska ˇcasov´eho, tak z hlediska chyby lidsk´eho faktoru.

Obr´azek 3.3: Pˇr´ıklad ˇcasov´e ˇrady reprezentovan´e sv´ıcov´ym grafem

Motivac´ı k vyˇreˇsen´ı takov´eho probl´emu m˚uˇze b´yt napˇr´ıklad snaha z´ıskat vstupn´ı informace pro technickou anal´yzu dan´eho finanˇcn´ıho instrumentu, respektive trhu. Na z´akladˇe mimo jin´e tˇechto znalost´ı je moˇzn´e pot´e napˇr´ıklad registrovat novˇe vznikaj´ıc´ı vzory, kter´e se jiˇz objevily v minulosti, a tud´ıˇz s urˇcitou pravdˇepodobnost´ı je moˇzn´e urˇcit dalˇs´ı v´yvoj aktu´aln´ı situace.

Term´ın

”technick´a anal´yza“ je moˇzn´e ch´apat jako:

”...anal´yza cenov´ych pohyb˚u, rychlosti jejich zmˇen a objemu z hlediska historie, vych´az´ı tedy ze studia minul´eho trˇzn´ıho chov´an´ı mˇeny, indexu ˇ

ci komodity...“ [50]. Podstatn´a je zejm´ena z toho d˚uvodu, ˇze:

”...je jedn´ım z nejv´yznamnˇejˇs´ıch n´astroj˚u pouˇz´ıvan´ych k progn´oze chov´an´ı finanˇcn´ıch trh˚u. Osvˇedˇcila se jako efektivn´ı n´astroj investor˚u a st´ale v´ıce ´uˇcastn´ık˚u na trhu ji pouˇz´ıv´a...“[51]. Na tomto m´ıstˇe je vhodn´e uv´est, ˇze sv´ıcov´e grafy se net´ykaj´ı pouze finanˇcn´ı sf´ery, ale jejich uplatnˇen´ı lze nal´ezt i v jin´ych oblastech [56][57].

3.5.1 Struktura grafu a dat

Jako tr´enovac´ı sadu dat pro tuto pr´aci jsem vybral mˇenov´y p´ar EURUSD (euro/americk´y dolar) s ˇcasov´ym r´amcem 1H a jako testovac´ı datovou sadu jsem zvolil USDCHF (americk´y dolar/ˇsv´ycarsk´y frank) se stejn´ym ˇcasov´ym r´amcem. D˚uvodem volby tˇechto p´ar˚u je fakt, ˇze se jedn´a o jedny ze 7 hlavn´ıch a tak´e nejv´ıce obchodovan´ych p´ar˚u [52]. Nav´ıc se jedn´a o mˇenov´y

(23)

p´ar s negativn´ı korelac´ı limitnˇe se bl´ıˇz´ıc´ı hodnotˇe c = -1 [70][71]. To znamen´a, ˇze pokud kurs EURUSD poroste, kurs USDCHF poklesne o stejnou hodnotu a vice versa. D´a se tedy s urˇcit´ym zobecnˇen´ım pˇredpokl´adat, ˇze klasifik´ator vytvoˇren´y na z´akladˇe tr´enovac´ı mnoˇziny reprezentovan´e daty mˇenov´eho p´aru EURUSD je ´uspˇeˇsnˇe aplikovateln´y na testovac´ı mnoˇzinu reprezentovanou mˇenov´ym p´arem USDCHF. Pakliˇze by byla uvaˇzov´ana jako testovac´ı mnoˇzina dat jin´y mˇenov´y p´ar neˇz USDCHF, bylo by vhodn´e data nejdˇr´ıve analyzovat, aby se zjistilo, zdali je tento postup korektn´ı.

Casov´ˇ y r´amec si lze pˇredstavit jako ˇcasov´y interval, kter´y je charakterizov´an nejˇcastˇeji 4 pˇr´ıpadnˇe 5 hodnotami, kter´e shrnuj´ı dˇen´ı na trhu (mˇenov´em p´aru) v dan´em ˇcasov´em interva- lu. Nejˇcastˇeji se jedn´a o r´amce o hodnot´ach 1, 5, 15, 30, 60, 240, 1 440 nebo i 10 080, kde ˇ

c´ıseln´a hodnota reprezentuje d´elku ˇcasov´eho r´amce v minut´ach. Je zˇrejm´e, ˇze ˇc´ım vˇetˇs´ı je d´elka ˇ

casov´eho r´amce, t´ım menˇs´ı je poˇcet sv´ıc´ı v datov´e sadˇe a t´ım vˇetˇs´ı je jejich informaˇcn´ı hodnota.

Mnou zvolen´y ˇcasov´y r´amec 1H je bˇeˇznˇe ud´av´an v kontextu intradenn´ıho obchodov´an´ı [69].

Pokud bych chtˇel prov´adˇet hlubˇs´ı anal´yzu detekce vzor˚u, bylo by vhodn´e, abych bral v ´uvahu r˚uzn´e ˇcasov´e r´amce.

Zm´ınˇen´ych 5 hodnot se bˇeˇznˇe oznaˇcuje jako Open,High,Low,Close aVolume. Pˇredstavuj´ı n´asleduj´ıc´ı informace:

Open – otv´ırac´ı cena; hodnota v poˇc´atku ˇcasov´eho r´amce

High – nejvyˇsˇs´ı dosaˇzen´a cena v ˇcasov´em r´amci, za kterou se obchodovalo

Low – nejniˇzˇs´ı dosaˇzen´a cena v ˇcasov´em r´amci, za kterou se obchodovalo

Close – uzav´ırac´ı cena; hodnota v konci ˇcasov´eho r´amce

Volume – mnoˇzstv´ı zobchodovan´e mˇeny

N´asleduje uk´azka, v jak´em form´atu jsou pouˇzit´a historick´a data exportov´ana z obchodn´ı platformy do souboru ve form´atu CSV. Kaˇzd´y ˇr´adek reprezentuje jednu sv´ıc´ı, celkem tedy m´a soubor pˇribliˇznˇe dˇrive zm´ınˇen´ych 100 000 ˇr´adk˚u. Jedn´a se o mˇenov´y p´ar EURUSD, ˇcasov´y r´amec 1H.

Datum, ˇCas, Open, High, Low, Close, Volume ...

2011.11.11,12:00,1.37769,1.37944,1.37466,1.37473,4694 2011.11.11,13:00,1.37472,1.37706,1.37446,1.37523,3522 2011.11.11,14:00,1.37527,1.37716,1.37526,1.37672,1787 ...

3.5.2 Sv´ıcov´ y graf

V praxi se k zobrazov´an´ı uveden´ych hodnot pouˇz´ıvaj´ı nejˇcastˇeji schodov´e ˇci sv´ıcov´e grafy. Oba dva typy spadaj´ı do mnoˇziny

”OHLC“ (Open, High, Low, Close) graf˚u. Hlavn´ı rozd´ıl mezi nimi je v ˇcitelnosti pro ˇclovˇeka. Je pak pochopiteln´e, ˇze se prosadily sv´ıcov´e grafy na ´ukor scho- dov´ych a jsou dnes de facto standardem. Aˇckoliv jsou sv´ıcov´e grafy starˇs´ı neˇz schodov´e, masovˇe se rozˇs´ıˇrily relativnˇe ned´avno – jejich expanze po svˇetˇe zaˇcala z Japonska pˇribliˇznˇe v roce 1989 d´ıky Stevu Nisonovi. [53]. D´ale se budu zab´yvat jiˇz jen sv´ıcov´ymi grafy.

(24)

Element´arn´ım prvkem sv´ıcov´eho grafu je sv´ıce, kter´a je charakterizov´ana ˇctyˇrmi, respektive pˇeti parametry. Z´akladn´ı typy sv´ıc´ı [54, s. 3][55, s. 4] se z´akladn´ımi i odvozen´ymi parametry jsou zn´azornˇeny na obr. 3.4.

High

Close

Open

Low High

Open

Close

Low

Reálné tělo

Dolní stín Horní stín

Tělo

Obr´azek 3.4: Z´akladn´ı typy sv´ıc´ı s vyznaˇcen´ymi parametry sv´ıc´ı

Z nˇej je zˇrejm´e, ˇze ˇcern´a sv´ıce reprezentuje stav, kdy kurs mˇeny kles´a, jelikoˇz hodnotaOpen je vˇetˇs´ı neˇz hodnota Close. U b´ıl´e sv´ıce je tomu naopak, tedy hodnota Open je menˇs´ı neˇz hod- nota Close, takˇze kurs mˇeny roste.

Sv´ıce mohou nab´yvat r˚uzn´ych d´ılˇc´ıch parametr˚u a podle toho se tak´e bude mˇenit jejich podoba – napˇr´ıklad pozice a velikost re´aln´eho tˇela a s t´ım souvisej´ıc´ı d´elka st´ın˚u, apod. Bliˇzˇs´ı specifikac´ı parametr˚u se budu zab´yvat d´ale.

3.5.3 Trend

Tento pojem si lze zjednoduˇsenˇe pˇredstavit jako smˇer, kter´ym se vyd´av´a trh, respektive ˇcasov´a ˇrada reprezentov´ana sv´ıcemi. Bud’ ˇrada poroste, bude klesat nebo bude stagnovat. Pokud bych chtˇel b´yt opravdu korektn´ı a chtˇel bych, aby tato pr´ace mˇela o nˇeco vˇetˇs´ı praktick´y pˇr´ınos, mu- sel bychom pro kaˇzdou sv´ıcovou formaci uvaˇzovat i trend, v jak´em se formace nach´az´ı. Nebot’

jak uv´ad´ı Morris [58, s. 212–213], existence dan´eho vzoru ve sv´ıcov´em grafu nen´ı d´ana pouze vztahem mezi daty, kter´e reprezentuj´ı vzor, ale je tak´e d´ana trendem, kter´y pˇredch´az´ı v´yskytu tohoto vzoru. Coˇz, jak dod´av´a, je v souˇcasn´e t´ematick´e literatuˇre ˇcasto opom´ıjeno.

3.5.4 Klouzav´ y pr˚ umˇ er

K urˇcov´an´ı trendu je moˇzn´e pouˇz´ıt n´astroj zvan´y klouzav´y pr˚umˇer (MA), kter´y ˇcasovou ˇradu

”vyhlazuje“, takˇze nejsou tolik patrn´a lok´aln´ı minima ˇci maxima. V t´eto pr´aci jej vyuˇziji pro stanovov´an´ı pr˚umˇern´e velikosti re´aln´eho tˇela sv´ıce. Tato velikost je urˇcena pro dalˇs´ı klasifikaci sv´ıce a jejich vzor˚u, jak uk´aˇzi v dalˇs´ı kapitole. Je totiˇz nutn´e si uvˇedomit, ˇze je potˇreba uvaˇzovat sv´ıci v urˇcit´em omezen´em ˇcasov´em kontextu, nen´ı moˇzn´e pouˇz´ıt napˇr´ıklad aritmetick´y pr˚umˇer ˇ

ci medi´an dat za napˇr. posledn´ıch 10 let, v´ysledky by nebyly pˇresn´e. Klouzav´y pr˚umˇer zadefi- nujeme n´asledovnˇe [59].

(25)

Definice 7. Mˇejme posloupnost P re´aln´ych ˇc´ıselr1, ..., rn. Klouzav´ym pr˚umˇerem (M A)b s b´az´ı b pro prvekrn nazveme takovou posloupnost re´aln´ych ˇc´ısel, pro kterou plat´ı, ˇze (M A)b =

b

P

i=1

Di

b , kde Di pˇredstavuje prvky posloupnosti rn−1, ..., rn−b.

Jelikoˇz tato definice nemus´ı b´yt srozumiteln´a, uv´ad´ım n´asleduj´ıc´ı praktick´y pˇr´ıklad. Pˇrevzato a upraveno [60].

Pˇr´ıklad 1. Mˇejme posloupnost P = (2,4,6,5,4,3,2,4), kter´a reprezentuje hodnoty Close pro hodinov´y ˇcasov´y r´amec. D´ale mˇejme b´azi b = 3, kter´a reprezentuje, pro jak dlouh´a obdob´ı chceme klouzav´y pr˚umˇer poˇc´ıtat.

1. ˇclen MA se spoˇcte jako: 2+4+63 = 4.

2. ˇclen MA se spoˇcte jako: 4+6+53 = 5.

3. ˇclen MA se spoˇcte jako: 6+5+43 = 5.

...

Nakonec z´ısk´am klouzav´y pr˚umˇer pro tuto posloupnost jako: 4,5,5,4,3,3,3. Je tedy zˇrejm´e, ˇze klouzav´y pr˚umˇer je de facto aritmetick´y pr˚umˇer za urˇcit´e obdob´ı.

Ilustraˇcn´ı zobrazen´ı klouzav´eho pr˚umˇeru je na obr. 3.5. Jedn´a se o mˇenov´y p´ar americk´y dolar/ˇsv´ycarsk´y frank na ˇcasov´em r´amci 1 hodina. B´aze klouzav´eho pr˚umˇeru odpov´ıd´a 12 hodin´am. Je patrn´e, ˇze pˇreruˇsov´ana kˇrivka reprezentuj´ıc´ı klouzav´y pr˚umˇer hodnot Close m´a z definice zpoˇzdˇen´ı a ˇcasovou ˇradu opravdu

”vyhlazuje“.

časová hodnota

kursová hodnota

Obr´azek 3.5: Demonstrace MA na mˇenov´em p´aru USDCHF 1H pro b = 12

Mimo tento typ klouzav´eho pr˚umˇeru, kter´y se t´eˇz naz´yv´a jednoduch´y klouzav´y pr˚umˇer, existuj´ı i dalˇs´ı typy klouzav´ych pr˚umˇer˚u, napˇr´ıklad exponenci´aln´ı ˇci v´aˇzen´y. V t´eto pr´aci uvaˇzuji jen jednoduch´y.

(26)

4.1 Volba vhodn´ ych metod pro detekci vzor˚ u

Pro detekci vzor˚u v ˇcasov´ych ˇrad´ach jsem se rozhodl vyuˇz´ıt metod rule-based, fuzzy a modi- fikovan´e klasifikaˇcn´ı z oblasti uˇcen´ı s uˇcitelem, coˇz rozeberu d´ale. Hlavn´ımi prioritami pro mˇe byla transparentnost a intuitivnost pouˇzit´ych metod jako i dostupn´a moˇznost vlastn´ıho n´avrhu a programov´e implementace od z´aklad˚u spoleˇcnˇe s klasifikaˇcn´ı architekturou. V kombinaci se zvolen´ymi daty se jednalo o pˇrijatelnou volbu, jelikoˇz pˇr´ıbuzn´ym t´ematem a metodami se jiˇz nˇekter´e studie zab´yvaly [45].

4.1.1 Rule-based metoda

Pro tuto metodu nen´ı nutn´e rozeb´ırat dalˇs´ı detaily, vystaˇc´ı zde popis, kter´y byl jiˇz rozeb´ır´an v teoretick´e ˇc´asti.

4.1.2 Fuzzy mnoˇ ziny

S ohledem na v´ybˇer fuzzy metody se v t´eto ˇc´asti zamˇeˇr´ım na bliˇzˇs´ı popis a pouˇzit´ı fuzzy mnoˇzin, coˇz jsem dˇr´ıve popsal jen zbˇeˇznˇe. Tyto poznatky vyuˇziji k praktick´emu n´avrhu.

Definice 4. Mˇejme pevnˇe zvolenou univerz´aln´ı mnoˇzinu X. Fuzzy mnoˇzinou A univerza X budeme rozumˇet objekt popsan´y charakteristickou funkc´ı

µA :X →[0,1], (4.1)

kterou t´eˇz naz´yv´ame funkce pˇr´ısluˇsnosti. Pro kaˇzd´y prvek x ∈X hodnota µA(x)∈ [0,1] ˇr´ık´a, do jak´e m´ıry je x prvkem fuzzy mnoˇziny A. Kaˇzd´a funkce z X do [0, 1] urˇcuje jednoznaˇcnˇe nˇejakou fuzzy mnoˇzinu. [48]

Libovolnou fuzzy mnoˇzinu je moˇzn´e popsat jej´ı funkc´ı pˇr´ısluˇsnosti, kter´a je t´eˇz zn´am´a jako ˇ

clensk´a funkce. Jako pˇr´ıklad [48] je moˇzn´e uv´est univerzum X = R a mnoˇziny A, B, kter´e je moˇzn´e zapsat pˇredpisem

µA(x) =





0 pro x <0, x pro x∈[0,1], 2−x pro x∈(1,2], 0 pro x >2,

µB(x) =





1

2 pro x= 3, 1 pro x= 4,

1

4 pro x= 5, 0 jinak.

Pro ilustraˇcn´ı zobrazen´ı fuzzy mnoˇzin odk´aˇzi opˇet na obr. 3.2. Mimo toto zobrazen´ı funkce pˇr´ısluˇsnosti, zn´am´e t´eˇz jako lichobˇeˇzn´ıkov´e, existuj´ı i dalˇs´ı z´akladn´ı typy. Napˇr´ıklad troj´uhel- n´ıkov´e,

”Gaussian“,

”illogical“,

”asymmetrical Gaussian“ a dalˇs´ı. [47, s. 12–15]

Pro potˇreby t´eto pr´ace jeˇstˇe pop´ıˇsi nˇekter´e logick´e operace nad fuzzy mnoˇzinami. Pro tyto

´

uˇcely mˇejme fuzzy mnoˇzinyM1,M2 definovan´e pro xz univerzaX a s nimi asociovan´e ˇclensk´e 15

(27)

funkce µ1(x),µ2(x) [47, s. 16–17].

Definice 5. Fuzzy konjunkc´ı (AND) M1 ∩M2 nazveme takovou fuzzy mnoˇzinu, pro kterou bude platit µM1∩M2(x) = min{µ1(x), µ2(x) :x∈X}.

Definice 6. Fuzzy disjunkc´ı (OR)M1∪M2 nazveme takovou fuzzy mnoˇzinu, pro kterou bude platit µM1∪M2(x) = max {µ1(x), µ2(x) :x∈X}.

Z toho je tedy zˇrejm´e, ˇze se budu drˇzet klasick´eho pˇr´ıstupu zakladatele fuzzy logiky a fuzzy mnoˇzin, kter´ym je Lotfali Askar Zadeh. V kontextu fuzzy pˇr´ıstupu je nutn´e popsat dalˇs´ı procesy, kter´e souvis´ı s jejich praktick´ym pouˇzit´ım. Jedn´a se zejm´ena o n´asleduj´ıc´ı kroky [49, s. 18].

Fuzzification – spoˇc´ıv´a v pˇrevodu klasick´ych ˇci ostr´ych dat do fuzzy dat nebo do ˇclensk´ych funkc´ı; jedn´a se napˇr´ıklad o definici oblast´ılow,medium a high na obr. 3.2

Fuzzy inference process – spoˇc´ıv´a v kombinaci ˇclensk´ych funkc´ı spoleˇcnˇe se zvolen´ymi pravidly, ˇc´ımˇz tvoˇr´ıfuzzy output

Defuzzification – na z´akladˇe vstupu vyb´ır´a konkr´etn´ı

”fuzzy output“; jedn´a se napˇr´ıklad o klasifikaci konkr´etn´ı tˇr´ıdy

4.1.3 Modifikovan´ a klasifikaˇ cn´ı metoda

Necht’ existuj´ı 2 datov´e sady, kter´e slouˇz´ı jako tr´enovac´ı a testovac´ı mnoˇzina. V prvn´ı sadˇe naleznu poˇzadovan´e vzory metodami rule-based a fuzzy. Z takto nalezen´ych vzor˚u n´aslednˇe vytvoˇr´ım matici pr˚umˇern´eho vzoru, tedy jak by mˇel pravdˇepodobnˇe vypadat ide´aln´ı vzor. T´ımto postupem si de facto vytvoˇr´ım 2 tr´enovac´ı mnoˇziny. Pot´e vyuˇziji druhou sadu, testovac´ı, kde se pokus´ım tyto vzory nal´ezt na z´akladˇe procentu´aln´ı odchylky testovan´ych dat od ide´aln´ıho, pr˚umˇern´eho vzoru. Bliˇzˇs´ı popis jako i implementaˇcn´ı detaily t´eto metody uvedu z´ahy.

4.2 Modelace sv´ıc´ı a vzor˚ u

V t´eto ˇc´asti zm´ın´ım obecn´e z´akladn´ı poznatky k modelaci sv´ıc´ı a jejich vzor˚u, kter´e plat´ı napˇr´ıˇc metodami. Modelaci v r´amci konkr´etn´ıch metod rozvedu v n´asleduj´ıc´ı sekci 4.3.

4.2.1 Uvodn´ı slovo k modelaci ´

Neˇz se pust´ım do formalizace sv´ıc´ı, vzor˚u a jejich modelace, povaˇzuji za vhodn´e uv´est nˇekter´a fakta. Zdrojem pro tuto sekci jeEncyclopedia of Candlestick Charts, jej´ımˇz autorem je Thomas N. Bulkowski [55]. Ten str´avil anal´yzou grafov´ych vzor˚u znaˇcnou ˇc´ast sv´eho ˇzivota, na toto t´ema napsal nˇekolik knih a je moˇzn´e jej povaˇzovat za autoritu v t´eto oblasti. V t´eto konkr´etn´ı knize analyzoval a tˇr´ıdil sv´ıcov´e grafy s ohledem na frekvenci jejich v´yskytu, schopnost mˇenit trend, d´ale i s ohledem na jejich schopnost generovat zisk atp. Anal´yzu prov´adˇel na datech, kter´a reprezentuj´ı kompletn´ı akciov´y trh S&P 500 za dobu 10 let [55, s. 4].

Zde je vhodn´e podotknout, ˇze anal´yza akciov´ych trh˚u se pˇr´ıliˇs nesluˇcuje s mnou analy- zovan´ym trhem Forex. Je vˇsak vhodn´e br´at v ´uvahu, ˇze v knize uveden´e sv´ıcov´e formace ˇci element´arn´ı sv´ıce jsou aˇz na v´yjimky k nalezen´ı v de facto libovoln´em finanˇcn´ım trhu a bˇeˇznˇe jsou v komunitˇe pouˇz´ıv´any. Jak autor s´am d´ale uv´ad´ı, tak ostatn´ı v´yzkumn´ıci mohou doch´azet k jin´ym v´ysledk˚u neˇz k tˇem, kter´e prezentuje on. Dle nˇej mohou b´yt na vinˇe zejm´ena meto- dy detekce vzor˚u, data pouˇzit´a pˇri testov´an´ı, pouˇzit´a ˇcasov´a perioda, ale t´eˇz i r˚uzn´a mˇeˇr´ıtka

(28)

v´ykonnosti d´ılˇc´ıch vzor˚u. [55, s. 6]

V tomto kontextu povaˇzuji d´ale za vhodn´e zm´ınit t´eˇz v´yrok mezivl´adn´ı vˇedeck´e organizace IPCC (Intergovernmental Panel on Climate Change), kter´a je nechvalnˇe zn´am´a v souvislosti s tzv.

”hockey stick controversy“ [63][65] ˇci o nˇeco pozdˇeji s af´erou obecnˇe zn´amou jako

”Cli- mategate“ [64][66]:

”Plnˇe uzn´av´ame, ˇze mnoh´a z uveden´ych tvrzen´ı jsou do jist´e m´ıry zaloˇzena na subjektivn´ım vˇedeck´em vn´ım´an´ı a obsahuj´ı komunit´ı a osobn´ı vˇedomosti. Napˇr´ıklad pouh´y v´ybˇer promˇenn´ych a proces˚u, kter´e jsou do modelu zahrnuty, je vˇetˇsinou zaloˇzen pouze na dojmech a zkuˇsenostech modelovac´ı komunity.“ [62] Pˇrevzato z [23, s. 105].

Nemˇelo by se takt´eˇz zapom´ınat na to, ˇze tato pr´ace se nezab´yv´a anal´yzou a tˇr´ıdˇen´ım dle r˚uzn´ych krit´eri´ı jakoEncyclopedia of Candlestick Charts, n´ybrˇz jen samotn´ym formulov´an´ım a vyhled´an´ım vzor˚u. Povaˇzoval jsem vˇsak za vhodn´e v´yˇse uveden´e skuteˇcnosti zm´ınit a uv´est na pravou m´ıru.

4.2.2 Volba vzor˚ u

Jako demonstraˇcn´ı vzory pro schopnost rozpozn´an´ı jsem zvolil 2 pomˇernˇe z´akladn´ı a velmi zn´am´e vzory, kter´e uv´ad´ı Bulkowski [55]. Jedn´a se o vzor

”three black crows“ zn´azornˇen na obr. 4.1 a vzor

”three white soldiers“ na obr. 4.2.

Obr´azek 4.1: Ilustraˇcn´ı zobrazen´ı vzoru three black crows (pˇrevzato z [55])

Obr´azek 4.2: Ilustraˇcn´ı zobrazen´ı vzoru three white soldiers (pˇrevzato z [55])

V pˇr´ıpadˇe three black crows se jedn´a o vzor tˇr´ı po sobˇe jdouc´ıch dlouh´ych ˇcern´ych sv´ıc´ı s kr´atk´ymi st´ıny a s klesaj´ıc´ı tendenc´ıOpen aClosehodnot sv´ıc´ı, coˇz reprezentuje pokles dan´eho kurzu. Analogie je v pˇr´ıpadˇe three white soldiers zjevn´a. Pojem jako

”dlouh´ych“ ˇci

”kr´atk´ymi“

je znaˇcnˇe v´agn´ı a ani autoˇri samotn´ı jej exaktnˇe nedefinuj´ı, aˇckoliv jist´e snahy existuj´ı, viz [58, s. 215–218][67, s. 16–21]. Z tˇech tak´e budu d´ale vych´azet. Vzor three black crows d´ale budu oznaˇcovat jako vzor

”A“, vzor three white soldiers jako vzor

”B“. D´ale je vhodn´e dodat, jak t´eˇz uv´ad´ı Bulkowski, ˇze exaktn´ı podobu tˇechto vzor˚u fakticky nelze nal´ezt, vˇzdy je nutn´e

(29)

uvaˇzovat jistou vizu´aln´ı odliˇsnost. T´eˇz uv´ad´ı, ˇze u tˇechto vzor˚u staˇc´ı kontrolovat podm´ınku barvy sv´ıc´ı a d´elky jejich re´aln´ych tˇel a d´ale je moˇzn´e si vystaˇcit jen s hodnotami Open ˇci jen s hodnotami Close. ´Udajnˇe na z´akladˇe jeho pozorov´an´ı, jak´a je n´ızk´a pravdˇepodobnost, ˇze se vyskytnou tˇesnˇe za sebou 3 znaˇcnˇe nadpr˚umˇernˇe dlouh´e sv´ıce stejn´e barvy s rostouc´ı nebo klesaj´ıc´ı tendenc´ı.

4.2.3 Parametry modelu d´ılˇ c´ı sv´ıce

Pˇri vytv´aˇren´ı model˚u sv´ıce jsem ˇc´asteˇcnˇe vyˇsel z [45]. Parametry je moˇzn´e si pracovnˇe rozdˇelit na ”statick´e“ a

”dynamick´e“. V pˇr´ıpadˇe statick´ych parametr˚u se jedn´a o hodnoty, kter´e nez´avis´ı na modelac´ıch, kter´e prov´adˇej´ı r˚uzn´ı autoˇri.

Mezi statick´e parametry sv´ıce se ˇrad´ı barva sv´ıce. Ta je bez ´ujmy na obecnosti dvoj´ı: ˇcern´a a b´ıl´a. Sv´ıci typu

”doji“ – kdy hodnota Open odpov´ıd´a hodnotˇe Close a sv´ıce tedy barvu nem´a – zde s ohledem na vybran´e demonstraˇcn´ı vzory neuvaˇzuji. D´ale mezi statick´e parametry patˇr´ı numerick´e hodnoty velikosti tˇela sv´ıce, velikosti re´aln´eho tˇela sv´ıce, jako i d´elky st´ın˚u sv´ıce.

Za dynamick´e parametry je moˇzn´e povaˇzovat dˇelen´ı statick´ych parametr˚u do velikostn´ıch tˇr´ıd. D´elku re´aln´eho tˇela sv´ıce jsem rozdˇelil do 5 velikostn´ıch tˇr´ıd: XS, S, M, L, XL. Klasifikaci do konkr´etn´ı tˇr´ıdy jsem urˇcoval na z´akladˇe hodnoty p1, pod´ılu velikosti re´aln´eho tˇela sv´ıce s klouzav´ym pr˚umˇerem re´aln´eho tˇela sv´ıce za posledn´ıch N ˇcasov´ych r´amc˚u, tedy

p1 = velikost re´aln´eho tˇela sv´ıce

klouzav´y pr˚umˇer re´aln´eho tˇela sv´ıce za posledn´ıch N r´amc˚u.

Autoˇri se obecnˇe neshoduj´ı na konkr´etn´ı b´azi klouzav´eho pr˚umˇeru, jelikoˇz z´aleˇz´ı na kon- kr´etn´ıch obchodn´ıch strategi´ıch, nicm´enˇe je moˇzn´e vyj´ıt z b´aze 21 dn˚u, kter´a je v obchodn´ı komunitˇe relativnˇe bˇeˇzn´a a uzn´avan´a [68].

D´ale jsem uvaˇzoval ve 3 velikostn´ıch tˇr´ıd´ach d´elku st´ınu sv´ıce. Jedn´a se o tˇr´ıdy:S,M,L. Kla- sifikaci do konkr´etn´ı tˇr´ıdy jsem urˇcoval na z´akladˇe pod´ılup2, kter´y st´ıny tvoˇr´ı v tˇele sv´ıce neboli

p2 = velikost horn´ıho st´ınu + velikost doln´ıho st´ınu velikost tˇela sv´ıce .

Jelikoˇz parametr Volume nem´a ˇz´adn´y vliv na to, jak libovoln´a sv´ıce vypad´a, dovolil jsem si prov´est odebr´an´ı tohoto parametru. V pˇr´ıpadˇe, ˇze bych se zab´yval rozpozn´av´an´ım vzor˚u v kon- textu napˇr´ıklad ekonomick´eho pˇr´ınosu ˇci predikce v´yvoje ˇcasov´e ˇrady, pak bych jej zohledˇnovat mˇel.

4.2.4 Parametry modelu sv´ıcov´ ych vzor˚ u

Pˇri modelaci vzoru A vyjdu z n´asleduj´ıc´ıch pˇredpoklad˚u, kter´e mus´ı platit z´aroveˇn.

vzor se skl´ad´a ze tˇr´ı tˇesnˇe po sobˇe n´asleduj´ıc´ıch ˇcern´ych sv´ıc´ıCn, Cn+1, Cn+2

velikostn´ı tˇr´ıda re´aln´eho tˇela kaˇzd´e sv´ıce je XL

(30)

velikostn´ı tˇr´ıda st´ınu kaˇzd´e sv´ıce je S

pro posloupnost hodnot Open sv´ıc´ıCn, Cn+1, Cn+2 plat´ı, ˇze je klesaj´ıc´ı

Pˇri modelaci vzoru B vyjdu z n´asleduj´ıc´ıch pˇredpoklad˚u, kter´e mus´ı platit z´aroveˇn.

vzor se skl´ad´a ze tˇr´ı tˇesnˇe po sobˇe n´asleduj´ıc´ıch b´ıl´ych sv´ıc´ıCn, Cn+1, Cn+2

velikostn´ı tˇr´ıda re´aln´eho tˇela kaˇzd´e sv´ıce je XL

velikostn´ı tˇr´ıda st´ınu kaˇzd´e sv´ıce je S

pro posloupnost hodnot Open sv´ıc´ıCn, Cn+1, Cn+2 plat´ı, ˇze je rostouc´ı

4.3 Modelace sv´ıc´ı a vzor˚ u navrˇ zen´ ymi metodami

V t´eto ˇc´asti jiˇz uv´ad´ım modelace sv´ıc´ı a vzor˚u pomoc´ı konkr´etn´ıch metod spoleˇcnˇe s nume- rick´ymi hodnotami a pseudok´ody. Popsan´e metody tedy jiˇz umoˇzˇnuj´ı vyhled´av´an´ı vzor˚u.

4.3.1 Urˇ cen´ı z´ akladn´ıch parametr˚ u sv´ıc´ı

Nejdˇr´ıve pop´ıˇsi, jak jsem urˇcoval z´akladn´ı parametry d´ılˇc´ıch sv´ıc´ı. Jmenovitˇe barvu sv´ıce, d´ale velikosti horn´ıho a doln´ıho st´ınu a nakonec velikost tˇela sv´ıce, jako i velikost re´aln´eho tˇela sv´ıce.

Vˇsechny tyto parametry jsou nez´avisl´e na pouˇzit´ı metod a plat´ı tedy univerz´alnˇe. Je d˚uleˇzit´e zm´ınit, ˇze pokud chci klasifikovat velikostn´ı tˇr´ıdy jako i vzory, mus´ım nejdˇr´ıve urˇcit hodnoty uveden´ych parametr˚u.

V n´asleduj´ıc´ım pseudok´odu popisuji urˇcen´ı barvy COLOR sv´ıceC, kter´a je charakterizov´ana hodnotami OPENa CLOSE.

Pseudok´od pro pˇriˇrazen´ı barvy sv´ıce 1: if (C.OPEN>C.CLOSE)then 2: C.COLOR = BLACK

3: end if

4: if (C.OPEN<C.CLOSE)then 5: C.COLOR = WHITE

6: end if

D´ale popisuji pˇriˇrazen´ı velikost´ı st´ın˚u pro sv´ıciC, kter´a je charakterizov´ana hodnotamiOPEN, HIGH, LOW,CLOSE. Velikost horn´ıho st´ınu znaˇc´ım UPSHADOW, velikost doln´ıho st´ınu LOWSHADOW.

Pseudok´od pro pˇriˇrazen´ı velikosti st´ın˚u sv´ıce 1: if (C.OPENC.CLOSE)then

2: C.UPSHADOW = C.HIGH - C.OPEN 3: C.LOWSHADOW = C.CLOSE - C.LOW 4: end if

5: if (C.OPEN<C.CLOSE)then

6: C.UPSHADOW = C.HIGH - C.CLOSE 7: C.LOWSHADOW = C.OPEN - C.LOW 8: end if

Nakonec popisuji pˇriˇrazen´ı velikosti tˇela sv´ıce BS, d´ale velikosti re´aln´eho tˇela sv´ıce RBS a t´eˇz d´elky st´ınuSL pro sv´ıci C. Ta je opˇet charakterizov´ana hodnotami OPEN, HIGH, LOW,CLOSE.

Zkratka abspˇredstavuje absolutn´ı hodnotu.

Pseudok´od pro pˇriˇrazen´ı velikosti tˇela sv´ıce, re´aln´eho tˇela sv´ıce a d´elky st´ınu sv´ıce 1: C.BS = C.HIGH - C.LOW

(31)

2: C.RBS = abs (C.OPEN - C.CLOSE)

3: C.SL = C.UPSHADOW + C.LOWSHADOW

T´ım jsem urˇcil z´akladn´ı parametry sv´ıc´ı, d´ale jiˇz rozeberu konkr´etn´ı metody, kter´e klasifikuj´ı velikostn´ı tˇr´ıdy re´aln´eho tˇela sv´ıce a velikosti st´ınu sv´ıce.

4.3.2 Rule-based metoda

V n´asleduj´ıc´ıch pseudok´odech popisuji metody klasifikace d´elky re´aln´eho tˇela RBS sv´ıce C.

Znaˇcen´ıMA(RBS) reprezentuje klouzav´y pr˚umˇer d´elky re´aln´eho tˇela sv´ıce Cza dˇr´ıve zm´ınˇen´ych 21 dn´ı. Jedn´a se o 5 metod pro 5 velikostn´ıch tˇr´ıd.

Pseudok´od metody, kter´a urˇcuje, zdali je velikostn´ı tˇıda re´aln´eho tˇela sv´ıce XS 1: booleanisRBSTypeXS()

2: if (C.RBSC.MA(RBS)×0.1)then 3: return true

4: end if 5: return false

Pseudok´od metody, kter´a urˇcuje, zdali je velikostn´ı tˇıda re´aln´eho tˇela sv´ıce S 1: booleanisRBSTypeS()

2: if C.RBS>C.MA(RBS)×0.1andC.RBS0.65×C.MA(RBS)then 3: return true

4: end if 5: return false

Pseudok´od metody, kter´a urˇcuje, zdali je velikostn´ı tˇıda re´aln´eho tˇela sv´ıce M 1: booleanisRBSTypeM()

2: if (C.RBS>C.MA(RBS)×0.65andC.RBS1.35×C.MA(RBS)then 3: return true

4: end if 5: return false

Pseudok´od metody, kter´a urˇcuje, zdali je velikostn´ı tˇıda re´aln´eho tˇela sv´ıce L 1: booleanisRBSTypeL()

2: if (C.RBS>C.MA(RBS)×1.35andC.RBS1.55×C.MA(RBS)then 3: return true

4: end if 5: return false

Pseudok´od metody, kter´a urˇcuje, zdali je velikostn´ı tˇıda re´aln´eho tˇela sv´ıce XL 1: booleanisRBSTypeXL()

2: if (C.RBS>C.MA(RBS)×1.55)then 3: return true

4: end if 5: return false

Nyn´ı pop´ıˇsi metody klasifikace d´elky st´ınu SL pro sv´ıci C. Zˇrejmˇe plat´ı, ˇze d´elka st´ınu je d´ana souˇctem horn´ıho a doln´ıho st´ınu neboli SL = UPSHADOW + LOWSHADOW. Zkratka BS od- pov´ıd´a velikosti tˇela sv´ıceC.

Pseudok´od metody, kter´a urˇcuje, zdali je velikostn´ı tˇıda st´ınu sv´ıce S 1: booleanisSLTypeS()

2: if (C.SL / C.BS0.45)then 3: return true

4: end if 5: return false

Pseudok´od metody, kter´a urˇcuje, zdali je velikostn´ı tˇıda st´ınu sv´ıce M 1: booleanisSLTypeM()

2: if (C.SL / C.BS>0.45and C.SL / C.BS0.75)then

Odkazy

Související dokumenty

Nicm´ enˇ e k tomu, aby v´ ysledek pr´ ace mohl b´ yt zaˇ clenˇ en do v´ yvojov´ e verze PyWPS chyb´ı vyˇ reˇ sit nˇ ekolik probl´ em˚ u. V dobˇ e odevzd´ an´ı pr´

K dosaˇ zen´ı tohoto c´ıle pr´ ace vyuˇ z´ıv´ a d´ılˇ c´ıch krok˚ u, kter´ ymi jsou zejm´ ena anal´ yza a sumarizace souˇ casn´ eho stavu v oblasti vzdˇ el´ av´ an´ı

Prezentace v´ ysledk˚ u by byla pˇ rehlednˇ ejˇ s´ı, pokud by pr´ ace obsahovala kromˇ e hromadn´ eho porovn´ an´ı vˇ sech pouˇ zit´ ych kombinac´ı tak´ e v´ıce

Pr´ace se zab´yv´a srovn´an´ım tˇr´ı open–source Linux/Unix aplikac´ı Nagios, Zabbix, Big Sister slouˇz´ı- c´ıch k monitorov´an´ı stavu a sluˇzeb

Existuj´ı r˚ uzn´ e zp˚ usoby pro nakl´ ad´ an´ı s duplicitami, nicm´ enˇ e jejich z´ akladem je vˇ zdy ´ uspˇ eˇ sn´ e rozpozn´ av´ an´ı potenci´ alnˇ e

Pˇredloˇ zen´ a bakal´ aˇrsk´ a pr´ ace se zab´ yv´ a odhadov´ an´ım geometrie dvou kamer z korespondenc´ı, za situac´ı kdy se vyskytuje v´ yznamn´ e mnoˇ zstv´ı

Pˇredmˇ etem t´ eto bakal´ aˇrsk´ e pr´ ace je odvozen´ı diferenci´ aln´ıch rovnic obecn´ e teorie relativity vhodn´ ych pro jejich numerick´ e ˇreˇsen´ı.

Nad´ ale se pr´ ace bude vˇ enovat detekci nebezpeˇ cn´ ych man´ evr˚ u pomoc´ı strojov´ eho uˇ cen´ı a automatick´ eho rozpozn´ av´ an´ı....