12. října 2026 · výzkum

Rozebrali jsme backtest predikčního trhu, který koupil nesprávný kontrakt

Rozebrali jsme backtest predikčního trhu, který koupil nesprávný kontrakt

Backtest predikčního trhu může použít ticker, který vypadá správně, správnou cenovou historii, a přitom nesprávný kontrakt. Tuto chybu lze snadno přehlédnout, protože názvy trhů jsou krátké, stránky událostí se aktualizují a podíl YES vždy vypadá jako cena mezi 0 a 1.

Představme si hypotetický trh s názvem „Projde zákon o čisté dopravě?“ Strategie po signálu ze zpráv nakoupí YES za 0.42. Backtest později ocení pozici na 1.00. Než tomuto výnosu uvěřím, chci přesně vědět, co kontrakt sliboval: o který návrh zákona šlo, co se počítalo jako „projde“, jaký byl termín a který zdroj rozhodl o výsledku.

Název: „Projde zákon o čisté dopravě?“

Název je zobrazovaný text, nikoli stabilní identifikátor instrumentu. Dva trhy mohou mít téměř totožné znění, a přitom se týkat různých legislativních období, pozměněných návrhů zákonů nebo termínů. Provozovatel může také název upravit, aby trh upřesnil, aniž by změnil jeho základní podmínky.

Backtest by proto měl pozici identifikovat podle neměnného ID trhu nebo kontraktu u provozovatele a uchovávat úplné znění pravidel i jejich verzi. Pokud historická data obsahují pouze název a ticker, nelze ověřit, že cenová řada patří ke kontraktu, který strategie zamýšlela obchodovat.

Identifikační údajCo přesně určujeCo se pokazí, když chybí
Provozovatel a ID trhuKonkrétní kótovaný trhSloučí se podobně pojmenované trhy
Verze pravidelPodmínky, na kterých se účastníci dohodliPozdější úprava se použije i na dřívější obchody
ID výsledkového tokenuObchodovaný nárok YES nebo NOCeny YES a NO se zamění nebo sloučí
Zdroj rozhodnutí o výsledkuDůkaz použitý k určení výsledkuBacktest předpokládá jinou autoritu

Pravidla: co znamená „projde“?

Předpokládejme, že pravidla říkají, že návrh musí do 30. června projít Sněmovnou reprezentantů i Senátem a poté ho musí podepsat prezident. Backtest, který považuje za úspěch průchod kteroukoli z komor, změnil sázku. Totéž platí pro backtest, který započítá stejně pojmenovaný návrh v následujícím legislativním období.

Čtěte skutečná kritéria rozhodnutí o výsledku jako vykonatelné podmínky. Zaznamenejte termín a časové pásmo, rozhodující událost, případné výjimky i určený zdroj rozhodnutí. Záleží i na nejednoznačnosti: pokud pravidla provozovatele neřeší některý věrohodný scénář, nevybírejte potichu výklad, který se shoduje s historickým výsledkem.

V této práci je i jedna báječně neokázalá část: uložit si stránku s pravidly, než se stane cokoli zajímavého. Stránka zachycená až po rozhodnutí o výsledku může ukazovat konečné znění, přestože strategie vstoupila do pozice podle dřívější verze.

Časová osa: kdy se to strategie mohla dozvědět?

Předpokládejme, že jsou pravidla v pořádku a signál ze zpráv se spustil ve 14:05 UTC. Historický feed uvádí, že ve 14:05 došlo k obchodu za cenu 0.42. Samotný časový údaj neříká, zda byla informace dostupná před obchodem, zda bylo možné zaznamenanou cenu po tomto okamžiku skutečně získat ani zda svíčka představuje kotaci, obchod nebo souhrn za interval.

Čas dostupnosti signálu evidujte odděleně od času tržní události. Poté zadejte pokyn až ve chvíli, kdy ho strategie mohla vypočítat a odeslat. Na málo likvidním trhu může k dalšímu zaznamenanému obchodu dojít až za několik minut; to nedokazuje, že by váš pokyn byl proveden za tuto cenu.

Cena: kotace není plnění

YES za 0.42 znamená cenu 42 centů za podíl, ale řada posledních obchodů skrývá spread i dostupný objem. Pokud je nejlepší ask 0.45 pro 20 podílů, simulovaný nákup 100 podílů se nemůže celý provést za 0.42. Pokyn by mohl postupovat knihou objednávek, čekat nebo zůstat nevyplněný.

Ceny na predikčních trzích svádějí také k účetní zkratce: považovat 0.42 za 42% pravděpodobnost a zapomenout, že jde zároveň o hotovostní náklad na vstupu. Pozice 100 podílů YES stojí před započtením poplatků $42. Pokud se vypořádá na $1, hrubý výnos bude $100; pokud se vypořádá na $0, bude nulový. Poplatky, částečná plnění i případné zvláštní mechanismy vypořádání daného provozovatele patří do evidence.

$42hrubý náklad za 100 podílů YES při ceně $0.42
$100hrubá hodnota při vypořádání, pokud je výsledek YES
$0hrubá hodnota při vypořádání, pokud je výsledek NO

Vypořádání: co obchod uzavírá?

Backtest často ukončí pozici na poslední tržní ceně. Kontrakt držený až do rozhodnutí o výsledku se však vyplácí podle pravidel a jeho poslední kotovaná cena může být zastaralá, mít široký spread nebo se výrazně lišit od konečné výplaty. Modelujte rozhodnutí o výsledku jako samostatnou událost: výsledek, čas vypořádání i peněžní tok by měly vycházet ze záznamu o kontraktu.

Zohledněte také trh, jehož výsledek je neplatný nebo sporný, pokud to pravidla provozovatele připouštějí. V takovém případě může být vklad vrácen, vyplacena jiná částka nebo vypořádání odloženo. Předpoklad binární výplaty nedokáže zachytit všechny možné způsoby rozhodnutí o výsledku.

Verdikt nad backtestem

V tomto příkladu bych vykázaný zisk uznal až po ověření neměnného ID trhu, verze pravidel platné při vstupu, tokenu YES, času dostupnosti signálu, proveditelných ask cen a objemu, poplatků i zaznamenaného vypořádání. Pokud cenový archiv takové kontroly neumožňuje, poctivým výstupem je rozpětí scénářů nebo neověřený výsledek.

Na jeden malý obchod to může znít přísně. Znásobte stejnou chybu při spojování dat tisíci trhů a z backtestu se může stát pečlivé měření kontraktů, které vaše strategie nikdy neobchodovala.

predikční trhybacktestingtržní dataexekuce
← Všechny články