Fáze Vývoje Strategie - Definování Vstupních a Výstupních Podmínek Na In-Sample Datech

Fáze Vývoje Strategie

Předpokládejme, že jste si naplno uvědomili nevýhody, který diskréční trading přináší a rozhodli jste se, že hru s náhodou raději přenecháte jiným. Rozhodli jste se, že dáte šanci algoritmům a začnete důvěřovat automatizovaným obchodním strategiím, které prošly kvalitně provedenými a spolehlivými backtestem.

Když vyvíjíte strategii, vždy používáte historická data ideálně v co nejdelším časovém rozsahu, abyste otestovali, na kolik je Váš algoritmus dobrý či špatný zhlediska výkonnosti. Pokud nebudete umět správně backtestovat a ruku v ruce s tím i vyvíjet, hrozí Vám riziko příliš optimistických výsledků. A příliš optimistické výsledky v rámci backtestu vedou obvykle ke katastrofě v rámci živého obchodování.

Jak vidíte, v životě už to tak bývá, že nic není černé nebo bíle a samozřejmě i backtesty s sebou nesou nástrahy a potenciální problémy, kterým budete muset čelit. 

V tomto článku si projdeme ty nejznámější a nejčastěji se vyskytující. Pokud budete schopni tyto potenciální problémy s vývojem strategií a správně provedeným backtestům identifikovat v zárodku, přímo úměrně tím zvyšujete pravděpodobnost Vašeho dlouhodobě ziskového tradingu, protože budete obchodovat strategie, které mají reálný edge (ne ten vysněný a neodpovídající realitě).

PROBLEMATIKA DÉLKY HISTORICKÝCH DAT

Jakou používat délku historických dat? Mohlo by se říci, že čím delší bude historie, tím lépe. Ale je má například cenu používat pro vývoj data z 90. let, kdy byly trhy principiálně úplně jiné a objemy obchodování byly mnohonásobně nižší? Obchodovalo se na pitu a elektronický trading byl jen hudbou budoucnosti? Navíc, kde pak sehnat skutečně relevantní data? Jak již bylo zmíněno, platforma TradeStation nabízí velmi kvalitní intradenní historická data pro futures trhy.

U akciových indexů a bondů doporučujeme pracovat s historickými daty od roku 2003, případně od roku 2006 až. Je pravda, že před tímto datem mohou být již data zastaralá, ale ve své podstatě se nestane nic zásadního, pokud data před rokem 2006 k vývoji použijete. U všech ostatních trhů jako jsou kovy, energie, zrniny či softs pak doporučujeme pracovat s daty od roku 2007.

Spojování futures kontraktů v jednu časovou řadu

Každý futures kontrakt má svou životnost. Na rozdíl od akcií a forexu, které tvoří jednu souvislou časovou řadu, se futures kontrakty musí tzv. adjustovat – čili kontrakty spojit v jednu časovou řadu tak, aby na sebe nejlikvidnější kontraty v čase navazovali.

Mít k dispozici kontinuální data futures je pak nezbytné pro možnost backtestování. Kontinuální data futures jsou propojena v bodech přechodu (tzv. Turning points).

  • Body přechodu (Turning points)
    Body přechodu jsou určeny pomocí indikátor Open Interest. Když hodnota Open Interestu příštího futures kontraktu převýší hodnotu aktuálního futures kontraktu, dochází k bodu přechodu a časová řada pokračuje s hodnotami nového kontraktu. Existují obecná pravidla specifická pro každý trh, která popisují, kdy tyto typické body přechodu nastanou.

Takže pokud Open Interest příštího kontraktu Russell 2000 překročí hodnotu aktuálního kontraktu S&P 500 šestý obchodní den před vypršením platnosti, TradeStation Network interpretuje bod přechodu na nový kontrakt právě v tento den. Jakmile je bodu přechodu dosaženo, data musí být adjustována. TradeStation provádí adjustaci tím, že k historickým datům přičte nebo odečte konstantu k aktuálnímu futures kontraktu až na začátek historických dat. Tedy v našem případě Russell 2000 až do začátku roku 2006.

Samotná problematika vytváření kontinuálních futures dat je poměrně obsáhlá a body přechodu lze definovat i dalšími metodami.

Spojování futures dat v platformě TradeStation

Nicméně spojování kontraktu, které provádí TradeStation je určitě dostatečné a je skvělé, že nám tím platforma usnadní mnoho času. Nyní se podívejme, jakým způsobem si historická data pro trh E-mini Russell 2000 v platformě načteme.

Shrňme si zásadní body:

  • V Záložce Format Symbol (Edit Symbol pro TradeStation verzi 10) definujeme v políčku Symbol pospojovaný kontrakt E-mini Russell 2000 zavináčem @ a tickerem (RTY), čili @RTY (v případě Micro kontraktu Rusell 2000 (@M2Y)

  • Interval, tedy timeframe určíme na 60min

  • V políčku Range definujeme počáteční datum na 1.1.2006, tedy Jan/01/2006 (01/01/2006).

  • Poslední datum (Last date) definujeme k aktuálnímu dni, ve kterém se nacházíte

  • Chceme zobrazit časovou zónu burzy, tedy necháme políčko Exchange (Local by

    znamenalo generování historických dat pro Vaši časovou zónu a tomu se vyhněte)

  • V záložce Properties si nadefinujeme vlastní session od 08:45 a.m. do 03:03 p.m. od pondělí do pátku (od 8:45 do 15:03 času burzy)

  • Pro backtestování si vystačíme se spojovaným kontraktem @RTY (Micro @M2Y)

  • Pokud bychom ale chtěli živě obchodovat, expirace futures kontraktu pro akciové indexy jsou

            o  H – březen

            o  M – červen

            o  U–září

           o  Z – Prosinec

  • Takže chceme-li živě obchodovat například kontrakt s vypršením v březnu 2021, náš symbol bude definován jako @RTYH21 (@M2YH21)

Rada: Nikdy nezapomeňte sloučit futures data do jednoho kontraktu. Ujistěte se, že to děláte správným způsobem, nebo k tomu jednoduše použijte platformu TradeStation. Funguje to dobře

Easy Language – programovací jazyk platformy TradeStation pro neprogramátory

Je úsměvné, jak se obchodníkovi, který se zabývá diskréčním tradingem, jeví algoritmický trading tak nedostupný. Člověk se prostě bojí změn, ale pouze ti, kteří jsou schopni vystoupit ze své komfortní zóny a zlepšovat se, jsou předurčeni k vítězství.

Základní motivací pro vznik EasyLanguage byla vize, že algoritmický trading by měl být přístupný i pro tradery, kteří nejsou zdatnými programátory. Ostatně já sám jsem toho jasným důkazem, že práci s EasyLanguage se lze poměrně snadno naučit, aniž by člověk musel mít za sebou programátorskou minulost. 

Navíc práce v EasyLanguage pak může být i skvělou vstupní branou do světa tvorby ideí („idea making“), zorientování se v problematice. Na tyto potřeby je tento programovací jazyk prakticky ideální, neboť je opravdu velmi jednoduchý na pochopení.

Tento software obsahuje docela dost různých funkcí jako Paint Bar (při splnění podmínek Vám vybarví v cenovém grafu bar) atd.

Zapomeňte na tyto nesmysly, které byly vynalezeny pro diskréční tradery. Pojďme se zaměřit na praxi a tou je tvorba strategií. V rámci této knihy si podíváme na vývoj konkrétního příkladu strategie, tedy postupu od počáteční vstupní myšlenky až po výstupní pravidla strategie. U toho se budete učit samotné programování v EasyLanguage. Sami uvidíte, že se nejedná o nic těžkého!

Nejprve si ale projděme základní strukturu kódu každé strategie, která obsahuje:

  • Reserved words (Rezervovaná slova)

  • Remarks (Poznámky)

  • Variables (Proměnné) a s tím související Data Types (Typy dat))

  • Inputs (Vstupní parametry)

  • Function (Funkce)

  • Entry Prices (Vstupní ceny)

  • Entry Conditions (Vstupní podmínky)

  • Exit Prices (Výstupní ceny)

  • Exit Conditions (Výstupní podmínky)

  • Vstupní příkazy (Entry Orders)

  • Výstupní příkazy (Exit Orders)

Kdybych Vám tady teď začal popisovat jednotlivé významy, minuly by se účinkem. Nejlepší bude přejít rovnou k praxi, tak pojďme na to. Předtím si ale zopakujme základní fakta a určeme si přesně, jak budeme pracovat s cenovými daty, na kterých budeme vyvíjet strategii.

Pro zopakování:

  • Vybrali jsme si tedy futures akciový index E-mini Russell (RTY). Výhodou je, že pokud máte menší kapitálové možnosti, můžete obchodovat i Micro verzi tohoto trhu (M2K).

  • Timeframe (velikost baru): 60 min

  • Obchodní seance: 08:45 a.m. – 03:03 p.m.

Strategii budeme vyvíjet na datech od roku 1.1.2006 do 1.7.2015. V době psaní tohto článku máme 10.11.2020. Proč nepoužijeme celou historii dat, ale pouze do července 2015? Na to si zodpovíme v další části a týká se tzv. Přeoptimalizace.

Přeoptimalizace (Over-optimization)

Jedna z nejznámější a nejčastějších chyb v rámci backtestu je tzv. Over-optimization. Jedná se o přeoptimalizaci strategie na historická data. Úplně rozumím, že to pro Vás může být tak trochu španělská vesnice, proto uvedu příklad: 

Představte si, že jste závodníkem Formule Jedna. Učíte se závodit na jedné trase, kterou máte dlouhodobě pronajatou pro účely tréninku. Na této trase se zdokonalujete, vyzkoušíte si ji nejméně tisíckrát a nabudete jistoty. Trasu tak budete schopni zajet v lepší a lepší čas při mnohonásobném opakování. Nikdo jiný trasu takto netrénovanou mít nebude. Stanete se s velkou pravděpodobností neporazitelnými (pokud nemáte co dočinění s větším talentem, co rovněž trasu intenzivnětrénuje). 

Problém však nastane, jakmile půjdete závodit na jinou dráhu. Tam jde samozřejmě Vaše výkonnost dolů, neboť vstupujete do neznámých vod. Ti, co jsou schopni se okamžitě adaptovat na měnící se podmínky, mohou na jiném okruhu zajet i tak skvělý čas a být vítězi. Ti, co ne, upadají do propadliště dějin. To stejné platí v případě vývoje a samotného tradingu obchodních strategií, kde řešíme ten samý problém.

Na tréninkových historických datech (in-sample) můžeme strategii vyvíjet a zkoušet kdeco, ale dokud nebudeme mít důkaz, že strategie funguje i na odlišných datech (out-of-sample), nemůžeme nikdy vědět s jistotou, jestli máme skutečného vítěze. Na příkladu konkrétní primitivní strategie si můžeme ukázat, co mám na mysli:

Máme k dispozici historická data od roku 2003 do 2020. Rozdělíte si je na dvě části. Prvních 70% jsou tzv. In-sample data (Tréninkové) a zbývajících 30% jsou Out-of-sample data (Testovací), na kterých ověřujete skutečný výkonnostní potenciál strategie. 

Strategii programujete a vyvíjíte na In-sample datech. V našem případě se jedná o naprogramování jednoduché reverzní strategie pracující s klouzavým průměrem o periodě 30. Jednoduchá pravidla této strategie již byly popsány v předchozí kapitole. Jak se dá předpokládat, výkonnost takové strategie je velmi špatná již na in-sample datech.

Analogicky k našemu příkladu Formule Jedna: Špatný jezdec Vám nebude dobře závodit ani na tréninkové trase. Abychom se pokusili strategii vylepšit, přichází na řadu optimalizační testy. 

Vyzkoušíme změnit periodu klouzavého průměru od 1 do 100 s inkrementem 1, tedy dohromady 100 různých nastavení parametru. Nejlepší výkonnost z hlediska ziskovosti měla strategie s periodou klouzavého průměru rovno 5:

Obrázek 1: In-sample data, zdroj: TradeStation

Strategie byla optimalizována od roku 2003 do roku 2015. Na první pohled je patrné, že ekvity křivka (Obrázek 1) je velmi nestabilní. Pokud bychom navíc přidali náklady na slippage a komise, backtest by dopadl ještě hůře. Strategie je na první pohled zcela jasně nepoužitelná, což se vzhledem k její jednoduchosti dalo samozřejmě očekávat. Pro demonstrativní účely však samozřejmě ukážeme, jakou měla strategie výkonnost na Out-of-sample datech (Obrázek 2):

Obrázek 2: Out-of-sample data, zdroj: TradeStation

Jak vidno z Obrázku 2, výkonnost na Out-of-sample datech je ještě větší katastrofou. Typický příklad špatného jezdce, který není schopný podat výkon ani v trénincích, natož při změně trasy při ostrém závodu.

Nikdy nevyvíjejte strategii na celá historická data, co máte k dispozici. Vždy si rezervujte Out-of-sample data pro verifikaci výkonnosti strategie. Mnoho nezkušených traderů věří, že jedna verifikace na Out-of-sample datech stačí, ale věci se mají trošku jinak: Jde o mnohem složitější postup, než se jim na první pohled může zdát. 

I přesto, že Vaše strategie může vykazovat dobrou výkonnost na obou typech dat: In-Sample i Out-of-Sample, stále potřebujeme získat o mnohem více důkazů o její životaschopnosti, které nám poskytnou pokročilejší testy: stres testy a walk forward testy. 

O těchto testech si povíme mnohem více v dalším článku. Nyní si udělejme rychlý souhrn pro přehlednost. Mezi nejčastější chyby algoritmických traderů při vývoji strategií patří:

  • Že vyvíjejí strategie na celém vzorku historických dat, aniž by si je rozdělili na In-Sample a Out-of-Sample data
  • Data sice rozdělí, ale každou modifikaci strategie hned ověřují na Out-of-Sample datech. Ty pak již nadále nejsou verifikací potenciálně skutečné výkonnosti. Základním pravidlem je strategii vyvíjet na In-Sample. Ouf-of-sample verifikaci si nechte skutečně na jeden jediný pokus, až strategii na In-Sample datech vyvinete.

  • I když strategii vyvíjíte principiálně správně a ctíte výše zmíněné zásady, nikdy nemůžete vyloučit možnost, že uspokojující výkonnost na Out-of-Sample datech není pouhým dílem náhody. Jednoduše jeden úspěšný Out-of-Sample test nemusí být důkazem o skutečné životaschopnosti strategie. Za účelem přísnějších ověření jsou zde pokročilejší stres testy, které budeme ještě rozebírat.

  • Základním předpokladem samozřejmě je, že pracujete srelevantními historickými daty na dostatečně likvidních trzích, kde jste schopni odhadovat skutečné náklady.

Rada: Každý nováček dříve či později zjistí, že vyvinout strategii, která by měla potenciál vrámci In-Sample a následně Out-of-Sample dat, je oříšek. A je nespočetněkrát těžší vyvinout strategii, která projde všemi stres a walk forward testy tak, aby měla skutečný potenciál ziskovosti v rámci živého obchodování

Look-ahead bias

Další běžná chyba, která se může u backtestu přihodit, je tzv. Look-ahead bias. Znamená to, že v backtestu používáte budoucí informaci za účelem určení dnešního signálu. 

Jedná se o to samé, jako když jste jezdec Formule Jedna, měl byste křišťálovou kouli a přesně věděl, co a kdy Vaši oponenti během závodu udělají. Jedním z příkladu je například velmi běžný případ, kdy používáte denní HIGH a LOW barové denní úsečky. 

Tyto cenové hodnoty samozřejmě nemůžete používat pro aktuální den, pokud fakticky prozatím neznáte ani nejvyšší (HIGH), ani nejnižší hodnotu (LOW) předtím, než se pro daný den uzavře trh v případě akcií nebo dojde k novému dni. Na tomto příkladu můžete jasně vidět, jak ošemetné někdy backtesty mohou být. 

Častokrát jsou tyto biasy, které čichají budoucnost, jen velmi těžko rozpoznatelné v rámci backtestů. Proto doporučujeme vždy před živým obchodováním ještě na pár týdnů či měsíců odzkoušet strategii na simulovaném tradingu. Na živých datech pak potenciální čichání budoucnosti určitě odhalíte mnohem snadněji.

Rada: Nezapomeňte: Dobrý výkon simulovaného obchodování má stejnou váhu jako výsledky backtestu. Udělejte si čas a potvrďte správným simulovaným testováním, že strategie tzv. nečichá do budoucnosti, čili nepoužívá budoucí data k predikci

Nezahrnuty náklady na trading (slippage (skluz v plnění) a komise)

Jedna z dalších častých chyb začínajících traderů je, že do svých backtestů nezahrnou reálné náklady, s kterými je třeba počítat v rámci obchodování. Mezi největší průměrnou nákladou položku na jeden obchod pak patří slippage. Je to vlastně přímý náklad, který má co dočinění s likviditou trhu. 

Čím méně je trh likvidní, tím vyšší pak bývají slippage. Slippage je rozdílem mezi požadovanou cenou a skutečně vyexekuovanou v rámci obchodu. Tato situace může nastat kdykoliv, ale je logické, že v dobách vyšší volatility bývá jeho hodnota ještě mnohem vyšší. Vyskytuje se více u velkoobjemových obchodů a bývá tak problémem především pro velké instituce.

Pro ilustraci, jak jsou náklady v tradingu podstatné, prezentujeme příklad intradenní strategie aplikovanou na trh E-mini Russell 2000 (Obrázek 3), která vystoupí vždy na konci obchodní seance. 

Pozice nikdy nedrží přes noc. Tyto intradenní strategie bývají velmi citlivé na náklady, protože mají častokrát velmi nízký průměrný zisk na obchod a náklady, především na slippage, mohou celou výkonnost strategie prakticky zničit.

Obrázek 3: Intradenní strategie s výstupem na konci dne pro trh E-mini Russell 2000 bez zahrnutí nákladů na slippage a komise

Na Obrázku 3 můžete vidět, že ekvity křivka této strategie žádnou skvělou výkonnost nepředstavuje. Přesto všechno je profitabilní s průměrným ziskem na obchod ve výši $16.55. V dalším kroku tedy zahrneme průměrný round turn slippage i komisi do backtestu. Round turn znamená, že počítáme do nákladů vstup i výstup z obchodu. 

V případě E-mini Russell 2000 při obchodování jednoho kontraktu je zcela realistické očekávat průměrný slippage plus komisi ve výši $15. Jak bude vypadat ekvity křivka po zahrnutí nákladů?

Obrázek 4: Intradenní strategie s výstupem na konci dne pro trh E-mini Russell 2000 po zahrnutí nákladů na slippage a komise

Jak vidíte na Obrázku 4, po zahrnutí nákladu tato strategie totálně selhala a za více jak 12 let backtestu nebyla schopna vyprodukovat prakticky žádný zisk. Takže s jednoduchou buy and hold strategií, kdybyste před 12 lety nakoupili jakýkoliv akciový index, byste svůj účet rozhodně zhodnotili mnohem lépe.

Rada: Vždy do backtestu musíte zahrout komisi pro brokera a slippage!

Problém s exekucí limitních příkazů

V případě limitních příkazů nastává problém při používání jednoduchých backtestovacích enginů, které nepoužívají tickové data s hloubkou trhu (market depth). Navíc, je velmi drahé a těžké tyto data zakoupit a být si jistý jejich kvalitou. 

Vy, jako retail trader, se ale nemusíte obávat. TradeStation poskytuje vysoce kvalitní intradenní data pro futures a akciové trhy. Pro potřeby retailové tradera je to naprosto dostačující řešení. Dobrou zprávou pro Vás je, že si limitními příkazy nemusíte vůbec zabývat. 

Většina z Vás bude řešit obchodní účty maximálně o velikost několika set tisíc dolarů a tam opravdu problém s likviditou prakticky u jakéhokoliv futures trhu vůbec řešit nemusíte. Tím, že budete exekuovat kontrakty v řádu jednotek, se slippage při použití market příkazu nemusíte vůbec obávat.

Rada: Pro Vás, jako retail tradera, je lepší používat market příkazy než limitní příkazy. Nemusíte si dělat starosti s kapacitními omezeními

Data snooping bias

Řekněme si to na rovinu. Vyvíjet dnes strategie tradičním způsobem, že dostanete určitou ideu, tu pak otestujete a v případě potenciálu dále vylepšujete, je velký oříšek a časově nesmírně náročná záležitost s nejistým výsledkem. My si tento tradiční přístup k vývoji odprezentujeme v rámci této knihy.

Mnoho jednoduchých strategií, které fungovaly během 90. let a řekněme v prvních letech 21. století, by dnes neměly šanci. Trading se stal natolik komplexním oborem, že tak jako ve všech vědeckých oborech i zde potřebujete mít kvalitní data, ideálně i ty alternativní, silnou výpočetní sílu a potřebné schopnosti a znalosti k vývoji strategií.

Předpokládejme, že máte nápad, který byste rádi odzkoušeli. Prvním krokem je identifikovat pravidla strategie, nakódovat a ověřit, že dělá to, co od ní očekáváte. Naneštěstí většina strategií nemá zdaleka takovou výkonnost, jakou byste požadovali, což může mnoho vývojářů uvést do frustrace. 

Proto na řadu v posledních více jak 10ti letech přišla technologie strojového učení a umělé inteligence (machine learning a AI – artificial inteligence), která do jisté míry automatizuje vývojový proces samotných strategií a jejich kompletního kódu zahrnující všemožné vstupní a výstupní podmínky.

Ruku v ruce s těmito AI technologiemi se v tradingu vyskytl jeden neblahý jev a tím je tzv. Data snooping bias. Jedná se o statistický bias, který nastává při zkoušení obrovského množství kombinací proměnných vstupních a výstupních podmínek za účelem nalezení profitabilní strategie. 

Pravděpodobnost, že tímto způsobem naleznete strategii, která může být profitabilní v in-sample datech použitých pro vývoj, ale ztrátová v živém tradingu, se úměrně zvyšuje s počtem pokusů. Patterny, které naleznete tímto způsobem na in-sample datech, většinou pak selhávají v živém obchodování. 

Způsob, jakým testujeme, jestli strategie netrpí tímto data snooping biasem, je notoricky známý: Strategii musíme otestovat na out-of-sample datech. Ale k tomu musíme doplnit další celou škálu statistických testů, o kterých se budeme v jedné z následujících kapitol dopodrobna bavit. 

Ve finále vždy platí, že čím méně bude mít strategie proměnných (čím bude kód jednodušší), tím nižší riziko, že bude strategie přeoptimalizovaná na historická data. Proč ale vůbec tím pádem AI technologie používat? 

No, zkuste si sami nějakou profitabilní strategii vyvinout v dnešní době a zjistíte, že je to úkol velmi složitý. Využít nejmodernější technologie k tomuto účelu se nabízí, a pokud člověk umí správně s těmito nástroji i v rámci různých komerčních řešení zacházet, je nasnadě zvážit, jestli je nepoužívat. 

Já mám s nimi velmi dobré zkušenosti a nedám na ně dopustit. Pravda ale je, že mé studium tradingu je z velké míry zaměřeno právě na správnou aplikaci široké škály statistických testů robustnosti.

Selection bias (Selekční bias)

Selekční bias přirozeně navazuje na problém související s Data snooping biasem a přeoptimalizací strategií. Díky strojovým učením a AI technologiím dnes můžete vygenerovat obrovské množství strategií. Některé z nich pak můžou mít v rámci in-sample dat velmi slušnou výkonnost. 

Problém nastává, když vygenerujete velké množství strategií, které májí obstojné výsledky na in-sample datech a pak všechny tyto strategie ověříte na Out-of-Sample datech.

 Může se stát, že z tak velikého množství objevíte strategie, které mají dobrou výkonnost i na Out-of-Sample datech. Hypoteticky by to tak mělo znamenat, že jste našli strategie, které obstály na neviděných datech a mají tedy potenciál ziskovosti v živém obchodování. 

Problém ale je, že jste prostě jen mohli mít štěstí a vybrané strategie sice poskytly potvrzení dobré výkonnosti i na Out-of-Sample datech, ve skutečnosti je ale jejich výkonnost pouhým dílem náhody. 

Zkrátka strategie se nafitovala na nějaké vstupní i výstupní podmínky, které v budoucnosti již nebudou ziskové, protože nemají žádnou prediktivní hodnotu. Když vyzkoušíte velké množství kombinací, je jen otázkou času, kdy naleznete strategie s dobrou výkonností jak na In-Sample, tak Out-of-Sample datech.

Jak tomuto problému můžete čelit?

Rada: Předtím, než začnete vyvíjet, buďte si jisti, že strategie má silnou teoretickou základnu. A samozřejmě pak v případě využití AI technologií se ujistěte, že používáte pokročilé statistické testy k měření jejich robustnosti
Rada: Out-of-sample data jsou vitální pro verifikaci potenciální výkonnosti strategie. Jakmile vybudujete strategii na In-Sample datech, použijte Out-of-Sample data pouze jednou, abyste zjistili, jestli má strategie podobnou výkonnost jako na In-Sample datech. Pokud již jednou použijete Out-of-Sample data, o neznámá data se již dále nejedná. Mnoho machine learning technologií používá jak in-sample, tak out-of-sample data pro vývoj. V tom případě si rezervujte další out-of-sample, který zůstane nedotčen. Může se jednát o jakési verifikační out-of-sample data
Rada: Držte počet proměnných a parametrů strategie tak nízký, jak jen bude možné. Čím méně, tím lépe

Survivorship bias

Je specifickým příkladem selekčního biasu. Tak například, když trader testuje portfolio strategií na velké skupině akcií, tento soubor titulů může obsahovat mnoho akcií, které v průběhu historie zbankrotovaly nebo opustily burzu. 

Pokud si zakoupíte data, které tyto společnosti již neobsahují, riskujete tím problém nepřesných backtestů. Buďte si tedy jisti, že tyto společnosti máte ve vašem data setu k dispozici. Pokud ne, může se stát, že budete mít v backtestovaném portfoliu příliš optimistické výsledky.

 

Pokud si chcete přečíst celý Ebook Ultimátní Průvodce Jak Na Úspěšný Algoritmický Trading, a nechcete jít článek po článku na našich stránkach, stáhnout si ho můžete okamžite a zcela zdarma zde! 12 kapitol, 118 stránek, všechno na jednom místě.

Leave a comment