Nechte svůj počítač vydělávat na burze, aneb začínáme s AOS (4)

Tomáš Nesnídal 25. 7. 2013

Z předchozích dílů našeho seriálu již víme, co jsou to AOS a jak začít s jejich vývojem a programováním. Víme také, že důležitou roli hrají dobré a neotřelé nápady, které nám dají v trzích určitou výhodu před ostatními. Ani to však ale ještě nemusí stačit, pokud nemáme AOS, který především vykazuje robustnost.

Až 80 % všech AOS jsou ve skutečnosti pouze počítačové přeoptimalizace, které po nasazení do živých trhů mají jen velmi krátkou, nebo dokonce žádnou životnost. Vytvořit AOS je jedna věc, ale dokázat ho otestovat na robustnost (a především mít vnitřní disciplínu takový hodit do koše, pokud náročnými testy robustnosti neprojde), je něco úplně jiného.

Pojďme se tedy dnes podívat na některé nejzákladnější techniky, podle kterých můžeme lépe poznat, zda a nakolik je náš AOS robustní.

In-Sample a Out-Of-Sample

Nejjednodušší a nejzákladnější test toho, že naše optimalizace je robustní, nikoliv pouhou přeoptimalizací, je takzvaný test In-Sample / Out-Of-Sample.

Nejedná se o vůbec nic složitého. Pointa je ta, že historická data, která máme k dispozici, si rozdělíme na 2 části. První část bude obsahovat prvních 80 % z celé naší historie dat daného trhu a časového rámce a tato část se bude nazývat In-Sample data (IS). Zbylých 20 % dat bude tvořit druhou část, které budeme říkat Out-Of-Sample (OOS).

Jaká je pointa tohoto rozdělení, již zřejmě sami tušíte. Optimalizaci našeho AOS provedeme na In-Sample datech. Po té aplikujeme nejlepší z optimalizovaných hodnot na vzorku Out-Of-Sample. Náš AOS tak pustíme na datech, která během optimalizačního procesu nebyla nikdy použita, čili je náš AOS „neviděl“. Tím pádem se jedná o určitou simulaci nejisté budoucnosti. Pokud vykazuje equity křivka na OOS datech stejnou konzistenci a stabilitu jako na IS datech (toto měření dělám čistě optometricky, nevyužívám k tomu žádné srovnávací algoritmy), naše optimalizované hodnoty mají v sobě určitý příslib robustnosti.

Velký vzorek historických obchodů

Čím větší vzorek historických obchodů v rámci stabilně rostoucí křivky simulovaného účtu, tím větší šance, že váš AOS je něco více, než pouhá přeoptimalizace. Jaký vzorek je dostatečný?

Z mé zkušenosti ideálně 1000 a více obchodů. V extrémních případech se spokojím i se vzorkem pár stovek (řekněme 700 a více), ale preferuji 1000 – 2000. Pokud vytvoříte AOS se vzorkem pouze pár desítek nebo pár stovek obchodů, máte zaděláno na problém. Takový statistický vzorek je zcela nedostatečný a z vlastní praxe mohu potvrdit, že šance na přeoptimalizaci a následnou nefunkčnost prudce vzrůstají.

Tomuto požadavku jsem musel přizpůsobit i výběr časového rámce. Například na denních datech i s historií 30 let je poměrně náročné vygenerovat AOS s backtestovým vzorkem kolem 1000 obchodů. Na 15minutovém časovém rámci s historií dat za posledních 10 let to již zvládnu vcelku bez větších problémů.

Vzorek kolem 1000 obchodů považuji za základní optimální minimum. AOS na obrázku již nějakou dobu obchoduji, posledních cca 100 obchodů pochází již z živého obchodování.

Ověření na dalších trzích a časových rámcích

Skutečně robustní AOS je takový, který obsahuje více či méně „univerzální“ výhodu, tj. takovou, která funguje na celé škále trhů a časových rámců.

Proto další běžný test robustnosti je aplikování našich optimalizovaných parametrů daného AOS na dalším trhu, nebo časovém rámci, nebo obojím. Tato část je trochu „zrádná“, protože některé trhy jsou natolik odlišné, že při ověření optimalizačních parametrů stačí vidět spíše obecnou tendenci, než „perfektní“ equity, jako je u originálního trhu, na kterém jsme optimalizaci provedli. Zrovna tak některé optimalizační parametry bude už z podstaty nutné lehce uzpůsobit jinému trhu, nebo časovému rámci, což vše už vyžaduje trochu cviku a zkušenosti.

Nic méně v principu platí, že pokud nevidíme na jiném trhu nebo časovém rámci (nebo obojím) alespoň tendenci podobnou tomu, co vidíme na trhu a časovém rámci, na kterém jsme provedli optimalizaci, je vysoká pravděpodobnost, že náš AOS má velmi daleko k robustnosti.

Pro příklad zde uvádím nasazení stejného obchodního systému, který vidíte výše, na jiný trh. Na předchozím obrázku se jednalo o trh EMD (zkratka komoditního akciového indexu e-mini S&P400), nyní si ukážeme stejný obchodní systém na trhu TF (zkratka komoditního akciového indexu e-mini Russell 2000):

widgety

Závěr

Pro trh TF byly z většiny použity stejné optimalizované hodnoty, jako pro trh EMD (některé hodnoty jsou však lehce pozměněné vzhledem k charakteru trhu). Podobné equity tohoto obchodního systému dostanu i v případě aplikace i na úplně jiné komodity, například ropu. Jedná se tedy o velmi robustní AOS, který mně také už nějaký ten pátek vydělává slušné peníze.

TIP: Zajímá vás trading? Podívejte se na nabídku online kurzů na Měšci. Můžete se v nich setkat i s autorem tohoto článku.

Výše popsané techniky jsou opravdu jen naprosto nejzákladnější, jsou ale také velmi dobrým způsobem, jak s robustností vůbec začít. Osobně jsem strávil téměř dva roky nad tím, než jsem přišel na poměrně komplexní a sofistikované workflow, se kterým dokážu rozpoznat velmi rychle robustní systém s téměř 100% úspěšností. Jelikož to ale považuji za již poměrně dost cenné know-how, nejsem už příliš ochotný dělit se o něj veřejně veřejně (i já si rád zachovávám své výhody v trzích v tajnosti). Celý postup je ale k dispozici v rámci online semináře Stavba, testování a obchodování automatických breakout strategií, kde vás krok po kroku provedu i tím, jak přesně stavím své úspěšné AOS.

Našli jste v článku chybu?
Vitalia.cz: Antibakteriální mýdla nepomáhají, spíš škodí

Antibakteriální mýdla nepomáhají, spíš škodí

Vitalia.cz: 5 důvodů, proč jet na výlov rybníka

5 důvodů, proč jet na výlov rybníka

Root.cz: Podívejte se na shořelé Samsung Note 7

Podívejte se na shořelé Samsung Note 7

DigiZone.cz: Digi Slovakia zařazuje stanice SPI

Digi Slovakia zařazuje stanice SPI

DigiZone.cz: DVB-T2 ověřeno: seznam TV zveřejněn

DVB-T2 ověřeno: seznam TV zveřejněn

Lupa.cz: Jak se prodává firma za miliardu?

Jak se prodává firma za miliardu?

Lupa.cz: Adblock Plus začal prodávat reklamy

Adblock Plus začal prodávat reklamy

DigiZone.cz: Nova opět stahuje „milionáře“

Nova opět stahuje „milionáře“

DigiZone.cz: Wimbledon na Nova Sport až do 2019

Wimbledon na Nova Sport až do 2019

Měšec.cz: „Ukradli“ jsme peníze z bezkontaktních karet

„Ukradli“ jsme peníze z bezkontaktních karet

DigiZone.cz: Parlamentní listy: kde končí PR...

Parlamentní listy: kde končí PR...

DigiZone.cz: Regionální tele­vize CZ vysílá "Mapu úspěchu"

Regionální tele­vize CZ vysílá "Mapu úspěchu"

Lupa.cz: Odkazy na pirátský obsah mohou být nelegální

Odkazy na pirátský obsah mohou být nelegální

Lupa.cz: Další Češi si nechali vložit do těla čip

Další Češi si nechali vložit do těla čip

Lupa.cz: Cimrman má hry na YouTube i vlastní doodle

Cimrman má hry na YouTube i vlastní doodle

Vitalia.cz: Vodárny varují: Ve vodě z kohoutku jsou bakterie

Vodárny varují: Ve vodě z kohoutku jsou bakterie

Root.cz: Hořící telefon Samsung Note 7 zapálil auto

Hořící telefon Samsung Note 7 zapálil auto

Vitalia.cz: dTest odhalil ten nejlepší kečup

dTest odhalil ten nejlepší kečup

DigiZone.cz: Sat novinky: NASA Ultra HD (4K)

Sat novinky: NASA Ultra HD (4K)

DigiZone.cz: Budoucnost TV vysílání ve Visegrádu

Budoucnost TV vysílání ve Visegrádu