25. září 2026 · výzkum

Jak poznám, zda šlo s tržními daty v backtestu skutečně obchodovat?

Jak poznám, zda šlo s tržními daty v backtestu skutečně obchodovat?

Řádek tržních dat může být naprosto přesný, a přesto nemusí být použitelným podkladem pro backtest. K obchodu došlo, cena sedí a časové razítko je platné, ale datový tok ho mohl doručit se zpožděním, dodavatel ho mohl později opravit nebo uvedený trh nemusel být vaší strategii dostupný.

Chcete-li zjistit, zda se s historickými daty dalo obchodovat, prověřte víc než jen čas události. Potřebujete vědět, co řádek popisuje, kdy se stal dostupným systému, jaký trh nebo instrument představuje a zda kotace či obchod mohly reálně posloužit jako podklad pro váš příkaz.

Stačí pro backtest správná historická cena?

Ne. Přesnost odpovídá na otázku „Jakou cenu zdroj nakonec zaznamenal?“ Backtest musí odpovědět také na otázky „Co mohla moje strategie vědět v okamžiku rozhodnutí?“ a „Co mohla provést?“ Jde o dvě odlišné věci.

Představte si, že se kryptoměnový obchod uskuteční ve 12:00:00.120, ale datový stream vašeho dodavatele ho doručí vašemu procesu až ve 12:00:00.480. Strategie, která se rozhoduje v .200, tento obchod použít nemůže, přestože jeho čas události předchází rozhodnutí. Pokud se v historickém souboru uchovává jen čas události, backtest může strategii nenápadně přisoudit informace, které její živý proces ještě nedostal.

Čas nebo údajCo vám říkáCo se v backtestu pokazí, pokud chybí
Čas událostiKdy podle burzy událost nastalaZáměna času na trhu za dostupnost pro strategii
Čas přijetíKdy zprávu přijal váš sběrač datPoužití zpožděných dat, jako by dorazila okamžitě
Pořadové číslo nebo ID aktualizaceKam událost patří v pořadí datového tokuZpracování aktualizací ve špatném pořadí nebo jejich tiché vynechání
Čas opravyKdy se stala známou opravená historická hodnotaBacktestování s hodnotou, která v původním datovém toku nebyla

Pokud váš archiv neobsahuje časy přijetí, přiznejte tuto mezeru. Můžete otestovat předpokládanou latenci nebo omezit závěr na výzkum založený na časech událostí. Přesnou množinu dostupných informací nelze zpětně sestavit z časových razítek, která se nikdy neukládala.

Jak poznám, zda bylo možné kotaci realizovat?

Začněte trhem, na který by váš příkaz skutečně dorazil. Konsolidovaná nejlepší nákupní a prodejní kotace může shrnovat několik trhů. Nedokazuje však, že váš účet měl přístup k zobrazenému objemu, že kotace platila ještě v okamžiku doručení příkazu ani že by trh přijal typ vašeho příkazu.

U tržního příkazu je plnění za středovou cenu obvykle fikce. Užitečnější odhad postupuje viditelnou knihou podle objemu příkazu a pak připočítá poplatky a předpoklad latence nebo cenového dopadu. Pokud máte jen data nejlepší nabídky a poptávky, omezte své závěry: první úroveň odhadnout můžete, hloubku, která se nikdy nezaznamenala, ale odvodit nelze.

U limitního příkazu dotyk ceny neznamená, že došlo k plnění. Dostupné množství mohou nejdřív spotřebovat příkazy před vámi. Pořadí ve frontě většinou z běžných snímků knihy nepoznáte, takže pravidlo, které předpokládá plnění při dotyku ceny, berte jako optimistický scénář, nikoli jako důkaz toho, co se skutečně stalo.

Jednominutová svíčka vám může říct, že minimum překročilo vaši limitní cenu. Neřekne vám, zda váš čekající příkaz dorazil na trh před dosažením minima, jaký objem se tam zobchodoval ani kolik příkazů ve frontě bylo před vámi.

Co mám zkontrolovat, než začnu archivu tržních dat důvěřovat?

Nejdřív kontroluji obyčejné věci. Odhalí víc chybných výzkumů než sofistikovaný model exekuce připojený k porouchanému datovému toku.

Poslední kontrola zní skoro až příliš jednoduše. Jednou jsem celé dopoledne pátral po zdánlivé změně režimu volatility. Nakonec se ukázalo, že se po migraci datového toku změnily jednotky pole s množstvím. Graf vypadal skvěle, jen jednotka byla špatně.

Jak otestuji, zda dostupnost dat mění výsledek?

Proveďte menší test citlivosti v okolí hranice, na níž strategie rozhoduje. Posuňte použitelná data o realistická zpoždění, vyřaďte aktualizace s narušenou návazností pořadových čísel a tam, kde máte data, porovnejte plnění podle knihy skutečného trhu. Uveďte původní i zhoršený výsledek. Pokud efekt smaže i nepatrné zpoždění, strategie může záviset na informační výhodě, kterou vaše sběrná infrastruktura nedokáže spolehlivě zajistit.

Konkrétní příklad: signál se aktivuje, když nejlepší nákupní cena vzroste o jeden tick. Zpětně ho přehrajte jednou s časem události z burzy a podruhé s časem přijetí u sběrače dat. Pokud přehrání podle času události provede 40 obchodů a přehrání podle času přijetí 27, patří tento rozdíl k důkazům o strategii. Stejně tak její výkonnost při každém přehrání. Slabší přehrání nezamlčujte jen proto, že jeho data vypadají méně úhledně.

Paper trading je užitečný další krok, protože odhalí zpoždění datového toku, zastaralé kotace, chyby v mapování symbolů i omezení daná trhem — v téže provozní cestě, kterou používá váš výzkumný systém. Přesto neobnoví každou situaci ve skutečné frontě ani veškerý cenový dopad. Tuto hranici mějte na paměti.

Co v praxi znamenají „obchodovatelná data“?

Backtest musí umět vysvětlit, kdy pozorování nastalo, kdy ho strategie mohla zpracovat, z jakého trhu pocházelo a o jaké důkazy o exekuci se opírá předpokládané plnění. Čistá cenová řada je výchozí bod. Výzkum získává důvěryhodnost, když obstojí při prověření jeho časování, přístupu k trhu a předpokladů o plnění — a když výsledek dává smysl i po jejich zpřísnění.

tržní databacktestovánídatové inženýrstvíexekucepaper trading
← Všechny články