Budování automatických obchodních systémů



Podobné dokumenty
Genetické programování 3. část

Genetické programování

Evoluční výpočetní techniky (EVT)

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma

Navrženy v 60. letech jako experimentální optimalizační metoda. Velice rychlá s dobrou podporou teorie

Genetické algoritmy. Informační a komunikační technologie ve zdravotnictví

TRADESTATION A ÚSPĚŠNÝ ALGORITMICKÝ TRADING. Ing. Petr Tmej petr.tmej@aostrading.cz

Evoluční algoritmy. Podmínka zastavení počet iterací kvalita nejlepšího jedince v populaci změna kvality nejlepšího jedince mezi iteracemi

PŘEDNÁŠKA 03 OPTIMALIZAČNÍ METODY Optimization methods

SPECIFICKÝCH MIKROPROGRAMOVÝCH ARCHITEKTUR

5.5 Evoluční algoritmy

Pokročilé investiční strategie v prostředí finančních trhů

ití empirických modelů při i optimalizaci procesu mokré granulace léčivl ková SVK ÚOT

Metaheuristiky s populacemi

Obchodní systém. Kvalitní obchodní systém odděluje profesionály od amatérů. Dává nám výhodu před ostatními (statistická výhoda = edge)

Akciové. investování.

Technická analýza a AOS Prezentace pro Českou asociaci treasury, Praha,

A0M33EOA: Evoluční optimalizační algoritmy

ANALYTICKÉ PROGRAMOVÁNÍ

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ TECHNICKÁ ANALÝZA DIPLOMOVÁ PRÁCE FAKULTA PODNIKATELSKÁ ÚSTAV INFORMATIKY BRNO UNIVERSITY OF TECHNOLOGY

Příručka k měsíčním zprávám ING fondů

Masarykova univerzita. Fakulta informatiky. Evoluce pohybu

Moderní systémy pro získávání znalostí z informací a dat

SNIŽOVÁNÍ RIZIKA POKROČILÉ INVESTIČNÍ STRATEGIE

DSS a De Novo programming


Ing. Alena Šafrová Drášilová, Ph.D.

Jak se matematika poučila v biologii

Inovace studia molekulární a buněčné biologie reg. č. CZ.1.07/2.2.00/

Vyhodnocení cenového vývoje drahých kovů na světových burzách v období let

dokumentu: Proceedings of 27th International Conference Mathematical Methods in

Genetické algoritmy. Vysoká škola ekonomická Praha. Tato prezentace je k dispozici na:


Analysis of the personal average tax rate evolution at the selected taxpayers in the Czech Republic during the years of

NÁVRH A REALIZACE TRADING STRATEGIÍ NA BÁZI STROJOVÉHO UČENÍ S POMOCÍ MATLABU

Užití systému Matlab při optimalizaci intenzity tepelného záření na povrchu formy

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

Ing. Ondřej Audolenský

UKÁZKA VYUŽITÍ PROGRAMU WINQSB PŘI VÝUCE KVANTITATIVNÍCH METOD V ROZHODOVÁNÍ V DISTANČNÍ FORMĚ STUDIA

Obchodujeme systém. RSIcross. Martin Kysela

Pokročilé operace s obrazem

1. Úvod do genetických algoritmů (GA)

Návrh a implementace algoritmů pro adaptivní řízení průmyslových robotů

KOMODITNÍ SPREADY. diskréční obchodování s komoditami jinak a profitabilně. Romana Křížová CEO, TradeandFinance.eu, s.r.o.

Obsah přednášky Jaká asi bude chyba modelu na nových datech?

Principy oceňování a value management. Úvod do problematiky

Swarm Intelligence. Moderní metody optimalizace 1

Karta předmětu prezenční studium

NÁVRH AUTOMATICKÉHO OBCHODNÍHO SYSTÉMU PRO DROBNÉHO INVESTORA

GLOBÁLNÍ OPTIMALIZACE S VYUŽITÍM SOFTWARU MATHEMATICA

FOREX. Jana Horáková. (sem. sk. středa 8,30-10,00)

Příručka k měsíčním zprávám ING fondů

FAKULTA APLIKOVANÝCH VĚD KATEDRA MATEMATIKY. DIPLOMOVÁ PRÁCE Tvorba a optimalizace automatického obchodního systému

Geneticky vyvíjené strategie Egyptská hra SENET

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

Genetické algoritmy a jejich praktické využití

Hardy-Weinbergův zákon - cvičení

Smallfishtrading.com. Forex Trading Room Pravidla

Změna hodnoty pozice v důsledku změn tržních cen.

Unstructured data pre-processing using Snowball language

Metodický list - Finanční deriváty

Popis zobrazení pomocí fuzzy logiky

VYUŽITÍ METOD PŘÍMÉHO HLEDÁNÍ OPTIMA PŘI PREDIKTIVNÍM ŘÍZENÍ

OSA. maximalizace minimalizace 1/22

Profilování vzorků heroinu s využitím vícerozměrné statistické analýzy

Ing. Tomáš MAUDER prof. Ing. František KAVIČKA, CSc. doc. Ing. Josef ŠTĚTINA, Ph.D.

1 Úvod do celočíselné lineární optimalizace

VYSOKÁ ŠKOLA HOTELOVÁ V PRAZE 8, SPOL. S R. O.

VLIV POČTU NESHODNÝCH VZORKŮ PŘI VYHODNOCOVÁNÍ PŘIJATELNOSTI SYSTÉMU MĚŘENÍ METODOU KŘÍŽOVÝCH TABULEK

Trh SPY, 30 dnů do expirace (vstup středa), delta min. 20. V grafu v tuto chvíli nejsou zahrnuty komise.

GENETICKÉ UČENÍ NEURONOVÝCH SÍTÍ GENETIC LEARNING OF NEURAL NETWORKS. Roman Biskup, Anna Čermáková

HIGH-FREQUENCY TRADING

Uni- and multi-dimensional parametric tests for comparison of sample results

VYHODNOCENÍ UDRŽITELNÉHO ROZVOJE V ÚZEMNÍM PLÁNOVÁNÍ EVALUATION OF SUSTAINABLE DEVELOPEMENT IN LANDSCAPE PLANNING

FAKULTA INFORMAČNÍCH TECHNOLOGIÍ

Evolučníalgoritmy. Dále rozšiřována, zde uvedeme notaci a algoritmy vznikléna katedře mechaniky, Fakulty stavební ČVUT. Moderní metody optimalizace 1

Channel EA: Nastavitelné hodnoty: Take Profit, SL, počet bodů, o které má být trend proražen, Lot size

5 Informace o aspiračních úrovních kritérií

Umělá inteligence aneb co už není sci -fi

Emergence chování robotických agentů: neuroevoluce

Biologicky inspirované výpočty. Schématické rozdělení problematiky a výuky

TRH PRÁCE STARŠÍ PRACOVNÍ SÍLY A POLITIKA ZAMĚSTNANOSTI

eské vysoké ení technické Praze Fakulta elektrotechnická Katedra kybernetiky

Číselné charakteristiky

Ekonomické aspekty statistické regulace pro vysoce způsobilé procesy. Kateřina Brodecká

Změna hodnoty pozice v důsledku změn tržních cen.

Analýza dat pomocí systému Weka, Rapid miner a Enterprise miner

Algoritmizace diskrétních. Ing. Michal Dorda, Ph.D.

MetaTrader 4 Builder. X-Trade Brokers DM S.A., organizační složka. Vzorové strategie. X-Trade Brokers DM S.A., organizační složka 1/9

Univerzita Pardubice Fakulta ekonomicko-správní. Návrh a realizace systému pro genetické programování Bc. Petr Sotona

Gramatická evoluce a softwarový projekt AGE

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

PLATFORMA SEASONALGO. bezkonkurenční nástroj pro obchodování komodit a futures spreadů na bázi sezónnosti

Použití technik UI v algoritmickém obchodování II

NÁSTROJE A TECHNIKY PROJEKTOVÉHO MANAGEMENTU. Projektová dekompozice

BARIÉRY VSTUPU V ODVĚTVÍ PRODUKCE JABLEK V ČESKÉ REPUBLICE BARRIERS TO ENTRY IN THE CZECH APPLES PRODUCTION INDUSTRY.

TEORETICKÉ PŘEDPOKLADY Garantovaných produktů

analýzy dat v oboru Matematická biologie

Neuronové časové řady (ANN-TS)

Postupy při hodnocení variant a výběru nejvhodnějšího řešení. Šimon Kovář Katedra textilních a jednoúčelových strojů

Transkript:

Budování automatických obchodních systémů Building automated trading systems Radek Vostřez Abstrakt Účelem tvorby každého obchodního systému je konzistentní ziskovost za akceptovatelného rizika. Mechanický přístup k obchodování na burze znamená, že pokyny k odeslání obchodních příkazů může generovat automatický obchodní systém (AOS). Takovéto systémy reprezentují soubor obchodních pravidel ve formě programu. Tento styl obchodování odstraňuje z rozhodovací situace lidský faktor použitím tvrdých metod. Cílem článku je na základě metodického postupu navrhnout ziskový AOS, který bude optimalizován genetickými algoritmy. Tyto výsledky budou využity jako základ pro návrh optimalizace zařazování a vyřazovaní AOS s ohledem na životnost AOS. Klíčová slova Automatický obchodní systém, křivka equity, profit faktor, genetické algoritmy, genetické programování Abstract The purpose of the creation of any trading system is a consistent profitability for acceptable risk. Mechanical approach to trading on a stock market means that instructions for sending trading orders may be generated by an automatic trading system (ATS). These systems represent business rules in a form of a program. This style of trading eliminates the human factor using the hard methods in decision-making situations. The aim of the article is based on a methodical process to design a profitable ATS, which will be optimized by genetic algorithms. These results will be used as a basis for optimization research to put into operation and discard ATS with respect to ATS life cycle. Key Words Automated trading system, equity curve, profit factor, genetic algorithms, genetic programming

ÚVOD Automatický obchodní systém je počítačový obchodní program, který automaticky obchoduje na burze. Tento obchodní systém (OS) se řadí mezi mechanické přístupy k obchodování. Oproti diskréčnímu přístupu k obchodování, kde trader obchoduje na základě subjektivního rozhodnutí, je mechanický přístup algoritmický (Durenard, 2013). Taleb (2011) popisuje prostředí trhů jako škálovatelné, ve kterém podléhá distribuce zisků mocninným zákonům. V tomto prostředí vítěz bere skoro vše. Tyto zákonitosti poprvé popsal Vilfredo Pareto. Jak uvádí Jankovsky (2007) a Plummer (2008), pravděpodobnost úspěchu obchodováním je velice malá. Připustíme-li, že distribuce zisků z obchodování na trhu podléhá mocninným zákonům, tak design AOS má klíčovou roli v ziskovosti. Obchoduje-li trader diskréčně, tak OS používá jako systém pro podporu rozhodování. U této strategie je obchodník nejvíce náchylný k negativním psychickým vlivům (Douglas, 2009). Důvodem chybování jsou emoce, které jsou motivující energií a podstatou naší existence (Wilber, 2000; Le Bon, 1994). Nejvýznamnějšími emocemi, z pohledu obchodování, jsou strach a chamtivost, které mohou zásadně pokřivovat logiku vnímání informací a zvyšovat pravděpodobnost chybného rozhodnutí. Obchodováním AOS se posouvá rozhodování obchodníka z rozhodování nad jednotlivými obchody do rozhodování nad chováním AOS jako celku (Prado, 2008). Základním předpokladem úspěšného AOS jsou kvalitní vstupní data, z nichž je AOS budován. Možnosti jak navrhnout AOS jsou různé, např. vyhledávání informací z textu, aplikací neuronových sítí, evolučních algoritmů, fuzzy logiky aj. (Deboeck, 1994; Jankovsky, 2007; Mitchel, 2002; Mitsuo, 1997; Prado, 2008). METODY Genetické algoritmy Genetické algoritmy (GA) jsou stochastické optimalizační metody založené na darwinovském principu evoluce. Genetické algoritmy se zařazují mezi hlavní metodologie evolučních algoritmů. Tuto metodu představil v polovině 70. let J. Holland (Holland 1992). Cílem genetických algoritmů je napodobit přírodní procesy. Původními kořeny, z nichž vznikla celá oblast evolučních algoritmů, je datována do roku 1859, kdy Charles Darwin poprvé publikoval svoji knihu O vzniku druhů přirozeným výběrem čili zachováním vhodných odrůd v boji o život. Darwinova myšlenka, že populace živočichů a rostlin se vyvíjela po mnoho generací podle principu přirozeného výběru a přežití těch nejschopnějších (Mitsuo 1997). Hledání optimálního (nebo alespoň dostatečně vyhovujícího) řešení probíhá formou soutěže v rámci populace, která postupně konverguje k řešení. K tomu, aby bylo možné posoudit, kteří členové populace mají větší šanci podílet se na dalším vývoji hledaného řešení, se používá pojem fitness. Fitness vyjadřuje ohodnocení míry kvality, vhodnosti, síly či reprodukční schopnosti individua. Jedinci s lepším ohodnocením (vyšší hodnotou fitness) mají přirozeně větší šanci přežít déle a podílet se na vytváření následující generace. Jedinec (fenotyp) je reprezentován chromozomem (genotyp). Genotyp se dále dělí na jednotlivé geny, které jsou lineárně uspořádány, tudíž i-tý gen dvou chromozomů stejného typu, reprezentuje stejnou charakteristiku v obou chromozomech. Aby mohl gen určovat příslušnou vlastnost, musí mít možnost nabývat různých hodnot, neboli musí se nacházet v různých stavech. Tyto stavy se nazývají alely (Hynek, 2008).

Reprezentace jedince chromozomem má pevně definovanou délku a pevně určené uspořádání genů. Je-li sestavena vhodná reprezentace jedinců, tak prvním úkolem je náhodně nebo pomocí heuristiky vygenerovat počáteční populaci (Mitsuo, 1997). Z inicializované populace je třeba stanovit, jakým způsobem bude vybrán nejvhodnější jedinec za účelem reprodukce. V procesu selekce mají jedinci s vyšší funkcí fitness větší pravděpodobnost přežití. Mezi nejčastěji používané metody selekce patří mechanizmus pořadí, ruletový a turnajový (Mitchel, 2002). Pro vytvoření potomků z právě vybraných rodičovských jedinců, jsou obecně používány dva základní genetické operátory a těmi jsou křížení a mutace. Technik křížení existuje celá řada. Mezi základní patří nejjednodušší technika jednobodová, k-bodová a uniformní. Jednobodové i k-bodové křížení zachovává s větší pravděpodobností v celistvější podobě vlastnosti rodičů. Zatímco uniformní křížení má spíše rozkladný vliv. Přesto lze nalézt konkrétní aplikace, kde je možné uniformní křížení s výhodou použít (Hynek, 2008). Právě vytvoření jedinci mohou být dále vystaveni působení operátoru mutace. Tento operátor způsobuje nenadálé změny v genetické výbavě. Mutace hraje v procesu evoluce jedinců důležitou roli, protože brání příliš rychlému zjednotvárnění vlastností v rámci populace. Tím by mohlo dojít ke ztrátě potenciálně užitečného genetického materiálu a předčasné konvergenci populace (Hynek, 2008; Smejkal, 2010). Po provedení selekce, křížení a mutace, je možné přejít k vytvoření zcela nové populace neboli další generace. Nejjednodušším způsobem je generační strategie, která původní populaci nechá vymřít a tím ztratí stará populace P (0) jakýkoliv význam. Následně je nová populace P (1) vytvořena z množiny potomků, která se stává populací novou. Tímto byl dokončen přechod od jedné populace k populaci druhé a celý cyklus je opakován tak dlouho, dokud nebude splněna ukončovací podmínka. Touto podmínkou může být například maximální počet generací, po který je v populaci umožněn její vývoj, nalezení uspokojivého řešení, nedostatečná změna nejlepšího dosud nalezeného řešení aj. (Hynek, 2008). Protože tento evoluční proces v sobě zahrnuje značný díl náhodnosti, je každý běh příslušného algoritmu jedinečný a odvíjí se odlišným způsobem. Z tohoto důvodu se v některých případech může stát, že celá populace v procesu vývoje zdegeneruje a nejlepší jedinec bude reprezentovat pouze lokální optimum (Mitchel, 2002). Genetické programování Genetické programování (GP) je jednou z disciplín evolučních algoritmů. Vychází z GA a používá stejnou terminologii. GP bylo představeno na konci 80. let minulého století prof. J. R. Kozou (Koza 1992; 1994; Koza a kol., 1999). Prof. Koza vytvořil metodu, pomocí níž se snažil o automatickou tvorbu programů řešící symbolickou regresi. U Problémů symbolické regrese, je pomocí adaptivního algoritmu hledán předpis funkce podle trénovací množiny. Tu tvoří vstupní a výstupní hodnoty hledané funkce. Aby bylo možné objektivně posoudit dosažené výsledky výpočtů realizovaných GP a porovnat je s výsledky dosaženými člověkem, navrhl prof. J. R. Koza osm kritérií konkurenceschopnosti (Koza a kol. 1999). Kritéria vypovídají o vhodnosti navrženého řešení vůči řešení navrženého člověkem. Z těchto kritérií musí být splněno alespoň jedno, aby výsledek navržený GP algoritmem bylo možné považovat za konkurenceschopný výsledku navrženému člověkem (Koza, 1994).

Obrázek č. 1: Stromová reprezentace (User's Guide 2013) Hlavním rozdílem GP oproti GA je rozdílná reprezentace datové struktury, představující jedince, se kterou algoritmus manipuluje. GA obvykle pracují s lineárními datovými strukturami fixní délky. Oproti tomu GP operuje s populací hierarchicky strukturovaných jedinců, kteří reprezentují počítačové programy. Na Obrázku č. 1 je zobrazena vstupní podmínka pro otevření obchodu a její stromová reprezentace. Stromové datové struktury vycházejí z obecnějších struktur grafů (Miller, 1999). Metoda výběru kompromisní varianty Metody založené na práci s nominální informací vyjadřují důležitost aspiračních úrovní kritérií. Tyto metody lze použít, je-li známa nominální informace aspirační hodnoty kritérií a kardinální ohodnocení variant podle jednotlivých kritérií (Brožová a kol., 2003). Metody pracují na bázi porovnávání kriteriálních hodnot všech variant s aspiračními úrovněmi všech kritérií. Obvykle rozdělí množinu variant na varianty neakceptovatelné a akceptovatelné. Při dostatečném zpřísnění aspiračních úrovní může být pouze jediná varianta akceptovatelná. Tato varianta je nazývána jako kompromisní varianta. Při použití velmi přísných aspiračních úrovních nemusí být akceptovatelná žádná varianta. Poté je potřeba aspirační úrovně některých kritérií uvolnit. V případě konjunktivní metody akceptujeme pouze varianty, které splňují všechny aspirační úrovně M = {a i y ij je lepší než z j pro všechna j = 1,, n} (1) kde zj je minimální požadované hodnocení varianty podle j-tého kritéria (Brožová et al. 2003). EXPERIMENTÁLNÍ AOS Předmětem experimentu je budování ziskového AOS podle následující metodiky. Princip ziskovosti AOS bude založen na výpočtu hodnoty profit faktoru, neboli podílu celkového čistého zisku a celkové ztrátě. Profit faktor u ziskového AOS musí mít hodnotu vyšší než 1. Ziskový AOS má křivku equity rostoucí, neboli grafická reprezentace hodnoty obchodního účtu má rostoucí tendenci. Problém návrhu AOS můžeme řadit mezi špatně strukturované rozhodovací problémy. Problém nemá analyticky optimální řešení a mezi prvky existují složité vazby. Modelování ziskového AOS se uskutečňuje pomocí GP. Do modelu vstupuje velké množství proměnných a rozsáhlý datový soubor. Pro potřeby modelování AOS jsou použity denní historické ceny (při otevření trhu; minimum dne; maximum dne; při uzavření trhu)

indexu Russell 2000 1 za období od 1. 3. 1995 do 28. 2. 2011. Tato data jsou volně dostupná (Google Finance, 2014). AOS jsou budovány v programu Adaptrade Builder 1.5. Testování vlastností AOS je analyzováno v programu Multicharts 8.5. Obrázek č. 2: Metodické schéma experimentálního AOS Základní schéma metodického postupu je na Obrázku č. 2. Nastavení optimalizace bude rozděleno na fázi výchozí a redukovanou. V první fázi výchozího nastavení budou generovány tři AOS: 1) AOS s nižším prvkem náhodnosti; 2) AOS s vyšším prvkem náhodnosti; 3) náhodně nastaveného AOS. Rozdíl mezi nastaveními s nižším prvkem náhodnosti a vyšším prvkem náhodnosti bude v odlišném nastavení pravděpodobnosti křížení a mutace při výpočtu GA. Náhodné nastavení reprezentuje nastavení optimalizace genetických algoritmů laikem. Druhá fáze redukovaného nastavení bude přistupovat k výsledkům z výchozího nastavení inkrementálně a dále je bude větvit rozdílným nastavením money managementu na konzervativní a agresivní. Modelování AOS bude provedeno v programu Adaptrade Builder 1.5 pomocí GP. Výstupem z budování budou optimalizované AOS ve formě programu. Zdrojový kód AOS bude v programovacím jazyku EasyLanguage. V programu Multicharts 8.5 budou vygenerované AOS backtestovány. Backtest, neboli ověřování funkčnosti OS na historických datech, bude proveden na datech, ze kterých byly AOS budovány. To potvrdí nebo vyvrátí předpoklad, že AOS jsou ziskové, alespoň na těchto datech. Po provedení backtestu budou ztrátové AOS vyřazeny. Nevyřazené AOS budou otestovány v paper tradingu. Paper trading bude probíhat na datech, která nebyla použita do fáze budování AOS. Důvodem provedení testování bude získání kvalitnějších informací o vlastnostech AOS. Na základě výstupů z paper tradingu bude proveden test robustnosti. Test robustnosti bude mít formu výběru kompromisní varianty na základě aplikace konjunktivního přístupu aspiračních úrovní. Kompromisní varianta bude považována za nejlepší AOS z vybudovaných. Nastavení AOS Výchozí nastavení V této fázi je nastavení GP výpočetně velmi složité. Počet proměnných vstupujících do modelu GP je více než 50. Vstupní data do optimalizace mají pět sloupců (datum, open, high, low a 1 Akciový index složený z 2 000 akciových titulů obchodovaných v USA, které jsou označovány jako smallcap.

close) a 4 069 řádků. Vzhledem k časové náročnosti výpočtů byl nastaven počet jedinců v populaci na 1 000 a počet generací na 100. AOS s nižším prvkem náhodnosti Nastavení tohoto AOS je popsáno úplným výčtem vstupních parametrů. U ostatních AOS jsou popsány pouze rozdíly vůči tomuto nastavení. Nastavení genetických algoritmů pro výchozí nastavení, které bylo generováno s nižší náhodností, bylo v programu Adaptrade Builder následující: testovanými daty byly denní hodnoty Open, High, Low a Close za období 1. 1. 1995 až do 28. 2. 2011 indexu Russell 2000; point value byl 100 $; celkové náklady za 1 obchod byly 5 $ (většina brokerů nemá vyšší); AOS byly budovány z 80 % in sample a 20 % out of sample; nastavení kompatibility zdrojového kódu bylo pro Multicharts a TradeStation 6; počáteční výše křivky equity byla 10 000 $ (v optimalizaci nebyl uvažován margin); potenciální typy obchodů mohly být na short a long stranu; vstupy a výstupy z trhu nebyly podmíněny překročením podmínek, ale byly obchodovány již při jejich dosažení; počet obchodů za jeden den byl limitován na 1; vstoupit do nového obchodu bylo možné až po ukončení předešlého; výběr metody i hodnota parametru position sizingu byla předmětem optimalizace; pro první generaci byla nastavena metoda position sizingu na fixed fractional s hodnotou 3 %; minimální počet obchodovaných kontraktů byl 1; maximální počet obchodovaných kontraktů byl 100; násobek při zvyšování a snižování počtu kontraktů byl 1; ochranný stoplos byl aplikován již při vstupu do obchodu; výše stoplosu mohla být v intervalu 200 $ až 10 000 $; výše stoplosu vůči křivce equity mohla být v intervalu 0,5 % až 10 %; pro obchodování akceptovatelná průměrná výška úsečky (ATR) mohla být v intervalu 0,5 až 5; výše hodnot cenových paternů mohla být v intervalu 1 až 20; výše hodnot indikátorů mohla být v intervalu 1 až 150; indikátory, které mohly vstoupit do OS, byly: Simple Mov Ave, Exp Mov Ave, Weighter Mov Ave, Triangular Mov Ave, MACD, TRIX, Momentum, Rate of Change, Fast K Stochastic, Fast D Stochastic, Slow D Stochastic, RSI, CCI, DI- /DI+, DMI, ADX, Ave True Range, True Range, Standard Deviation, Bollinger Band, Keltner Channel, Lowest, Highest, Chaiken, Crosses Above/Below, Price Patterns, Day of Week a Absolute Value; obchodní příkazy, které mohly vstoupit do OS, jsou: Enter at Market, Enter on Stop (Breakout), Enter at Limit, Exit at Target, Trailing Stop Exit, Exit at N Bars, Protective Stop ($), Protectiv Stop (%), Protectiv ATR, Exit at Market a Exit End-of-Day; fitness funkce byla složena z maximalizace čistého zisku, maximalizace koeficientu korelace, maximalizace statistické významnosti; mezi jednotlivými prvky fitness funkce nebyla žádná preference; vygenerovaný OS musel mít koeficient korelace alespoň 0,95 a statistická významnost alespoň 95 %; počet jedinců v generaci byl 1 000; počet generací byl 100;

pravděpodobnost křížení jedinců byla 80 %; pravděpodobnost mutace jedince byla 10 %; počet jedinců potřebných ke křížení byl 2; komplexivita podmínek (Tree Depth) byla 2. AOS s vyšším prvkem náhodnosti Nastavení genetických algoritmů AOS s vyšším prvkem náhodnosti bylo, až na některé rozdíly, ekvivalentní jako výchozí nastavení s nižším prvkem náhodnosti. Rozdíly mezi výchozí nastavení s nižším prvkem náhodnosti a vyšším prvkem náhodnosti byly: pravděpodobnost křížení jedinců byla snížena na 75 %; pravděpodobnost mutace jedince byla zvýšena na 25 %. Náhodné nastavení Výchozí nastavení u náhodně nastavených genetických algoritmů mělo většinu společných charakteristik s nastavením, které obsahuje menší prvek náhodnosti. Rozdíly v nastavení byly: position sizing metoda byla pevně zvolena na Fixed size; výše hodnot cenových paternů mohla být v intervalu 1 až 30; výše hodnot indikátorů mohla být v intervalu 1 až 100; pravděpodobnost křížení jedinců byla zvýšena na 90 %; pravděpodobnost mutace jedince byla snížena na 5 %; počet jedinců potřebných ke křížení byl 3; komplexivita podmínek (Tree Depth) byla 3. Redukované nastavení Druhá fáze optimalizace byla fáze redukovaného nastavení. Redukované nastavení přistupovalo k optimalizaci inkrementálně. Vstupní data byla pro obě fáze shodná. V tomto kroku byly postupně vybrány všechny AOS z výchozího nastavení a větveny agresivním a konzervativním směrem. Rozdíl výchozího nastavení a redukovaného byl v rozdílu počtu jedinců v populaci, počtu generací a velikosti risku na jeden obchod oproti velikosti křivky equity. Důvodem snížení počtu jedinců v populaci na 500 a počtu generací na 10 bylo snížení výpočetní složitosti. Určení směru agresivního a konzervativního bylo řízeno money managementem. V konzervativním směru byl nastaven money management, neboli interval pro riskování části obchodního účtu, na 0,5 % až 3% peněz obchodního účtu na jeden obchod. Při tomto nastavení by došlo k proinvestování účtu, pokud by bylo minimálně 33 obchodů v řadě ztrátových. Směr agresivní měl nastaven interval pro riskování na 0,5 % až 5 % peněz obchodního účtu na jeden obchod, což odpovídá garanci pro minimálně 20 ztrátových obchodů v řadě. Modelování AOS Schéma modelování AOS je na Obrázku č. 3. Šedé buňky reprezentují vstupující data do modelu. Optimalizace bude vycházet jak z dat In Sample, tak i Out of Sample. Výstupem z optimalizace budou AOS jako program.

Obrázek č. 3: Schéma budování AOS (User's Guide 2013) Technické indikátory Vstupní podmínky Nastavení GA Generovaní AOS Reset populace Modifikování populace Vyhodnocení AOS Cíle optimalizace Out-of-Sample vyhodnocení Historická data Russell 2000 Finální AOS Backtest AOS Podle definovaného nastavení GA bylo provedeno devět optimalizací. Na těchto AOS byl proveden backtest. Vstupními daty pro backtest byly denní hodnoty cen indexu Russell 2000 v období od 1. 3. 1995 do 28. 2. 2011. Velikost obchodního účtu byla nastavena na začátku backtestu na výši 10 000 $. Při backtestu OS nebyla brána v potaz výše poplatků za provedení obchodu. OS AOS 1 - výchozí nastavení nižší náhodnost AOS 2 - redukované nastavení nižší náhodnost konzervativní AOS 3 - redukované nastavení nižší náhodnost agresivní AOS 4 - výchozí nastavení vyšší náhodnost AOS 5 - redukované nastavení vyšší náhodnost konzervativní AOS 6 - redukované nastavení vyšší náhodnost agresivní AOS 7 - výchozí nastavení náhodné AOS 8 - redukované nastavení náhodné konzervativní AOS 9 - redukované nastavení náhodné agresivní Tabulka č. 1: Souhrnné výsledky backtestu AOS Celkový Max Čistý profit Profit počet drawdown ($) faktor obchodů (%) Profitabilita (%) 4 542 869 807,07 3,12-3,49 57,00 6 180 538 617,00 1,62-4,71 43,69 6 180 882 853,29 3,24-3,33 43,69 3 781 406 583,85 1,76-4,35 49,78 4 192 467 160,88 1,85-4,76 49,50 4 210 477 155,98 1,85-4,72 49,29 4 000 544 130,73 1,88-4,73 62,23 6 180 538 617,00 1,62-4,71 43,69 3 951 557 250,54 1,94-4,33 62,54

Základní ekonomické vlastnosti AOS vycházející z backtestu jsou uvedeny v Tabulce č. 1Chyba! Nenalezen zdroj odkazů.. V backtestu jsou AOS hodnoceny za dané období podle celkového počtu obchodů, čistého profitu, maximálního drawdownu a profitability. Vlastnosti AOS v backtestu jsou následující: Celkový počet obchodů 6 180 obchodů je nejvyšší počet obchodů exekuovaných podle AOS. Tento počet obchodů mají shodně 2. AOS, 3. AOS a 8. AOS. Nejmenší počet 3 781 obchodů má 4. AOS. Šest z devíti AOS, mají celkový počet obchodů v intervalu od 3 781 do 4 542. Profit ($) AOS v backtestu začínaly s obchodním účtem o velikosti 10 000 $. Nejvyšší zhodnocení 882 853,29 $ dosáhl 3. AOS. Nejnižší zhodnocení 406 583,29 $ má 4. AOS. Tento AOS zobchodoval v daném období nejméně obchodů. Dva AOS překonaly hranici 850 000 $ a zbylé se pohybují v intervalu od 406 583,29 $ do 557 250,54 $. Profit faktor Nejvyšší profit faktor 3,24 má 3. AOS, který měl zároveň nejvyšší zisk. Druhý nejvyšší profit faktor 3,12 má AOS s druhým nejvyšším zhodnocením. Zbylé AOS se pohybují v intervalu 1,62 až 1,94. Maximální drawdown V tomto kritériu jsou AOS vcelku vyrovnané. Nejnižší drawdown je 3,33 % účtu a nejvyšší je 4,76 % účtu. 3. AOS s nejvyšším zhodnocením má nejnižší drawdown. Profitabilita Nejvyšší profitabilitu 62,54 % má 9. AOS a nejnižší 43,69 % mají 2. AOS, 3. AOS, 8. AOS. 3. AOS má s nejvyšším zhodnocením kapitálu nejnižší profitabilitu. Maximalizace profitability nemusí vést k nejvyšším ziskům, neboť i AOS s nižší profitabilitou při vysokém profit faktoru může dosáhnout výrazně lepších výsledků než AOS s vysokou profitabilitou. Všech 9 backtestovaných AOS má profit faktor vyšší jak 1. Všechny AOS lze považovat za ziskové. V rámci backtestu nebyl vyřazen žádný AOS. Paper trading AOS Všechny AOS vykázaly v backtestu ziskovost, tudíž byly zařazeny do paper tradingu. Vlastnosti AOS z backtestu nelze očekávat při reálném nasazení, protože na těchto datech byly AOS optimalizovány. Důvodem provedení paper tradingu je kvalitnější přiblížení vlastností AOS, pokud by byly nasazeny do obchodování. Paper trading byl proveden na datech, které již nebyly součástí optimalizace OS. Vstupními daty byly denní hodnoty cen indexu Russell 2000 v období od 1. 3. 2011 do 28. 2. 2013. Výpočet zisku sníženého o výše poplatků byl počítán jako rozdíl mezi ziskem bez poplatků a počtem všech obchodů násobený 5 $ (běžná výše poplatků za jeden obchod). V rámci paper tradingu nebyl uvažován skluz mezi požadovaným a skutečně získaným plněním. Bohužel nezahrnutí slippage do testu zkresluje vlastnosti OS mezi paper tradingem a reálným obchodováním. Základní informace z paper tradingu jsou uvedeny v Tabulce č. 2, kde je proveden test robustnosti. Vlastnosti nejlepšího AOS z paper tradingu jsou uvedeny v kapitole Výsledky experimentu. Test robustnosti AOS Na základě výsledků backtestu a paper tradingu byl trader postaven před rozhodovací problém: Je ve výčtu testovaných AOS takový systém, který splňuje kritéria pro nasazení na živé obchodování? Z pohledu teorie rozhodování je možné test robustnosti řešit konjunktivní metodou aspiračních úrovní. Cílem testu bylo zjistit, zda analyzované AOS byly podle traderem stanovených kritérií robustní a který je z nich nejlepší. Kritéria a jejich ohodnocení pro test

robustnosti jsou individuální. Každý trader má jinou hranici, kdy je již ochoten riskovat peníze obchodováním. V rámci experimentu jsou použity aspirační úrovně vycházející z nastavení autorem. Volba kritérií a jejich hladin je obecně individuální. Vyjadřují traderův postoj k riziku. Experimentální aspirační úrovně jsou následující: počet obchodů - v backtestu >= 4000 a v paper tradingu >= 500; drawdown v paper tradingu maximálně 15 %; zisk průměrného obchodu v paper tradingu >= 150 $ profit faktor v paper tradingu >= 1,5; profit v paper tradingu >= 72 000 $. V Tabulce č. 2 je znázorněn výsledek testu robustnosti. Světle šedé zvýraznění buňky označuje splnění aspirační úrovně dané varianty podle kritéria a tmavě šedé zvýraznění buňky označuje opak. Testem robustnosti prošla pouze 1 varianta. Jedná se o 7. AOS budovaný ve výchozí fázi na základě náhodného nastavení. Tento AOS je možné považovat za kompromisní variantu. Ostatní varianty nejčastěji nesplňují aspirační úroveň u kritérií drawdown a zisk z průměrného obchodu. OS AOS 1 - výchozí nastavení nižší náhodnost AOS 2 - redukované nastavení nižší náhodnost konzervativní AOS 3 - redukované nastavení nižší náhodnost agresivní AOS 4 - výchozí nastavení vyšší náhodnost AOS 5 - redukované nastavení vyšší náhodnost konzervativní AOS 6 - redukované nastavení vyšší náhodnost agresivní AOS 7 - výchozí nastavení náhodné AOS 8 - redukované nastavení náhodné konzervativní AOS 9 - redukované nastavení náhodné agresivní Tabulka č. 2: Testování robustnosti AOS Počet obchodů backtest Počet obchodů paper trading Drawdown (%) Zisk z průměrného obchodu ($) Profit faktor Profit ($) 4 542 424-45,41 138 1,68 56 524 6 180 473-15,75 149 1,78 68 205 6 180 464-31,00 138 1,68 61 746 3 781 435-27,49 134 1,48 56 315 4 192 693-24,20 114 1,54 75 310 4 210 455-19,57 146 1,56 63 939 4 000 545-13,12 189 2,08 100 215 6 180 751-15,34 95 1,58 67 427 3 951 545-14,53 194 2,15 102 810 VÝSLEDKY NAVRŽENÝCH AOS Na základě výsledků testu robustnosti je AOS 7 nejlepším. V Tabulce č. 3 je znázorněn přehled obchodů v paper tradingovém období. Pro každý ukazatel je uvedena hodnota za všechny obchody long a short. Long představuje obchody spekulované nákupem na růst trhu. Short obchody reprezentují spekulaci prodejem na pokles trhu. Celkový počet obchodů byl 545, z nichž bylo otevřeno na spekulaci růstu trhu 244 a na spekulaci poklesu trhu 301. Celkový počet ziskových obchodů byl 261, z nichž bylo 124 na stranu long a 137 na stranu short. Celkový počet ztrátových obchodů byl 283, z nichž bylo na stranu long 120 a na stranu short 163. Pravděpodobnost, že bude obchod ziskový, byla 47,89 %. Na stranu long měl OS vyšší pravděpodobnost ziskového obchodu ve výši 50,82 % oproti 45,51 % na stranu short.

Průměrný obchod byl v zisku 188,88 $. Strana long měla průměrný zisk 196,64 $ a strana short 182,59 $. Hodnota průměrného ziskového obchodu byla 758,55 $. Na stranu long měl AOS nižší průměrný ziskový obchod ve výši 717,33 $ oproti 795,85 $ na stranu short. Průměrná výše ztrátového obchodu byla -335,83 $. Na stranu long byla průměrná výše ztráty -341,42 $ a strana short -331,72 $. Poměr mezi ziskovým obchodem a ztrátovým obchodem byl z celkového pohledu 2,26. Na stranu long je tento poměr 2,1 a na stranu short je 2,4. Tabulka č. 3: Přehled obchodů AOS 7 Ukazatel Všechny Long obchody Short obchody Celkový počet obchodů 545 244 301 Počet vítězných obchodů 261 124 137 Počet ztrátových obchodů 283 120 163 Profitabilita (%) 47,89 50,82 45,51 Průměrný obchod 188,88 196,64 182,59 Průměrný vítězný obchod 758,55 717,33 795,85 Průměrný ztrátový obchod -335,83-341,42-331,72 Průměrné vítězné / průměrné ztrátové ratio 2,26 2,10 2,40 V Tabulce č. 4 jsou uvedeny vybrané výsledky AOS 7 z paper tradingu. Tato tabulka analogicky obsahuje sloupce za všechny obchody long a short. AOS 7 za dvouleté obchodování skončil v zisku 102 940,20 $. Zhodnocení účtu bylo na dvouletém paper tradingovém období 1 029 %. Podíl na celkovém zisku měly obchody na stranu long ve výši 47 979,36 $, což představuje 47 % celkového čistého zisku. AOS 7 byl první systém, který měl větší podíl čistého zisku z short obchodů a to ve výši 54 960,84 $, což představuje 53 % celkového čistého zisku. Obchody na stranu long měly na zisk nižší podíl než short obchody. Celková suma všech ziskových obchodů byla 197 981,19 $ a ztrátových -95 040,99 $. Profit faktor celého AOS byl 2,08. Na stranu long byl 2,17 a na stranu short 2,02. Maximální výše drawdownu AOS byla ve výši -11 967,12 $ a nejvyšší procentuální podíl drawdownu vůči equity účtu byl -13,12 %. Podíl mezi ziskem a maximálním drawdownem byl 8,6. Tabulka č. 4: Výsledky obchodování AOS 7 Ukazatel Všechny Long obchody Short obchody Čistý zisk 102 940,20 47 979,36 54 960,84 Celkový profit 197 981,19 88 949,52 109 031,67 Celková ztráta - 95 040,99-40 970,16-54 070,83 Profit faktor 2,08 2,17 2,02 Maximální drawdown portfolia - 11 967,12 Maximální drawdown portfolia (%) - 13,12 Čistý zisk / Maximální drawdown portfolia 8,60 Na Obrázku č. 4 je uveden průběh křivky equity, průběh drawdownu a průběh drawdownu vůči aktuální výši křivky equity za paper tradingové období. Do grafu byly zaneseny pouze ty obchody, které zvýšily nebo snížily hodnotu křivky equity. V průběhu celého paper tradingu byly nejvyšší hodnoty procentuálního drawdownu vůči křivce equity na začátku paper tradinugu. Poté byly vyrovnané s výjimkou závěru paper tradingu, kdy se procentuální drawdown opět zvýšil. V prvních 100 obchodech se AOS dostal přes největší procentuální drawdown 13,12 % křivky equity a zvýšil křivku equity o téměř 50 000 $. Mezi obchody 100-200 AOS zvýšil křivku equity

o téměř 25 000 $. Mezi obchody 200-300 AOS zvýšil křivku equity o téměř 20 000 $. Mezi obchody 300-400 AOS vytvořil maximum křivky equity na úrovni 112 862,97 $ v 391 nenulovém obchodu. Toto maximum již AOS v závěru paper tradingu nedokázal překonat. V rámci těchto obchodů AOS zvýšil křivku equity o 10 000 $. Zbylé obchody AOS zakončil v drawdownu, který snížil křivku equity o 12 000 $. Obrázek č. 4: Průběh křivky equity a drawdownu pro AOS 7 v paper tradingu DISKUZE Deng a kol. (2012) provedli empirický test robustnosti navržených AOS, které optimalizovali pomocí GA. Optimalizovaná obchodní pravidla byla zaměřena na technické indikátory, které znázorňují překoupenost a přeprodanost trhu. AOS testovali na historických datech pohybů kurzu měnových páru EUR/USD a USD/JPY v období roku 2008. Jejich první experimentální AOS (USD/JPY) měl v testovaném období profitabilitu 60,37 %. Jejich druhý experimentální AOS (USD/EUR) měl v testovaném období profitabilitu 71,42%. Autoři se již nezabývali vyjádřením ekonomických vlastností navržených AOS.

V tomto příspěvku byly také navrženy experimentální AOS optimalizované GA. Oproti Deng a kol. (2012) byly AOS navrženy a testovány na denních historických datech indexu Russell 2000. Časová řada historických dat vstupujících do návrhu a analyzování AOS je delší (backtest od 1. 3. 1995 do 28. 2. 2011 a paper trading od 1. 3. 2011 do 28. 2. 2013). Profitabilita experimentálních AOS se v backtestu pohybovala od 43,69 % do 62,54 %. Ukazatel profitabilita může být zavádějícím kritériem pro posuzování výkonnosti AOS, protože AOS s vysokou hodnotou profitability nemusí dosahovat vyšší ziskovosti než AOS s nízkou profitabilitou. Důvodem je nastavení money managementu. Oproti Deng a kol. (2012) tento příspěvek vyjadřuje nejen profitabilitu AOS, ale i další důležité ekonomické ukazatele experimentálních AOS v paper tradingovém období. Základními ukazateli jsou: profit faktor, průběh křivky equity, drawdown, procentuální drawdown vůči equity, čistý zisk, celkový profit, celkovou ztrátu aj. Dosažené výsledky v tomto příspěvku mají významnější vypovídající schopnost ekonomické interpretace AOS pro obchodování v praxi. ZÁVĚR Z navrhnutých devíti AOS byl paradoxně nejlepší AOS 7, neboť nastavení vstupních parametrů GA bylo nastaveno náhodně. Příčinou kladného výsledku může být neotřelé nastavení, které by většina traderů nezvolila. V dvouletém paper tradingovém období AOS 7 zhodnotil obchodní účet o 1 029 % při maximálním drawdownu 13,12 %. Ačkoliv AOS 7 je nejlepší z navrhnutých AOS, tak v průběhu paper tradingu růst křivky equity postupně zpomaluje. Experiment dokazuje, že lze navrhnout ziskový AOS optimalizovaný genetickými algoritmy. Experiment nebere v potaz životní cyklus těchto modelů. Jak uvádí Prado (2008), existují dva směry řízení životního cyklu AOS. První směr je vývoj obecně funkčního systému a druhý směr je průběžná aktualizace AOS. Předmětem dalšího výzkumu bude návrh způsobu jak optimálně řídit vyřazování vysloužilých AOS a nahrazování novými AOS. Možnými směry návrhu řízení mohou být: nevyřazovat AOS, zařazovat nové AOS na základě pevně definované periody nebo zařazovat nové AOS v okamžiku, kdy stávající AOS nesplní test robustnosti. LITERATURA Le Bon, G. (1994): Psychologie davu. Praha, KRA; ISBN 80-901-5278-3. Deboeck G. (1994): Trading on the edge: neural, genetic, and fuzzy systems for chaotic financial markets. New York, Wiley; ISBN 04-713-1100-6. DENG, Shangkun, Yizhou SUN a Akito SAKURAI. Robustness Test of Genetic Algorithm on Generating Rules for Currency Trading. 2012, Winter. Douglas M. (2009): Disciplinovaný trader. Tetčice, IMPOSSIBLE; ISBN 978-80-254-6158-7. Durenard E. A. (2013): Professional Automated Trading: Theory and Practice. New Jersey, Wiley; ISBN 978-111-8129-852. Google Finance. Russell 2000: INDEXRUSSELL:RUT historical prices [online]. 2014 [cit. 2014-01-26]. Dostupné z: https://www.google.com/finance?q=rut&ei=qjxluvingjkkwaottwe. Holland, J. H. (1992): Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control and Artificial Intelligence. Cambridge, The MIT Press; ISBN 9780262581110.

Hynek J. (2008): Genetické algoritmy a genetické programování. Praha, Grada; ISBN 978-80- 247-2695-3. Jankovsky J. A. (2007): Trading Rules that Work: The 28 Essential Lessons Every Trader Must Master. New Jersey, Wiley; ISBN 13 978-0-471-79216-1. Koza J. R. (1992): Genetic programming: on the programming of computers by means of natural selection. Cambridge, The MIT Press. Koza J. R. (1994): Genetic programming II: Automatic discovery of reusable programs. Cambridge, The MIT Press. Koza J. R., Bennett F. H., Andre D., Keane M. A. (1999): Genetic Programming III: Darwinian Invention & Problem Solving. San Francisco, Morgan Kaufmann Publishers Inc. Miller J. F. (1999): An empirical study of the efficiency of learning boolean functions using a Cartesian Genetic Programming approach. In Proceedings of the 1999 Genetic and Evolutionary computation Conference (GECCO 1999), Orlando, Florida, USA, 14-17, p. 1135 1142. Mitchel M. (2002): An Introduction to Genetic Algorithms. Cambridge, MIT Press; ISBN 02-626- 3185-7. Mitsuo G. (1997): Genetic Algorithms and Engineering Design. New York, Wiley; ISBN 978-0471127413. Plummer T. (2008): Prognóza finančních trhů: psychologie úspěšného investování. Brno, Computer Press; ISBN 978-80-251-1592-3. Prado R. (2008): The Evaluation and Optimization of Trading Strategies. New Jersey, Wiley; ISBN 978-0-470-12801-5. Smejkal V. (2010): Řízení rizik ve firmách a jiných organizacích. Praha, Grada; ISBN 978-80-247-3051-6. Taleb N. (2011): Černá labuť: následky vysoce nepravděpodobných událostí. Praha, Paseka; ISBN 978-80-7432-128-3. User's Guide. (2013). Adaptrade Builder. Available at http://www.adaptrade.com/builder/adaptradebuilderug.pdf. Wilber K. (2000): A brief history of everything. New York, Random House; ISBN 15-706-2740-1.