Jump to content
Co nového? Mé kurzy
Hledat v
  • Více možností...
Najít obsah, který ...
Hledat výsledky v ...

petr

Administrators
  • Počet příspěvků

    4 063
  • Registrace

  • Vítězných dnů

    72

 Content Type 

Diskuze

Kalendář

Aktuality

Články v klientské sekci

Info

Články a tutoriály

Vše publikováno uživatelem petr

  1. Úspěšné profitování na trzích je skutečně jen a pouze o dlouhodobém a systematickém vytěžování drobnějších pravděpodobností ve spojení s důslednou kontrolou risku. Nezbytným minimem je tak ověření, že obchodované pravděpodobnosti fungují. Bohužel v trzích nebudeme mít nikdy jistotu, jak se budou věci vyvíjet do budoucnosti. Můžeme si však ověřit, jakým způsobem vše fungovalo v minulosti. A věřit, že testované pravděpodobnosti se budou alespoň částečně opakovat i v budoucnu. Základem profitabilního obchodování je proto tzv. historický backtest. Při něm aplikujeme sledované principy na historická data a vyhodnocujeme nejrůznější metriky testované strategie. Když jsem s testováním trhů začínal, backtestoval jsem strategie ručně. Jednoduše jsem si zobrazil historický graf, procházel jej úsečku za úsečkou a hledal předem definované vstupní a výstupní situace. To ale bylo před několika desítkami let (neskutečné, jak čas letí). Ruční backtest je samozřejmě možný i dnes, ale maximálně jej nedoporučuji. Především je časově velmi náročný. Vesměs tak budeme backtestovat méně historie a určitě méně trhů. Ruční backtest bývá také velmi nepřesný. Naše mysl se bude zaměřovat hlavně na nejvíce viditelné ziskové situace a přehlédne mnoho ztrátových situací. V dnešní době jednoznačně doporučuji backtestovat pomocí specializovaných programů. Do těch nadefinujeme parametry strategie a velmi rychle máme k dispozici podrobné historické statistiky. Mnoho začínajících obchodníků se počítačovým backtestům brání. Odrazuje je nutnost pochopit pro ně nové principy ovládání příslušných programů, což určitě vyžaduje určitý nezbytný čas a samostudium. Současně také bývají po prvních počítačových backtestech rozmrzelí ze získaných výsledků. Testy jim často ukáží, že testované přístupy nejsou na historických datech výdělečné nebo vydělávají málo. A obchodníci mívají pocit, že ručně by dokázali situace zobchodovat mnohem lépe. Což je vesměs velmi naivní. Zejména pokud s obchodováním začínáte. Časovou investici do studia počítačového backtestu jednoznačně doporučuji. Budete z ní těžit celou svoji obchodní kariéru. A pochopitelně to neznamená, že byste museli obchodovat automatizovaně. Počítačový backtest můžete použít i k získání jen základních dlouhodobě fungujících pravděpodobností, které následně můžete obchodovat ručně s využitím vlastního zvážení obchodovaných situací. A co je nejdůležitější. Jakmile se jednou pustíte do plně systematických backtestů s použitím počítačů, budou se časem vaše výsledky jen zlepšovat tak, jak se budete posouvat ve znalosti používaných nástrojů. Jaký software pro backtest používat? Zde neexistuje jedna správná odpověď. Řešení dnes existuje opravdu hodně a vybere si každý. Doporučuji zvolit hlavně takový software, který má aktivní komunitu uživatelů, je hodně univerzální a není příliš drahý. Sám dnes používám nejvíce programy TradeStation (pro intradenní obchodování), Amibroker (pro swingové a portfolio systémy) a bezplatný programovací jazyk Python. Začnete-li s Amibrokerem, myslím, že nesáhnete vedle. Program sice není zdarma, ale je velmi flexibilní. S vašimi rostoucími nároky na testované funkce budete objevovat stále další a další možnosti tohoto softwaru, který je opravdu dobře postavený. Ale pochopitelně není to svatý grál. Jako žádný software. Z počátku je určitě dobré vyzkoušet i další programy, abyste sami poznali, který vám bude vyhovovat nejvíce. Pojďme si ukázat, jak na první backtest s Amibrokerem, abyste měli konkrétní návod, od kterého se odrazit. Program je možné instalovat ve zkušební verzi z adresy https://www.amibroker.com/download.html. Pro základní backtest je program plně funkční, hlavním omezením je skutečnost, že data nejdou ukládat do databáze. Po prvním spuštění se v programu zobrazí graf akcie AA, jejíž data jsou spolu s několika dalšími v programu k dispozici k testování: Na této akcii si můžeme ukázat, že programový backtest není vůbec komplikovaný. Zvolte v horním menu File > New > Formula a zobrazí se tzv. AFL Formula Editor. AFL je zkratka pro skriptovací jazyk, ve kterém se v Amibrokeru popisují testované situace. Řekněme, že se rozhodneme otestovat edge popisovaný v rámci seriálu. Tedy držení pozice přes noc. Například budeme chtít otevřít pozici na klesajícím dnu (tedy uzavírací cena trhu je nižší než otevírací) a vstoupit následující den při otevření trhu. V Amibrokeru pro to můžeme použít následující kód: Buy = C<O; BuyPrice = Close; Sell = False; SellPrice = Open; ApplyStop( stopTypeNBar, stopModeBars, 1 ); Funkce Buy definuje podmínku, při které pozici otevíráme (zde klesající úsečku). BuyPrice pak vstupní cenu (zde uzavírací cena trhu). Sell definuje podmínku výstupu. V naší ukázce nemáme tuto podmínku aktivovanou, protože pro výstup používáme tzv. časový stop-loss – výstup za určitý počet úseček. V našem případě druhý den, kdy pozici ukončujeme na otevírací ceně. Tu máme definovanou pomocí proměnné SellPrice. Následně v editoru klikněte na tlačítko Analysis: Kód se přenese do hlavního okna, kde se ujistěte, že budete backtestovat vybraný trh (Apply to nastavené na Current). A následně klikněte na tlačítko Backtest (1): Jakmile test dojede, můžete si výsledky backtestu zobrazit kliknutím na ikonku Report (2). Okamžitě byste měli mít k dispozici statistiky této testované situace na několika stech obchodech. A současně hotový první backtest. Gratuluji! Vidíte, že systematický backtest s pomocí softwaru není nic nepřekonatelného. Nejdůležitější je nezastavit se před první překážkou a po kouskách se snažit posouvat dále. Co vám na začátku bude připadat nepochopitelné, budete za pár měsíců vnímat jako velmi triviální. Velkým pomocníkem vám bude manuál Amibrokeru, ve kterém jsou na adrese https://www.amibroker.com/guide/ popsány všechny funkce, se kterými lze v programu pracovat. Chcete-li na začátku asistenci s ovládnutím programu pomocí konkrétních tutoriálů v češtině, pak na Finančníkovi nepřehlédněte kurz základů práce s Amibrokerem na adrese financnik.cz/go/amibroker. A skutečně – není podstatné s jakým programem budete pracovat a kde se jej naučíte ovládat. Důležité je zejména začít a každý den se snažit posunout kupředu. V našem seriálu už jsme si ukázali několik zajímavých situací, které doporučuji, abyste si sami zkusili programově otestovat. Budete u toho muset vyřešit spoustu drobných úkolů a výzev, ale to je právě to, co vás bude jednoznačně posouvat kupředu k systematickým profitům. A pokud si nebudete vědět rady, zkuste napsat na petr@financnik.cz a bude-li na téma více podobných dotazů, pokusím se odpovědi zpracovat do některého z dalších článků.
  2. petr

    Intradenní breakout volatility

    Hledáte-li systematickou cestu diverzifikace přes nižší timeframe, pak breakout volatility představuje dlouhodobě přítomný edge v mnoha trzích. Hodně obchodníků má mylnou představu, že profitabilní přístup musí být komplexní. Pravdou je, že v trzích fungují jak komplexní, tak jednoduché přístupy. A zejména typické retailové strategie mívají pak z dlouhodobého pohledu velmi podobné výkonnosti bez ohledu na to, jak komplexní je samotná obchodní logika. Z mých zkušeností je jednoznačně lepší pracovat s jednoduššími principy. Snáze se u nich chápe logika, s jakou vstupují do trhů a výsledky se jednodušeji interpretují. Třeba i s ohledem na charakter trhu, ve kterém se bude strategii dařit a ve kterém nikoliv. Jeden z jednoduchých, a přitom dlouhodobě funkčních principů, je breakout volatility. Funguje v mnoha trzích. Pokud s ním začínáte, tak bych se určitě nejprve orientoval na akciové indexy. V těch se dají strategie tohoto typu postavit opravdu snadno. Systémy vycházejí z jednoduchého principu – pokud se trh vychýlí nad určitou běžnou vzdálenost, je to možná z důvodu, že do trhu vstoupil zásadní fundament a cena bude silným trendem pokračovat dále: Nákres je ilustrační, ale dobře vystihuje podstatu obchodu. Běžnou volatilitu pohybu můžeme například počítat pomocí ATR a hodnotu přičítat/odečítat od close předešlého dne. Dostaneme úrovně, po jejichž překonání vstoupíme do dlouhé nebo krátké pozice. Systém obchoduje momentum, takže v obchodu chceme být co nejdéle. Jako výstup se nejčastěji používají různé typy posouvaného stop-lossu. Pokud budete vytvářet intradenní systém v akciových indexech, tak určitě stačí systém stavět tak, že budete pracovat s fixním stop-lossem a vystupovat v době uzavření trhu (např. 22:15 našeho času). Pochopitelně výše uvedené představuje hrubou kostru přístupu, kterou je dobré ještě doladit. Patrně budete chtít přidat podmínku kontextu (tj. kdy podobný obchod vyhledávat), časovou podmínku (kdy konkrétně do obchodu vstupovat) a konkrétní definici vstupní oblasti. Ale jak jsem již uvedl – pamatujte na to, že v jednoduchosti je síla. Z hodně dlouhodobého pohledu budou mít funkční systémy tohoto typu nakonec velmi podobné výsledky (při standardizovaném risku). Mé osobní tipy k obchodování intradenních breakoutů volatility Velmi důležité je uvědomit si, že tyto systémy vydělávají především na zachycení méně pravděpodobných pohybů. Určitě to nejsou pohyby, které v trzích vidíte každý den/týden. Systém čeká na situaci, kdy se trhy silně rozjedou z důvodu nějaké zásadní fundamentální zprávy nebo třeba paniky. Spousta vstupů tak bude generovat malé ztráty. Jednou za čas ale přijde pohyb, který tyto ztráty pokryje, a ještě vygeneruje pěkný zisk. Dobře je to vidět na výsledcích z minulého týdne jednoho mého intradenního systému breakoutu volatility pracujícího na trhu ES, který obchoduji u Striker: Systém nyní ve zvýšené volatilitě obchodoval aktivněji. Za posledních devět obchodních dnů vidíme šest vstupů. Dva short a čtyři long. Většinou jde o menší zisky/ztráty. Ale obchod číslo 3 představuje přesně typ dne, na který systém čeká – e-mini ES trendovalo od otevření do close a systém realizoval zisk přes 1 700 USD/kontrakt. To už je slušné. Právě vzhledem k povaze zisků a ztrát je u podobných přístupů extrémně důležité obchodovat je plně systematicky. Nechcete jeden den vynechat, abyste přišli právě o podobný trend. Sám tyto přístupy obchoduji plně automatizovaně. Jako důležité vnímám obchodovat systémy současně long i short. V akciových indexech mám navíc na short stranu dlouhodobě lepší výsledky (vyšší průměrný obchod). Protože pokud trhy začnou padat, bývá takový pohyb opravdu výrazný až do konce seance. Přirozeně pak podobné systémy tvoří vhodnou diverzifikaci pro mé swingové systémy na akciích (které obchoduji vesměs do longu). Na výše uvedeném screenshotu je vidět, že systém šel v klesajících trzích do shortu (obchody 1, 2) a následně začal obchodovat do longu (obchody 3,4,5,6). Podstatné je u tohoto typu systémů nechat obchodu dostatečně volný prostor. Jakmile se dá trh do pohybu, chcete v něm vydržet co nejdéle. Vesměs to vyžaduje vyšší stop-loss. V trhu ES to je tak 800 USD/kontrakt a výše. A určitě se může stát, že stop-loss bude zasažen i několikrát v průběhu měsíce a je potřeba s touto variantou počítat v risk managementu. Jelikož budou podobné systémy vždy alespoň částečně optimalizované (většinou využívají určité nastavení indikátorů), je z mé zkušenosti potřeba obchodovat je alespoň v malých portfoliích (ideálně s trochu jinými nastaveními indikátorů, timeframe, trhů). Rozkládá se tím riziko a zvyšuje šance, že systém zobchoduje typy dnů, na které čekáme. To je pochopitelně nevýhoda pro malé účty. Dobré ale je, že dnes lze strategie obchodovat přes mikro kontrakty s 10x nižší náročností na risk a kapitál. Vhodnou diverzifikaci tak lze dosáhnout i na malém účtu. S podobnými přístupy budete vystupovat kolem uzavíracího času burzy. Bohužel stejně jako ohromné množství dalších obchodníků. Připravte se tak na horší plnění. Systémy tak musí mít solidní průměrný obchod (sám vyžaduji v ES alespoň 200 dolarů na obchod). A časem můžete pochopitelně systémy vylepšovat tím, že budete pracovat na dalších typech exekucí, které vám budou skluz snižovat. Co se timeframe týče, začněte spíše na vyšších barech. Sám pracuji nejčastěji s půlhodinovými úsečkami. Nešel bych pod patnáctiminutový timeframe. Závěrem Hodně obchodníků se u podobných strategií spálí jen díky tomu, že jsou na daný typ strategie silně podkapitalizovaní. Nelze pracovat se stop-lossem 1 000 USD a účtem 5 000 USD. Nespoléhejte se na to, že naleznete krásnou historickou equity křivku backtestu, se kterou lze přístup obchodovat s vysokou úspěšností a malým stop-lossem. Tyto přístupy vyžadují vyšší stop-loss a patřičnou diverzifikaci. Naštěstí s mikro účty toto už není problém ani na menších účtech. Také se připravte na to, že breakout strategie občas vstoupí do pozice „v nejhorší možný okamžik“. Z principu strategie vstupují do longu na vysokých cenách a občas se těsně po vstupu trh otočí, aby šel k základnímu stop-lossu. Toto je opět realita. Zisky přístupu přicházejí z dlouhodobých pravděpodobností. Strategie bývají delší dobu v drawdownu, ale dříve nebo později se najednou v trhu zvedne volatilita a trhy začnou být v občasném delším trendu. A to jsou momenty, kdy strategie začnou odměňovat. Je jen potřeba trpělivě čekat v trzích…
  3. Vypilovat jediný obchodní přístup nebo se v trzích raději více rozkročit? Jedno z nejdůležitějších témat, které je třeba vyřešit, aby se mohly dostavit konzistentní profity. Obchodování opravdu nemusí být přehnaně komplikované a těžké. Mnoha obchodníkům ale dlouho trvá přijmout skutečnou realitu trhu. Tou je především fakt, že v trzích neexistují snadné peníze bez risku. Neexistuje a nelze se naučit nějaký „jednoduchý pattern“, kterým by se dalo v trzích trvale vydělávat a tahat z trhů peníze jako z bankomatu. Nejde to už z principu. Klasický krátkodobý trading, jak si jej představuje většina retailových obchodníků, spočívá v nalezení a využití určité výhody (edge) nad jinými obchodníky. Zjednodušeně řečeno to znamená, že pokud na nějaké situaci generujeme zisk, někdo jiný přijímá ztrátu. V anglickém světě naleznete pro tento typ obchodování běžně název „alfa obchodování“. Generování tzv. alfy představuje právě vytváření zisků nad rámec toho, co poskytují trhy sami o sobě. Systémy a patterny vedoucí ke generování „alfy“, tedy pracující s určitou výhodou, jednoznačně existují. A z krátkodobého pohledu je jich poměrně dost. Prakticky s každým nástrojem technické analýzy lze vytvořit funkční systém mající určitý edge. Ten bude mít ale omezenou životnost. Velmi často proto, že je navázán na určitou celkovou situaci v trhu (například volatilita vycházející z určité politické situace atd.). A především proto, že pokud by byl robustnější, dříve či později jej začnou objevovat další a další obchodníci a edge svými obchody doslova vyzmizíkují. Mnoho obchodníků hledající svatý grál je proto uvězněno v trvalém kruhu. Hledají fungující jednoduché „alfa“ výhody, které ale v trzích nejsou. Jsou frustrovaní tím, že jedno období funguje dobře jeden systém využívající třeba reverzní patterny, v jiném období fungují spíše trendové přístupy a podobně. Důležité je zdůraznit, že v trzích se vydělává i dalšími principy. V nich zjednodušeně řečeno můj zisk neznamená automaticky ztrátu jiného obchodníka. Příkladem může být držení nějaké akcie poskytující dividendy, držení měn nebo výpisy opcí. Tam coby obchodníci vyděláváme především na tom, že jsme placeni za risk vycházející z držení daného instrumentu. A jsme-li placeni za risk, je třeba se reálně připravit na to, že risk v dané situaci je a dříve nebo později mu budeme čelit (toto bývá pro mnoho obchodníků složité akceptovat, protože reálně se risk může projevit třeba až po mnoho letech vydělávání s daným přístupem, kdy už je obchodník v daném stylu velmi sebevědomý a neopatrný – viz například článek Pozor na černé labutě). Hodně obchodníků si bohužel myslí, že dokáže charakteristiku daného stylu obchodování nějak přelstít – tj. například „vyfiltruje“ indikátory situace, kdy v trhu hrozí risk, a tím se mu vyhne. To je však naivní. Vesměs jakýkoliv běžný obchodní přístup tak bude mít svá dobrá a špatná období. Jejich charakter se bude dost lišit podle toho, o jaký typ obchodování jde. Toto jsem se v trhu naučil já: Je potřeba přijmout skutečnou povahu obchodovaných strategií. Například vypisování opcí bude generovat menší zisky s vysokou úspěšností a občasnou větší ztrátou. Reverzní strategie obchodující pro menší profity podobně. U trendových obchodů budu mít zase nižší úspěšnost, tj. hodně ztrát a občasné větší profity. Jakákoliv „alfa“ strategie pracující s edge dříve nebo později o svůj edge přijde a je potřeba se neustále adaptovat. Strategie generující profity z držení trhů v sobě mají odpovídající risk (z něhož plyne má odměna). Je potřeba počítat s tím, že čas od času se dostaví situace, kdy risku budu přímo čelit. Současně je v trzích potřeba trpělivost a dlouhodobě přístupy obchodovat v neměnné podobě, aby se edge projevil. Ve všech přístupech musím být tak připraven procházet nejen ziskovými, ale i ztrátovými obdobími. Jedinou rozumnou cestou, jak dosahovat stability, je přístupy kombinovat. Snažit se je skládat na účtu tak, aby se doplňovaly. Je dobré maximálně rozkládat risk – například pokud obchoduji strategii s optimalizovanými parametry, často obchoduji několik verzí s různými parametry (nevsázím všechny peníze na jednu sadu optimalizovaných parametrů, neboť netuším, které parametry budou nejlépe fungovat do budoucna). Hlavní pozornost u „alfa“ strategií směřuji na celkovou správu portfolia (jednotlivé strategie by neměly mít příliš velkou váhu v portfoliu, pokud se strategiím nedaří, tak je vyřazuji atd.). Pokud nejste o diverzifikaci přes různé strategie úplně přesvědčeni, tak přemýšlejte o následujícím: každá strategie (automatická, diskréční) bude v reálném obchodování procházet jednou vyššími drawdowny, než jsme měli natestováno. Je to mj. proto, že v testech jsme vesměs optimističtí (už jen z důvodu, že systémy s opravdu vysokými drawdowny vyřadíme hned poté, co statistiky uvidíme). Musíme být proto připraveni vyšší drawdowny na živém účtu překonat, protože jen tak se dostaví případné další profity. Současně ale čelíme nejistotě – trhy se mění, edge je v trhu velmi nestálý (přičemž s nástupem různých metod „umělé inteligence“ se vše neskutečně zrychluje) a nikdy nevíme, jestli strategie edge ještě má. Budeme-li mít jedinou strategii, může se stát, že jednoduše odevzdáme ve výrazném drawdownu do trhu zpět veškeré profity. Jistě, můžete doufat, že v trhu objevíte trvalý edge, metodu s dlouhodobě nadstandardním poměrem odměny/risku nebo v sobě výjimečnou schopnost, jak tak říkajíc „nejvíce ztrácející obchody filtrovat“. Ale mnohem realističtější je přijmout fakt, že toto není v lidských silách a připravit se na dlouhá období možného propadu jedné strategie. A takové se reálně mnohem lépe překonávají tím, že se v trhu „rozkročím“ přes více nekorelujících principů a strategií. Což pochopitelně nemusí být nějak zásadně komplexní. Už jen dvě nekorelující strategie vycházející z různých tržních principů (klidně diskréčně obchodované) představují diverzifikaci.
  4. Při diskréčním intradenním obchodování je dobré obchody co nejvíce plánovat. Nejprve na základě dlouhodobější analýzy určit oblasti zajímavé pro vstup a pak jen čekat, jestli v plánovaných oblastech nastane vstupní situace. Silnou taktikou plánování, kterou v trzích používám roky, je tzv. reverz volatilní úsečkou. Volatilní úsečky jsou pro mě takové, které mají na časovém grafu tělo větší, než předcházející cenové úsečky. To tedy znamená, že v trhu nastala výrazná změna nabídky a poptávky a cena se dala do pohybu výrazněji než na předcházejících úsečkách. Situaci odpovídá například tato vyznačená volatilní úsečka: Pochopitelně v grafu vidíme celou řadu dalších volatilních úseček. Mě jednak zajímají ty nejvýraznější (ty je určitě dobré popsat zcela systematicky, sám mám v platformě úsečky označené indikátory), jednak vytvořené v určitých situacích. Nejzajímavější jsou právě ty podobné výše zobrazené. Trh se po určitém pohybu dostane do konsolidace, ze které „vystřelí“ proti směru původního pohybu volatilní úsečkou. Ta musí mít sílu uzavřít mimo oblast konsolidace – přesně tak, jak je to zobrazené výše. Proč je daná situace zajímavá? Trh má tendenci retestovat oblast, ze které volatilní pohyb vznikl. Už jen proto, že na cenové úrovni lze očekávat hodně stop-lossů "posunutých na vstup". V dané oblasti tak bývá zajímavé „číhat“ na vstupy. Trh reaguje tedy často tímto způsobem: Mimochodem – podívejte se, jak trh e-mini S&P 500 reagoval koncem minulého týdne na stejný „price action pattern“ vytvořený 13.5.2019: Při sledování price action patternů záleží na timeframe grafů. Reverz přes volatilní úsečku doporučuji sledovat na 30minutových timeframe a vyšších. A je to opravdu silný pattern, který vždy tvořil jeden ze základních pilířů mého diskréčního obchodování. Schválně si zkuste otevřít aktuální grafy a identifikovat podobné situace, které jsem dnes ukázal.
  5. Chceme-li získat vyšší frekvenci obchodů a nesnižovat časový timerame, musíme přijít s dalšími obchodovatelnými situacemi. Naštěstí to není takový problém. Existují určitě desítky až stovky silnějších vstupních situací, které lze do našeho systému zapojit. Jak na nové situace přicházet? V seriálu vám představím základní šablony, se kterými sám pracuji a se kterými se vám budou trhy zkoumat jednodušeji. Faktem ale zůstává, že hlavním zdrojem vaší inspirace by měly být trhy samotné. Je například možné hledat v historických grafech nejprve dny, kdy trhy vytvořily v noční seanci výraznější pohyb a následně se snažit pojmenovat kontext, který podobnému pohybu předcházel. Velmi důležité je ale při podobném testování historických souvislostí dodržovat základní principy robustního testování. Jeden z nejdůležitějších spočívá v rozdělení dat na část využívanou pro testování a část používanou pro následné ověřování nalezených principů. Nalézt krásně fungující systémy na známých datech není vůbec žádný problém. De facto můžeme zkoušet různá nastavení nástrojů, indikátorů a cenových patternů a hned vidíme, co a jak v historii fungovalo. Tímto způsobem ale nacházíme pouze situace, které fungovaly v minulosti. A některé se nemusí vůbec v budoucnosti už vůbec nikdy opakovat. Představte si například situaci, kdy provozujete luxusní obchod s vínem a snažíte se vyhodnotit, kteří zákazníci vám přinášejí nejvyšší zisky. Třeba proto, abyste se jim v budoucnu mohli více věnovat a jejich náklonnost podpořit exkluzivnějším dárkem. Rozhodnete se tak zanalyzovat nejvyšší historické prodeje v závislosti na vzhledu zákazníka. Máte například kamerové záběry svých prostor a zjistíte, že naprosto největší tržby přinesly klienti, kteří vstoupili do prodejny s bílou taškou. Nejnižší tržby pak generovaly klientky, které měli velké náušnice. Jsou podobná data relevantní i pro budoucnost? Patrně ne. Na historických datech můžeme najít různé náhodné vzorce, které ale byly skutečně jen to – prostě náhoda. Abychom měli co nejvyšší šanci oddělit náhodu od opakovatelných vzorců, je potřeba myslet alespoň na následující body: Zkoumaná situace by měla dávat logický smysl. Potřebujeme dostatečný vzorek dat – ideálně sto a více testovaných situací. Sledovaná pravděpodobnost by se měla projevit i na tzv. „nepoužitých datech“. Hledání historických pravděpodobností je tak nutné provádět jen na části dat, která máme k dispozici (říká se jim InSample data – používá se zkratka IS). Zbylou část dat si necháváme na ověření funkčnosti myšlenky (těmto datům se říká OutOfSample data – používá se zkratka OOS). Jak konkrétně dělit data na IS a OOS záleží z části na preferenci obchodníka a testovaných principech. Osobně se snažím, abych měl v OOS šanci získat dostatečně vysoký vzorek dat. Také je ale velmi důležité přemýšlet o charakteru testovaného trhu. Nedává úplný smysl vytvářet strategii ve velmi volatilním období a následně se ji snažit ověřovat v tichém období. Ze začátku si tak můžeme rozdělit data například na 60 % InSample a 40 % OutOfSample. Řekněme, že máte k dispozici 10 let, z čehož 6 použijete na vytváření strategie a 4 na finální otestování robustnosti na nepoužitých datech. Postupem času je ale dobré i o této oblasti přemýšlet hlouběji a zkoumat i méně tradiční přístupy. Nikdo například netvrdí, že IS a OOS bloky musí být jen dva. Sám rád dnes dělím data do jemnějších bloků. Například mohu střídat IS/OOS bloky po 1 roku. V případě 10 let historie tak získám sekvenci: IS (1 rok) – OOS (1 rok) – IS (1 rok) – OOS (1 rok) - IS (1 rok) – OOS (1 rok) – IS (1 rok) – OOS (1 rok) – IS (1 rok) – OOS (1 rok) Technicky je takový test trochu náročnější, současně mi ale poskytuje výrazně vyšší šance, že půjde o relevantnější test. OOS perioda bude mít patrně mnohem podobnější celkový kontext k IS než v případě, že je mezi nimi delší období. V tradingu je potřeba domýšlet detaily. Na druhou stranu je ale potřeba odněkud začít. Z počátku tak určitě stačí začít v případě IS/OOS pracovat s tradičním rozdělením například 60 % InSample a 40 % OutOfSample a teprve postupem času se posunout dál. Nezapomínejte ale na to, že OOS data by měla být skutečně nepoužitá při stavbě strategií. To znamená, že bychom je v ideálním případě měli pro otestování systému vyvinutém na IS použít pouze jednou. Běžnou chybou obchodníků je, že naleznou určitou funkční kombinaci systému na IS datech, hned se přepnou na OOS data, zjistí že parametry nejsou optimální, a tak celý proces opakují – upraví systém na IS datech atd. Tím se ale z OOS dat stávají IS data a vytvořený systém nelze považovat za skutečně ověřený na historických datech.
  6. V průběhu neděle bude probíhat plánovaný upgrade serveru, který bude z větší části dne nedostupný. Omlouváme se předem všem za komplikace.
  7. Pojďme se v našem seriálu posunout k praxi. Pro většinu obchodníků to představuje první testování určitého konkrétního plánu. Tedy minimálně zahrnující jasné vstupy a výstupy. My si později ukážeme, že se v našem přístupu nebudeme fixovat na jedinou vstupní situaci. Už jen proto, abychom měli systém více všestranný a obchodující s vyšší frekvencí. Ukážeme si také, že naše vstupy můžeme vytvářet na základě různých logik, a ty následně kombinovat dohromady – což opět povede k vyšší robustnosti. Mj. budeme postupně pracovat s cenovými patterny, indikátory, volatilitou, intermarket analýzou, sezónností a market internals. Ale pojďme postupně. Dnes se bez většího vysvětlování zaměříme na využití indikátoru Bollinger Bands. Jednoduše proto, abychom získali konkrétní příklad, se kterým můžeme začít pracovat. Bollinger bands statisticky definuje pásma, ve kterých cena osciluje okolo průměrné ceny. Dá se předpokládat, že na hranách těchto pásem mohou obchodníci přehnaně reagovat – například prodávat, pokud cena příliš poklesne nebo agresivně nakupovat, pokud cena roste až k hornímu pásmu bollinger bands. Takové chování by pak mohlo být kompenzováno v noční seanci. Ukázka aplikovaného indikátoru Bollinger bands na trh SPY v programu Amibroker. Konkrétní vstupní situace může vypadat takto: LONG: Trh uzavře pod včerejším denním Low a současně pod spodní linkou indikátoru BB s parametry 14 a 1,5. Současně je trh nad svým dlouhodobým klouzavým průměrem s periodou 200. V případě programu Amibroker, který sám nejvíce pro podobné testy používám, můžeme danou situaci popsat následovně: C<Ref(L,-1) AND C<BBandBot( C, 14, 1.5) AND C>MA(C,200); SHORT: Trh uzavře nad včerejším denním High a současně nad horní linkou indikátoru BB s parametry 14 a 1,5. Současně je trh pod svým dlouhodobým klouzavým průměrem s periodou 200. V případě programu Amibroker můžeme danou situaci popsat následovně: C>Ref(H,-1) AND C>BBandTop( C, 14, 1.5) AND C<MA(C,200); Long obchod znamená, že na close denní úsečky trh nakupujeme a pozici držíme do otevření trhu následující den. Short obchod znamená, že na close denní úsečky trh prodáváme (shortujeme) a pozici držíme do otevření trhu následující den. Systém už v této fázi obchoduje na dlouhou i krátkou stranu, což je přístup, který u takto krátkodobých systémů doporučuji. Minimálně je to cesta k vyšší robustnosti. Co se týče uvedených kódů popisujících vstupní situace, jde o skriptovací jazyk programu Amibroker. S jeho pomocí lze jednoznačně popsat obchodované situace, které se občas zdlouhavě popisují běžnými větami. Programování v Amibrokeru není při vytváření systému vůbec potřeba. Můžete použít jiný program nebo třeba testovat situace ručně. Aby byl ale výklad co nejjednoznačnější, tak jsem jej doplnil právě i hotovými podmínkami skriptovacího jazyka. Sami nakonec vidíte, že definování příslušných situací není vlastně vůbec složité. Ohromnou výhodou definování systému skripty je možnost myšlenku otestovat na velkém množství dat během pár vteřin. Takto vypadá náš backtest aplikovaný na trh SPY v období 1.1.1994 – 1.1.2019: Systém obchoduje na long i short stranu. Celkem bylo provedeno 335 obchodů s úspěšností 65,67 %. K dispozici máme i podrobné statistiky: Určitě se vám nyní honí hlavou – jak dobré jsou dané výsledky? Kolik jsem mohl vydělat na svém konkrétním účtu? Ale brzděte prosím tyto myšlenky. Jsme opravdu zatím na úplném začátku! Předně – v tuto chvíli testujeme zatím jedinou vstupní situaci, přes kterou jsme vstoupili do 335 pozic v průběhu 24 let. Tedy obchodovali jsme průměrnou frekvencí jen lehce přes obchod za měsíc. A v tu dobu náš kapitál pracoval vždy jen přes noc… Přesto systém vytvořil skoro poloviční zhodnocení, jako kdybychom drželi celou dobu nakoupený samotný index, ale při podstatně nižším risku. Rozhodně je to velmi povzbudivý start, který nám ukazuje další směr – je potřeba zejména zapracovat na zvýšení frekvence obchodování.
  8. petr

    Mikro kontrakty na akciové indexy

    Od května 2019 je možné u řady brokerů obchodovat nové futures mikro kontrakty na akciové indexy. Viz https://www.financnik.cz/aktuality/nove-e-mini-mikro-kontrakty-r12/
  9. petr

    Nové e-mini mikro kontrakty

    Od května je možné u řady brokerů obchodovat nové futures mikro kontrakty na akciové indexy. Kontrakty mají 10x menší tick než klasický e-mini. Tedy například mikro S&P 500 má tick o hodnotě 1,25 USD. Podstatně menší jsou i komise. Zde je přehled specifikací a také tickery, pod kterými kontrakt naleznete například v Interactive Brokers: V IB tedy mikro kontrakt e-mini S&P 500 naleznete pod tickerem MES (a vyberte futures). Likvidita je již dnes poměrně zajímavá: Zkušenosti a diskuzi směřujte na Finančníkovi do tohoto diskuzního vlákna.
  10. petr

    Time management tradera

    Téma, které na první pohled vypadá, že nemá s úspěchem v trzích nic společného. Přesto na něm závisí mnoho. Jak si nastavit řád, abychom se v tradingu mohli dlouhodobě posouvat produktivně kupředu? Důvod, proč mnoho začátečníků v trzích neuspěje spočívá určitě také v tom, že drtivá většina lidí není schopna systematicky pracovat na dlouhodobých cílech. A není se čemu divit. Není to vůbec jednoduché. Čas od času se mne někdo zeptá, jak zvládám všechny své aktivity a jak se dokáži dlouhodobě motivovat k tomu, abych se neustále posouval kupředu? Upřímně řečeno, dlouho jsem nad tím ani nepřemýšlel. Nikdy jsem reálně nepracoval pro žádného šéfa a odjakživa mi přišlo přirozené prostě realizovat vlastní nápady a prostě pracovat na čem bylo třeba. Nicméně s přibývajícím věkem a pohodlností jsem sám začal vnímat, že bez určitého řádu mi efektivita práce postupně klesá a den může uplynout ani nevím jak. Zejména v tradingu, kde je před námi vždy nekonečně možností na čem pracovat a nikdy nebudeme reálně hotovi. Vždy bude kam se dál posouvat. Hodně si uvědomuji, že pro začínající tradery toto může být velmi demotivující. Postavit si například robustní profitabilní portfolio vyžaduje zvládnout mnoho oblastí. Pochopit trhy, celý ekosystém burzy, najít funkční nástroje, osvojit si skriptování platforem, ovládnout přemýšlení v pravděpodobnostech atd. Není toho málo a vůbec se nedivím, že většina začátečníků rezignuje a vydá se tou nejhorší možnou cestou – bez nějakého složitého plánování klikají do trhu a doufají, že zisky „nějak přijdou“. Bohužel trading je výhradně o systematické práci. Ta není moc zábavná sama o sobě. V obchodování jde ještě ke všemu o běh na dlouhou trať. Zisk v obchodování tak závisí nejen na obchodních strategiích, ale také na našich vlastních mechanismech, které nám pomáhají pracovat efektivně a s tak říkajíc „tahem na branku“. Věřím, že každému může fungovat trochu něco jiného. Mohu se ale podělit s tím, co funguje mně. Dnes v takovém hrubém náčrtu a pokud bude zájem, mohu se dalšími články věnovat tématu podrobněji. Opravdu vnímám, že způsob, jakým pracujeme, se velmi podepisuje na výsledcích, kterých dosahujeme a celkovém vnímání kvality našeho života. První extrémně důležitou částí úspěšného zvládnutí práce na tradingu (a de facto čehokoliv) je stanovení cílů. Sám si větší cíle stanovuji přibližně na rok. Mám je napsané ve svém diáři a jde o cíle, při jejichž splnění vím, že budu mít daný rok úspěšný. V případě tradingu nejde striktně o finanční cíle – tj. vydělat XXX dolarů/rok. Ale spíše o realizaci a dokončení kroků, které by k ziskům měly vést, budou-li mi trhy nakloněny – například vytvoření určitého nového typu portfolia atd. Jakmile vím, kam mířím, jsem schopen cíle rozkládat do dílčích kroků. Dokáži si dělat hrubé měsíční plány, kde zhruba potřebuji být. Průběžně revidovat progres, z hrubých plánů vytvářet konkrétní týdenní a denní úkoly, na kterých pracuji. Velmi se mi osvědčilo si dílčí plány zapisovat. Snadněji lze pak konfrontovat realitu s představami a cestu i cíle korigovat. Pak samozřejmě přichází ta nejméně zábavná část. Samotná práce na drobných úkolech, které je třeba dotáhnout, aby se člověk posunul o krok dopředu. Tedy blíže k cíli. V mém případě to mohou být stovky testů různých strategií, psaní nových kódů, revize kódů v týmu, neustále zkoumání grafů trhů, práce na exekučních platformách, přemýšlení o dalších perspektivních směrech k diverzifikaci, posouvání spravovaných portfolií atd. A do toho mnoho dalších rutin – psaní článků podobných tomuto, výuka obchodníků, příprava konference nebo třeba aktuální práce na nové knize. Jak to vše vměstnat do rozumně dlouhého dne, kde zbude čas na rodinu, sport a odpočinek? Osobně se mi osvědčilo pracovat v určitých intenzivních blocích, které mám dopředu rozplánované (a plán vychází z výše zmíněných dlouhodobých cílů). Je pro mě extrémně důležité vědět, že připravenou práci mohu zvládnout například za hodinu. Práce, která mě zabíjí je taková, která se může táhnout celý den s vidinou, že ji ani nedokončím. To jsem měl vždy pocit, že je vlastně jedno, jestli se do práce pustím, nebo jestli se budu „chvíli“ věnovat nějaké mnohem příjemnější prokrastinaci. To, že mě vyhovují kratší intenzivní intervaly práce, jsem si patrně nejdříve uvědomil ve sportu. Nikdy jsem se mu moc nevěnoval a kdykoliv jsem začal chodit do posilovny, moc dlouho jsem u toho nevydržel. Změnou pro mě byl až Crossfit, což je velmi všestranný sport, jehož základem jsou intenzivní intervalové tréningy. Pokud má člověk na nějaký úkol například 15-20 minut, smysly se upnou k jeho splnění. Není zde příliš prostor pro přemýšlení o nepodstatnostech. Mozek se navíc dá jednoduše přesvědčit, že se tato doba dá „přežít“. Podobný „intervalový“ přístup se mi postupně osvědčil i při práci. Ráno si pro den naplánuji bloky práce po cca 30 minutách. V každém bloku se věnuji jediné činnosti. Velmi intenzivně, nepřemýšlím o ničem jiném. Po uplynutí bloku vím, že s prací skončím a budu mít přestávku. Pak se věnuji další činnosti. Patrně nejblíže má tento styl práce k technice pomodoro. Pokud hledáte cestu, jak se organizovat, tak mohu podobný přístup jen doporučit. U mě to vedlo k výrazně nižší prokrastinaci (protože mysl ví, že na konci bloku bude přestávka a teď je potřeba se koncentrovat. Navíc půlhodina je tak akorát dlouhá doba, při které není problém hluboce se koncentrovat). Dále jsem získal dobrý způsob, jak zpětně kontrolovat, kolik času vynakládám jaké aktivitě. Jistě, zkoušel jsem v průběhu let různé aplikace na měření času, ale dlouhodobě jsem nebyl schopen je opravdu používat. Dnes vnímám svůj pracovní den po půlhodinových blocích (pro mě 1P = Petrova půlhodina). Za týden/měsíc jasně vidím, kolik „P“ jsem strávil na kterém projektu a kam jsem se v něm posunul. Mohu snadněji revidovat své cesty a cíle. Deadline v podobně „P“ bloku mě také naučil toho za půlhodinu udělat mnohem více než dříve. Velmi rychle jsem si uvědomil, jak čas letí a že každý den má jen omezený počet „P“ bloků mého vlastního života. Jak vidíte, téma je to skutečně velmi důležité a zajímavé. A dalo by se o něm psát ještě mnohem, mnohem podrobněji. Nicméně pomalu uplynula jednotka 3P, kterou mám na podobný článek vyhrazený. A tak nezbývá než se zeptat – praktikujete sami nějakou formu time managementu, která vás dokáže motivovat a udržet efektivně pracovat na dlouhodobých úkolech? Podělte se v této diskuzi.
  11. Prostor pro diskuzi k článku https://www.financnik.cz/clanky/praxe/time-management-tradera-r1813/
  12. Pokud si založíte účet u TradeStation Global budete mít další, nezávislý účet u IB. Na tom můžete obchodovat i napřímo (nebo s libovolným dalším software napojitelným na IB).
  13. Přestože jednoduché obchodování základního edge popsaného v minulém článku by v dlouhodobém horizontu patrně přineslo zisky samo o sobě, nepředstavuje popsaná výhoda ještě obchodní systém. Už jen proto, že zisky jsou poměrně malé v porovnání s riskem, který bychom pro jejich získání podstupovali. Aby bylo možné myšlenku reálně obchodovat, je potřeba ji posunout do kompletního obchodního systému. Obchodní systém představuje soubor pravidel, která popisují, jak budeme danou myšlenku obchodovat. Tj. jak přesně budeme vstupovat a vystupovat, abychom měli co nejvyšší šanci vydělat a současně mohli rozumně kontrolovat risk. Zjednodušeně bychom si práci na obchodním systému mohli rozdělit do následujících bloků: Definování základní obchodované výhody (v našem případě noční sezónnosti v akciových indexech popisované v minulém díle). Jemné definování vstupních podmínek. Přestože jsme viděli, že dlouhodobě vydělává vstup do všech nočních seancí rostoucích trhů, budeme si chtít vybírat jen takové situace, které historicky vedou k rozumně vysokým profitům. Definování výstupních pravidel. Risk management obchodu. Kolik kapitálu budeme riskovat na jeden obchod? Budeme risk v obchodu omezovat tzv. stop-lossem? Na jaké úrovni? Money-management celého systému, který nám odpoví, s jakým celkovým kapitálem budeme systém obchodovat. Ověření robustnosti vytvořeného systému. Způsob provádění obchodů. Jak konkrétně budeme příkazy zadávat? Ručně, automaticky, typy příkazů atd. Průběžné ověřování robustnosti systému. Každý systém může přestat pracovat a my se musíme průběžně ujišťovat, že „nejedeme na mrtvém koni“. Je toho skutečně dost, co musíme v rámci obchodovatelného přístupu promyslet. Na druhou stranu budeme riskovat v trzích naše tvrdě vydělané peníze, takže patřičná příprava je na místě. Jen bláhoví začátečníci se vrhají do trhů bezhlavě a narychlo. Dlouhodobě robustní a ziskové obchodování se vytváří jednoznačně přes dobře připravený a propracovaný obchodní plán. V našem seriálu se postupně k jednotlivým blokům dostaneme. Pojďme na to ale postupně. Základní obchodovanou výhodu jsme si představili minule. Dnes se pojďme podívat na definování vstupních a výstupních podmínek. Začněme výstupními podmínkami, protože ty si můžeme nastavit, hlavně z počátku, velmi jednoduché. Jak jsme si ukázali minule, pozici budeme chtít uzavřít při otevření trhů v den následující po našem vstupu. Určitě budeme chtít na výstupech později ještě pracovat. Například budeme pilovat čas výstupu – mně osobně se osvědčuje v podobných případech vystupovat například minutu či dvě před samotným otevřením trhů (obchody provádím pomocí komoditních kontraktů, které se obchodují prakticky nonstop). Později můžeme do systému dodělat i nějakou jemnější logiku výstupu z trhů na základě chování ceny v průběhu noční seance. Ale pro začátek pracujme s výstupem za otevírací cenu. Obecně se mi podobná počáteční fixace některých částí obchodního systému velmi osvědčila. Běžně například vyvíjím systémy s určitými vyzkoušenými výstupy, abych mohl co nejdříve začít backtestovat samotné vstupy. Co se vstupních situací týče. Už jsme si otestovali, že budeme chtít vstupovat při uzavření trhů. Opět nechme v tuto chvíli stranou, jak konkrétně to budeme technicky dělat. V backtestu můžeme pro začátek počítat za vstupní cenu tu cenu, na které trh daný den uzavřel. Můžeme se tak naplno soustředit na základní otázku – kdy vstupovat, aby byly profity největší a risk nejmenší? Prakticky jediný nástroj, který nám dá na danou otázku odpověď, je historický backtest. Na historických datech bychom měli zkoumat různé situace v trhu a vyhodnocovat, jak se po nich choval trh v noční seanci. Například se podívejme na dvě zcela hypotetické situace: a) Nakupujeme close klesajícího dne, který uzavřel pod low předchozího dne b) Nakupujeme close růstového dne, který uzavřel nad high předchozího dne. Otestuji-li historii trhu SPY, pak získám následující údaje: Počet obchodů Úspěšnost Průměrný ziskový obchod vůči stavu účtu Průměrný ztrátový obchod vůči stavu účtu Celkový zisk Max. drawdown Close<Předcházející Low a klesající den 1301 59,03 % 0,43 % - 0,50 % 245,13 % - 27,76 % Close>Předcházející High a rostoucí den 1677 43,83 % 0,35 % - 0,32 % - 59,93 % - 74,74 % Test proběhl na trhu SPY v období 1.1.1994 – 1.1.2019. Použit byl hypotetický startovací kapitál 10 000 USD, 50% margin a plná expozice účtu v každém obchodu. Komise brokera Interactive Brokers započítány. Jak vidíte, obě situace vedou ke zcela odlišným výsledkům. V momentě, kdy trh v průběhu dne rostl a nakonec uzavřel nad maximální cenou předcházejícího dne, existuje výrazně nižší pravděpodobnost dalšího růstu trhu v noční seanci (jen 43,83 %). Dlouhodobé obchodování této situace by bylo výrazně ztrátové. Na druhou stranu v momentě, kdy akciový index klesá a uzavře níže, než byla nejnižší cena včerejšího dne, existuje solidní šance (59,03 %), že noční seance poroste. Dlouhodobé obchodování této situace by bylo profitabilní. Velmi tedy záleží, které dny budeme obchody otevírat. Náš cíl bude najít takové vstupní podmínky, které povedou k co nejvyšší ziskovosti a nejnižšímu risku. Čísla mohou být určitě mnohem lepší než na výše uvedeném velmi triviálním příkladu. Samozřejmě se ale nabízí zásadní otázka: Budou se historické pravděpodobnosti opakovat i v budoucnosti? Pokud vás otázka také hned napadla, jste jednoznačně na dobré cestě stát se profitabilními tradery. Určitá zdravá skepse je v tradingu absolutně nezbytná. A bohužel, není žádná záruka, že se historická výkonnost bude opakovat i v budoucnosti. Současně však nemáme k dispozici příliš mnoho jiných možností, od kterých se v obchodování odrazit. Je tak třeba: Pracovat s testováním historie tak, abychom se maximálně vyhnuli tzv. přeoptimalizaci. Tedy nalezení řešení, které perfektně popíše minulost, ale nebude robustní v budoucnosti. Pracovat s dostatečným vzorkem dat. Čím více historických obchodů, tím větší šance, že naše výsledky budou opakovatelné i v budoucnosti. Určitě je dobré vyhodnocovat alespoň stovky obchodů. Desítky obchodů nepředstavují dostatečný vzorek. Použít statistické nástroje, které nám usnadní identifikovat robustnost vytvářeného systému. Při finálním obchodování systému používat přístupy, které nám pomohou identifikovat odchylky v chování systému a možnou situaci, kdy systém přestat obchodovat. Vidíte, že témat máme před sebou hodně a postupně si je v seriálu probereme podrobněji.
  14. Jak vytvořit funkční obchodní systém? Pojďme si v sérii článků společně jeden postavit. Od nalezení obchodovatelné myšlenky až k reálným obchodům. Než začneme vytvářet obchodní systém, měli bychom mít základní myšlenku, jaký typ obchodního systému plánujeme vytvořit. Intradenní systém držící pozice max. pár hodin? Krátkodobý swingový systém obchodující pozice v horizontu max. dnů? Dlouhodobější obchodní systém? V principu platí, že čím rychlejší systém budeme mít, tím více můžeme vydělat. Ale s přibývající rychlostí systému bude vše výrazně náročnější na technologie a zkušenosti s vyhodnocováním robustnosti a průběžnou adaptací měnícím se trhům. Jako nejrozumnější mi přijde začít stavět systémy s použitím denních grafů. Už jen proto, že data jsou k dispozici běžně zdarma a pro jejich zpracování nám stačí často jednoduché nástroje typu Microsoft Excel. Odkud začít při stavbě obchodního systému? Nejlépe od nějaké základní hrubé výhody, která je v trzích přítomna dlouhodobě. Spoustu jich lze nalézt v různých akademických studiích, ale také vlastním testováním trhů na základě jejich průběžného pozorování. My se zaměříme na běžně obchodované americké akciové indexy. Jde o trhy, na kterých se dají vytvářet profitabilní strategie poměrně snadno. Současně jde o hodně obchodovatelné trhy a není problém do nich umístit prakticky jakékoliv množství kontraktů (z pohledu retailových traderů). Jedna z mých oblíbených cest, jak v trhu najít základní výhodu, je studium sezónnosti. Určitého základního vzorce chování ceny, který se opakuje v průběhu času. Sezónnost může být dlouhodobá – například v podobě měsíční tendence trhu růst nebo oslabovat v určité roční období. Ale i výrazně krátkodobější. Například denní tendence (viz například článek Pravidelné profity pomocí sezónnosti popisující zajímavou sezónnost ve zlatě). Nebo i krátkodobější. Některé trhy se opakovatelným způsobem chovají stejně v určité hodiny. Krátkodobá sezónnost, na kterou se zaměříme v našem seriálu, vychází z rozdílného chování akciových trhů v denní vs. noční seancí. Denní seance amerických akciových indexů odpovídá době, kdy jsou v USA otevřeny akciové burzy. Tedy 15:30 – 22:00 českého času (kromě dvou krátkých období, kdy se v USA a Evropě mění jindy letní/zimní čas). Noční seance představuje zbylá část dne. Akciové trhy jsou zavřeny a indexy se obchodují jen prostřednictvím odvozených kontraktů jako jsou například futures (komoditní kontrakty). Většina obchodníků má správnou obecnou představu o dlouhodobé růstové tendenci v akciových indexech (s občasnými velkými propady v průběhu krizí). Odehrává se ale hlavní růst v denní nebo noční seanci? To jsou přesně ony základní myšlenky, které byste měli sami testovat a které vás dovedou k vytváření obchodních plánů. Otestování podobné myšlenky je velmi jednoduché. Lze použít data z Yahoo a například MS Excel. Nebo ještě lépe specializovaný software typu NinjaTrader, TradeStation nebo v mém případě Amibroker. V těch je daný test otázkou doslova několika málo minut. Pro test použiji data trhu SPY, což je ETF (prakticky akcie fondu) silně korelující s indexem S&P 500. Data trhu se dají snadno stáhnout například na Finance Yahoo - https://finance.yahoo.com/quote/SPY/ (záložka Historical Data > Download Data). Pozn.: Tento trh se aktuálně nedá obchodovat u evropských brokerů kvůli regulaci EU, což ale v tuto chvíli nevadí. Finální systém budeme moci obchodovat několika alternativními způsoby. Denní vs. noční seance Noční seance je u amerických akciových indexů obchodníky spíše přehlížena (zejména těmi, kteří jdou s davem). Jak ale vypadá hypotetický scénář, kdy bychom drželi SPY přes den, vs. situace, kdy bychom drželi trh přes noc? To vše v případě rostoucího kontextu trhu, který vyjádříme jako situaci, kdy trh uzavírá nad svým dlouhodobým klouzavým průměrem 200. Tedy testujeme dvě základní období trhu: a) Nakupujeme SPY za otevírací cenu a prodáváme stejný den za uzavírací cenu. b) Nakupujeme SPY za uzavírací cenu a prodáváme následující den za otevírací cenu. To vše v kontextu, kdy je uzavírací cena trhu výše než klouzavý průměr z uzavíracích cen za posledních 200 úseček. Takto vypadá backtest situace a) – obchodování denní seance v období 1.1.2000 – 19.4.2019: A takto backtest situace b) – obchodování noční seance v období 1.1.2000 – 19.4.2019: Na první pohled je vidět ohromný rozdíl ve výkonnosti a jednoznačný závěr – dlouhodobý růst akciového indexu S&P 500 probíhá především v noční seanci. Sezónnost si můžeme ověřit i na starších datech, která mám v Amibrokeru k dispozici, konkrétně od roku 1994: Takto vypadá backtest situace a) – obchodování denní seance v období 14.6.1994 – 19.4.2019: Takto vypadá backtest situace b) – obchodování noční seance v období 14.6.1994 – 19.4.2019: Jak je vidět, popisovaná sezónnost je opravdu výrazná. Na maximální historii vidíme výrazně vyšší počet ziskových obchodů oproti ztrátám (53,72 % vs. 46,28 %) při vyšším průměrném ziskovém obchodu, než je průměrná ztráta. To je určitě solidní základní edge, který se můžeme pokusit rozvinout do konkrétního obchodního přístupu. Tomu se budeme na Finančníkovi věnovat v dalších článcích. Do té doby ale doporučuji, abyste se sami pokusili o využití popisovaného principu přemýšlet a nápady testovat. Protože právě podobná praxe je to, co posouvá tradery kupředu.
  15. Obchodování je velmi komplexní svět, ve kterém lze ztratit mnoho iluzí, peněz a času. Sám jsem si prošel mnoha slepými a krkolomnými cestami. Řadu věcí šlo dělat lépe a efektivněji, s některými jsem měl štěstí hned v začátku. Jak bych začal s tradingem dnes, kdy mohu zohlednit své dlouholeté obchodní zkušenosti? On-line obchodování láká mnoho nových, potenciálních obchodníků. A nemusí jít jen o tradiční burzovní instrumenty typu akcie, komodity či měny. Dnes moderní kryptoměny pochopitelně podléhají podobným principům finančních spekulací. Samozřejmě existuje mnoho cest, jak v obchodování zvítězit. Ale bohužel násobně více možností, jak nevyhrát. Je nezvratným faktem, že většina začátečníků v trzích peníze nevydělá. A když nějaké vydělají, tak to rozhodně není tím snadným stylem, který si představovali na začátku. Správný start je tak opravdu velmi, velmi důležitý. A pokud začínáte, maximálně doporučuji přemýšlet o cestách, kterými se budete vydávat. Je hrozně jednoduché nechat se vést davem a reklamními „masírkami“. Tyto cesty ale k úspěchu nevedou. Jak bych dnes začínal já? Maximální důraz bych od počátku kladl na obchodování portfolií. Většina obchodníků začíná s obchodováním jediného trhu, jediného timeframe a jediného systému. Má to svoji logiku ve stylu: začnu jednoduše a „komplexnější“ nástroje přidám později. Podobný přístup bohužel svádí k tomu, že se obchodníci často snaží najít v trzích logiku, která tam není. Obchodování je o dlouhodobých pravděpodobnostech. Pokud budete studovat přílišné detaily jediného trhu a snažit se v něm „perfektně orientovat“, budete se v nich snažit objevit něco, co tam nikdy nebude. Sledování jednoho trhu a přístupu je paradoxně také velmi náročné psychicky. Často je třeba dlouho čekat, až se bude opakovat obchodovaná situace, je třeba hodně trhy testovat a chápat, jak se mění. A dokázat se změnám přizpůsobit. Mnoho obchodníků zaměřujících se na jediný přístup a trh dává své neúspěchy za příčinu vlastní psychice. Většinou ale jen bojují ve špatné bitvě. Snaží se ovlivnit něco, co nejde – například, aby jeden trh a systém trvale spolupracovaly k jejich spokojenosti. Extrémně důležité je dát si pozor nesklouznout do kategorie začátečníků zakládajících na fórech diskuzní vlákna typu „Fulltime trading úspěšným intradenním obchodováním jednoduchého price action patternu na e-mini S&P 500“, kam se každý den snaží dávat své „tipy“ odkud kam cena půjde. Nepoznal jsem osobně nikdy žádného dlouhodobě úspěšného tradera, který by se tímto způsobem dlouhodobě živil. Přesto jde většina nováčků podobným směrem. Při obchodování více trhů a systémů začne obchodník věnovat důraz úplně jiným hodnotám. Začne skutečně řídit risk na základě dlouhodobých pravděpodobností a chápat, že pro reálné vydělávání peněz nejsou potřeba perfektní systémy. Stačí i ty „průměrné“. Paradoxně může obchodník najednou dosahovat stabilnějších obchodních výsledků, protože v průběhu času „vždy něco funguje“. Každý začátečník má tendence hledat pro svou práci „perfektní a 100% nástroje“. Rozdíl ale je, jestli svoji pozornost zaměří k pilování vstupů a výstupů jediného systémů nebo tuto pozornost věnuje práci na řízení celého portfolia. Rozdíl ve výsledku je z mé zkušenosti propastný. Jistě, na začátku si můžete říct: „Nemám ani jeden funkční systém, jak mohu začít obchodovat portfolio s více systémy?“. Ale jde skutečně jen o hledání a celkovém přístupu k trhům. Vytvoření dostatečně dobrých obchodních systémů není tak složité. Paradoxně je to mnohem jednoduší než vytvoření jednoho „perfektního“ systému. Zaměřoval bych se čistě na systematické (mechanické) strategie. Víte, že jsem opravdu hodně let obchodoval diskréčně a nemohu říct, že je to špatná cesta. Hodně jsem skrz ni získal. Ale má své limity. Největší jsou spojené s tím, že diskréční obchodování vyžaduje hodně času a psychického nasazení. Z počátku to nevadí, ale časem si člověk uvědomí, že je to velmi limitující faktor. Zpětně si dnes mnohem více uvědomuji, že systematické strategie jsou mnohem lepší „investicí do budoucna“. Jakmile totiž rozjedete určité workflow, se kterým strategie vytváříte, je vše mnohem méně časově náročné než diskréční obchodování. Snáze se vytvářejí portfolia, v případě změny trhů se lze rychle přizpůsobit. U diskréčního obchodování trvá osvojení obchodních přístupů měsíce a roky, aby šlo získané know-how používat jen do doby, než se trhy změní. Co výše uvedené znamená v praxi? Jednoznačně bych se od začátku zaměřoval na definování obchodovaných podmínek do mechanických pravidel. Nejlépe v nějakém skriptovacím jazyce, který umožní podmínky věrohodně otestovat na historických datech. Ano, může to být z počátku náročnější, protože je třeba se více naučit různé softwary a bohužel obchodník rychleji čelí „nerůžové“ realitě trhů, ale investice se vyplatí. Raději ještě jednou zopakuji – nemám nic proti diskréčnímu obchodování. Jen v dnešních rychle se měnících trzích vnímám zpětně jako mnohem lepší časovou a psychickou investici studium systematických strategií. Sám bych dnes tak už rovnou začal tímto směrem. Začal bych na vyšších timeframe. Tedy stejně jako kdysi, kdy jsem začínal s pozičním obchodováním spreadů. Intradenní obchodování je fajn, ale vyžaduje mnohem více, než začátečník dokáže akceptovat. Platí to i v systematických strategiích. Začínal bych tradičně na denním timeframe a obchodoval swingově. Rozumné mi přijde začít s akciemi umožňujícími obchodovat s malým kapitálem a minimálním riskem na obchod. Jakmile zvládnete rozjet tímto směrem první portfolio, pustil bych se do dalších směrů. Určitě je pak možné obchodování zrychloval směrem k intradennímu obchodování futures. Po úspěšném live tradingu swingového akciového portfolia už byste měli mít dostatek zkušeností pro pochopení principů, kterým budete čelit a prostředků, které budete potřebovat. Trading opravdu nemusí být složitý. Je ale třeba překonat ego, které velí vydělávat díky vlastní chytrosti (schopnosti predikovat trh). A také překonat určitý přirozený odpor k systematické práci, která reálně vede k ziskům. Ty nespočívají v predikování trhů, ale v systematickém podstupování řízeného risku, za které inkasujeme profity.
  16. Já jsem při tom původním vysílání avizoval, že se akce nebude v nejbližší době opakovat. Rád bych se dostal k tomu udělat nové vysílání na podzim. Mám myslím opravdu spoustu zajímavých taktik, kterými lze swingové obchodování posouvat dopředu. Petr
  17. Je mi potěšením vám oznámit, že letos se opět můžete těšit na velké setkání systematických obchodníků – na konferenci Trading Forum. Raději si tak již s předstihem poznamenejte do kalendáře datum 9.11.2019. Letošní program bude plně zaměřen na retailové systematické obchodní přístupy. Tedy strategie zajímavé pro běžné obchodníky. Akce bude především pro české a slovenské tradery. Zorganizovat velké setkání traderů s kvalitním programem vyžaduje hodně organizačního úsilí, ale i na posledním QuantExpo bylo jasně vidět, že vydaná energie za to stojí. Atmosféra mezinárodní konference QuantExpo, kterou jsme v Praze pořádali v roce 2017. Jsem moc rád za aktivní komunitu, která se kolem Finančníka vytvořila, a tak jsme se i letos rozhodli s týmem věnovat této oblasti energii a kvalitní odborné setkání opět uspořádat. Již nyní tedy na inspirativním obsahu intenzivně pracujeme. Pokud patříte mezi úspěšné obchodníky, můžete se navíc na obsahu akce také podílet. V tradingu toho lze mnoho vyřešit elektronickou cestou. Ale osobní kontakt je osobní kontakt. Pro mě samotného to byly a jsou právě různé zahraniční konference a setkání, které silně ovlivnily a dále ovlivňují můj vývoj coby tradera. Zejména díky velmi neformálním rozhovorům s podobně smýšlejícími lidmi, kterou se mi často podařilo rozvinout do plodné spolupráce. O co půjde? Primárně je konference určena traderům pohybujícím se kolem serveru Finančník.cz. Ti jednak obchodují podobnými styly a současně mohou v osobních setkáních navázat na komunikaci, kterou vedou v různých částech diskuzního fóra. Samozřejmě, že z programu Trading Fora si odnesete mnoho podnětů i v případě, že Finančníka nesledujete. Především proto, že celý program bude zaměřen na praxi. A to zejména v systematických strategiích – tedy takových, které jsou jasně backtestovatelné, opakovatelné a lze je automatizovat. Cílem obsahové části Trading Fora bude ukázat co funguje ostatním traderům, s jakými nástroji pracují a jakých dosahují výsledků. Naším záměrem je nastavit celý program tak, aby se zde prezentovalo se svými zkušenostmi více obchodníků a účastníci tak mohli získat co nejvíce inspirace a nových poznatků. Věřím, že konference tak opět nabídne program, který bude velmi atraktivní. Jeho konkrétní podobu budeme dávat dohromady ještě přibližně do léta a aktualizované informace budete nacházet jak na Finančníkovi, tak na webu tradingforum.cz Už nyní je jasné, že zde budou bloky na témata: Swingové strategie v akciích. Zkušenosti s pronájmy vlastních strategií (kolik se dá očekávat klientů, jak fluktuují atd.). Intradenní mechanické strategie. Vytváření portfolií (téma, které plánuji pro akci zpracovat sám). Ovšem stále je prostor otevřen i pro zprostředkování dalších praktických zkušeností. Což je hlavní důvod dnešního článku. Chcete na akci vystoupit? Rádi zprostředkujeme na konferenci zkušenosti dalších obchodníků, kteří úspěšně systematicky obchodují a mají zájem se na akci podělit o znalosti a zviditelnit se. Máte-li zájem na konferenci vystoupit, pošlete stručný návrh přednášky na petr@financnik.cz. Velkou šanci na akceptaci mají témata spojená s tím, co vám poslední roky v trzích funguje, jakých výsledků rámcově dosahujete atd. Kdy se přihlásit? Zvažujete-li zúčastnit se akce coby účastníci, pak se již dnes můžete registrovat na www.tradingforum.cz. Na přihlášení na akci je určitě ještě dost času. Nicméně kapacita sálu je omezena 400 účastníky. To se může zdát jako hodně míst, ale je to méně židlí, než kolik bylo účastníků na posledním podzimním workshopu swingového obchodování. Komunita Finančníka je už poměrně veliká. Rozhodně tak doporučuji nečekat s registrací na poslední chvíli. Navíc do konce srpna je vstup nabízen za sníženou „early bird“ cenu. Už dnes se těším na mnoho inspirujících osobních setkání.
  18. Každý trader chce v trzích vydělat peníze. Jakmile se ale do obchodování pustí, zjistí, že vše není tak jednoduché, jak to může vypadat z pohledu backtestu nebo papertradingu. Dostaví se nejistota z prvních ztrát a patrně i chuť strategie měnit nebo zahodit. Trading je náročný už jen proto, že často uděláme vše dobře a stejně můžeme ztrácet peníze. Alespoň krátkodobě. Na ztráty přitom většina začínajících obchodníků není vůbec připravena. Jednak je přirozeně považují za určitou „prohru“ a samozřejmě klidu nepřidá, že jim většinou rychle ukrajují část těžce naspořených úspor. Začínajícím traderům se jen těžko vysvětluje, že obchodování je o dlouhodobých pravděpodobnostech. Z krátkodobého pohledu může vše často vypadat doslova bláznivě. Úspěch v obchodování pak spočívá zejména v tom, dokázat přístupy obchodovat dlouhodobě. Zde je jeden konkrétní příklad z poslední doby. Do intradenního portfolia jsem nasadil mechanický systém, jehož výsledky jsou dlouhodobě stabilní. Systém obchoduje momentum na dlouhou i krátkou stranu v akciovém indexu e-mini S&P 500. Krátce po nasazení vypadají obchody systému následovně: Snad by se dalo říct, že hůř obchodovat ani nelze. Ať systém vstoupil long nebo short, vždy to bylo na prakticky nejhorším možném místě, těsně předtím, než se trh obrátil. Tomu odpovídá i krátkodobá equity křivka: Po spuštění se systém velmi rychle propadl ke ztrátě přibližně 3 000 USD na jediný kontrakt (výsledky jsou v živém obchodování ještě o trochu horší díky komisím a skluzům v plnění). Představte si, že s obchodováním začínáte. Máte typický účet 5 000-10 000 USD a dostanete se do podobné situace. To je samozřejmě velmi psychicky náročné. Ještě jste nic nevydělali a už vám z účtu zmizela třeba polovina úspor. Přitom vůbec netušíte, jestli propad skončil nebo bude pokračovat. Jestli je obchodovaná výhoda v trhu ještě přítomná, případně jestli tam vůbec někdy byla (tj. jestli váš backtest nebyl od začátku například přeoptimalizovaný). Hodně obchodníků v podobné situaci hodí ručník do ringu a strategii přestane obchodovat. Buď trading zabalí, nebo se pokusí najít jiný přístup. U kterého se situace ale může kdykoliv opakovat. Toto je bohužel realita tradingu. To, že strategie vykazuje nyní ztráty a dělá „divné obchody“, je prostě dané tím, že pár obchodů nic neznamená. Sám mám tento konkrétní přístup zbacktestovaný od roku 2000. V tomto období strategie zobchodovala 740 obchodů s průměrným ziskem 133 USD (včetně komisí a skluzu) na obchod. Strategie je založena na obchodování momenta. Aktuálně se ES obchoduje v pásmu, které neproráží. To znamená pro danou strategii ztráty. Pokud se podívám do historie backtestu na přehled zisků a ztrát po jednotlivých kalendářních měsících, vidím, že občasné podobné ztrátové měsíce nejsou výjimkou: Oproti tomu jsou v historii ale také občasné silně ziskové měsíce, které přijdou v momentě, kdy se trhy dají do směrového pohybu. Abych takové inkasoval také v budoucnosti, je potřeba hlavně být se strategií v trhu. A tedy i přijímal ztráty, které k ní patří. Podobnou řečí hovoří i celkový drawdown. Strategie si sice nyní prochází maximálním drawdownem, ale ten zatím nijak nevybočuje z čísel, která jsem získal z backtestu: Co se dá tedy v podobné situaci dělat? Jak strategii vylepšit? Pro úspěch v obchodování je opravdu potřeba rozumět tomu, že podobný průběh je naprostá realita obchodování. Po spuštění jakékoliv strategie přichází období, ve kterém může krátkodobě hrát roli určité štěstí/smůla. Někdy equity strategie vyrazí po spuštění prudce vzhůru a systém vydělá třeba desítky procent během velmi krátké doby. Jindy se nejprve dostaví hluboký drawdown. Toto se nedá ovlivnit. Vše, co můžeme pro úspěch strategie udělat se odehrává již ve fázi její přípravy. Je potřeba mít důvěru ve způsob, jakým strategii vytváříme a testujeme. Je dobré mít dopředu nastavený rámec pro řízení rizika. Vědět, kdy strategii vypneme a do té doby do ní nezasahovat. Viz například Kdy vyřadit ztrácející intradenní strategii? Je potřeba pracovat s adekvátním kapitálem. Samozřejmě je rozdíl, pokud podobný drawdown nastane na velmi malém účtu nebo pokud se odehrává na větším kapitálu. Velmi pomáhá začít strategie obchodovat v portfoliích. Těžko toto více zdůraznit. Obchodování 3-4 méně korelujících strategií je paradoxně mnohem méně riskantní než obchodování jediného systému. Pro dražší trhy typu futures je potřeba mít už zocelenou hlavu. Pokud vás ztráta pár tisíc dolarů může rozhodit, opravdu doporučuji začít se swingovým obchodováním akcií. Třeba tak, jak si to ukazujeme v základním kurzu. V obchodování musíte být relaxovaní a nestresovat se z každé ztráty. Tato schopnost přichází praxí. Je lepší naučit se obchodovat nejprve tak, že ztrácíte jednotky dolarů (což v akciích není problém, je možné je obchodovat od jednoho kusu) a postupně risk zvyšujete. Nejhorší, co může začínající obchodník udělat, je vrhnout se do příliš dravých trhů/systémů jen proto, že vnímá možné zisky, ale podceňuje risk. Výsledkem takové psychické a finanční nepřipravenosti jsou pak jen zbytečné ztráty. Doufejte v to nejlepší, ale vždy se připravujte na to nejhorší.
  19. Hledám pro průběžnou spolupráci programátora zkušeného s prací v TradeStation. Mj. bych rád spolupracoval na drobných úpravách mých živě obchodovaných strategií, které tak budu v rámci spolupráce sdílet. V případě zájmu pište na petr@financnik.cz
  20. Při vytváření obchodních systémů bezesporu narazíte na období, ve kterých budou selhávat prakticky jakákoliv pravidla fungující ve všech ostatních fázích trhu. Velmi těžko na nich půjde vytvořit jen trochu robustnější pravidla obchodních systémů. Přičemž daná období se mohou vyskytovat v minulosti, ale mohou nás čekat i v budoucnu. Vezměme si za příklad běžné intradenní obchodování akciových indexů na půlhodinových grafech, kde mnoho obchodníků pracuje jak s různými momentum, tak reverzními systémy. Sám při testování systémů na akciových indexech pracuji na co nejdelší historii dat, která mám od roku 2000. Sleduji-li pouze backtesty z pohledu jednotlivých obchodů, lze najít přístupy, které mají v historii konzistentní výkonnost. Například podobnou: Jde o systém obchodující trh e-mini ES na 30minutovém grafu, jehož logika vychází z intermarket analýzy mezi hlavními akciovými indexy. Poslední období v grafu je již plně OOS, kdy systém poskytuje výsledky velmi konzistentně. Což je samozřejmě to, co mám zejména v intradenním obchodování rád. Ze zkušenosti vím, že výkonnost takového mechanického přístupu se bude časem jen zhoršovat, a je tak potřeba pracovat se systémy, jejichž výkonnost poskytuje dostatek prostoru pro degradaci. Konzistentní výkonnost je proto jeden z parametrů, který u intradenních systémů hledám. Pokud se ale u výše uvedeného systému přepnu na pohled podle data obchodů, získám následující obrázek: Je na něm vidět, že posledních více než 10 let měl systém solidně konzistentní výkonnost i z pohledu času probíhajících obchodů. Ale co roky 2003–2006? Defacto zde nebyly žádné obchody. Běžně podobná období nemám v backtestech rád, aniž bych získal bližší vysvětlení, co se v dané období dělo. Odpověď mi nejčastěji poskytují obecnější prototypy obchodních systémů, které používám coby určité benchmarky. Jsou to de facto šablony základních obchodních přístupů – momentum, reversal atd., které nejsou jakkoliv optimalizovány a samozřejmě nejsou určeny do živých trhů. Mohou mi však napovědět o historických reakcích trhů na dané typy strategií. A skutečně. V indexech bylo velmi obtížné v letech 2003–2006 stavět strategie, které by pak dokázaly vydělávat i v dalších letech. Je to hlavně z důvodu nižší volatility. Prakticky všechny mé mechanické intradenní systémy na akciové indexy mají v daném období minimum obchodů. K čemu dále jsou podobné informace pro mě důležité? Na dané období se mohu podrobněji zaměřit a snažit se pochopit, jak se dané trhy lišily od jiných let. Může mi to pomoci připravit se na dobu, kdy se daná charakteristika může do trhů vrátit a já bych hledal důvody, proč systémy nevydělávají. Opravdu velmi důležitá je tato informace při stavbě obchodních systémů, kdy data dělíme na In sample (na nich systémy tvoříme) a Out of sample (na nich systémy ověřujeme). Systémy budou mít úplně jinou robustnost v live tradingu, pokud je budeme stavět na datech obsahujících například většinu období 2003–2006 vs. pozdější. Dnes tak nejraději stavím systémy tak, že IS kombinuji z různých historických období, abych měl při stavbě k dispozici tržní průběhy s různými charakteristikami. S informací pracuji i ve vyhodnocování výkonnosti systémů například při optimalizaci. Jen těžko mohu očekávat, že systémy optimalizované na datech 2003–2006 budou vydělávat v roce například 2006-2008. V rámci vytváření portfolií se budu zaměřovat na systémy a trhy, které se budou s podobnými periodami dobře doplňovat, a naopak se jim bude v dané období dobře dařit. Obchodovatelnost trhů je vždy spjatá s obchodním stylem, kterým se na trhy díváme. A z mé zkušenosti budete v různých trzích v různých periodách nacházet období, která z řady důvodů nevyhovují principům běžně používaných obchodních stylů. A u takových je dobré snažit se pochopit důvody, proč systémy nefungují jako jindy. A ne se snažit reoptimalizovat systémy tak dlouho, až i na podobných průbězích budou vykazovat historické profity. Protože takové systémy budou mít v živém obchodování tendence vykazovat znaky silné přeoptimalizace.
  21. Dnešní trhy vyžadují zejména na nižších timeframe průběžné zkoumání širších souvislostí toho, co v nich funguje a co už nikoliv. Což je dost práce, kterou je dobré maximálně zefektivňovat použitím různých nástrojů. Těch existuje celá řada, ale ne všechny stojí za námahu. Jednou z výjimek, která mě poslední dobou oslovila, je program GSB. Co je horší – snažit se slepě obchodovat systémy vytvořené tvrdým dataminingem, nebo mysl zabetonovat používáním starých přístupů? Těžko říci, ale z mé zkušenosti nepovede ani jedna z uvedených cest k dlouhodobým profitům. Agresivní dolování dat (datamining), kdy trader neustále prochází stejná historická data, až nalezne systém s parametry, které hledá, vede k obchodování přeoptimalizovaných systémů, které na nových datech nevydělávají. Používání starých a obecně známých přístupů sice může vést k systémům založených na smysluplných a ověřených principech, ovšem ani ty s velkou pravděpodobností nebudou zejména na nižších timeframe dnes již vydělávat. Jednoduše proto, že popisovaná tržní neefektivita z trhů vymizela tím, jak ji v průběhu času obchodovalo velké množství traderů. Je potřeba jít určitou střední cestou. Vycházet z ověřitelných a vysvětlitelných myšlenek a na nich se nebát stavět nové a inovované obchodní přístupy. Sám rád ve svém obchodování vycházím z „idea first“ přístupu, kdy systémy stavím na pro mě srozumitelné a odůvodnitelné hypotéze, proč by profitabilita daného přístupu měla v trzích vydržet. Současně si ale rád pomáhám automatizovaným prohledáváním ideálního kontextu, ve kterém základní myšlenka dnes funguje nejlépe (viz workflow Fcontext diskutované v AOS kurzu). Podobný přístup mi pomáhá objevit souvislosti, které není možné v rozumném čase otestovat ručně. Proto mě velmi potěšilo, že jsem objevil program Genetic System Builder (GSB), jehož autor, trader Peter Zwag, vyvíjí software, který se v řadě ohledech zaměřuje v trzích na řešení podobných problémů, které jsou i pro mě důležité. Řekne-li se genetická stavba obchodních systémů, patrně vás, stejně jako mě, napadne tradiční software pro „datamining“. Dnes existuje spousta programů umožňujících procházet historická data a, zjednodušeně řečeno na nich automatizovaně testovat různé kombinace indikátorů a cenových patternů za cílem získat obchodní systém. Jak jsem předeslal, jsem vůči podobným cestám poměrně skeptický. Bohužel často podobné softwary najdou to, co chce obchodník najít. Tedy systém s hezkými historickými výsledky včetně krásných ověření na OOS datech, která se prostě vyberou z tisíců a tisíců možných systémů, které systém vygeneruje. Proč se mi pak líbí GSB? Protože přes svůj název není program zaměřen jen na genetické vytváření systémů. Jeho silnou stránkou je analytické zkoumání širšího kontextu toho, co v trhu funguje a co nikoliv. A teprve do tohoto kontextu pak můžeme více či méně automatizovaně vytvořit obchodní systém. Tato filosofie hodně resonuje s tím, co při vývoji systémů sám vnímám za důležité a celkově je na programu vidět, že jej tvoří zkušený trader vycházející z vlastní praxe systematického obchodování (výsledky Petera jsou mj. ověřené například v časopise Futures Truth, kde sledují a porovnávají automaticky obchodované systematické strategie). Popsat konkrétní funkcionalitu GSB není úplně jednoduché, protože program toho umí opravdu hodně. A co především – je neustále rozšiřován (opravdu velmi aktivně). Je na něm skutečně znát, že je autorem využíván pro vlastní trading a analýzy trhu. Podrobnější představu o způsobu využití programu můžeme získat z těchto anglických videí (do fóra je nezbytná bezplatná registrace), program je pak možné vyzkoušet ve 14denní plně funkční demoverzi, kterou naleznete zde. Co tedy umí GSB ve zkratce? Jako kterýkoliv program na automatizované vytváření obchodních systémů umí GSB vzít jako vstup například 30minutová data trhu e-mini S&P 500 (ES) a zkoušet na jejich historii vytvořit obchodní systém složený z různých indikátorů a jejich parametrů. Co se mi líbí na GSB je skutečnost, že už tato část je dotažena nad rámec toho, co se nabízí jinde. Je možné pracovat s pokročilými fitness funkcemi ovlivňujícími výsledek vytvářených systémů, systémy automaticky verifikovat na vybraných dalších trzích a timeframe a následně je verifikovat pomocí WFO. Dále lze automaticky vytvářet systémy s využitím více trhů či timeframe, vybírat použité indikátory, aplikovat různé stop-lossy, výstupy atd. Řadu zmíněných funkcí nabízí i jiné podobné programy, byť si myslím, že GSB hezky integruje podstatné funkce, které v této oblasti trader potřebuje. V čem GSB z mého pohledu exceluje, je rychlost a výkon. A to je v této oblasti prakticky to nejdůležitější. Samotný GSB pracuje svižně. Můžeme jej spouštět jako klasickou desktopovou aplikaci, kde pochopitelně výkon nejvíce záleží na parametrech samotného použitého hardwaru. A ten je vždy omezený, i když zvolíme výkonnější hardware. Jako opravdu dobrý a promyšlený krok tak hodnotím skutečnost, že GSB umí pracovat coby cloudové řešení. V tomto případě nastavujeme testované analýzy v tzv. Managerech, které následně spouští Workery – instance zpracovávající výpočty. Ty mohou být na stejném počítači, na jiných našich počítačích nebo v cloudu – na cizích počítačích. Jako cloud přitom mohou sloužit i počítače ostatních uživatelů GSB (lze nastavit, jestli se do cloudu chceme zapojit či nikoliv). Toto provedení mi přijde jako opravdu dobré. Většinou se podobné programy instalují na servery, které běží nonstop (sám si řešení pronajímám, viz popis zde). Spotřeba elektřiny i odpisy hardwaru jsou v takovém případě započteny do ceny nájmu a je úplně jedno, jestli servery běží naprázdno nebo jsou plně vytíženy. V době, kdy doběhnou testy, tak dává naprostý smysl sdílet výkon s ostatními. Jakmile pak sám potřebuji skokový výkon a jsou volné servery ostatních, získávám násobně vyšší výkon, který by mne stál v pronájmu vlastních serverů opravdu hodně peněz. Samozřejmě sdílený výkon se liší v čase a nejvíce závisí na tom, jestli své servery využívá tvůrce programu Peter. Nicméně vesměs získávám s GSB běžně dvoj až trojnásobek výpočetního výkonu, než který mi poskytují vlastní servery. Což je u podobného řešení nezanedbatelná výhoda. V každém případě Peter slibuje, že uživatel vždy získá alespoň jednoho cloudového workera zdarma, což už samo o sobě může pomoci pohnout s výpočty. Ukázka prostředí GSB. Vpravo je vidět, že výpočet probíhá na celkem 30 workerech. Přitom jen 5 jich běží na mém vlastním hardwaru. Ostatní jsem v daném okamžiku využil bezplatně, což samozřejmě výrazně zvyšuje efektivitu celého výpočetního procesu. Dobré je, že Peter poskytuje k celému řešení bezplatně samostatný software Resource Manager umožňující výkon řídit – můžeme si například nastavit prioritu, se kterou se budou spouštět vlastní workery (a ostatní budou zastaveny). Sdílení výkonu pak probíhá naprosto automaticky. V Resource Manager mám nadefinované dvě skupiny – první jsou mí vlastní workeři. Ti mají přednost a běží v momentě, kdy s programem pracuji. V druhém řádku jsou potenciální workeři z cloudu, kteří se spustí v okamžiku, kdy server není vytížen. Právě zmíněná cloudová funkcionalita posouvá GSB k možnostem, které jsem jinde nenašel (v dané cenové kategorii). Vysoký dostupný výkon mi coby traderovi poskytuje analytické možnosti zmíněné na začátku článku. Efektivně dovoluje zjišťovat, co na daném trhu funguje a co ne. Tak, že vygenerujeme statisticky relevantní počet, například několik desítek tisíc systémů a vyhodnocujeme různé celkové degradace systémů v out of sample datech. Nezaměřujeme se na jeden systém, ale na statistický vzorek. Můžeme například snadno porovnat OOS degradaci 10 000 vytvořených systémů z ověřování na jiném trhu a bez tohoto ověřování. Snadno tak zjistíme, jestli daný prvek ověřování skutečně celkově pomáhá na daném timeframe vytvářet robustnější systémy či to byla jen záležitost u několika málo systémů. Jistě, spousta uvedeného lze provádět v jiných softwarech. Ostatně sám jsem některé podobné principy testoval v Amibrokeru s pomocí OLE automatizace. Ale právě s využitím cloudového výkonu je toto opravdu práce na jiné úrovni. I díky tomu, že program umožňuje některé chytré analýzy, které jsem zatím v jiných programech neviděl. Především způsob definování in-sample a out of sample dat, pomocí kterých je možné sledovat degradaci systému v rámci učení (in-sample data) a testování (out of sample data). Tradičně se dělí data trhu například v poměru 60 % IS a 40 % OOS (nebo podobně, podle osobní preference). Jenže to s sebou nese problém, že daná testovaná období trhu se mohou velmi lišit svým charakterem. Proto se mi velmi líbí myšlenka používat jako OOS data každý druhý den či každý druhý měsíc a podobně. Systémy pak učíme na celém období dat (kdy software vidí například každou druhou úsečku) a testujeme na druhé části úseček. Do vývoje systému pak zahrnujeme všechny zásadní fáze trhu a vyhodnocení na OOS bude mít více vypovídající hodnotu. V GSB lze toto přitom nastavovat velmi flexibilně. Silnou stránku GSB vnímám v jeho komplexnosti, která je využitelná v praxi právě i díky cloudovému výkonu. V řadě programů lze provádět například walk forward testování (wf) a GSB není výjimkou. Ale kdo někdy wf prováděl, jistě může potvrdit, že tyto testy vyžadují hodně výkonu a tedy času, pokud vše probíhá na jednom počítači. V GSB lze i walk forward provádět pomocí workerů (tedy v cloudu) a reálně lze propočítat vyšší stovky wf na intradenních systémech za den. Na cloudu lze nechat i automatické ověřování systémů na jiných trzích/timeframe a následně jen ve statistikách sledovat, jak si systém vedl na zvolených trzích/timeframe určených pro validaci. Výsledkem je pak podobný přehled, kde můžeme na jednom místě vidět, jak stabilní jsou výsledky. Lze sledovat stabilitu výsledku na ověřovaných jiných trzích a timeframe, ale i stabilitu výsledků z pohledu použitých parametrů. V tomto ohledu se mi moc líbí Peterův parametr stability umožňující vybírat ty systémy, jejichž parametry se v průběhu času nemění (a existuje tak vyšší šance, že v live tradingu bude systém robustnější). Generované systémy lze z GSB rovnou přenášet v hotovém kódu do TradeStation. GSB toho skutečně umí hodně, byť je to pochopitelně opět jen software – nástroj, jehož výsledky budou do velké míry záležet na jeho použití. Určitě nejde o software typu „zapni“ a po x minutách získáš systémy připravené k živému obchodování. Naopak. Jde o nástroj poskytující různé analýzy, nad kterými je třeba přemýšlet a trávit čas. A teprve následně výsledek práce použít k vytvoření obchodovaného modelu. Který by ale měl mít vyšší šance na robustní výkonnost v živých trzích. V každém případě doporučuji shlédnout Peterova videa popisující metodologii s jakou trhy testuje. A případně prozkoumat zkušební verzi programu. Už i to může přinést do vašeho vývoje strategií nové podněty a zajímavé inspirace. Té nabízí GSB dost. A byť software stojí 1 500 dolarů, jde z mého pohledu o smysluplné řešení v této silně konkurenční oblasti.
  22. Velmi zásadní otázka, kterou si pokládá každý, kdo se do obchodování jednou pustí. Pojďme si ukázat jednoduchou taktiku, kterou aplikuji na rychlé a dynamické intradenní trhy. Funkčnost zejména systematických (mechanických) intradenních strategií je časově omezena. Jen naivní obchodník si může myslet, že v trzích nalezne „perpetuum mobile“, které nasadí a bude mu vydělávat trvale peníze. Jakmile se v trzích objeví určitá neefektivita, kterou využíváme pro naše profity, je jen otázkou času, než ji obchodníci „vyčerpají“. Toto je realita tradingu, kterou je potřeba akceptovat. U diskréčního obchodování se může trader postupně adaptovat na měnící se trhy. U systematických strategií je, zejména na nízkých timeframe, potřeba framework vyhodnocování výkonnosti. Takový, který nám umožní v případě vyprchávající výkonnosti jednat – strategii například reoptimalizovat nebo nahradit. Taktik sledováni výkonnosti strategií v živém obchodování používám hned několik. Jedna z jednodušších, ale funkčních, může spočívat v porovnání základních metrik živého obchodování s těmi, které máme otestované. Přičemž platí, že bychom se vždy měli maximálně snažit porovnávat metriky živého obchodování s výsledky tzv. out-of-sample testování sytému. Jedna z metrik, kterou používám, je samotný průměrný obchod. Pokud věříme, že je náš backtest relevantní, pak s pomocí průměrného obchodu můžeme dělat určité „predikce“, jak by se systému mělo dařit v budoucnu. Při velikosti průměrného obchodu +100 USD můžeme například předpokládat, že v ideálním světě budeme mít na účtu po 100 obchodech výdělek 10 000 USD. Pochopitelně, že realita není nikdy takto jednoduchá. Velikost průměrného obchodu se bude v průběhu času měnit. Pokud je ale náš systém robustní, neměla by být realita z pohledu většího množství obchodů „úplně mimo“. Na popis rozumné odchylky si můžeme vzít na pomoc statistiku a vytvořit si pásma v oblasti první a druhé standardní odchylky, kde bychom očekávali výsledek našeho systému v závislosti na uplynulém čase. Pojďme se podívat na příklad. Toto je equity křivka systému, jehož vývoj proběhl ke konci roku 2017. Od této doby jsou výsledky generovány trhem bez jakékoliv optimalizace nebo úprav systému: Na konci equity křivky je vidět, jak se pomalu zplošťuje. A nabízí se tak otázka – funguje systém stále ještě v očekávaných parametrech? Jednu z odpovědí mi poskytuje následující graf: Modrá linka představuje lineární predikci průměrného obchodu. Jednoduše spočítám průměrný obchod za určité období v historii (většinou na cca 2 roky posledního vývoje) a zobrazím si „ideální equity křivku“. Zelené a červené obálky kolem této křivky pak představují první a druhou standardní odchylku. Vesměs se mi pak potvrzuje, že funkční systémy oscilují právě v oblasti mezi druhými standardními odchylkami predikce. Na uvedeném příkladu je pak zřejmé, že systému se stále daří velmi, velmi dobře. De facto lépe, než v backtestu a aktuální pohyb do strany je naprosto v normě. Na výsledky strategie je třeba vždy nahlížet z dostatečně dlouhodobého pohledu a z takového je vývoj naprosto perfektní. V systému jsem připraven i na drawdown, protože je zcela v pořádku, aby se equity křivka podívala i ke spodní hraně pásma vyznačeného červenými standardními odchylkami. Daný postup má mnoho praktických nuancí. Určitě je dobré okno predikce například posouvat tak, jak běží čas – tj. je třeba si definovat, na jak dlouho „predikci“ vytváříme a jak dlouhou historii používáme. Také se mi osvědčilo jej používat spíše na rychlejší intradenní systémy než pomalejší swingové strategie. Co se týče konkrétní aplikace, tak výpočty jdou jistě vytvářet například v Excelu nebo jiném tabulkovém editoru. Publikované screenshoty ale pocházejí z naší vlastní aplikace pro řízení a vyhodnocování risku, ve které je mým cílem postupně sledovat a analyzovat metriky všech obchodovaných systémů přes různé brokery. V této oblasti se mi daří poměrně velký posun a jak jsem uvedl již několikrát – vnímám ji ve svém obchodování jako prioritu. Často je možné obchodovat i jednoduché principy a mnohem důležitější, než samotné vstupy, jsou pak odpovědi na otázky, jaké systémy kombinovat v portfoliích a samozřejmě, kdy systém vyřadit nebo mu v portfoliu přiřadit nižší váhu...
  23. V minulém článku jsme si ukázali, jak důležité je přemýšlet o obchodovaných titulech nikoliv z pohledu dnešního dne, ale z pohledu dne, kdy bychom obchody otevíraly. Rozdíly mohou být občas opravdu výrazné. Jak se klamu přeživších vyhnout v praxi? Pokud netušíte, co je to Survivorship bias, česky klam přeživších, tak si přečtěte nejprve tento článek publikovaný minulý týden. Vlastní survivorship bias free databáze Pochopitelně vždy je možné diskutovaný problém řešit kompletně vlastními silami. Výhodou je naprostá flexibilita, nevýhodou pak nutná znalost programování, vytváření celého vlastního ekosystému (napojení databáze na systém umožňující backtestování) a nutnost pořízení dat obsahujících i delistované akcie. Dnes je situace v mnoha ohledech jiná než dříve, kdy nezbývalo, než si podobné řešení skutečně vytvořit. Sám jsem s týmem šel nejprve touto cestou. Data jsme používali od quantquote.com, kde lze za poměrně rozumné peníze pořídit kompletní intradenní historická data akcií obchodovaných v různých indexech, včetně těch delistovaných. Využití bezplatných survivorship bias free databází Pokud se jen trochu orientujete v programování, pak bych dnes jednoznačně začal využitím hotových backtestovacích řešení, která již klam přeživších zohledňují. O mých oblíbených jsem psal na Finančníkovi několikrát – používám quantopian.com a quantconnect.com. Obě platformy obsahují rozsáhlé intradenní databáze zohledňující i delistované akcie. A jsou k dispozici zdarma. Nevýhodou těchto řešení je, že již vyžadují více programátorského myšlení a zkušeností. Pluginy integrované do retailových softwarů Osobně tak nakonec, coby neprogramátor, dnes nejvíce používám speciální plugin od společnosti Norgate Data představující jeden z důvodů, proč používám Amibroker. Norgate Data poskytují denní ceny akcií s tím, že je možné si připlatit za plugin, který v Amibrokeru vytvoří velmi komfortní survivorship bias free databázi. Řešení se skládá z několika základních funkcionalit: a) Norgate udržují aktuální i historické seznamy konstituentů jednotlivých indexů. b) Současně mají v databázi i delistované akcie. c) Do Amibrokeru integrovali funkce umožňující kontrolovat, jaké akcie byly v dané datum obchodovány v indexu (spolu s dalšími funkcemi). Pokud tak potřebuji otestovat systém na akciích obsažených v indexu S&P 500 a chci dostat realistické výsledky (tedy zohlednit i historické složení indexu a obchodovat i dnes delistované akcie), tak si nejprve v Amibrokeru vyberu předpřipravený „watchlist“ S&P 500 Current & Past automaticky připravený v rámci Norgate Data: Ten dnes obsahuje 1 181 akciových titulů – všechny, které kdy byly v indexu obchodovány: Mimochodem akcie obsahující v názvu pomlčku a datum, například AAV-199901, jsou právě delistované trhy. Tento byl například z burzy vyřazen v roce 1999. Do samotného kódu strategie pak přidám jediný dodatečný filtr: NorgateIndexConstituentTimeSeries(„$SPX”) Ten se postará o to, že Amibroker v indexu S&P 500 obchoduje v daný backtestovaný den pouze ty akcie, které byly součástí indexu S&P500. Vše přitom probíhá opravdu rychle a bezproblémově. Samozřejmě to ale není zadarmo. Sám mám pro tyto účely u Norgate Dat předplacený balíček Platinum umožňující právě backtestovat i historické konstituenty indexů a ten stojí ročně 630 dolarů. Upřímně si ale myslím, že při jen trochu větších účtech se podobná služba vyplatí, protože pomůže výrazně přiblížit historický backtest realitě. Popis Norgate dat naleznete zde a jak je vidět, je možné jejich data používat ještě s programy RightEdge a XLQ. Závěr Jak jsme si ukázali v minulém článku, v případě systematických swingových strategií může klam přeživších představovat i výraznější rozdíly ve výkonnosti. Ve svých vlastních analýzách pracuji proto vždy s tzv. survivorship bias free databázemi, které zohledňují historické složení indexu a delistované akcie. Samozřejmě tyto databáze používám i pro všechny backtesty prezentované v kurzech a v článcích. Pokud děláte vlastní výzkum, je tak dobré vždy počítat s tím, že bez survivorship bias free databáze budou výsledky často výrazně lepší, než by tomu realisticky bylo. Naštěstí dnes existuje řada nástrojů, jak problematiku vyřešit. Nástroje jsou jak bezplatné, tak placené a liší se zejména v úrovni potřebného programování a poskytnutého uživatelského komfortu. Sám jsem vyzkoušel všechny uvedené cesty. Nakonec si platím sice dražší, ale o to efektivnější nástroj do Amibrokeru, kde tak klam přeživších již nemusím řešit, protože jej software ošetří sám a zcela automaticky v každém provedeném backtestu.
  24. Akcie patří mezi jedny z nejdostupnějších trhů pro stavbu a obchodování systematických strategií. Jednak z pohledu kapitálu, kdy lze akcie nakupovat prakticky od pár dolarů a mj. také z pohledu dostupnosti dat, která jsou na internetu často k dispozici zdarma. Pozor však na problematiku delistovaných akcií. Pro stavbu swingových strategií stačí mít k dispozici historická denní data. Ta jsou na rozdíl například od intradenních dat běžně na internetu ke stažení, byť zdroje se v průběhu času mění. Osobně nejvíce používám barchart.com, řada obchodníků pracuje s historickými daty z Yahoo atd. Bezplatná denní akciová data mohou mít různou kvalitu, ale obecně jsou poměrně dobře použitelná. Pokud je budete používat pro stavbu systematických strategií, je ale třeba počítat s jedním zásadním zkreslením. Nezapomínejte na to, že skupina obchodovatelných akcií se v průběhu času mění – už jen tím, že firmy krachují, různě se spojují a navzájem kupují. Při stavbě akciových strategií bychom tak měli pracovat s určitým univerzálním klíčem, „jak vybrat obchodované akcie v příslušném čase v historii“. Bohužel nelze vzít například nejsilnější dnešní společnosti typu Amazon, Facebook a Apple a snažit se na jejich historických datech vybudovat obchodní systém. Proč? Protože v určitém bodu historie nebyly tyto společnosti ještě tak známé a pokud byste se zaměřili na „nejsilnější společnosti v daném čase“, vybrali byste si úplně jiné firmy… V angličtině se tomuto zkreslení říká Survivorship bias, česky klam přeživších. Jde o klam, kdy naši mysl výrazněji zaměřujeme na ty, kteří přežili určitý selektivní proces a vůbec nepracujeme s těmi, kteří procesem neprošli. Portfolio obchodovaných trhů bychom tak měli vždy zkoumat z odpovídajícího času v historii, kdy bychom takové obchodovali. Profesionální obchodníci například definují svůj obchodovaný soubor akciových trhů tak, že za obchodované trhy považují všechny akcie, které se v daný den historie obchodovaly s určitým objemem. To vyžaduje zahrnout do rozhodovacího procesu jeden podstatný faktor – tzv. delistované akcie. Tedy akcie, které se obchodovaly v minulosti a dnes již na burze neexistují. Za příklad si můžeme vzít společnost Enron, která ještě v roce 2001 patřila k největším americkým společnostem, aby vzápětí zkrachovala. V roce 2001 by tak většina obchodníků Enron zahrnula do svých portfolií. Pokud budete stahovat data z Yahoo dnes, tak na historii této společnosti nenarazíte. S problematikou úzce souvisí i skladba akciových indexů, které se velmi často používají coby určité základní skupiny pro obchodování akcií. Například obchodujeme „akcie z indexu S&P 500”. Jenže samozřejmě ani indexy nejsou v čase stejné. Indexy se počítají různě, ale velmi zjednodušeně můžeme říci, že se mění tak, jak společnosti získávají a ztrácí svoji velikost a důležitost. Pokud budeme testovat strategii jen na dnešních komponentech, například indexu S&P 500, tak opět podléháme klamu přeživších. Jak hodně to vadí? Zde je konkrétní příklad. Testuji akcie indexu S&P 500 s jednoduchým algoritmem. Nakupuji akcie, které klesající úsečkou uzavřely pod svým 20denním klouzavým průměrem a pozici uzavírám, když akcie rostoucí úsečkou uzavírají nad 20denním průměrem. Otevřeno je max. 20 pozic najednou. Pokud tento triviální a čistě ukázkový model aplikuji na dnešní složení indexu S&P 500, získám následující equity křivku: Pokud použiji survivorship bias free databázi zohledňující každý den v historii složení indexu (a obchodující tak i delistované akcie), získám následující equity křivku: Aniž bych musel zacházet do nějakých detailů výkonnosti, je na první pohled myslím jasné, jak velký rozdíl může v testování být. Zohlednění klamu přeživších vždy povede k horším, a tak realističtějším výsledkům. U některých systémů nemusí být rozdíl tak zásadní, u některých bude ohromný. Myslím, že je tak zřejmé, že pro seriózní testování je dobré pracovat se survivorship bias free databázemi. Naštěstí to dnes už není tak složité jak dříve. Jak konkrétně na to, vám ukáži v tutoriálu, který plánuji publikovat na Finančníkovi za týden.
×
×
  • Vytvořit...

Důležitá informace

Na tomto webu zpracováváme cookies potřebné pro jeho fungování a analytiku, v případě udělení souhlasu také cookies pro účely cílení reklamy.