Forward testing CFD strategií
Osobní finance a peníze a burza a trading zahrnují také ověřování obchodních strategií v podmínkách, které se co nejvíce přibližují skutečnému obchodování. Forward testing CFD strategií znamená testování systému na nových datech, která vznikají postupně a nebyla použita při jeho tvorbě nebo optimalizaci. Trader tak musí reagovat na trh bez znalosti budoucího vývoje. Forward test navazuje na backtest a pomáhá zjistit, zda se historická statistická výhoda projeví také mimo původní vzorek. Sleduje se například počet obchodů, úspěšnost, průměrný zisk a ztráta, očekávaná hodnota, drawdown, náklady, skluz a dodržování pravidel. Například strategie může v backtestu vykazovat 50% úspěšnost, ale během forward testu pouze 35 %. Samotný rozdíl ještě neznamená, že strategie nefunguje, protože výsledky kolísají a vzorek může být malý. Pokud se však rozdíl opakuje na dostatečně dlouhém vzorku a zároveň se zhorší další statistiky, může forward test odhalit přeoptimalizování nebo příliš optimistický backtest. Smyslem proto není získat co nejrychleji zisk, ale ověřit robustnost systému před nasazením významnějšího kapitálu.
Co je forward testing CFD strategie
Forward testing je průběžné ověřování obchodní strategie na nových tržních datech, která se objevují až po dokončení jejího vývoje. Trader nezná další svíčky ani budoucí cenový pohyb a musí postupovat podle předem stanovených pravidel.
Právě tím se forward test liší od klasického backtestu. Při backtestu prochází trader historická data, zatímco při forward testu vznikají obchodní situace postupně stejně jako na aktuálním trhu.
Test může probíhat na demo účtu nebo v jiném simulačním prostředí. U CFD je důležité co nejvěrněji napodobit také spread, velikost pozice, stop loss, take profit a náklady spojené s držením pozice.
Forward testing tedy není hledání nového systému. Je to především kontrola toho, zda již definovaný systém funguje v novém prostředí a zda ho trader dokáže správně provádět.
Proč forward testovat CFD strategii
Hlavním důvodem je ověřit, zda výsledky backtestu nebyly příliš ovlivněny historickým vzorkem. Strategie může v minulosti fungovat velmi dobře, protože byla částečně nebo výrazně přizpůsobena konkrétním podmínkám.
Forward test poskytuje další vrstvu ověření. Pokud strategie pokračuje v podobném statistickém chování i na nových datech, je to příznivější signál robustnosti.
Test současně odhaluje praktické problémy, které samotný historický graf nemusí zachytit. Trader může například zjistit, že některé vstupy v reálném čase nedokáže provést za cenu, se kterou počítal při backtestu.
Forward test také prověřuje disciplínu. Strategie může být teoreticky zisková, ale pokud trader pravidelně vynechává signály nebo mění stop loss podle emocí, výsledky se mohou výrazně odchýlit od backtestu.
Forward test začíná až po dokončení pravidel
Nejdříve musí být strategie dostatečně přesně definována. Trader musí znát podmínky vstupu, výstupu, stop lossu, take profitu, velikosti pozice a situace, kdy obchod neotevře.
Pokud trader během forward testu pravidla průběžně mění podle toho, co se právě stalo, přestává testovat původní strategii.
Například systém může vyžadovat long vstup pouze tehdy, když je na vyšším časovém rámci rostoucí trend a na nižším grafu dojde k potvrzenému pokračování. Pokud trader po několika ztrátách přidá další filtr, vzniká nová verze systému, kterou je potřeba znovu testovat.
Před začátkem forward testu je proto vhodné sepsat pravidla a stanovit, které parametry jsou pevné a které se během testu nemění.
Jak připravit CFD forward test
Nejprve je potřeba určit konkrétní instrumenty, časový rámec a obchodní období. Strategie určená pro indexové CFD může mít jiné požadavky než systém pro kryptoměnové CFD nebo měnové páry.
Dále je vhodné nastavit velikost simulovaného účtu a maximální riziko na obchod. Pokud má například testovací účet hodnotu 100 000 Kč a systém riskuje 0,5 %, maximální plánovaná ztráta jednoho obchodu činí 500 Kč.
Trader by měl předem stanovit také způsob započítání spreadu, komisí, financování a případného skluzu. Čím realističtější je simulace, tím hodnotnější bude následné porovnání s backtestem.
Součástí přípravy by měla být také evidence všech obchodů a jasně stanovené období, po které bude test probíhat.
Demo účet versus malé reálné peníze
Demo účet umožňuje testovat strategii bez přímého finančního rizika. Je vhodný především pro ověření, zda trader dokáže systém technicky provádět a zda se jeho výsledky přibližují backtestu.
Demo prostředí však nemusí dokonale napodobovat psychologii skutečné ztráty peněz. Trader může například bez problémů dodržovat stop loss na demo účtu, ale na reálném účtu ho začne posouvat.
Malý reálný účet proto může být další fází ověřování, nikoli však náhradou za kvalitní backtest. Výše rizika by měla být natolik nízká, aby případné ztráty neměly zásadní dopad na finanční situaci tradera.
Přechod z demo testu na reálné obchodování by měl být postupný a založený na výsledcích, nikoli na netrpělivosti.
Co během forward testu zapisovat
Každý obchod by měl být zaznamenán stejně jako při plánovaném reálném obchodování. Základ tvoří datum, čas, instrument, směr, vstup, výstup, velikost pozice, stop loss, take profit a výsledek.
Dále je vhodné zaznamenat důvod vstupu, typ setupu, tržní podmínky a případné odchylky od pravidel.
Užitečné jsou také údaje o spreadu, skluzu, financování a dalších nákladech, pokud je lze spolehlivě zjistit.
Screenshot grafu před vstupem a po výstupu může pomoci při pozdějším posuzování toho, zda byl obchod skutečně v souladu se systémem.
Podrobnou evidenci lze propojit s principy vedení obchodního deníku.
Jak dlouho forward testovat
Neexistuje univerzální délka forward testu. Rozhodující je počet obchodů a různorodost tržních podmínek, nikoli pouze počet kalendářních dnů.
Strategie, která vytváří deset obchodů měsíčně, potřebuje k získání většího vzorku podstatně delší období než intradenní systém vytvářející několik obchodů denně.
Pokud například strategie vytvoří během jednoho měsíce pouze 12 obchodů, nelze z jejich výsledku spolehlivě usuzovat na dlouhodobou výkonnost.
Užitečnější je stanovit minimální počet obchodů nebo sledovaných příležitostí a současně zajistit, aby test zahrnoval různé tržní podmínky.
Porovnávejte forward test s backtestem
Po dostatečném vzorku je vhodné porovnat výsledky s historickým testem. Nejde pouze o celkový zisk nebo ztrátu, ale o více statistických charakteristik.
Sledovat lze úspěšnost, průměrný vítězný obchod, průměrný ztrátový obchod, očekávanou hodnotu, maximální drawdown, počet obchodů a délku sérií ztrát.
Pokud například backtest vykazoval 45% úspěšnost a forward test 42 %, nemusí jít o významný problém. Pokud však backtest vykazoval 45 % a forward test po dostatečném vzorku pouze 20 %, je potřeba hledat příčinu.
Rozdíl může vzniknout změnou volatility, jinými náklady, změnou tržního prostředí, chybami při exekuci nebo přeoptimalizováním strategie.
Forward test odhaluje přeoptimalizování
Přeoptimalizovaná strategie často vykazuje velmi dobré výsledky na historických datech a výrazně slabší výkon na nových datech. Forward test proto představuje důležitý způsob kontroly robustnosti.
Pokud strategie například funguje pouze při jediné přesné hodnotě indikátoru a během forward testu se její výhoda rychle rozpadne, může být příliš přizpůsobena minulosti.
Samotný slabší forward test však ještě není důkazem overfittingu. Výsledky jednotlivých obchodů jsou náhodné a krátký vzorek může být výrazně odlišný od dlouhodobého průměru.
Pro posouzení je důležité sledovat delší období a současně analyzovat, zda se změnily další vlastnosti strategie.
Více o identifikaci tohoto problému nabízí článek jak poznat přeoptimalizovanou strategii.
Kontrolujte náklady CFD
Forward test by měl používat realistické obchodní náklady. U CFD může mít význam spread, komise, financování přes noc a skluz při exekuci.
Rozdíl mezi backtestem a forward testem může vzniknout i tehdy, když historická simulace předpokládala příliš optimistické podmínky.
Například pokud strategie vytváří průměrný hrubý zisk 300 Kč na obchod a reálné náklady dosahují průměrně 100 Kč, jedna třetina hrubého výnosu zmizí ještě před dalšími odchylkami.
U velmi krátkodobých CFD strategií může být vliv nákladů ještě významnější, protože trader uskutečňuje velké množství vstupů a výstupů.
Testujte skutečnou exekuci
Jedním z důležitých rozdílů mezi backtestem a forward testem je způsob provedení obchodů. Historický graf může ukazovat cenu, která vypadá ideálně, ale skutečný příkaz nemusí být proveden přesně na této hodnotě.
Slippage může být významnější při prudkých pohybech, nízké likviditě nebo během zveřejňování důležitých ekonomických dat.
Trader by proto měl zaznamenávat rozdíl mezi plánovanou a skutečnou cenou vstupu nebo výstupu, pokud jsou tyto údaje dostupné.
Pokud systém vydělává pouze při téměř dokonalé exekuci, může být pro reálné použití příliš citlivý.
Nezasahujte do strategie během testu bez jasného důvodu
Velkým problémem forward testování je nutkání upravovat systém po několika ztrátových obchodech. Trader může například začít přidávat další filtr, posouvat stop loss nebo měnit take profit.
Tím však vzniká nový systém. Pokud je změna oprávněná, měla by být zaznamenána a nová verze by měla projít samostatným testováním.
Průběžné úpravy podle posledních výsledků mohou vytvořit další formu přeoptimalizování.
Během původního testu je proto vhodné dodržovat pravidla a změny provádět až po předem stanoveném vyhodnocovacím období.
Vyhodnocujte očekávanou hodnotu
Forward test by měl sledovat také očekávanou hodnotu strategie. Ta kombinuje pravděpodobnost zisku s velikostí průměrného zisku a ztráty.
Pokud systém vyhraje 40 % obchodů, 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č. Pokud jsou průměrné náklady 100 Kč, čistá očekávaná hodnota klesá na 300 Kč.
Jednotlivé obchody samozřejmě nemusí odpovídat tomuto průměru. Hodnota je užitečná především při hodnocení většího vzorku.
Sledujte drawdown a série ztrát
Forward test musí ukázat také to, jak strategie zvládá nepříznivé období. Zisková strategie může být prakticky nepoužitelná, pokud její drawdown překračuje toleranci tradera.
Pokud například systém v backtestu vykázal maximální drawdown 15 %, forward test by měl sledovat, zda se podobná riziková charakteristika začíná objevovat také v novém vzorku.
Budoucí drawdown může být samozřejmě vyšší než historické maximum. Proto není vhodné považovat minulou nejhorší sérii za garantovaný limit.
Právě sledování sérií ztrát pomáhá určit, zda je nastavené riziko na obchod realistické.
Forward testujte různé tržní podmínky
Ideální forward test by měl zahrnout více typů prostředí. Strategie může například během trendu fungovat dobře, ale při konsolidaci generovat falešné signály.
Pokud test probíhá pouze během jednoho velmi příznivého období, nelze snadno zjistit, jak se systém chová mimo něj.
Užitečné je sledovat volatilitu, trend, konsolidaci a případně významné fundamentální události, pokud na ně strategie reaguje.
Takové rozdělení umožňuje zjistit, zda je potřeba určité podmínky předem filtrovat nebo zda strategie funguje dostatečně robustně v širším prostředí.
Forward test a psychologie tradera
Forward test není pouze technickou kontrolou strategie. Ověřuje také schopnost člověka dodržovat pravidla bez znalosti budoucího výsledku.
Trader může mít například v backtestu naprosto jasné pravidlo pro stop loss, ale při forward testu začne po sérii ztrát stop posouvat dál.
Takový problém není nutně chybou strategie, ale chybou jejího provedení. Proto je důležité zaznamenávat i odchylky od plánu.
Pokud se opakují, trader by měl řešit proces rozhodování dříve, než začne zvyšovat velikost pozice.
Forward test na demo účtu
Demo účet je vhodný pro první fázi ověřování, protože umožňuje sledovat strategii bez rizika ztráty vlastního kapitálu.
Trader může ověřit, zda dokáže správně zadávat příkazy, dodržovat velikost pozice, používat stop loss a evidovat výsledky.
Demo výsledky však mohou být lepší než skutečné výsledky, protože chybí psychologický tlak spojený s reálnými penězi.
Proto je vhodné demo forward test považovat za jednu část ověřovacího procesu, nikoli za definitivní důkaz ziskovosti.
Přechod z forward testu na reálné CFD
Přechod na reálný účet by měl být postupný. Pokud strategie splnila předem stanovené podmínky testu, lze ji nejprve obchodovat s velmi malým rizikem a sledovat, zda se výsledky přibližují očekávání.
Pokud se objeví výrazná odchylka, není vhodné automaticky zvyšovat riziko s cílem „dohnat“ očekávaný výsledek.
Nejdříve je potřeba zjistit, zda problém vzniká změnou trhu, náklady, exekucí nebo nedodržováním pravidel.
Teprve dlouhodobější shoda mezi testovanými a skutečnými charakteristikami může být důvodem pro postupné navyšování kapitálu, vždy v rámci předem stanoveného risk managementu.
Nejčastější chyby při forward testování CFD
Častou chybou je příliš krátký test. Několik ziskových obchodů neprokazuje robustnost strategie a několik ztrátových obchodů ji automaticky nevyvrací.
Dalším problémem je průběžná změna pravidel podle posledních výsledků. Tím se testovaná strategie neustále mění a výsledky přestávají být porovnatelné.
Chybou je také ignorování nákladů a skluzu. Pokud jsou tyto položky v reálném obchodování významné, musí se objevit i v hodnocení testu.
Někteří tradeři sledují pouze celkový zisk, ale ignorují drawdown, série ztrát, průměrnou ztrátu a počet obchodů. Takový pohled může vytvořit falešně pozitivní dojem.
Praktický scénář forward testu CFD strategie
Trader má systém pro indexové CFD, který v backtestu vytvořil 250 obchodů. Strategie riskuje 0,5 % účtu na obchod a vykazuje kladnou očekávanou hodnotu i po započtení předpokládaných nákladů.
Pro forward test nastaví účet s hodnotou 100 000 Kč, takže plánované riziko jednoho obchodu odpovídá přibližně 500 Kč. Každý signál zapíše před vstupem a po výstupu zaznamená skutečný výsledek, náklady, případný skluz a to, zda dodržel všechna pravidla.
Po 50 obchodech zjistí, že úspěšnost je nižší než v backtestu, ale průměrný zisk a průměrná ztráta zůstávají podobné. Strategie proto nemusí být automaticky problémová. Pokud však zároveň zjistí, že skutečné náklady jsou výrazně vyšší a průměrná ztráta narostla, je potřeba systém znovu analyzovat.
Pokud by trader po prvních deseti ztrátových obchodech změnil pravidla, výsledek by již nebyl čistým forward testem původní strategie. Novou verzi by proto musel začít ověřovat znovu.
Kdy je forward test dostatečně přesvědčivý
Neexistuje univerzální počet obchodů, který by poskytoval jistotu, že CFD strategie bude dlouhodobě zisková. Požadovaný vzorek závisí na frekvenci obchodů, variabilitě výsledků a typu strategie.
Smyslem je získat dostatek pozorování z různých tržních situací a současně ověřit, zda se klíčové statistiky příliš neodchylují od robustního backtestu.
Důležité je sledovat nejen výnos, ale také očekávanou hodnotu, drawdown, sérii ztrát, náklady a kvalitu provedení.
Čím méně obchodů strategie vytváří, tím déle může být potřeba čekat na dostatečný vzorek.
Forward testing jako poslední kontrola před reálným kapitálem
Forward testing CFD strategií představuje důležitý krok mezi historickým backtestem a skutečným obchodováním. Jeho hlavním přínosem je ověření, zda se pravidla chovají na nových datech podobně jako v historickém testu a zda je trader dokáže v reálném čase skutečně dodržovat.
Například pokud strategie v backtestu vykazuje 45% úspěšnost, není problém, když má první desítky forward obchodů poněkud odlišný výsledek. Mnohem důležitější je sledovat, zda se při větším vzorku přibližuje očekávaným charakteristikám také průměrný zisk, průměrná ztráta, očekávaná hodnota a drawdown.
Forward test musí být prováděn podle předem uzavřených pravidel. Jakmile trader začne po jednotlivých ztrátách přidávat filtry nebo měnit výstupy, přestává testovat původní systém. Pokud je změna opodstatněná, vzniká nová verze strategie, která potřebuje vlastní testování.
Velkou pozornost je nutné věnovat také rozdílu mezi simulovaným a skutečným provedením. Spread, skluz, financování přes noc a případné další náklady mohou výrazně změnit výsledek zejména u krátkodobých CFD strategií. Právě proto je vhodné sledovat skutečné obchodní podmínky a porovnávat je s předpoklady použitými v backtestu.
Kvalitní forward test současně prověřuje psychologii tradera. Pokud obchodník v průběhu ztrátové série začne porušovat vlastní pravidla, systém nemusí být nutně špatný. Problém může být v tom, že jeho způsob provádění neodpovídá způsobu, jakým byl systém testován.
Největší hodnotu má proto forward test jako součást celého procesu: nejprve přesně definovat strategii, následně ji backtestovat, ověřit na oddělených datech, potom provést forward test a teprve následně uvažovat o postupném nasazení malého reálného rizika. Ani úspěšný forward test samozřejmě nezaručuje budoucí zisk. Jeho úkolem je především odhalit slabá místa strategie a snížit riziko, že trader vloží významný kapitál do systému, který funguje pouze na historickém grafu.








