Jump to content
Co nového? Mé kurzy
Komunita:
Hledat v
  • Více možností...
Najít obsah, který ...
Hledat výsledky v ...
Diskuze Sledované příspěvky Žebříčky

Žebříčky


Oblíbený obsah

Zobrazuji obsah s nejvyšší reputací od 19.6.2019 ve všech rubrikách.

  1. 4 bodů
    Ú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. 2 bodů
    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. 1 bod
    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í.
×
×
  • 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.