Datová analýza pro tradery
Obsah:
Proč jsou základy datové analýzy důležitější než kdy dřív
Kurz postavený na Pythonu
Proč absolvovat kurz Datová analýza pro tradery
Osnova kurzu
Jak kurz probíhá
Zapojení do kurzu
Obchodování na finančních trzích se obvykle spojuje s představou klikání do grafů a intuitivního vyhodnocování různých ukazatelů. Dnešní svět ale vyžaduje mnohem preciznější přístup: většina profesionálních traderů pracuje s daty – sbírají je, čistí, zpracovávají a analyzují. Následně na jejich základě dělají rozhodnutí, která stojí na pevných základech místo pouhých dojmů a emocí. Pokud chcete coby retailoví obchodníci posunout svůj trading na vyšší úroveň, je nezbytné osvojit si, jak s daty pracovat. A právě proto nyní v TechLabu spouštíme nový kurz Datová analýza pro tradery.
Cílem kurzu je ukázat i naprostým začátečníkům ověřené taktiky zpracování tržních dat, které profesionální obchodníci využívají prakticky denně. Naučíte se data stahovat, třídit, čistit, interpretovat a využívat je k vytváření efektivnějších obchodních strategií.
Proč jsou základy datové analýzy důležitější než kdy dřív
I když se necítíte na to, abyste se pustili do klasického programování, dnešní doba nabízí stále víc „AI“ nástrojů, které umožňují pracovat s daty bez nutnosti psát vlastní kód. Přesto se podle našich dlouholetých zkušeností vyplatí rozumět základním principům, na kterých tyto nástroje fungují. Jen tak nad nimi získáte lepší kontrolu a jistotu, že reálně chápete, jak (a proč) vytvářejí určité výstupy.
Kurz Datová analýza pro tradery vám proto přinese základní datovou gramotnost – takovou, abyste uměli data získat, zkontrolovat jejich správnost, očistit je či je zadat do AI nástroje a následně poznat, zda jsou jeho výstupy relevantní a použitelně interpretované.
Kurz postavený na Pythonu
Celý program je vystavěný na skriptovacím jazyce Python, který dnes tvoří jádro obrovského množství „AI“ i standardních datových nástrojů. Díky know-how, které v kurzu získáte, budete moct následně své dovednosti rozšířit do mnoha směrů.
Proč absolvovat kurz Datová analýza pro tradery
Praktické zaměření
Kurz je navržen tak, aby každý krok ilustroval reálné obchodní situace. Nejde o akademické teorie. Na konci dvanáctitýdenního programu se budete umět postavit k reálným datům, provést jejich úpravu a vyvodit z nich užitečné závěry pro vlastní trading.
Dva komplexní projekty
V rámci kurzu nebudete jen pasivně naslouchat, ale rovnou si vyzkoušíte dva samostatné projekty. Díky tomu se učíte nejúčinněji – praxí.
Vstřícný výklad
Mnoho lidí odrazuje představa „datových tabulek“ a „programování“. Postupujeme proto pozvolna a názorně. Začneme definicí datových zdrojů a formátů, ukážeme si, jak data načíst a čistit a postupně se dostaneme k pokročilejším technikám. Vše probíhá ve vstřícném prostředí Jupyter Labu, kde můžete kód spouštět po malých částech a hned vyhodnocovat výsledky.
Lektorská podpora
Po celou dobu kurzu bude k dispozici Bogdan, kterého se můžete kdykoli ptát na cokoli nejasného. Pokud budete tápat, společně projdete daný problém tak, abyste se reálně posunuli z bodu A do bodu B. Bogdan stojí na Finančníkovi za vývojem autotraderu SignalTrader a má dlouholeté zkušenosti se systematickým tradingem.
Skvělý start
I když zatím o datové analýze nevíte vůbec nic, ukážeme vám, jak si vytvořit svůj první „datový pracovní postup“ (workflow). Ten pak můžete dále rozšiřovat a stavět na jeho základech.
Osnova kurzu
Kurz je rozdělen do deseti základních lekcí a dvou praktických projektů:
Definice zdrojů a formátů
Vysvětlení, kde data hledat, jak se k nim dostat a co všechno může být užitečným zdrojem pro trading. Budeme mluvit o různých formátech (CSV, Excel, databáze, online API) a jak s nimi pracovat.
Zpracování a očištění dat
Prakticky si ukážeme, jak data načíst do tabulek či specializovaných nástrojů, jak identifikovat chybějící hodnoty či duplicity a co to znamená pro naši analýzu. Naučíme se metody „čištění“ tak, aby nám v datech nezůstávaly nesmysly.
Specifika práce s finančními daty a převody dat
Ať už sbíráte data o akciích, futures nebo kryptoměnách, narazíte na rozdíly v časových pásmech, úpravy pro dividendy, případně splity. V této lekci se naučíte, na co si dát pozor, abyste měli data správně připravena pro obchodní rozhodnutí.
Projekt A
Po lekci 3 se pustíme do prvního praktického projektu. Ukážeme si kompletní workflow: od načtení surových dat a jejich očištění až po sjednocení formátů a prvotní vyhodnocení. Naučíte se vytvořit si vlastní „datový balík“, se kterým budete dále pracovat.
Zkoumání trendů a sezónnosti
Vysvětlíme si, co je trend, jak ho měřit a jak do analýz zahrnout sezónnost. Na reálných příkladech uvidíte, že sezónní vlivy se netýkají jen zemědělských komodit, ale mohou se vyskytovat i v indexech či akciích.
Statistika pro datovou analýzu
Představíme si základy statistiky: min/max, průměr, medián, směrodatnou odchylku. Ukážeme si histogramy, rozptylové grafy a naučíme se je číst v kontextu reálných tržních příkladů.
Pokročilá agregace a transformace dat
Zaměříme se na tvarování a přeskupování dat (pivoty), shrnutí denních dat do týdenních průměrů a podobně. Také se naučíte připravit pokročilejší funkce a vypočítat Sharpe ratio nebo drawdown.
Korelace, porovnávání hodnot a heatmapy
Různé instrumenty se mohou chovat podobně, nebo naopak zcela protichůdně. Naučíte se vyhodnocovat korelace, porovnávat volatilitu jednotlivých akcií a z heatmap hned vyčíst vzájemné vztahy na trhu.
Volatilita a její vliv na cenové pohyby
Ať už obchodujete opce nebo jen akcie, volatilita hraje klíčovou roli. Ukážeme si práci s indexem VIX a porovnání s ETF SPY. Zjistíte, jak využít VIX k filtraci obchodů nebo ke zkoumání vztahu mezi prudce rostoucí a následně klesající volatilitou.
Modelování časových řad pomocí lineární regrese a predikce vývoje cen
Zabrousíme do základů strojového učení v rámci retailového tradování a srozumitelného přístupu. Naučíte se stavět jednodušší modely lineární regrese, abyste získali přehled o možném budoucím vývoji cen.
Reportování a automatizace analýzy
Poslední lekce se zaměří na tvorbu a automatizaci reportů. Ukážeme, jak převést Jupyter Notebook do Python skriptu a spouštět jej plánovaně, abyste měli třeba každé ráno k dispozici vlastní shrnutí trhů.
Projekt B
Kurz zakončí druhý projekt, jehož konkrétní zaměření vzejde z průběžného zájmu účastníků. Může to být například vytvoření automatizovaného denního reportu sentimentu (vývoj SPY, VIX, RSI, tituly s největšími pohyby v S&P 500 atd.). Získáte tak hotovou šablonu, kterou si můžete kdykoliv rozšířit nebo upravit pro své vlastní potřeby.
Jak kurz probíhá
Kurz je rozdělen na výukové bloky, jež na sebe navazují. Každý týden získáte přístup k nové lekci, abyste měli dostatek času vše pochopit a samostatně vyzkoušet. Součástí výuky je:
Video návod ke každé lekci, kde uvidíte krok za krokem, co a jak dělat. Z každé lekce vychází také jednoduchý domácí úkol.
Ukázkové datasety a hotové skripty, se kterými můžete sami experimentovat a přizpůsobovat je svým potřebám.
Uzavřené diskuzní fórum, kde budete v kontaktu s lektorem po celou dobu kurzu. Lektor vám pomůže vše zprovoznit, a pokud narazíte na zádrhel, vysvětlí, jak se posunout dál.
Stačí hlavně chuť se něco nového naučit. Všechno ostatní společně doladíme.
Zapojení do kurzu
Kurz je zdarma dostupný všem účastníkům TechLabu. První lekci naleznete v členské sekci na této adrese.
Pokud zatím do TechLabu přístup nemáte, zaregistrujte se zde: TechLab - zaměřeno na automatizaci a technickou podporu v obchodování. Nejvýhodnější je roční předplatné TechLab Automatizace, které kromě hotového autotraderu otevírá i kompletní archiv již publikovaných minikurzů: https://www.financnik.cz/forum/info/ostatni/minikurzy-prehled
Pojďte s námi proniknout do světa datové analýzy a posuňte svůj trading na novou úroveň. Právě teď je ten správný čas začít – těšíme se na vás v kurzu Datová analýza pro tradery!
Automatizované obchodování – jak to děláme na Finančník.cz
V dnešní době se stále více obchodníků setkává s potřebou zautomatizovat části svého tradingového procesu, nebo tradingu jako celku. Systematické obchodování, které na Finančník.cz používáme, vede k tvorbě jasných a konzistentních pravidel, podle kterých obchody uskutečňujeme. A protože je systematické obchodování založeno na předem definovaných mechanických pravidlech, je pro mnohé z nás posun k automatizaci rutinních činností logickým krokem. V následujícím textu bych rád ukázal, jak k takové automatizaci přistupujeme a co všechno to obnáší.
Obsah:
Automatické obchodování skrz skripty – jak to děláme na Finančník.cz
Proč zvolit systematický přístup k obchodování
Automatizace nemusí být komplikovaná
Řešení autotraderu na Finančník.cz
Nová verze autotraderu – SignalTrader
Ukázka jak SignalTrader může pomoci v praxi
Závěrečné myšlenky k automatizaci v tradingu
Automatizované obchodování skrz skripty – jak to děláme na Finančník.cz
Většina obchodníků, kteří obchodují spolu se mnou na Finančníkovi, přešla stejně jako já na systematický trading.
To znamená, že vyhledáváme reálně ověřitelné výhody v trzích, vytváříme funkční logiky, které skládáme do diverzifikovaných portfolií, a následně při samotném obchodování jen následujeme signály vycházející z předem definovaných plánů.
Tato cesta je nesmírně efektivní z hlediska času a také pomáhá udržet stabilitu psychiky obchodníka.
Systematické přístupy lze obchodovat manuálně. Například tak, že se před otevřením obchodní seance zadají ručně příkazy do brokerské platformy a tím se na daný den vyřeší veškerá aktivita okolo samotných vstupů a výstupů. Nicméně jakmile se naučíte dodržovat striktní pravidla, nabízí se možnost automatizovat celý proces obchodování a v podstatě se zbavit denní rutiny. Tím uvolníme energii na to nejdůležitější – na další výzkum, studium a testování nových myšlenek.
Je důležité zdůraznit, že pokud s tradingem teprve začínáte, není automatizace nezbytná a jsou mnohem důležitější principy, na které je v začátcích důležité soustředit pozornost. Mnoha obchodníkům pomůže projít si „ruční fází“ zadávání příkazů, aby důkladně porozuměli fungování trhů a rozvíjeli zkušenosti s reálným sledováním chování trhů. V momentě, kdy získáte větší zkušenost, se ovšem otevírá velký prostor pro úsporu času, a právě tehdy dává přechod k větší míře automatizace opravdu smysl.
Proč zvolit systematický přístup k obchodování
Než se pustíme do samotné automatizace, pojďme si stručně zrekapitulovat, proč vůbec obchodovat systematicky.
Systematické obchodování přináší řadu výhod. Předně je to konzistentní realizace ověřených strategií. Mnozí obchodníci se potýkají s emočními tlaky, které často vedou k „překrucování“ plánů v průběhu samotného obchodního dne. Přidáme-li k tomu zbytečný stres a možné chyby při zadávání příkazů, není divu, že se mnoho dobrých obchodních nápadů v praxi zvrtne do ztráty. Systematický přístup sice není zárukou výdělků, ale dává vysokou míru jistoty, že vše bude probíhat tak, jak předem stanovíme.
Když se systematický přístup navíc spojí s automatizací, získáme:
Minimum potřeby se denně zabývat zadáváním obchodů.
Větší možnost spravovat více strategií současně.
Časovou flexibilitu – není nutné sedět u počítače v určité hodiny.
Omezení chyb, které vznikají z rutinního kopírování příkazů.
Automatizace nemusí být komplikovaná
I když je možné systematicky obchodovat čistě ručně, pracná stránka přichází v okamžiku, kdy máte v portfoliu větší počet strategií. Obchody je potřeba kontrolovat, zadávat a neustále porovnávat se stavem otevřených pozic v brokerské platformě.
Automatizace takových procesů může být v zásadě velmi jednoduchá a u pomalejších stylů (typicky swingové obchodování) skutečně stačí následovat podobný postup:
Obchodní plán systematizujeme a převedeme do skriptovacího jazyka běžně dostupných programů (na Finančníkovi používáme hodně Amibroker nebo TradeStation).
Každý den spustíme používaný software, který provede kontinuální backtest našeho obchodního systému a vytvoří sadu otevíracích a uzavírajících příkazů pro daný den.
S využitím skriptů (například v Pythonu) se napojíme na brokera skrz API (na Finančníkovi používáme Interactive Brokers) a stáhneme si aktuální otevřené pozice, stav účtu atd.
Skripty porovnáme otevřené pozice s pozicemi vygenerovanými v bodě 2, vyřešíme duplicity v obchodovaných trzích a možné rozdíly v otevřených pozicích vůči tomu, co bychom měli mít otevřené dle backtestu.
Skripty převedeme platné signály na obchodní buy/sell příkazy a skrz API je předáme do brokerské platformy.
Tím celá denní práce končí a můžete se věnovat dalším aktivitám.
Řešení autotraderu na Finančník.cz
Pro swingové obchodování sdílíme na Finančníkovi v TechLabu univerzální autotrader skript vytvořený v Pythonu, který popsanou automatizaci realizuje.
Jde o otevřené řešení, které si každý může uzpůsobit podle svých potřeb. Traderů, co obchodují systematicky, přibývá, a proto považuji za důležité, aby podobné nástroje byly snadno dostupné. Obchodníci tak mají možnost rychle začít s vlastní automatizací, a to bez nutnosti tvořit vše od nuly. V TechLabu je autotrader navíc poskytován s průběžnou výukou – jak tvorby strategií, tak například práce s Pythonem a hodně obchodníků si tak postupně swingový autotrader rozšiřuje podle svých potřeb.
Nová verze autotraderu – SignalTrader
Protože se v TechLabu věnujeme automatizaci dlouhodobě, celé řešení postupně vylepšujeme. Aktuálně (březen 2025) jsme publikovali výrazně vylepšenou verzi, kterou nyní nazýváme SignalTrader – snadněji se tak řešení swingového autotraderu odliší od specializovaných řešení pro intradenní autotrader, která jsou k dispozici v TradingRoom.
SignalTrader je primárně určen k tomu, abychom mohli odesílat příkazy do trhu i z běžného počítače, tedy bez nutnosti speciálního serveru nebo VPS. Ke zpracování vstupů a výstupů z pozic v rámci swingových přístupů skutečně stačí jediný denní start skriptu.
Přehled novinek k březnu 2025:
Změna názvu na SignalTrader.
Nově jsme upravili strukturu kódu tak, aby byla každá strategie ošetřena proti chybám samostatně. Pokud se tedy vyskytne chyba v jedné strategii, ostatní proběhnou bez přerušení celého procesu.
Změnili jsme princip připojení k IB, kdy držíme jedno připojení po celou dobu běhu skriptu. Při startu programu se vytvoří objekt IB, který zůstane aktivní, dokud neproběhnou všechny dotazy.
Součástí řešení je skript Generátor, který slouží k přípravě obchodních signálů. Ten jsme rozšířili o možnost získání signálů z dashboardu TradingRoom a Techlabu. Nově tak může pracovat ve třech režimech Amibroker/TradingRoom/TechLab.
Vytvořili jsme vlastní knihovnu ib_utils, která zjednodušuje komunikaci s IB a sdružuje funkce pro práci s daty.
Také jsme připravili nový modul logování (zápisu informací o průběhu skriptu), nově se do jednoho logu zapisují informace o průběhu všech skriptů.
Jedním z hlavních cílů upgradu bylo začlenění dalších typů příkazů. Úpravou logiky vytváření příkazů jsme získali možnost odesílat do trhu většinu typů příkazů podporovaných IB.
Změnili jsme způsob vytváření výsledného reportu, nově se používá šablona, která umožňuje změny vzhledu reportu pomocí HTML kódu.
Kompletní popis změn a link ke stažení SignalTraderu naleznete v TechLabu zde: https://www.financnik.cz/forum/topic/5282-signaltrader-popis-zmen-v-nove-verzi-autotraderu/#comment-322413
Ukázka, jak může SignalTrader pomoci v praxi
Pokud s tradingem začínáte, snadno můžete mít představu, že celý úspěch v obchodování spočívá v tom, že budete čekat na určitý pattern v trhu, vyčkáte, až se objeví, a pak začnete vydělávat. Praxe je ovšem odlišná. V dnešním světě plném algoritmických systémů je třeba umět pracovat s různými přístupy a skládat je do portfolií.
Ve Workshopu profitabilního obchodování od A do Z, se kterým na Finančníkovi většina traderů začíná, například pracujeme s pěti swingovými systémy – jedná se o long mean reversion, short mean reversion, momentum strategii a nákupy dipů do trendu. Každý z těchto systémů má v čase období, kdy generuje profit, ale také fáze, kdy si prochází drawdownem.
Takto vypadají výkonnostní křivky jednotlivých systémů:
Vzájemnou kombinací jednotlivých systémů ovšem dostáváme vyváženou portfolio-equity, která může vykazovat mnohem hladší růst bez extrémních propadů (portfolio equity křivku reprezentuje horní modrá linka ukazující, jak se mění stav účtu po jednotlivých obchodech individuálních strategií - poplatky dle Interactive Brokers jsou započítány):
Konkrétně výukové portfolio Workshopu právě v březnu 2025 vytvořilo nová maxima, a to navzdory poklesu amerických akcií v uplynulých týdnech. Opět to ukazuje, že diverzifikace je velkou přidanou hodnotou systematického obchodování.
Celé podobné portfolio můžeme sice obchodovat ručně, avšak v praxi to vyžaduje denní kontrolu a zadávání příkazů (byť to vše je operace na max. půl hodinu denně).
S využitím SignalTraderu lze celý proces výrazně zjednodušit. Stačí jej spustit, nechat ho, aby zkontroloval generované signály, zrevidoval otevřené pozice a odeslal příkazy do trhu. Zde je ukázka, jak vše konkrétně funguje:
SignalTrader načte signály z uvedeného zdroje – mohou to být vaše vlastní signály generované z Amibrokeru či jiného softwaru, nebo signály z Trading Room a postará se o jejich zadání do Interactive Brokers. A to včetně toho, že podle zadaných pravidel ošetří i uzavírání obchodních pozic.
Závěrečné myšlenky k automatizaci v tradingu
Automatizaci sám vnímám jako klíčovou činnost (nejen v tradingu). Snažím se automatizovat jakékoliv rutiny.
Pokud obchodujete diskrečně, měli byste si sami odpovědět na to, jestli se vám skutečně vyplatí věnovat čas tomu, abyste třeba hodiny pozorovali trhy a pak ručně provedli nákup nebo prodej. Podle mě lze čas investovat lépe.
A věřte mi, že drtivá většina činností spojených s tradingem lze efektivně automatizovat a ušetřit opravdu hodně času.
Pro automatizaci je možné využít hotových komerčních řešení jako je například TradeStation či mnoho podobných programů. Pro práci s Python skripty jsme se rozhodli kvůli univerzálnosti. Dnešní doba je velmi dynamická a člověk snadno narazí na určitý vlastní způsob tradingu, který není v klasických retailových platformách běžně nebo snadno implementovatelný. V Python skriptech toto není problém, protože nabízejí naprostou svobodu v tom, jak si je připravíme. Navíc s dnešními možnostmi programů typu chatGPT dokáže Python skripty upravovat i naprostý neprogramátor (ostatně sám jsem ještě před pár roky neuměl naprogramovat ani makro v Excelu).
Na Finančníkovi vycházíme z toho, že je ideální mít hotové a funkční řešení, které stačí jen nainstalovat a spustit a získávat praxi. Postupně pak zvažovat vlastní rozšiřování a úpravy. Proto je k dispozici SignalTrader, který se dá snadno implementovat podle podrobných návodů v TechLabu. Není nutné vědět, jak přesně Python skripty fungují. V ideálním případě vás ale nové možnosti motivují k dalšímu studiu a začnete Python využívat i v oblasti správy dat nebo k jiné automatizaci (viz přehled minikurzů dostupných v rámci TechLabu: https://www.financnik.cz/forum/info/ostatni/minikurzy-prehled). Postupem času tak sami zjistíte, jak si hotové řešení upravit podle svých představ, a stanete se skutečně plně automatizovanými tradery stejně jako my.