Jak vytvořit vlastní CFD systém
Osobní finance a peníze a burza a trading zahrnují také tvorbu vlastního obchodního systému, který určuje, kdy CFD obchodovat, kdy pozici otevřít, kde ji ukončit a jaké riziko přijmout. Vlastní CFD systém by neměl vzniknout jako náhodná kombinace indikátorů, ale jako soubor přesných pravidel založených na konkrétní tržní myšlence. Nejprve je potřeba určit obchodovaný instrument, časový rámec a typ příležitostí, například trendové pokračování, breakout nebo obchodování range. Poté se definují podmínky vstupu, stop lossu, take profitu, velikosti pozice a situace, kdy se obchod neprovádí. Následuje backtest, vyhodnocení nákladů, test na oddělených datech a forward test. Například systém může vyžadovat rostoucí trend na vyšším časovém rámci, pullback k předem definované úrovni a potvrzení pokračování trendu na nižším grafu. Teprve pokud takový systém vykazuje při realistickém testování rozumnou očekávanou hodnotu a přijatelné riziko, dává smysl ověřovat ho s reálným kapitálem.
Začněte obchodní myšlenkou, ne indikátory
Vlastní CFD systém by měl vycházet z hypotézy o chování trhu. Trader musí nejdříve vědět, jakou situaci chce využívat, a teprve potom hledat nástroje, které mu pomohou tuto situaci identifikovat.
Obchodní myšlenkou může být například předpoklad, že cena během silného trendu často pokračuje po krátké korekci, nebo že v určitém prostředí osciluje mezi supportem a rezistencí.
Pokud trader začne pouze přidávat RSI, MACD, Bollinger Bands, klouzavé průměry a další indikátory, může vytvořit komplikovaný graf bez jasné logiky.
Smyslem indikátoru je pomoci definovat pravidlo, nikoli vytvořit iluzi přesnosti. Jednodušší systém s jasným důvodem může být robustnější než systém založený na mnoha vzájemně překrývajících se filtrech.
Problematiku nadměrného používání indikátorů rozebírá také proč většina traderů používá příliš mnoho indikátorů.
Vyberte instrument a časový rámec
Dalším krokem je přesně určit, kde bude systém používán. CFD existují například na akcie, indexy, komodity, měnové páry nebo kryptoměny a jednotlivé trhy mají odlišnou volatilitu, likviditu i nákladovou strukturu.
Stejná strategie proto nemusí fungovat stejně na všech instrumentech. Systém vytvořený pro volatilní index může mít jiné parametry než systém určený pro klidnější měnový pár.
Důležitý je také časový rámec. Intradenní systém na pětiminutovém grafu bude vystaven většímu tržnímu šumu a významnějšímu vlivu spreadu než swingový systém na denním grafu.
Na začátku je proto vhodnější zvolit jeden nebo malý počet konkrétních instrumentů a jeden hlavní časový rámec, než se pokoušet vytvořit univerzální systém pro celý trh.
Definujte přesné podmínky vstupu
Vstupní pravidla musí být natolik konkrétní, aby dva lidé při pohledu na stejný graf dospěli ke stejnému rozhodnutí. Formulace typu „trend vypadá silně“ je příliš subjektivní.
Lepší pravidlo může například říkat, že long obchod je povolen pouze tehdy, když cena vytváří vyšší maxima a vyšší minima a po korekci uzavře nad předchozím swingovým maximem.
Pokud systém používá indikátor, jeho podmínka musí být také jednoznačná. Například „RSI je nad 50 při uzavření signální svíčky“ lze testovat, zatímco „RSI ukazuje sílu“ nikoli.
Každá dodatečná podmínka by měla mít svůj důvod. Pokud byla přidána pouze proto, že zlepšila historický výsledek, může zvyšovat riziko přeoptimalizování.
Určete, kdy obchod neotevírat
Kvalitní systém neříká pouze, kdy obchodovat, ale také kdy zůstat mimo trh. Absence obchodního signálu je legitimní výsledek.
Trader může například zakázat vstupy během extrémně nízké likvidity, před významnou ekonomickou událostí nebo v situaci, kdy se tržní struktura výrazně liší od podmínek, pro které byl systém vytvořen.
Takový filtr však musí mít logický důvod a měl by být součástí testování. Přidávání stále nových omezení pouze kvůli zlepšení backtestu může systém přeoptimalizovat.
Je také důležité určit maximální počet současných obchodů. Několik pozic na silně korelovaných trzích může ve skutečnosti představovat jedinou koncentrovanou sázku.
Vytvořte pravidla pro stop loss
Stop loss musí vycházet z logiky obchodního scénáře. Neměl by být umístěn pouze na náhodnou vzdálenost od vstupu.
Pokud trader nakupuje po odrazu od supportu, může být invalidace scénáře například pod relevantním swingovým minimem. Pokud cena tuto oblast přesvědčivě prorazí, původní důvod obchodu přestává platit.
Vzdálenost stop lossu následně ovlivňuje velikost pozice. Čím dále je stop loss od vstupu, tím menší musí být pozice, pokud má trader zachovat stejné maximální riziko.
Například při účtu 100 000 Kč a maximálním riziku 0,5 % činí plánovaná ztráta 500 Kč. Velikost pozice proto musí být nastavena tak, aby aktivace stop lossu při běžném provedení nepřekročila tuto částku o nepřiměřenou hodnotu.
Nastavte take profit a pravidla výstupu
Výstup je stejně důležitý jako vstup. Systém může používat pevný take profit, výstup podle tržní struktury, trailing stop nebo kombinaci několika pravidel.
Pokud trader například očekává pokračování trendu, může část pozice uzavřít na předem definovaném cíli a zbytek nechat běžet podle změny struktury. Pokud však tento postup není součástí testovaných pravidel, výsledky budou obtížně porovnatelné.
Take profit by měl odpovídat charakteru strategie. Range strategie může využívat cíle poblíž protilehlé hranice pásma, zatímco trendová strategie může potřebovat větší prostor pro pokračování pohybu.
Výstupní pravidla je vhodné testovat stejně důkladně jako samotné vstupy, protože změna poměru průměrného zisku a průměrné ztráty může zásadně změnit očekávanou hodnotu systému.
Definujte risk management
Risk management určuje, kolik kapitálu může trader ztratit při jednom obchodu, během dne nebo při sérii nepříznivých výsledků. Bez této části nejde o kompletní obchodní systém.
Trader může například stanovit maximální riziko 0,5 % účtu na jeden obchod a současně maximální denní ztrátu 1,5 %. Po dosažení denního limitu se další obchody neotevírají.
Taková pravidla mají zabránit tomu, aby několik neúspěšných obchodů vedlo k nekontrolovanému navyšování rizika.
Součástí systému by měla být také pravidla pro období drawdownu. Pokud strategie prochází sérií ztrát, není vhodné automaticky zdvojnásobovat velikost pozice ve snaze rychle ztrátu dohnat.
Počítejte velikost pozice
Velikost CFD pozice by měla vycházet z maximální přijatelné ztráty a vzdálenosti stop lossu. Nejprve se určí finanční riziko a teprve potom počet jednotek nebo kontraktů.
Pokud má trader účet 100 000 Kč a riskuje 0,5 %, maximální plánovaná ztráta činí 500 Kč. Pokud by při dané velikosti CFD pozice představoval pohyb do stop lossu ztrátu 1 000 Kč, pozice je příliš velká.
Trader ji musí zmenšit tak, aby odpovídala pravidlům systému. Tím se odděluje obchodní rozhodnutí od velikosti účtu a zároveň se omezuje riziko nekontrolovaných ztrát.
Velikost pozice se může měnit podle volatility, ale finanční riziko by mělo zůstat v předem definovaných mezích.
Zohledněte spread, komise a financování
CFD systém musí být navržen s ohledem na skutečné náklady. Historický zisk před náklady nemusí znamenat, že je strategie použitelná v reálném obchodování.
U krátkodobých strategií může mít zásadní význam spread a skluz, zatímco u pozic držených přes noc může výsledky ovlivňovat financování.
Pokud strategie vytváří průměrný hrubý zisk 300 Kč na obchod a průměrné náklady dosahují 100 Kč, třetina hrubého výsledku je spotřebována náklady ještě před započtením dalších odchylek.
Čím častěji systém obchoduje, tím důležitější je testovat nákladovou strukturu realisticky.
Otestujte systém na historických datech
Po definování pravidel následuje backtest. Trader aplikuje systém na historická data a zaznamenává každý obchod podle předem stanovených pravidel.
Je důležité nevynechávat ztrátové situace jen proto, že se zpětně nezdají atraktivní. Jinak vzniká zkreslený výsledek.
Backtest by měl zahrnovat dostatečně dlouhé období a různé tržní podmínky. Strategie testovaná pouze během jednoho silného trendu nemusí být vhodná pro jiné prostředí.
Podrobný postup lze dále rozvíjet v článku backtesting strategií.
Vyhněte se přeoptimalizování
Při tvorbě vlastního systému vzniká silné pokušení upravovat pravidla tak dlouho, dokud historický výsledek nevypadá co nejlépe. Právě tím může vzniknout přeoptimalizovaná strategie.
Pokud například trader vyzkouší 50 kombinací parametrů a vybere pouze tu nejvýkonnější, může jít o náhodně nejlepší variantu historického vzorku.
Robustnější systém by měl fungovat v určitém rozmezí parametrů. Malá změna nastavení by neměla způsobit úplný rozpad výsledků.
Dalším důležitým krokem je testování na datech, která nebyla použita při vývoji. Pokud strategie na novém vzorku výrazně ztratí své vlastnosti, je potřeba hledat příčinu.
Více o rozpoznání tohoto problému popisuje také článek jak poznat přeoptimalizovanou strategii.
Vyhodnocujte očekávanou hodnotu
Samotná úspěšnost strategie nestačí. Důležité je, kolik průměrně vydělávají vítězné obchody a kolik stojí ztrátové obchody.
Pokud systém vyhraje 40 % obchodů, ale průměrný zisk je 2 500 Kč a průměrná ztráta 1 000 Kč, očekávaná hodnota před náklady činí 400 Kč na obchod.
Výpočet je 0,40 × 2 500 − 0,60 × 1 000 = 400 Kč. Ani kladná očekávaná hodnota však není zárukou budoucího zisku, protože skutečné výsledky kolísají.
Po započtení spreadu, komisí, financování a skluzu je potřeba sledovat čistou očekávanou hodnotu.
Sledujte drawdown a sérii ztrát
Každý vlastní systém by měl být hodnocen také podle toho, jak velký pokles účtu může způsobit. Strategie s vysokým výnosem může být nepoužitelná, pokud vyžaduje drawdown, který trader nedokáže finančně nebo psychologicky zvládnout.
Pokud například backtest ukáže maximální historický drawdown 20 %, trader by neměl automaticky předpokládat, že budoucí maximum bude také 20 %. Budoucí série ztrát může být delší.
Užitečné je proto sledovat nejdelší sérii ztrát, nejhorší obchodní období a rychlost návratu z drawdownu.
Tyto údaje pomáhají nastavit riziko tak, aby trader dokázal systém dodržovat i během nepříznivé fáze.
Ověřte systém na nových datech
Po dokončení backtestu by trader neměl okamžitě přejít k plnému reálnému obchodování. Strategie by měla být nejprve ověřena na datech, která nebyla použita při jejím vývoji.
Takzvaný out-of-sample test pomáhá zjistit, zda systém funguje i mimo původní historický vzorek.
Pokud například byla strategie vytvořena na datech z let 2021 až 2024, lze samostatné pozdější období použít jako validační vzorek, pokud nebylo během vývoje sledováno pro úpravu pravidel.
Validační data by se následně neměla opakovaně používat k dalšímu ladění systému, protože by se tím postupně stala součástí vývojového vzorku.
Proveďte forward test
Forward test umožňuje sledovat strategii na nových datech postupně tak, jak vznikají. Trader nevidí budoucí vývoj a musí čekat na skutečné signály.
Test lze provádět na demo účtu nebo jiným způsobem simulujícím reálné obchodování. Důležité je dodržovat stejná pravidla jako při zamýšleném použití systému.
Forward test může odhalit rozdíl mezi teoretickou strategií a praktickou exekucí. Problémem může být například spread, skluz, rychlost provedení nebo psychologická neschopnost dodržet předem definovaný plán.
Veďte obchodní deník
Každý obchod vytvořený podle systému by měl být zaznamenán. Deník umožní zjistit, zda trader skutečně dodržuje pravidla, a současně ukáže, které typy obchodů systému prospívají.
Zapisovat lze instrument, čas, směr, vstup, stop loss, take profit, velikost pozice, výsledek, náklady, typ setupu a důvod vstupu.
Po dostatečném vzorku lze porovnat například výsledky podle instrumentu, obchodní seance nebo tržního prostředí.
Pokud například systém celkově vydělává, ale všechny ztráty vznikají při obchodování proti silnému trendu, může být vhodné vytvořit přesnější filtr. Taková změna však musí být znovu otestována a neměla by vzniknout pouze na základě několika posledních obchodů.
Praktické vedení evidence popisuje také jak vést CFD obchodní deník.
Určete, kdy systém nepoužívat
Každá strategie má prostředí, ve kterém funguje lépe, a prostředí, ve kterém může mít výrazně horší výsledky. Součástí systému proto musí být také pravidla pro vynechání obchodu.
Trendový systém může například vyžadovat minimální sílu trendu, zatímco range strategie může zakázat obchodování během výrazného průrazu.
Pokud systém funguje pouze při určité volatilitě, může být rozumné stanovit její podmínky předem. Filtr však musí být otestovaný stejně jako ostatní pravidla.
Schopnost neobchodovat je součástí strategie, nikoli její selhání.
Nejčastější chyby při tvorbě vlastního CFD systému
Jednou z nejčastějších chyb je přílišná složitost. Trader přidává další indikátory a filtry, protože chce odstranit každý ztrátový obchod, až vytvoří systém s velmi malým počtem příležitostí a vysokým rizikem přeoptimalizování.
Dalším problémem je měnění pravidel během obchodu. Pokud trader posouvá stop loss, mění take profit nebo přidává do pozice podle aktuálních emocí, ve skutečnosti neobchoduje systém, který testoval.
Chybou je také hodnocení pouze podle celkového výnosu. Výnos musí být posuzován společně s drawdownem, náklady, sériemi ztrát a stabilitou výsledků.
Nebezpečné je rovněž používat vysokou páku jen proto, že systém v backtestu vypadal dobře. Pákový efekt zvyšuje citlivost účtu na pohyb ceny a nesmí nahrazovat kvalitní risk management.
Praktický příklad tvorby CFD systému
Trader chce vytvořit jednoduchý trendový systém pro indexové CFD. Nejprve stanoví, že bude hledat pouze long obchody, pokud vyšší časový rámec vykazuje rostoucí strukturu.
Na nižším časovém rámci čeká na korekci a následné potvrzení pokračování trendu. Vstupní pravidlo definuje přesně, například uzavřením svíčky nad posledním krátkodobým maximem. Stop loss umisťuje pod relevantní swingové minimum.
Pokud má účet 100 000 Kč a maximální riziko 0,5 %, každý obchod může mít plánovanou maximální ztrátu 500 Kč. Take profit nebo výstup podle struktury následně určuje potenciální zisk.
Trader systém nejprve backtestuje na dostatečném množství historických obchodů, započítá náklady a sleduje očekávanou hodnotu, drawdown a série ztrát. Poté použije oddělená data a forward test. Teprve pokud výsledky zůstávají dostatečně stabilní, lze systém opatrně ověřovat v reálném prostředí.
Jak systém postupně zlepšovat
Úpravy systému by měly vycházet z opakujícího se problému, nikoli z jednotlivého ztrátového obchodu. Pokud data ukazují, že strategie pravidelně ztrácí v určitém typu trhu, lze vytvořit hypotézu, která tento problém řeší.
Nové pravidlo je následně potřeba znovu otestovat na historických i oddělených datech. Pokud zlepšení existuje pouze v původním vzorku, může jít o další přeoptimalizování.
Vhodnější než honba za maximálním výnosem je často hledání lepšího poměru mezi výnosem, drawdownem, stabilitou a jednoduchostí.
Každou změnu je také vhodné zaznamenat, aby trader věděl, která verze systému byla používána a proč došlo k její úpravě.
Vlastní CFD systém musí být testovatelný a opakovatelný
Vytvořit vlastní CFD systém znamená převést obchodní myšlenku do souboru jasných a opakovatelných pravidel. Nestačí mít pocit, že určitá kombinace indikátorů nebo cenových pohybů funguje. Trader musí být schopen přesně říct, kdy vzniká signál, kdy obchod neotevře, kde je scénář neplatný, jak velkou pozici použije a podle čeho vystoupí.
Praktickým začátkem může být jednoduchý trendový systém: například rostoucí struktura na vyšším časovém rámci, korekce na nižším grafu a potvrzené pokračování trendu. Pokud má účet 100 000 Kč a systém dovoluje riskovat 0,5 % na obchod, plánovaná ztráta při aktivaci stop lossu by měla být přibližně 500 Kč. Velikost pozice se následně přizpůsobí vzdálenosti stop lossu.
Po vytvoření pravidel následuje backtest, při kterém je potřeba zaznamenat dostatečně velký vzorek obchodů a zahrnout realistické náklady. Poté je vhodné použít oddělená data pro ověření, aby nebyla strategie hodnocena pouze na historickém vzorku, na kterém byla vytvořena.
Velmi důležité je vyhnout se přeoptimalizování. Přidávání dalších indikátorů, filtrů a výjimek může historický výsledek zlepšovat, ale současně může strategii připravit o robustnost. Pokud malá změna parametru způsobí úplný rozpad výsledků nebo strategie funguje pouze v jediném historickém období, je potřeba systém důkladně prověřit.
Po backtestu a validačním testu přichází na řadu forward test. Ten ukáže, zda lze pravidla skutečně aplikovat bez znalosti budoucího vývoje a zda se výsledky přibližují historickému testu. Obchodní deník následně umožní oddělit ztráty způsobené samotnou strategií od ztrát způsobených porušením pravidel.
Dobře vytvořený CFD systém proto není pouze vstupní signál. Je to kompletní proces zahrnující výběr trhu, časový rámec, vstupy, výstupy, řízení rizika, velikost pozice, náklady, podmínky pro vynechání obchodu, testování a průběžné vyhodnocování. Jeho cílem není předpovědět každý pohyb trhu, ale vytvořit opakovatelný způsob rozhodování, jehož statistické vlastnosti trader zná a jehož rizika dokáže dlouhodobě kontrolovat.








