• Nie Znaleziono Wyników

Studia w dziedzinie inwestowania na rynku akcji nale˙z ˛a do jednej z najbar-dziej rozwijanej dziedziny dr ˛a˙zenia danych. Ryzyko które ka˙zdy inwestor ponosi ka˙zdego dnia mo˙ze zosta´c minimalizowane poprzez analiz˛e archiwów notowa ´n w celu znalezienia powtarzaj ˛acych si˛e wzorców, pomocnych w podejmowaniu decyzji. Wyst˛epowanie cykli ułatwia analiz˛e giełdy przy pomocy ró˙znego rodzaju oscylatorów, sieci neuronowych itd. W celach testowych podj˛eto budow˛e narz˛e-dzia do analizy jednego z indeksów Giełda Papierów Warto´sciowych w Warszawie w celu znalezienia prawidłowo´sci i wzorców. W tym celu posłu˙zono si˛e analiz ˛a opart ˛a na wielomianach i mierze ich podobie ´nstwa [2].

Metoda Mierzenie podobie ´nstwa zachowania giełdy w oparciu o deskryptory wielok ˛atowe wykonywana jest zasadniczo w dwóch etapach:

• dane s ˛a wczytywane i transformowane (modelowane) do postaci deskryptorów wielok ˛atowych,

• wyliczany jest koszt transformacji z jednego wielok ˛ata do drugiego.

Otrzymane rezultaty okre´slaj ˛a podobie ´nstwo mi˛edzy poszczególnymi danymi. Jest ono podstaw ˛a do okre´slenia, w jakim cyklu znajduje si˛e aktualna wycena spółek i ewentualnie podj˛ecia decyzji o zakupie papierów warto´sciowych.

Me-6.3. Opis problemu i jego rozwi ˛azania toda ta, w przeciwie ´nstwie do metod korzystaj ˛acych z zaawansowanych ilo´scio-wych wska´zników probabilistycznych, jest stosunkowo prosta. Pozwala ona na przewidywanie cykli biznesowych w długim terminie, a tak˙ze jest intuicyjna dla przedsi˛ebiorców, gdy˙z uzyskane wyniki (podobie ´nstwa) mog ˛a oni skonfrontowa´c ze swoimi do´swiadczeniami i intuicjami.

6.3.1. Deskryptory wielok ˛atowe

Deskryptory wielok ˛atowe zawiera i charakteryzuje zale˙zno´sci pomi˛edzy da-nymi, tj. podobie ´nstwo dwóch deskryptorów odzwierciedla zmiane zale˙zno´sci pomi˛edzy dystrybucjami danych. Ich wybór jest podyktowany tym, i˙z dane gieł-dowe ze swej przypominaj ˛a dane losowe lub szum, st ˛ad trudno jest je zamodelo-wa´c przy pomocy funkcji liniowej lub nieliniowej.

W celu reprezentowania dystrybucji danych, deskryptor wielok ˛atowy ł ˛aczy kilka wypukłych wielok ˛atów. Pojedynczy, wypukły wielok ˛at mo˙ze by´c opisany poprzez punkt odniesienia wewn ˛atrz figury oraz N osie wskazuj ˛ace kierunki nor-malne oraz dystans od punktu odniesienia do kraw˛edzi.

Bazuj ˛ac na statystycznej charakterystyce dystrybucji danych, deskryptor wie-lok ˛atowy mo˙ze by´c uczony iteracyjnie. Punkt odniesienia C wyliczany jest za po-moc ˛a reguły C = ar g mi nPi∈P Ã X Pi∈P d i st (Pi, Pj) ! , (6.1)

gdzie Pi oraz Pj s ˛a punktami z P i d i st (Pi, Pj) jest odgległo´sci ˛a mi˛edzy Pi i Pj. Wykorzystuj ˛ac punkt C oraz losowo inicjowane osie (Ai, i = 1,..., N ), punkty P s ˛a klasteryzowaniu zgodnie z reguł ˛a:

W = ar g maxWi

Aj· (Pi−C )

||Ai||2 , (6.2)

gdzie Ajjest osi ˛a klustra Wj, gdzie j = 1,..., N . Nast˛epnie ka˙zda o´s Ajjest dopre-cyzowywany przez punkty z klastra Wj. Niech D b˛edzie wymiarem punktów da-nych i dzieli klaster na D cz˛e´sci za pomoc ˛a hiperpłaszczyzny przechodz ˛ac ˛a przez C . Nast˛epnie liczona jest ´srednia z punktów ka˙zdego podklastra i jest genero-wana płaszczyzna, która przechodzi przez wszystkie D ´srednich punktów. Usta-lany jest nowy kierunek osi na ortogonalny do hiperpłaszczyzny, a jej długo´s´c – na odległo´s´c punktu C od niej. Proces jest powtarzany dopóki osie si˛e nie zbiegaj ˛a.

6.3.2. Deformacje wielok ˛atów

W celu opisu ró˙znicy mi˛edzy dwoma deskryptorami wielok ˛atowymi, wpro-wadzone zostało poj˛ecie dystansu deformacji, oznaczaj ˛acy minimalny całkowity koszt operatorów transformuj ˛acy jeden wielok ˛at w drugi. Zostały zdefiniowane nast˛epuj ˛ace operatory:

• spłaszczaj ˛acy - usuwa k ˛at ai z listy,

• wyostrzaj ˛acy - zwi˛eksza k ˛at aioδ poprzez zmniejszenie ai −1i zwi˛ekszenie ai +1 oδ/2,

• obracaj ˛acy - obraca wielok ˛at o k ˛atδ, • rozszerzaj ˛acy - rozszerza i -t ˛a o´s oδ.

W celu uproszczenia oblicze ´n minimalnego dystansu, wielok ˛aty s ˛a reprezento-wane poprzez sekwencje k ˛atów, oraz nakładane s ˛a ograniczenia na kolejno´s´c wy-korzystywania operatorów w trakcie procesu deformowania.

6.3.3. Szacowanie dystansu deformacji

Problem szukania najkrótszej mo˙zliwej drogi od przekształcenia jednego wie-lok ˛ata do drugiego mo˙ze zosta´c sprowadzony do postaci problemu znalezienia odległo´sci mi˛edzy dwoma ci ˛agami znaków. Napisy s ˛a dzielone na podnapisy, tak, ˙ze najkrótszy mo˙zliwy dystans przej´scia mo˙ze zosta´c wyliczony bezpo´sred-nio. Nast˛epnie szukane jest globalne minimum ilo´sci potrzebnych transformacji, w celu przej´scia od jednego napisu do drugiego.

6.3.4. Zródło danych´

W celu przeprowadzania analizy, niezb˛edne jest posiadanie odpowiednich danych. B˛ed ˛a to dane indeksu giełdowego MWIG40, nowotowanego na GPW i obrazuj ˛acych kondycj˛e oraz aktualny sentyment rynku do spółek ´sredniej wiel-ko´sci. Dobór wynika st ˛ad, i˙z indeks ten lepiej obrazuje ´srednio- oraz długotermi-nowe tendencje panuj ˛ace na rynku oraz jest mniej wra˙zliwy na nastroje panuj ˛ace na giełdach ´swiatowych. Dane te przyj˛eto do zamodelowania deskryptorów wie-lok ˛atowych i przeprowadzenia oblicze ´n maj ˛acych za zadanie zweryfikowa´c sku-teczno´s´c obranej metody.

Literatura

[1] U. Fayyad, G. Piatetsky-Sharpio, P. Smyth, "From Data Mining to Knowledge Discovery in Databases", AI Magazine, 3(17), pp.:37-54, 1996.

[2] Lai Por-Shen, Hsin-Chia Fu, ˛A Polygon Description Based Similarity Measu-rement of Stock Market Behavior", iEEE 2007.

R

O Z D Z I A Ł

7

TRANSFORMACJA DANYCH ZA POMOC ˛A

SZABLONÓW

Sz. Bigos

7.1. Wst˛ep

Szablonowe przetwarzanie danych polega na dopasowywaniu i zastosowaniu wzorców do dostarczonych danych. Je´sli wyst ˛api dopasowanie, podejmowana jest odpowiednia, zdefiniowana akcja. Akcja mo˙ze obejmowa´c np. podmian˛e dopasowanego ci ˛agu, wykonanie operacji arytmetycznych, wykonanie operacji wej´scia-wyj´scia i wiele innych. Ró˙znorodno´s´c akcji i ró˙zne metody dopasowy-wania wzorców zapewniaj ˛a szerokie mo˙zliwo´sci tej metodzie przetwarzania da-nych. Mo˙ze by´c ona u˙zyta do konwersji danych pomi˛edzy formatami, przez pro-ste (a niekiedy nie) zamienienie wzorców na odpowiadaj ˛ace im ci ˛agi. Łatwe staje si˛e te˙z wyłuskiwanie danych, gdzie akcj ˛a mo˙ze by´c pozostawienie interesuj ˛acych danych w przetwarzanym ci ˛agu oraz usuni˛ecie zb˛ednych danych.

Sednem dopasowywanie wzorców jest odpowiednie zaprojektowanie szablo-nów. Je´sli dane maj ˛a by´c sensownie przetwarzane, przy tworzeniu wzorców ko-nieczna jest znajomo´sc formatu pliku z danymi wej´sciowymi. Format niezgodny z oczekiwaniami mo˙ze prowadzi´c do powstania bł˛ednych wyników. Nie wszystkie dost˛epne silniki (programy, które przetwarzaj ˛a dane z wykorzystaniem z szablo-nów) umo˙zliwiaj ˛a kontrol˛e poprawno´sci danych wej´sciowych. Jest to do´s´c oczy-wiste, poniewa˙z uniwersalno´s´c silnika stoi poniek ˛ad w sprzeczno´sci z kontrol ˛a formatu pliku wej´sciowego.

Zdefiniowanie formatu pliku wej´sciowego zazwyczaj nakłada liczne ograni-czenia na sposób zapisu danych. Jak si˛e okazuje, pomimo ogranicze ´n, pliki ze zdefiniowanym formatem mog ˛a by´c bardzo funkcjonalne. ´Swiadczy o tym cho´cby popularno´s´c i wszechobecno´s´c formatu XML.

Standardem przetwarzania plików XML jest technologia XSLT. Znajduje on za-stosowanie przy tworzeniu stron internetowych, gdzie umo˙zliwia automatyczne formatowanie wy´swietlanych danych. Umo˙zliwia równie˙z konwersj˛e danych do innych formatów opartych na XML i nie tylko.

Inn ˛a metod˛e przetwarzania danych dostarcza j˛ezyk AWK. Narz˛edziem opar-tym na opar-tym j˛ezyku jest program AWK, lub jego wersja na licencji GNU - GAWK. Program ten nie nakłada ogranicze ´n dotycz ˛acych formatów plików wej´sciowych i wyj´sciowych.

Niniejszy rozdział po´swiecono opisowi dwóch narz˛edzi przeznaczone to sza-blonowego przetwarzania danych oraz prezentacji paru ciekawszych mo˙zliwo´sci tej metody. Mimo ˙ze mechanizm przetwarzania szablonowego wydaje si˛e do´s´c proste, daje du˙ze mo˙zliwo´sci, jak cho´cby automatyczne generowanie kodu. Przy-kładem, na którym testowano ten typ przetwarzania był program do ró˙zniczko-wania symbolicznego funkcje. Opracowane rozwi ˛azanie zrealizowany z wykorzy-staniem GAWK oraz XSLT. Pozwala ono wczyta´c dane (tj. wzory) zapisane w for-macie LATEX, oraz produkuje wynik ró˙zniczkowania równie˙z w formacie LATEX.