Algoritmické obchodování je provádění příkazů podle předem daného souboru pravidel, nikoli ručním zadáváním. Program sleduje tržní data a ve chvíli, kdy jsou stanovené podmínky splněny, odešle, upraví nebo uzavře příkaz. Pravidla jsou pevně dána předem a software je uplatňuje bez vlastního uvážení.
Co musí algoritmus mít popsáno
Pravidlo, které lze provést automaticky, musí být úplné. Čtyři části nelze vynechat:
- Podmínka vstupu. Přesný, ověřitelný stav, který spouští příkaz — cenová hladina, hodnota indikátoru, čas nebo jejich kombinace. „Když trh vypadá slabě" naprogramovat nelze; „když je poslední uzavírací cena pod 50periodovým průměrem" ano.
- Velikost pozice. Na kolik jednotek příkaz zní a jak toto číslo vychází z kapitálu účtu a vzdálenosti k výstupu. Pravidlo velikosti je součástí algoritmu, ne dodatkem.
- Podmínka výstupu. Oba výstupy: ochranná hladina i hladina uzavření, včetně pravidla pro jejich posun po otevření pozice.
- Ošetření chyb. Co se stane, když je příkaz zamítnut, když se platforma odpojí, když je pozice již otevřená nebo když přestanou chodit data. Bez této větve program dál odesílá příkazy do stavu, kterému nerozumí.
Čím se liší od copy tradingu a od expert advisoru
Copy trading zrcadlí obchody cizího účtu. Logika patří kopírované osobě a obvykle není zveřejněna, takže následovník nemůže prověřit ani podmínku vstupu, ani pravidlo velikosti pozice; automatizované je kopírování, nikoli rozhodnutí. Expert advisor na MT4 je jednou z implementací algoritmického obchodování — program napsaný v MQL, který běží uvnitř terminálu a jeho prostřednictvím zadává příkazy. Každý EA je algoritmus; ne každý algoritmus běží jako EA, protože stejná pravidla mohou být prováděna přes API nebo na serveru mimo platformu. Automatizace mění to, kdo mačká tlačítko. Nedělá pravidlo správným a nečiní automatické provedení lepším než ruční — výsledek závisí výhradně na pravidle a na tom, jak se plní.
Ověřte si parametry: velikosti kontraktů, hodnoty pipu a marže používané pravidlem postaveným na MT4 popisují obchodní výpočty pro MT4.
Co se láme v živém provozu
Pravidlo, které funguje na papíře, naráží na trhu na čtyři druhy tření:
- Latence. Mezi signálem, odchodem příkazu ze stroje a jeho příchodem na trh uplyne čas. V rychlých podmínkách se cena při příchodu liší od ceny, která pravidlo spustila.
- Rekvotace a zamítnutí. Příkaz se může vrátit nevyplněný. Pokud pro to algoritmus nemá větev, buď obchod opustí, nebo jej znovu odešle do horšího trhu.
- Skluz. Tržní a stop příkazy se plní za nejbližší dostupnou cenu, ne za požadovanou. Kolem zveřejnění dat a na přelomu seancí se tento rozdíl zvětšuje a působí oběma směry.
- Měnící se spready a swapy. Spread považovaný za pevný takový není. Financování přes noc se načítá za každý den držení pozice a oba náklady musí být uvnitř výpočtu pravidla, ne vně.
Právě tato tření jsou důvodem, proč se pravidlo před spuštěním testuje. Backtesting popisuje podmínky, za nichž takový test něco znamená.
Související pojmy
Zdroje
- Nápověda MetaTrader 5: Algoritmické obchodování a obchodní roboti (anglicky)
- Referenční příručka MQL5: Referenční příručka MQL5: jazyk obchodních strategií pro MetaTrader 5 (anglicky)
- Nápověda MetaTrader 5: Testování strategií v testeru strategií (anglicky)

