|
Další díly tématického seriálu :
Vyhledávání v článcích
Tip na knihu
Jak na...
Přímá cesta k informacím
|
Backtesting: TradeStationV minulých částech volného seriálu o backtestingu jsme hovořili o tom, co to backtesting je, k čemu je dobrý, ukázali jsme si „ruční přístup“ a stručně si představili programy, kterými lze backtesting automatizovat. V dnešním díle si na konkrétním příkladu ukážeme, jaké možnosti v oblasti automatizovaného backtestingu nabízí jeden z nejvyspělejších programů v této oblasti – TradeStation. Na začátek musím podotknout, že článek nepředstavuje kompletní recenzi programu – ten je natolik komplexní, že mnoho jeho částí a možností není v článku vůbec zmíněno. Článek představuje základní konkrétní ukázku principů podobného typu software. V případě zájmu se v dalších dílech seriálu můžeme pustit do podrobnějšího představování jednotlivých modulů programů, případně do popisů postupů pro přípravu vlastních funkčních obchodních modelů. Programování vlastních strategií, systémů a indikátorůSílou TradeStation – a podobných programů – je vlastní skriptovací jazyk, u TradeStation konkrétně EasyLanguage, umožňující programovat libovolné vlastní obchodní strategie, indikátory, studie atd. Výhodou EasyLanguage je jeho ohromná flexibilita, což je současně pro spoustu obchodníků překážkou – EasyLanguage je opravdu komplexním programovacím jazykem (postaveným na Pascalu) a třebaže je hodně přizpůsoben potřebám obchodníků, pro jeho ovládnutí je nutné osvojení základních programátorských přístupů. Nicméně díky obrovské aktivní komunitě uživatelů existuje skutečně moře předpřipravených knihoven a ukázkových kódu, ze kterých lze rychle čerpat nápady a zkušenosti a s příslušnými znalostmi lze v programu zautomatizovat a vizualizovat doslova cokoliv. Abych však zbytečně nestrašil – samozřejmě, že komplexní systémy potřebují komplexní kód, jednoduché obchodní strategie si však v programu dokáže s příslušnou nápovědou po základním osahání systému připravit i méně programátorsky nadaný obchodník. Jenom pro ukázku, jak může vypadat takový jednoduchý programový kód v TradeStation:
Kód vyjadřuje jednoduchou podmínku – pokud bude aktuální close vyšší než předcházející high, potom nakoupit následující bar jeden kontrakt za market. Jak bylo řečeno, kompletnější obchodní strategie mají kód pochopitelně výrazně složitější. Lze pracovat s různými podmínkami, funkcemi, knihovnami atd. Zobrazování strategií v grafechPřipravené naprogramované studie a systémy lze v programu používat několika způsoby. Vše má svůj podrobný řád a odlišnosti, do přílišných detailů se však v rámci tohoto prvního seznámení s platformou pouštět nebudeme. Řekněme si však, že s vlastními systémy je možné pracovat zejména tak, že jsou jejich výsledky buď zobrazovány v grafech (např. jako tečka v případě, že dojde k nějakému signálu či výskytu formace), nebo jsou používány pro automatizovaný backtesting a stejný kód může být následně použit i pro automatický trading.
V tento okamžik se podívejme, jaké některé možnosti nabízí program v případě, že náš obchodní systém používáme pro backtesting. Každou kompletní obchodní strategii lze v programu naprogramovat a testovat „se vším všudy“ – tedy nejen po stránce vstupu, ale i výstupů (včetně automatického posouvání stop-lossu, profit targetu atd.) a money-managementu. Vše lze naprogramovat maximálně detailně, pokud člověk ví „jak na to“.
Výsledky obchodní strategie jsou zobrazovány šipečkami do grafů a pochopitelně je lze velmi podrobně zkoumat v souhrnné zprávě o výkonnosti strategie (Performance Report).
Zpráva o výkonnosti strategie je nezbytným základem podobných systémů a v případě zájmu se jednotlivým položkám budeme na stránkách Finančníka věnovat v samostatném článku. V principu je možné ve zprávě nalézt všechny podstatné informace, zda-li je strategie smysluplná či nikoliv. A to nejen z pohledu zisku a ztrát, ale především z pohledu procentuální úspěšnosti, průměrného zisku/ztráty na jeden obchod, profit faktoru, frekvence obchodů, maximálního drawdownu, maximální největší ztráty, počtu ztrátových dnů za sebou atd. Vše je možné analyzovat např. z pohledu krátkých či dlouhých pozic, různých období a mnoha dalších měřítek. Nechybí pochopitelně ani možnost, zobrazit si výkonnost strategie graficky, v podobě tzv. equity křivky (kromě klasické křivky jsou k dispozici další typy grafů). Důležitým nástrojem při analýze obchodních systémů je také Optimalizace. Pomocí tohoto nástroje je možné nechat program spočítat jeden či několik parametrů strategie s různými vstupními hodnotami. V praxi se přístup používá především ze dvou důvodu:
2) Testování robustnosti systému. Každá správná strategie by měla být co nejrobustnější. Měla by fungovat na různých trzích, v různých timeframech a neměla by jí výrazně rozhodit ani jemná změna parametrů a na to se s úspěchem dá opět použít nástroj optimalizace, pomocí které lze systém podrobit podrobnému zkoumání jeho chování při různých změnách vstupních parametrů. Data, data, dataZákladem jakéhokoliv backtestingu jsou pochopitelně kvalitní data. V tom má TradeStation obrovskou výhodu – v ceně programu je i přístup na integrovaný datový server, takže uživatel data nemusí řešit a má k dispozici vždy to, co potřebuje pro aktuální analýzu. K dispozici jsou historické ceny komodit za několik desítek let zpátky, včetně intradenních průběhů. Kontrakty jsou v programu k dispozici nejen ve formě jednotlivých kontraktních měsíců, ale také jako kompozitní data – tj. jeden kontinuální graf, na kterém lze backtestovat najednou strategii třeba za posledních 20 let vývoje dané komodity.
V případě dat disponuje TradeStation ještě jednou zajímavou a důležitou funkcí – možností „podívat se“ v rámci backtestingu např. denních dat na intradenní průběh konkrétního baru. Slouží k tomu funkce Look-Inside-Bar Back-testing, pomocí které lze otestovat, jak konkrétně se trh choval např. v den vstupu či výstupu, což testování výrazně zpřesňuje díky přesné interpretaci ceny plnění získané například při stop nebo limit příkazech. Pro koho podobné řešení?Systémy typu TradeStation nejsou levné a nejsou nezbytné pro každého. Je zřejmé, že zejména v začátcích se noví obchodníci chytají každého stébla a investují do nejrůznějších programových řešení a obchodních systémů – třeba i typu TradeStation. Systémy tohoto typu jsou přitom podle mého názoru určeny pro pokročilejší obchodníky, kteří již vědí, jak trhy fungují, mají s nimi praktické zkušenosti a hledají například efektivnější strategie než ty, které dosud obchodují. Pro takové uživatele přinášejí programovatelné systémy typu TradeStation obrovskou flexibilitu a úsporu času. Diskutovat k tématu článku můžete zde Petr (c) foto ISIFA, zdroj ISIFA/Getty Images (publikováno 15.09.2005, editovat )
Sdílej
Klíčová slova:
Finančník.cz je místo, kde už od roku 2004:
|