Hlavní navigace

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

18. 7. 2013
Doba čtení: 4 minuty

Sdílet

Z předchozích dílů seriálu už víme, co jsou to Automatické obchodní systémy a jak vybrat vhodnou platformu pro jejich vývoj, backtestování a následné obchodování. Dnes si povíme, jak tedy konkrétně začít hledat strategie, se kterými bychom mohli v budoucnu nechat náš počítač obchodovat na burze.

Jak konkrétně začít

Jednoduchý návod jak konkrétně začít s hledáním funkčních obchodních strategií bohužel neexistuje. V zásadě je základem nějaký nápad, jeho převedení do počítačového kódu, jeho další vylepšování skrze dodatečné nápady a jeho optimalizace s ověřením robustnosti.

Já osobně začínám s nápady například tak, že si otevřu graf některého z trhů a chvilku na něj hledím, dokud mě nezačnou napadat nějaké otázky. Například mě může napadnout:

Co se asi stane, pokud bych nakupoval během dne při průrazu včerejší nejvyšší hodnoty?“

Tím mám definovanou základní myšlenku, kterou nyní převedu do jednoduchého počítačového kódu:

IF CLOSE > HighD(1) then buy this bar at close;

Nyní už víme, že samotný vstup nestačí, ale musíme také počítači říci, kdy má vystoupit. Takže, v první řadě osobně nikdy nedržím své pozice přes noc, proto v EasyLanguage přidám do kódu podmínku pro výstup na konci dne:

SetExitOnClose;

Je to má nejjednodušší výstupní technika, ale vcelku funkční (na pokročilejší úrovni pak kombinuji různé výstupní techniky).

Nyní tedy spustím kód například na komoditním trhu akciového indexu emini Russell 2000 a časovém rámci 15 minut, abych se kouknul, co se tak bude dít. Výsledek vypadá následovně:

Z equity křivky, která ukazuje, jak by náš účet rostl při obchodování takovéto myšlenky od roku 2010, je patrné, že zde leží určitý potenciál. Myšlenka nakupovat nad včerejší nejvyšší hodnotou je slibná, na této výhodě je však třeba ještě pracovat. Potřebuji tedy přinejmenším nějaký filtr, který by equity křivku (distribuci zisků) ještě trochu vyhladil, aby peníze na můj účet přicházely co nejpravidelněji a s co nejmenšími propady.

Při pohledu do grafu mě napadá, že by mohlo být zajímavé zapojit uzavírací cenu před dvěma dny a zkusit hledat jen takové dny, kdy je uzavírací cena níže, než otevírací cena X-dnů nazpět. Tím bychom totiž mohli mít v trhu drobnou korekci, po které jsou následné růsty většinou úspěšnější.

Přidám tedy následující podmínku:

OpenD(MojeVar1) > CloseD(2);

Moje upravená vstupní podmínka tedy bude nyní vypadat takto:

IF CLOSE > HighD(1)

and OpenD(MojeVar1) > CloseD(2)

then buy this bar at close;

SetExitOnClose;

Nyní nechám počítač provést optimalizaci parametru MojeVar1, zkusím rozsah 1–20 dnů nazpět. Počítač vyhodnotí jako nejziskovější ze všech hodnotu 16:

Tuto hodnotu tedy dosadíme za MojeVar1 a opět se podíváme na výsledek:

Vidíme, že počet obchodů sice rapidně klesl, ale stabilita ziskovosti se výrazně zlepšila. Tímto způsobem tedy mohou pokračovat, zkoušet další úpravy, podmínky, filtry, nebo další výstupní techniky – dokud se nedopracuji k žádoucím výsledkům.

Indikátory versus cenová akce

Ukázka výše pracuje pouze se samostatnou cenovou akcí – definujeme tedy podmínky v rámci konkrétních cenových úseček.

Svět AOS je ale mnohem pestřejší a zrovna tak můžeme využít některé z tisíců obchodních indikátorů. Jedná se vlastně o jednoduché matematické vzorce, které z cenových grafů vytvářejí další nejrůznější interpretace jejich obsahu. Nejzákladnější indikátor je například klouzavý průměr, kdy můžeme aktuální cenu nechat porovnávat s průměrnou cenou za X-posledních dnů nazpět, atd.

Každá obchodní platforma dnes již obsahuje stovky různých indikátorů a další je možné různě postahovat nebo doprogramovat.

Osobně z vlastní zkušenosti mohu říci, že obojí funguje stejně dobře – jak práce se samotnou cenovou akcí, tak práce s indikátory. Čas od času si i vymyslím a naprogramuji vlastní indikátor, což mně dává opět lehkou výhodu oproti indikátorům standardně dostupným.

Díky indikátorům tedy existují doslova miliardy možností a kombinací a při troše práce a zapálení není třeba mít obavy, že bychom se dříve či později nedopracovali k nějakému kvalitnímu a robustnímu AOS. Je jen třeba vždy zjistit, jaké indikátory má v sobě již daná obchodní platforma zakomponované a jaké syntaxe pro ně používat.

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.

Závěrem

Výše popsaný příklad není rozhodně žádný hotový AOS, ale pouze ukázka přístupu a ukázka myšlení.

Samozřejmě také, že najít opravdu robustní a stabilní obchodní systém, který by nebyl pouhou přeoptimalizací, není jednoduché a vyžaduje to už určité zkušenosti a dovednosti.

Pokud se to však podaří, stojí to většinou za to. Jako inspiraci přikládám screenshot ze svého obchodního účtu, ze kterého je vidět, že v den, kdy píši tento článek (celou sérii píšu pro Root dopředu), tj. pátek 7. června 2013, jeden z mých AOS na trh YM (e-mini Dow Jones) vydělal příjemných  1185 USD. Jednalo se o velmi jednoduchou breakout strategii, založenou na průlomu.

CS24_early

Strategie vychází z jednoduchého kódu, jehož základem je právě průlom. Jelikož došlo k prolomení nejvyšší hodnoty včerejšího dne, a zároveň předešlý den proběhla v trhu menší korekce, nakoupil AOS hned při otevření trhu dva kontrakty.

Proto už také nějaký ten pátek nechodím do práce.

Byl pro vás článek přínosný?

Autor článku

Mnohaletý profesionální burzovní obchodník a spoluprovozovatel serveru Finančník.cz, který založil společně s kolegou Petrem Podhajským.