Co je zpětné testování?
Backtesting je obecná metoda, jak zjistit, jak dobře by strategie nebo model fungoval ex-post. Backtesting hodnotí životaschopnost obchodní strategie tím, že zjišťuje, jak by probíhala s využitím historických dat. Pokud backtesting funguje, obchodníci a analytici mohou mít jistotu, že ji využijí i nadále.
Klíčové způsoby
Pochopení zpětného testování
Backtesting umožňuje obchodníkovi simulovat obchodní strategii s využitím historických dat pro generování výsledků a analýzu rizika a ziskovosti před tím, než riskuje skutečný kapitál.
Dobře provedený zpětný test, který přináší pozitivní výsledky, ujišťuje obchodníky, že strategie je v zásadě zdravá a pravděpodobně přinese zisky, pokud bude realizována ve skutečnosti. Naopak dobře provedený zpětný test, který přináší suboptimální výsledky, přiměje obchodníky strategii změnit nebo odmítnout.
Zvláště komplikované obchodní strategie, jako jsou strategie realizované automatizovanými obchodními systémy, se silně spoléhají na zpětné testování, aby prokázaly svou hodnotu, protože jsou příliš tajemné na to, aby hodnotily jinak.
Dokud může být obchodní nápad kvantifikován, může být zpětně testován. Někteří obchodníci a investoři mohou vyhledávat odborné znalosti kvalifikovaného programátora, aby myšlenku rozvinuli do testovatelné podoby. Obvykle se jedná o programátora, který myšlenku zakóduje do proprietárního jazyka hostovaného obchodní platformou.
Programátor může do systému začlenit uživatelsky definované vstupní proměnné, které obchodníkovi umožní systém „vyladit“. Příkladem může být systém křížení jednoduchého klouzavého průměru (SMA). Obchodník by mohl zadat (nebo změnit) délky dvou klouzavých průměrů používaných v systému. Obchodník by pak mohl zpětně testovat, aby zjistil, které délky klouzavých průměrů by na historických datech dopadly nejlépe.
Ideální scénář zpětného testování
Ideální zpětný test vybírá ukázková data z relevantního časového období o délce trvání, které odráží různé tržní podmínky. Tímto způsobem lze lépe posoudit, zda výsledky zpětného testu představují šťastnou náhodu nebo řádné obchodování.
Soubor historických dat musí zahrnovat skutečně reprezentativní vzorek akcií, včetně akcií společností, které nakonec zbankrotovaly nebo byly prodány či zlikvidovány. Alternativa, zahrnující pouze data z historických akcií, které jsou dodnes, přinese uměle vysoké výnosy zpětného testování.
Zpětný test by měl vzít v úvahu všechny obchodní náklady, i když nevýznamné, protože ty se mohou sčítat v průběhu období zpětného testování a drasticky ovlivnit zdání ziskovosti strategie. Obchodníci by měli zajistit, aby jejich software pro zpětné testování tyto náklady vyúčtoval.
Testování mimo vzorek a dopředné testování výkonnosti poskytují další potvrzení týkající se efektivity systému a mohou ukázat skutečné barvy systému dříve, než je na řadě skutečná hotovost. Silná korelace mezi zpětným testováním, testováním mimo vzorek a dopředným testováním výkonnosti je zásadní pro stanovení životaschopnosti systému obchodování.
Backtesting vs. Forward Performance Testing
Forwardové testování výkonnosti, známé také jako obchodování s papírem, poskytuje obchodníkům další sadu dat mimo vzorek, na kterých mohou systém vyhodnotit. Forwardové testování výkonnosti je simulace skutečného obchodování a zahrnuje sledování logiky systému na živém trhu. Nazývá se také obchodování s papírem, protože všechny obchody jsou prováděny pouze na papíře; to znamená, že vstupy a výstupy obchodů jsou zdokumentovány spolu s případným ziskem nebo ztrátou pro systém, ale žádné reálné obchody nejsou prováděny.
Důležitým aspektem dopředného testování výkonnosti je přesně sledovat logiku systému; v opačném případě se stává obtížné, ne-li nemožné, přesně vyhodnotit tento krok procesu. Obchodníci by měli být upřímní ohledně všech vstupů a odchodů do obchodu a vyvarovat se chování, jako je vybírání třešniček nebo nezahrnutí obchodu na papíře zdůvodňujícího, že „bych ten obchod nikdy nevzal“. Pokud by se obchod uskutečnil podle logiky systému, měl by být zdokumentován a vyhodnocen.
Backtesting vs. analýza scénářů
Zatímco zpětné testování využívá k testování vhodnosti nebo úspěchu aktuální historická data, analýza scénářů využívá hypotetická data, která simulují různé možné výsledky. Analýza scénářů například simuluje specifické změny v hodnotách cenných papírů portfolia nebo klíčové faktory, které se odehrávají, jako je změna úrokové sazby.
Analýza scénářů se běžně používá k odhadu změn hodnoty portfolia v reakci na nepříznivou událost a může být použita ke zkoumání teoretického nejhoršího scénáře.
Některé úskalí zpětného testování
Aby zpětné testování přineslo smysluplné výsledky, musí obchodníci vypracovat své strategie a otestovat je v dobré víře, přičemž se pokud možno vyhnou zkreslení. To znamená, že strategie by měla být vypracována, aniž by se spoléhala na data použitá při zpětném testování.
To je těžší, než se zdá. Obchodníci obvykle sestavují strategie na základě historických dat. Musí být přísní, pokud jde o testování s jinými datovými soubory, než na kterých trénují své modely. Jinak zpětný test přinese zářivé výsledky, které nic neznamenají.
Stejně tak se obchodníci musí vyhýbat bagrování dat, při kterém testují širokou škálu hypotetických strategií na základě stejného souboru dat, což také přinese úspěchy, které selžou na trzích v reálném čase, protože existuje mnoho neplatných strategií, které by náhodou porazily trh v určitém časovém období.
Jedním ze způsobů, jak kompenzovat tendenci k datovému drapáku nebo třešničkovému výběru, je použít strategii, která uspěje v příslušném časovém období nebo ve vzorku, a zpětně ji otestovat s daty z jiného časového období nebo mimo vzorek. Pokud zpětné testy ve vzorku a mimo vzorek přinesou podobné výsledky, pak je pravděpodobnější, že budou prokázány jako platné.