Jak testovat CFD strategii
Osobní finance a peníze a burza a trading zahrnují také systematické testování obchodních strategií. CFD strategii je vhodné testovat dříve, než na ni trader začne spoléhat s reálnými penězi. Cílem testování není najít systém, který vydělává v každém obchodu, ale zjistit, zda má při dostatečně velkém počtu obchodů potenciálně kladnou očekávanou hodnotu a zda jeho riziko odpovídá obchodníkovi. Test by měl přesně definovat podmínky vstupu, výstupu, stop lossu, take profitu, velikosti pozice a situací, kdy se obchod neprovádí. Do výsledků je nutné zahrnout také spread, komise, financování přes noc a realistický skluz. Například strategie se 45% úspěšností může být zisková, pokud průměrný zisk činí 2 000 Kč a průměrná ztráta 1 000 Kč. Před náklady má očekávanou hodnotu 350 Kč na obchod, ale po započtení nákladů může být skutečná výhoda výrazně nižší. Kvalitní test proto nekončí u několika ziskových obchodů, ale pokračuje přes backtest, test na oddělených datech a následné ověření v reálných podmínkách s malým rizikem.
Nejdříve přesně definujte pravidla strategie
CFD strategii lze smysluplně testovat pouze tehdy, pokud jsou její pravidla dostatečně přesná. Trader musí předem vědět, kdy vstupuje, kdy vystupuje, kam umisťuje stop loss, jak stanovuje velikost pozice a kdy obchod vůbec neotevírá.
Pravidlo typu „nakoupím, když graf vypadá dobře“ nelze objektivně testovat, protože každý obchodník si ho může vyložit jinak. Testovat lze například pravidlo, podle kterého vzniká long signál po uzavření svíčky nad předem definovanou rezistencí a současně musí být splněna další konkrétní podmínka.
Stejná přesnost je potřebná u výstupu. Pokud trader někdy používá pevný take profit, jindy posouvá stop loss a jindy vystupuje podle pocitu, výsledky nelze jednoduše porovnat.
Čím přesnější pravidla jsou, tím menší prostor zůstává pro zpětné přizpůsobování strategie historickým výsledkům.
Backtest ukáže chování strategie v minulosti
Backtest spočívá v aplikaci přesně definovaných pravidel na historická tržní data. Trader postupuje chronologicky a vyhodnocuje, jak by strategie v minulosti jednotlivé situace řešila.
Při ručním backtestu je důležité nevyužívat informace, které v daném okamžiku historicky ještě nebyly známé. Pokud například při vyhodnocování vstupu vidíte další vývoj grafu, nesmíte ho při rozhodování zpětně zohledňovat.
Backtest může odhalit například to, že strategie funguje dobře v silném trendu, ale vytváří sérii ztrát při nízké volatilitě nebo bočním trhu.
Pro kvalitnější výsledek je vhodné testovat dostatečně dlouhé období a zahrnout různé typy tržních podmínek, nikoli pouze období, ve kterém strategie historicky fungovala nejlépe.
Testujte dostatečně velký počet obchodů
Malý počet obchodů neposkytuje spolehlivý obraz o dlouhodobé kvalitě strategie. Deset vítězných obchodů může být výsledkem náhody stejně jako deset ztrátových obchodů nemusí znamenat, že strategie nefunguje.
Vhodný počet závisí na frekvenci strategie a variabilitě výsledků, ale pro seriózní vyhodnocení je obecně užitečné pracovat spíše se stovkami obchodů než s desítkami.
Pokud například strategie během 200 obchodů dosáhne 45% úspěšnosti, průměrného zisku 2 000 Kč a průměrné ztráty 1 000 Kč, lze její statistické vlastnosti hodnotit podstatně lépe než po 15 obchodech.
Velký vzorek zároveň umožňuje sledovat maximální sérii ztrát, drawdown, rozložení výsledků a chování strategie v různých obdobích.
Počítejte skutečné náklady CFD
Backtest, který ignoruje náklady, může vykazovat ziskovou strategii, která by v reálném obchodování byla ztrátová. U CFD je proto potřeba počítat minimálně se spreadem a podle konkrétního produktu také s komisemi, financováním přes noc a dalšími relevantními náklady.
Význam nákladů závisí na obchodním stylu. U dlouhého swingového obchodu může být zásadní financování, zatímco u velmi krátkodobé strategie může mít výrazný vliv spread a opakované vstupy a výstupy.
Pokud strategie například vytváří průměrný hrubý zisk 250 Kč na obchod a průměrné náklady dosahují 100 Kč, zůstává před dalšími vlivy pouze 150 Kč.
Čím menší je obchodní výhoda strategie, tím větší význam mají transakční náklady. Test by proto měl používat realistické předpoklady odpovídající instrumentu a poskytovateli, se kterým chce trader obchodovat.
Vyhodnocujte očekávanou hodnotu
Očekávaná hodnota ukazuje průměrný výsledek jednoho obchodu při dostatečně velkém počtu opakování. Je užitečnější než samotná úspěšnost strategie, protože zohledňuje také velikost zisků a ztrát.
Pokud strategie vyhraje 45 % obchodů, průměrný vítězný obchod činí 2 000 Kč a průměrný ztrátový obchod 1 000 Kč, vychází před náklady očekávaná hodnota 350 Kč na obchod.
Výpočet je založen na vztahu 0,45 × 2 000 − 0,55 × 1 000 = 350 Kč. Neznamená to, že každý jednotlivý obchod skončí ziskem 350 Kč. Jde o statistický průměr, který se může projevit až při větším počtu obchodů.
Po započtení spreadu, komisí a financování je důležité sledovat čistou očekávanou hodnotu, protože právě ta je relevantní pro skutečné obchodování.
Sledujte maximální drawdown
Maximální drawdown představuje největší pokles obchodního účtu nebo hodnoty strategie od předchozího maxima k následnému minimu. Ukazuje, jak hluboké ztrátové období může trader potenciálně zažít.
Strategie s výnosem 20 % nemusí být automaticky lepší než strategie s výnosem 15 %, pokud k dosažení výnosu potřebovala například několikanásobně větší drawdown.
Pokud účet 100 000 Kč klesne na 80 000 Kč, drawdown činí 20 %. K návratu na původních 100 000 Kč je následně potřeba růst o 25 %, nikoli o 20 %.
Test proto musí ukázat nejen to, kolik strategie vydělala, ale také jak velké ztrátové období musel trader během cesty k výsledku překonat.
Testujte sérii ztrát
Každá strategie může vytvořit sérii ztrátových obchodů. Trader proto potřebuje vědět, jak dlouhá série se v historických datech objevila a zda by ji dokázal psychologicky i finančně zvládnout.
Pokud například backtest ukáže nejdelší sérii 12 ztrát a trader riskuje 1 % účtu na každý obchod, historická zkušenost naznačuje, že musí být připraven i na výraznější ztrátové období.
Skutečná budoucí série může být samozřejmě delší než historicky zaznamenaná. Historie neposkytuje záruku maximálního počtu budoucích ztrát.
Testování proto pomáhá nastavit realistická očekávání, nikoli přesně předpovědět další drawdown.
Oddělte data pro vývoj a ověření
Jednou z nejčastějších chyb je vytvořit strategii a následně ji testovat pouze na stejných datech, která byla použita k jejímu vývoji. Takový výsledek může být příliš optimistický.
Vhodnější je rozdělit historická data na část pro vývoj strategie a část, kterou trader při tvorbě pravidel nepoužívá. Na této oddělené části lze následně ověřit, zda strategie funguje i mimo data, na kterých byla optimalizována.
Pokud například trader vyvíjí strategii na datech z let 2020 až 2024, může část pozdějších dat ponechat stranou pro následné ověření. Konkrétní období však musí odpovídat dostupným datům a obchodovanému instrumentu.
Rozdíl mezi výsledkem vývojové a ověřovací části může odhalit, že strategie byla příliš přizpůsobena historickému vzorku.
Pozor na overfitting strategie
Overfitting neboli přeoptimalizování nastává tehdy, když trader vytvoří příliš mnoho pravidel nebo parametrů tak, aby strategie co nejlépe odpovídala minulým datům.
Strategie může například historicky fungovat pouze díky velmi konkrétním kombinacím indikátorů, časů a hodnot, které byly vybrány až po sledování výsledků.
Čím více parametrů trader optimalizuje, tím větší je riziko, že zachytí náhodné vlastnosti historického vzorku místo skutečné tržní výhody.
Robustnější strategie bývá často jednodušší a funguje v určitém rozmezí parametrů. Pokud například drobná změna periody indikátoru způsobí úplný rozpad výsledků, je vhodné zpozornět.
Otestujte více tržních podmínek
CFD strategie by neměla být hodnocena pouze během jednoho typu trhu. Je vhodné sledovat její chování během růstových trendů, poklesů, konsolidací, nízké volatility i výrazných cenových pohybů.
Strategie založená na návratu ceny k průměru může například fungovat dobře v bočním trhu, ale během silného trendu vytvářet opakované ztráty.
Naopak trendová strategie může mít během konsolidace sérii falešných průrazů.
Pokud trader zná prostředí, ve kterém strategie funguje a ve kterém nefunguje, může vytvořit kvalitnější filtr obchodních situací místo slepého používání strategie za všech okolností.
Testujte různé časové rámce samostatně
Výsledky strategie mohou být výrazně odlišné podle časového rámce. Strategie na pětiminutovém grafu má jiné náklady, frekvenci obchodů i množství tržního šumu než stejná logika na denním grafu.
Nelze proto jednoduše předpokládat, že strategie fungující na hodinovém grafu bude stejně výkonná na patnáctiminutovém grafu.
Každý časový rámec by měl být testován samostatně a následně porovnán podle čistého výsledku, drawdownu, počtu obchodů a nákladů.
Pokud trader kombinuje více časových rámců, musí být součástí testu také přesná pravidla této kombinace.
Backtestujte vstupy i výstupy realisticky
Velmi přesný vstup nemusí být v reálném obchodování dosažitelný. Historický graf může například ukazovat ideální cenu, která byla na trhu dostupná jen krátce.
Stejný problém se týká výstupů. Pokud strategie používá stop loss a take profit, je nutné respektovat skutečné pořadí pohybu ceny a nevybírat zpětně vždy výhodnější variantu.
U svíčkových dat s nízkým rozlišením může být obtížné zjistit, zda cena během jedné svíčky nejprve zasáhla stop loss, nebo take profit. V takové situaci je nutné použít konzervativní předpoklad nebo kvalitnější data.
Čím přesnější je časové rozlišení dat a model obchodních podmínek, tím realističtější může být výsledek testu.
Po backtestu proveďte forward test
Forward test ověřuje strategii na nových tržních datech, která nebyla použita při její tvorbě. Může probíhat na demo účtu nebo jiným způsobem, který simuluje reálné obchodování.
Výhodou je, že trader musí reagovat na situace postupně a nevidí budoucí vývoj grafu. Tím se test více přibližuje skutečnému rozhodování.
Forward test může také odhalit praktické problémy, které historická data nezachytila, například horší exekuci, rozdílný spread nebo psychologické potíže při čekání na obchod.
Princip forward testování lze dále rozšířit pomocí forward testingu Forex strategií.
Porovnávejte backtest s reálným obchodováním
Rozdíl mezi historickým testem a reálným výsledkem je důležitý diagnostický signál. Pokud backtest vykazuje vysokou výkonnost, ale forward test výrazně zaostává, může být problém v nákladech, exekuci, změně trhu nebo samotném modelu strategie.
Trader by měl porovnávat například průměrný zisk, průměrnou ztrátu, úspěšnost, počet obchodů, spread, slippage a drawdown.
Pokud se rozdíl opakuje, není vhodné automaticky upravovat strategii tak, aby odpovídala několika posledním obchodům. Nejdříve je potřeba zjistit příčinu rozdílu.
Testujte risk management samostatně
Stejnou vstupní strategii lze obchodovat s různou velikostí rizika a výsledný průběh účtu může být úplně odlišný. Proto je vhodné testovat také pravidla řízení kapitálu.
Trader může například porovnat pevné riziko 0,5 % na obchod s rizikem 1 %. Vyšší riziko může zvýšit potenciální výnos, ale současně zvětšit drawdown a citlivost účtu na sérii ztrát.
Užitečné je sledovat také maximální celkovou expozici při více současných pozicích. Tři obchody riskující každý 0,5 % nemusí představovat pouze 1,5 % rizika, pokud jsou silně korelované a mohou se pohybovat proti traderovi současně.
Testování strategie bez testování jejího risk managementu proto neposkytuje kompletní obraz.
Veďte obchodní deník
Výsledky testování je vhodné systematicky zaznamenávat. Obchodní deník umožňuje sledovat nejen finanční výsledek, ale také důvod vstupu, typ setupu, tržní prostředí, dodržení pravidel a případné chyby.
Pokud například po 200 obchodech zjistíte, že strategie má kladný výsledek pouze při vysoké volatilitě, jde o důležitou informaci pro další úpravu systému.
Deník zároveň umožňuje rozlišit ztrátu způsobenou strategií od ztráty způsobené porušením obchodního plánu.
Podrobnější principy evidence lze využít v článku jak si vést obchodní deník.
Nejčastější chyby při testování CFD strategie
Jednou z největších chyb je měnit pravidla pokaždé, když se objeví ztrátový obchod. Tím vzniká systém, který je neustále přizpůsobován náhodnému výsledku.
Dalším problémem je ignorování spreadu, komisí, financování a slippage. Strategie s malou výhodou může být po započtení nákladů zcela neprofitabilní.
Častá je také selekce pouze nejlepších historických obchodů. Pokud trader při testování nevědomě vynechá nevýhodné situace, výsledek bude zkreslený.
Problematické je rovněž optimalizovat strategii podle jediného období nebo instrumentu. Robustnější systém by měl být schopen fungovat v různých podmínkách alespoň v rámci svého zamýšleného použití.
Kdy je CFD strategie dostatečně otestovaná
Neexistuje univerzální počet obchodů, po kterém lze strategii označit za definitivně ověřenou. Kvalita testu závisí na frekvenci strategie, délce dostupných dat, typu instrumentu, množství parametrů a různorodosti tržních podmínek.
Rozumným cílem je mít dostatečný historický vzorek, oddělená validační data, realistické náklady a následný forward test. Teprve kombinace těchto kroků poskytuje výrazně kvalitnější informace než samotný backtest.
Trader by měl znát také očekávaný drawdown, pravděpodobné série ztrát a maximální riziko, které je schopen psychologicky i finančně přijmout.
Strategie nemusí být dokonalá. Důležité je, aby její výsledky byly dostatečně robustní a aby trader věděl, v jakých podmínkách má systém používat.
Testování CFD strategie před reálným kapitálem
Testování CFD strategie by mělo začít přesnou definicí pravidel a následovat systematickým backtestem na dostatečně dlouhém historickém vzorku. Do testu musí být zahrnuty všechny podstatné náklady a realistické podmínky provedení, protože právě ty mohou změnit zdánlivě ziskovou strategii na ztrátovou.
Například strategie s 45% úspěšností, průměrným ziskem 2 000 Kč a průměrnou ztrátou 1 000 Kč má před náklady očekávanou hodnotu 350 Kč na obchod. Pokud ale průměrné náklady dosahují 200 Kč, čistá očekávaná hodnota klesá na 150 Kč. Pokud se navíc v reálném obchodování zhorší exekuce nebo se změní tržní prostředí, skutečný výsledek může být ještě slabší.
Proto je důležité sledovat nejen celkový výnos, ale také očekávanou hodnotu, maximální drawdown, série ztrát, průměrný zisk a ztrátu, počet obchodů a chování strategie v různých tržních podmínkách. Samostatnou pozornost vyžaduje risk management, protože stejná strategie může mít při různém riziku na obchod úplně jiný průběh kapitálu.
Po vytvoření strategie je vhodné oddělit data použitá pro vývoj od dat určených k ověření. Následný forward test potom ukáže, zda trader dokáže pravidla skutečně aplikovat bez znalosti budoucího vývoje. Právě zde se často objeví rozdíl mezi teoretickým backtestem a praktickým obchodováním.
Testování by nemělo sloužit k nalezení dokonalého nastavení, které historicky vydělalo nejvíce. Přílišná optimalizace může vést k overfittingu a vytvořit strategii, která skvěle popisuje minulost, ale špatně funguje na nových datech. Robustnější systém by měl zůstat použitelný i při rozumných změnách parametrů a v různých tržních podmínkách.
Teprve když trader zná statistické vlastnosti strategie, její rizika, náklady a omezení, má smysl přejít k reálnému obchodování s malým rizikem. Ani kvalitní test však nezaručuje budoucí zisk. Jeho úkolem je snížit nejistotu, odhalit slabá místa systému a umožnit obchodníkovi rozhodovat se podle dat místo podle několika náhodných výsledků.








