Jump to content
Co nového? Mé kurzy
Články a tutoriály:
Archiv článků Psychologie obchodování Jak na obchodní plán Mé obchodní strategie
  • Vytváříme obchodní systém – konkrétní vstupy

    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.

    SPY_bb.jpg

    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:

    SPY-vstup1.png

    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:

    SPY-stats1.png

    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í.


    Petr Podhajský

    Fulltime obchodník věnující se tradingu více než 20 let. Specializace na systematické strategie obchodované na futures a akciích. Oblíbený styl obchodování: stavba automatizovaných portfolio systémů, které využívá i v alternativním fondu, který spravuje.

    • Líbí se 5

    Další články na toto téma

    Obchodujeme FOREX (XIII): Technická analýza (5)

    V dnešním díle seriálu si řekneme něco o pokročilém obchodním nástroji technické analýzy pod názvem Standard Deviation – Volatility (Volatilita standardní odchylky).
    Standard Deviation (SD) je původně statistický termín, který poskytuje dobrou identifikaci volatility trhu. Změří, jak jsou široce hodnoty (například závěrečné kurzy na burze nebo ceny na FX trhu) rozptýlené z průměru. Rozptyl je rozdíl mezi aktuální hodnotou (cenou) a průměrnou hodnotou. Větší rozdíl mezi závěrečnými kurzy (close), signalizuje vyšší odchylku a tedy i vyšší volatilitu (těkavost), nižší odchylka pak volatilitu nízkou. Nejčastěji se používá jednoduchý průměr (Simple MA) v periodě 20 (tj. jednoduchý aritmetický průměr – součet posledních 20 „close“ ceny dělíme číslem 20). Pak se odečte průměrná závěrečná cena
    z aktuální závěrečné ceny. Hodnota (+/−) nám pak udává odchylku od průměrné ceny.
    Nejvíce využívaným indikátorem v prostředí burzovních a FX trhů je pro SD Bollinger Bands (BB). Modifikací BB je pak dokonalejší Keltner Bands (KB), který nepracuje jen s průměrem uzavírací ceny, ale s průměrem závěrečných, nejvyšších a nejnižších cen na bázi indikátoru ATR (Average True Range). Ale existuje i další speciální indikátor pro volatilitu odchylky přímo pod názvem Standard Deviation, který si přiblížíme v závěru.
    Bollinger Bands
    Standardní poučka o BB zní – signál k nákupu/prodeji vznikne při crossu aktuální ceny a horní nebo dolní linie anebo pokud se cena přiblíží k dolní hranici BB, (ale neklesne pod ní) můžeme uvažovat o nákupu, v případě opačném – přiblíží-li se k horní hranici, o prodeji. V případě, že cena klesne pod spodní hranici pásma a následně se opět vrátí do pásma, je to signál pro nákup – stoupne-li nad horní hranici, máme signál k prodeji. Tolik teorie k BB. Nejčastěji se používá BB nastavení v periodě 20, close cena, Simple MA a ohraničení pásma hodnotou dvě (2). Pro FX trh se ale osvědčila i kratší perioda SMA 10 (především pro intradenní obchody) a snížení ohraničení pásma na hodnotu jedna (1).
    Obrovskou výhodou BB je fakt, že můžeme BB použít jako základní indikátor, který doplníme jiným indikátorem, pracujícím přímo v prostředí cenového grafu BB. Nejčastěji se používají různé typy a modifikace MA a hodnotí se vzájemné polohy MA a horních a dolních pásem BB. Nebo se využívají i crossy (překřížení) těchto křivek. Dalšími indikátory dobře „spolupracujícími“ s BB jsou trendové indikátory PSAR, Gann Hilo, DMI a Swing. Princip je vždy stejný – odchylka vloženého indikátoru od střední ceny nebo sledování úrovně horní a dolní linie pásma. Osvědčila se i kombinace BB s Aroon, Volume, Momentum a Stochastic.
    Níže uvedený graf obsahuje indikátor BB ve spojení s Hull Moving Average (HMA – jedna z variant MA). Oba indikátory jsou nastaveny na hodnotu periody 20 – Simple MA. Kombinace BB s HMA využívá při stejné periodě (20) a typu (SMA) vzájemných crossů mezi střední hodnotou BB a HMA, kdy je zároveň sledován vývoj uvnitř BB.

    Trochu jinak reaguje spojení výše zmíněného Keltner Bands (KB) ve spojení se stejným indikátorem HMA a stejnými hodnotami. Na příkladu v grafu – v KB je ATR nastaven na standardní hodnotu 14, multiple ATR (odpovídající hodnotám ohraničení pásma v BB) rovněž na stejnou hodnotu 2.

    Jak již bylo řečeno, výhodou indikátoru BB je jeho adaptabilita v prostředí jiných indikátorů.
    Velmi zajímavým (a hlavně hodně úspěšným) je spojení nebo spíše kumulace BB s Commodity Channel Index (CCI). Protože BB pracuje obvykle v cenovém grafu a CCI v samostatném okně, musel se nejprve BB transformovat do prostředí CCI. CCI obsahuje na příkladu jak standardní nastavení (perioda 14), tak i nastavení „Turbo“ s periodou 6. Tento kumulativní indikátor pod názvem BB CCI S obsahuje navíc ještě tzv. SQUEEZE (SQ) – volně přeloženo stisk, stlačení, namáčknutí, lisování (ve slovníku jsem ale objevil i pojmenování squeeze jako symbol pro nepříjemnou finanční situaci, pro milence a pro ekonomický nátlak – velmi příhodné označení). SQ nám umožní sledovat přiblížení horní a dolní linie BB, a protože je zde CCI vlastně součástí BB, umožní nám SQ sledovat nejen toto přiblížení, ale i vzájemné reakce mezi CCI a BB. Nakonec je SQ i dobrým signálem pro vstup/výstup na pozice nebo i jako měřítko snížené/zvýšené aktivity trhu.
    Na příkladu jsou hodnoty CCI označeny zelenou a fialovou (Turbo CCI) křivkou, BB tradičně a SQ symbolizují silné modré „kuličky“.

    V úvodu jsem zmínil indikátor Standard Deviation (SD). Tento, alespoň podle mne, hodně opomíjený indikátor (asi pro svou jednoduchost) vychází z podobných principů jako BB – aritmetický průměr předchozích close cen a jeho aktuální odchylka. Pracuje nejčastěji ve stejné periodě 20 jako BB (pro FX a kratší grafy se ale osvědčilo i nastavení 14 a nižší). Oproti BB však SD osciluje v sólo grafu kolem hodnoty nula (0) a měří rovněž odchylku momentální ceny od ceny průměrné, která je signálem aktivity trhu. SD obsahuje navíc volně nastavitelný „Filtr level“ (FL). V závislosti na měnovém páru a min. grafu používám nejčastěji hodnoty FL 0,0008 až 0,0025. SD řeší myslím celkem velmi účelně časté dilema traderů – kdy vstoupit na pozici. I když se obchodník může orientovat podle jiných, a daleko složitějších indikací, SD mu dobře signalizuje, kdy je vhodné do pozice vstoupit, ať už Buy nebo Sell. Ve zkratce: má se za to, že když je křivka SD nad hodnotou nula, (resp. FL), je vhodné do pozice vstoupit, když pod FL, pozici neotvíráme. Pokles SD pod hraniční hodnotu FL může být i dobrým signálem pro opuštění již otevřené pozice. Na příkladu je uveden Gann Hilo Activator (GHA) v periodě 3 s filtrací přes SD (v periodě 20 s FL na hodnotě 0,0018). Černé šipky označují možné vstupy na základě indikací GHA, červené tečky výstupy z pozice.

    Závěr:
    BB, KB a SD jsou velmi účinné indikátory především pro možnou filtraci vstupů na pozice,
    ať už přes hraniční hodnoty pásem (BB) nebo přes FL (SD), a jsou vhodným doplňkem pro stěžejní indikátory, jako jsou různé typy MA, CCI, %R, DMI, Aroon, RSI a Stochastic.
    Příště: Jak využít Chaos

    Bollinger Bands

    Bollinger Bands nebo česky Bollingerova pásma jsou jedním z nejpopulárnějších technických indikátorů, které se používají k měření volatility a trendů v trzích. Počítají se pomocí průměrné ceny, standardní odchylky a délky období. Indikátor vizualizuje vztah mezi průměrnou cenou a volatilitou trhu.
    Co jsou Bollingerova pásma?
    Bollingerova pásma vymyslel John Bollinger, americký obchodník s cennými papíry a investiční stratég. Skládají se ze tří čar:
    Střední linie představuje průměrnou cenu za určité časové období.
    Horní pásmo je vzdálenost dvou standardních odchylek od střední linie.
    Spodní pásmo je vzdálenost dvou standardních odchylek pod střední linií.

    Indikátor Bollinger Bands aplikovaný na graf akcií Apple. Oranžová šipka ukazuje na střední linii indikátoru, která představuje průměrnou cenu za určité časové období. Modré šipky označují horní a spodní pásmo indikátoru.
    Jak Bollingerova pásma interpretovat?
    Pokud se ceny pohybují blízko horního pásma, trh je považován za překoupený. To může znamenat, že jsou ceny nadhodnocené a je pravděpodobné, že dojde k poklesu.
    Pokud se ceny pohybují blízko spodního pásma, trh je považován za přeprodaný. To může znamenat, že jsou ceny podhodnocené a je pravděpodobné, že dojde k růstu.
    Pokud se ceny pohybují mezi horním a spodním pásmem, trh je považován za stabilní.
    Bollingerova pásma lze použít na různých časových rámcích, od minut až po týdny. Použití různých časových rámců může obchodníkům pomoci identifikovat různé příležitosti k obchodování.
    Jak Bollingerova pásma používat k obchodování?
    Bollingerova pásma lze použít k obchodování různými způsoby:
    Trendové obchodování
    Bollingerova pásma lze použít k identifikaci trendů. Pokud se ceny pohybují směrem k hornímu pásmu, ale zatím jej nedosáhly, může to znamenat, že trend pokračuje vzhůru. Pokud se ceny pohybují směrem k spodnímu pásmu, ale zatím jej nedosáhly, může to znamenat, že trend pokračuje dolů.
    Mean reversion obchodování
    Bollingerova pásma je možné použít také k identifikaci příležitostí k nákupu a prodeji na základě obratů trhu. Pokud jde trh do strany a cena se pohybuje nad horním pásmem, může to být příležitost k prodeji, protože ceny jsou považovány za překoupené. Pokud se ceny pohybují blízko spodního pásma, může to být příležitost k nákupu, protože ceny jsou považovány za přeprodané.
    Kombinace s jinými indikátory
    Přidání klouzavého průměru. Pokud se ceny pohybují nad klouzavým průměrem a zároveň se pohybují nad horním pásmem Bollingerových pásem, může to být signál, že trend pokračuje vzhůru.
    Použití Bollingerova pásma společně s indikátorem Stochastic. Pokud se hodnoty Stochastic Oscillatoru pohybují nad 80 % a zároveň se ceny pohybují nad horním pásmem Bollingerových pásem, může to být signál, že je trh překoupený a je pravděpodobné, že dojde k poklesu.
    Závěr
    Bollingerova pásma jsou technickým indikátorem, který lze v trzích použít k měření volatility, identifikaci trendů, předpovědi obratů a řízení rizika. Bollingerova pásma obchodníci používají v kombinaci s jinými indikátory a analýzou, aby získali komplexní pohled na trh.

    Indikátory: Bollinger Bands (2)

    Po zhruba měsíci se dnes vrátíme k indikátoru Bollinger Bands. Jedná se o zajímavý indikátor, jehož praktická aplikace skrývá sice nejedno úskalí, ale se správným použitím a citem pro indikátor můžeme docílit zajímavých výsledků.
    Ještě než přejdu k několika praktickým tipům, rád bych zpětně zareagoval na reakce, které přišly na první díl. Reakce pocházely od matematicky fundovanějších než já a obsahovaly přesnější a fundovanější výklad o funkci standardních odchylek a podobných statistických principů – za což jsem rád, protože podobné fundované doplnění nejsem schopen sám poskytnout. V tomto bodě bych tedy rád ještě jednou důrazně upozornil, že já nejsem matematik a ani neoplývám přílišnou matematickou zdatností. Tudíž i hlubší pohled do teorie jakýchkoliv indikátorů a matematická přesnost nebo nepřesnost každého indikátoru mně příliš nezajímá, jediné co mně zajímá je praktická použitelnost. Nebudu se tedy již více a dále pouštět do teoretické části – matematicky zdatní toužící po hlubších informacích na teoretické bázi nebo sofistikovanější diskusi o matematické přesnosti/nepřesnosti určitě uvítají i další diskuse možné k nalezení na google. My ostatní se pojďme podívat na to, zda-li lze s indikátorem Bollinger Bands vydělávat nějaké peníze.
    Pokud si někteří z vás po prvním díle již indikátor prakticky zkoušeli (a já doufám, že to mnozí udělali) určitě již za krátko přišli na to, že praktická aplikace není tak snadná, jak se může na první pohled zdát. Pokud bychom obchodovali s pravidlem nástupu do příslušné pozice při proražení horní nebo spodní části indikátoru, tu a tam bychom určitě nějaký zajímavý profit inkasovali, ale v řadě případů bychom nastoupili do zcela špatné pozice. Jinými slovy, indikátoru BB někdy trvá i celou řadu pokusů, než ke skutečnému otočení trhu dojde! (Samozřejmě, s adekvátním MM by se i v takovém případě dal postavit profitabilní obchodní systém, zřejmě by to ale nebylo to „ideální“). Pro ty, kteří se ještě s indikátorem neseznámili blíže, zde je praktická ukázka toho, co mám na mysli:
    Na obrázku 1 vidíme situaci, kdy se trh Britské Libry (BPU6) nacházel v býčím up-trendu. Během své cesty vzhůru trh několikrát prorazil horní kanál BB a tím nám dal signál k možnému otočení trendu. Jak ale vidíte, trvalo velmi dlouho, než skutečně k otočení došlo. Pokud bychom tedy spekulovali principem, kdy po každém proražení horní čáry, nebo alespoň jejím doteku umístíme vstupní SELL příkaz pod danou, nebo následující úsečku, dostali bychom minimálně 4 prodejní signály, z čehož by 3 vedly do ztráty.

    Obrázek 1: indikátor BB může dát řadu „falešných“ signálů, než dojde ke skutečnému otočení trendu.
    Z tohoto tedy vyplývá, že obchodovat BB pouze a jen zadáním příslušného příkazu při proražení některé z linek Bollinger Bands idnikátoru není úplně to pravé ořechové a je třeba dalších indikátorů k určitému „potvrzení“ a přesnějšímu načasování.
    První z jednoduchých kroků, který můžeme použít, je přidání podmínky, že příslušný příkaz zadáme pouze a jen v případě, kdy i úsečka, která se dotkla nebo prorazila, je již takzvaně „bullish“ nebo „bearish“ a potvrzuje náš domnělý směr. Konkrétně to tedy znamená, že pokud dojde k proražení horní čáry BB, musí se zároveň utvořit úsečka, jejíž close je níže než open. Nemusí často přitom mít takovouto podobu přímo úsečka, u které došlo k proražení – tzv. bullish nebo bearish úsečka může být až některá ze 2-4 následujících (zde každý obchodník uplatňuje jiný styl obchodování). A samozřejmě pokud dojde k proražení spodní čáry BB, čekáme na úsečku, která bude mít close výše než open. Nad takovou úsečku (nad její high) pak zadáváme nákupní příkaz. Pojďme se tedy podívat, zda-li konkrétně v případě ukázky na BPU6 by nám toto jednoduché pravidlo pomohlo:

    Obrázek 2: přidání podmínky bearish/bullish úsečky
    Vidíte, že tato jednoduchá podmínka nám hned ubrala 2 zbytečně ztrátové obchody. Na druhou stranu ani zde není načasování otočení trhu ještě úplně ideální, neboť v případě druhého obchodu na obrázku 2 trh před svým rozjezdem dolů udělal pull-back, který by řadu obchodníků „vyhodil“ na základním SL. Pojďme se tedy podívat, zda-li by k ideálnímu načasování nepomohl některý z indikátorů. Konkrétně nyní do grafu přidáme Slow Stochastics. Teď však ale velký pozor! Kdyby stačilo indikátor zkombinovat s nějakým oscilátorem typu Slow Stochastics s použitím jemnějšího vstupu v rámci klasického překřížení překoupené/přeprodané oblasti, byl by trading příliš jednoduchý. V tradingu není nic dokonalé, a tak není možné spoléhat se na nějaké konstantní hodnoty relativních překoupených/přeprodaných oblastí, ale je třeba indikátor použít trochu „chytřeji“. V tomto případě si tedy jako další podmínku k bearish/bullish úsečce přidáme, že chceme zároveň vidět, aby alespoň jedna z čar Slow Stochastics byla nad linkou 80 a zároveň aby obě linky Stochastics vykazovaly pokles (přičemž již není důležité, zda-li se jedná o oblast nad linkou 80 nebo zda-li již k překřížení linky 80 došlo). Konkrétně tedy vidíme vše na obrázku 3:

    Obrázek 3: konečně „perfektní načasování“
    Vidíme, že případ, kdy se trh dotknul nebo protnul horní čáru BB a zároveň utvořil bearish úsečku a zároveň Stochastics vykazovaly pokles s tím, že alespoň jedna z čar byla krátce před poklesem nad hranicí 80, je v grafu jeden jediný – a to je přesně ten „náš“ vítězný obchod. Podobná situace se později opakovala ještě 2x, přičemž ani jednou by se nejednalo o ztrátový obchod. Zejména obchod 3 je opět ukázkou „ideálního“ splnění všech podmínek:

    Obrázek 4: několik dalších obchodů
    Co ale jiné trhy? Koukněme se na další dva oblíbené – cukr a kukuřici:


    Obrázek 5 a 6: použití BB a Slow Stochastics v cukru (SB) a kukuřici (C)
    Vidíte tedy, že kdo je trpělivý a umí si počkat na ty správné příležitosti, bývá velmi často patřičně odměněn. Samozřejmě opět platí - vše vyžaduje trochu cviku a především pak citu pro oba zmíněné indikátory.
    Příště o BB zase něco více.
×
×
  • Vytvořit...