Jump to content
Co nového? Mé kurzy
Komunita:
Diskuze Sledované příspěvky Žebříčky

pocket - žurnál obchodů


pocket

Doporučené příspěvky

  • Odpovědí 50
  • Vytvořeno
  • Poslední

Nejaktivnější diskutující

Nejaktivnější diskutující

Publikované obrázky

  • 8 months later...

Přemýšlím o svém dosavadním tradingovém snažení. Neměl jsem dost dobře propracovaný OS, spíš jen povrchní. To se týká mého původního systému který jsem jel na paperu i live, i systému - pokusu - z loňského roku, který má několik screenů v tomto žurnálu. Moje systémy nejsou profitabilní protože jim něco chybí, a to nějaký prvek - asi edge, nebo jsem to nedotáhl do správné a úplné podoby. To jsem si říkal vždycky: já vlastně nevím jak postavit systém. Myslím že jsem nedokázal pochopit a taky udělat to podstatné. Mám to vzít v případě diskréčního ID přes automatizované otestování obecných tendencí, poté ruční backtesting různých variací a pak papertrading? (Pokud má k tomu někdo co řici klidně pište - i když to tu bylo už asi 100x, ale já to pořád nedokážu pochopit.) Nějak nevím co konkrétně hledat - jak by měl vypadat výsledek / dílčí výsledek. Z posledních článků mi připadá jako dobrá rada článek z konce ledna - "Sledujeme stopy ostatních obchodníků – volume profil". Hledat edge podobným způsobem. Takových článků tu jistě bude víc, až přijde čas zkusím je najít :)

Link to comment
Sdílet pomocí služby

Loni během druhé části roku jsem si dal přestávku od tradingu, ale stále mi vrtalo hlavou JAK NA TO. Impuls přišel článkem "OS ke stažení".

Také se účím programovací jazyk Java. Asi před dvěma roky jsem si na to koupil knihu - ani nevím jestli to bylo před nebo po tom, co se začalo o programování mluvit tady. Tehdy jsem vybíral mezi Java a C++, ostatní (třeba Python) mě nějak minuli. Zvolil jsem Javu, protože C++ prý neni dobrý pro začátečníky a Java jede na Androidu (... a to se může hodit), je multiplatformní a jeden z nejpoužívanějších jazyků. Ale Python je asi snažší. Vždycky mě zajímalo jak se programuje a jak to funguje, jednou jsem dostal nápad že se to naučím. Myslel jsem že to bude podobnější HTML které jsem se taky amatérsky naučil - jen poskládat různé "funkce" za sebe ale tak snadný to neni. Trvalo mi dlouho jen než jsem přelouskal tu knihu, spoustu věcí neumim a nechápu doteť, navíc jsem ji musel přečíst celou abych mohl dát dohromady nějaký smysluplný, i když jednoduchý, program, a i tak jsem musel dohledat další info na netu - je to hodně komplexní. Také mi docela trvalo než jsem pochopil jak to vlastně fachčí při psaní prvního programu (například GUI, spuštění nějaké funkce při kliku myši na tlačítko...) a to se cítím jako technicky zaměřený, stejně to nechápu.

Takže jsem si řekl že se pustim do otestování systému "OS ke stažení". Než abych se učil v Excelu tak si to rovnou naprogramuju v Javě - a je to ne? :D:D Měl jsem za sebou dva prográmky takže něco už umim a hlavně se na tom dál naučim programovat. Doporučení zní jednotlivé akcie z S&P 100, ale řekl jsem si že napřed tu aplikaci napíšu na futures data. Napřed jsem musel nějaké najít - z IB mam denní i minutová 2 roky nazpět (pro začátek stačí), jen to mi nějakou dobu trvalo. A to programování - jde mi to hrozně pomalu - jen než jsem dal dohromady GUI, pak pospojování jednotlivých kontraktních měsíců (zatim umí jen denní data), teď dělám na přeformátování dat aby se mi s nimi dobře pracovalo (rovnou tam naprogramuju konverzi i na data akcií z Yahoo). Pak snad konečně už jen nechám načíst soubor a napíšu pár řádků na samotný test nějaké myšlenky... Je to spoustu času ale myslim že to má smysl, jak psal Petr, že hotové programy neumí všechny funkce které můžeme potřebovat - umět programovat se může hodit a v samotném tradingu moc nevím jak na to, tak si tu hraju s pár řádkama kódu. Jen ještě nevím jak by vypadal live trading - otestovat 100 produktů v jednu chvíli na aktuálních datech - jestli by přece jen nějaký program nebyl potřeba, ale to mě aktuálně netrápí.

Link to comment
Sdílet pomocí služby

  • 7 months later...

Mám několik tipů pro lidi se chtějí naučit alespoň základy programování:

Za prvé, je dobré mít alespoň základy angličtiny, nebo chuť se jí učit - to platí i o samotném programování. Pokročilejší věci těžko vyřešíte bez angličtiny. Často hledám radu na serveru stackoverflow.com - jakýkoli problém který mám, už někdo řešil, stačí vyhledat. Je to fórum, uživatelé nepoužívají nijak složitou angličtinu.

Věnovat se právě Pythonu je určitě dobře - je to (prý) snadno naučitelný jazyk a zároveň má široké uplatnění. Je vhodný pokud si chcete napsat jen doma pro sebe nějaký skript stejně jako pro větší profesionální aplikace. Má širokou komunitu, jsou dostupné různé knihovny a tak, často zadarmo. Řekl bych, že z těchto důvodů ho používají i tradeři. Myslím, že umět něco (jednoduchého) naprogramovat se může v životě vždycky hodit.

Poradil bych koupit si nějakou knihu. Tam se naučíte od úplných základů (co to je proměnná, metoda, třída, objekt, ... syntaxi jazyka). Vybral bych raději nějakou ne moc slabou, aby věci nebyly popsány příliš stručně. Neni to tak že kniha vás naučí programovat, po přečtění sednete k počítači a zjistíte že nevíte co. Ale postupně hledáte dál na internetu nebo se podíváte zpět do knihy a řešíte problémy ve vaší aplikaci, až po dlouhé době z toho něco vznikne.

Kromě knih se můžete učit i na internetu. Na python.cz jsou odkazy na nějaké základní tutoriály česky i anglicky (nezkoumal jsem). Dále na adrese docs.python.org/3/tutorial/index.html je tutorial a na checkio.org je hra, během které se učíte programovat. Určitě něco do začátku bude i na YouTube, tam je ale potřeba dobře rozumět anglicky.

Samostudium má nevýhodu v tom že člověk může někde psát kód který neni profesionální nebo efektivní, a posouvá se pomalu dopředu, ale dá se napsat aplikace která něco umí. Pokud je možnost nějakého kurzu nebo mentora, určitě dobře, jen to stojí nějaký čas a peníze. Samostudiem strávíte spoustu času, asi je lépe to vnímat jako hobby, nadruhou stranu tím vyřešíte problémy, kde je zbytečné platit hotový program který jinak nevyužijete nebo problém na který program neexistuje. Vlastní kód sice nebude tak propracovaný jako hotový program, ale kdykoliv si jej můžete upravit a dopsat na nové požadavky, přesně jak potřebujete.

Další věc je, zdali se věnovat programování pro trading nebo tradingu :) Já neumím ani jedno a obávám se, že na to druhé nemám dostatečně pevnou vůli postupovat správným směrem. Takže jen tak dál :)

Link to comment
Sdílet pomocí služby

  • 1 year later...

Ahoj, po dvou letech přináším další zprávu. Pracuji na tvorbě prostředků k tradingu, a to zde stručně popíšu. O tradingu snad příště.

Aplikaci o které jsem se zmiňoval výše (je z období podzim 2016 a zima 2017) jsem zanechal. Byla špatně napsaná - například všechny prvky GUI byly v jediné třídě, nebo nebylo využito OOP. Na podzim 2017 jsem začal znovu a lépe. Nepracuji na tom však nepřetržitě - věnuji se i dalším věcem, ale k aplikaci se vracím a dopisuji další funkcionality. Tyto funkcionality nejsou nijak zvláštní, ale jsou potřebné (stahování historických market dat, načtení dat ze souboru, zobrazení grafu, atp.) a nebo prostředky které jsou využívány těmito funkcionalitami (vytvoření nebo načtení meta dat a dotázání se jich na nějakou hodnotu, reportování errorů a jiných událostí, schopnost držet rozličné typy dat ...).

Na začátek jsem se rozhodl sehnat si historická market data. Napřed před třemi lety jsem je stahoval ručně v MultiCharts DT od IB (dvouletá historie). Loni jsem zjistil že původní verze MultiCharts DT nefunguje (pravděpodobně v IB změnili API), tak jsem ve své aplikaci vytvořil vlastní napojení (je potřeba mít spuštěnou aplikaci TWS od IB [popř. IB Gateway], k jehož API se připojím přes nějaké knihovny importované v mé aplikaci). Realizace nebyla moc rychlá, protože jsem musel vyladit věci okolo, aby nakonec vše šlo hladce téměř na jedno kliknutí pro všechny požadované finanční produkty, jejich kontraktní měsíce a tak.

Dále jsem měnil věci uvnitř aplikace pro univerzálnost a pohodlnost, což nebylo poprvé ani naposledy. A teď jsem dokončil funkci pro stažení market dat z Quandlu. Překvapila mě jednoduchost - stačí dva řádky - v podstatě se zadá internetová adresa s názvem finančního produktu a ono to zpět pošle data. Nepotřebuji k tomu žádné speciální knihovny. Dále je samozřejmě potřeba data zpracovat a to zabere dalších 600 řádků. Zatím to umí jen akcie, takže problematice s kontraktními měsíci jsem se vyhnul, zato menší zdržení nastalo u dalšího neočekávaného problému: kde sehnat seznam akcií z S&P100. Napřed Wikipedia. Ale zase jsem neměl jméno burzy, které sice nutně nepotřebuji, ale chci ho mít v meta datech ve výsledném souboru. Vyřešil jsem to složitější oklikou. Na Quandlu jsem našel nějaký (??) seznam cca 13 000 akcií, který jsem musel zase rozpitvat, abych dostal jen symbol, celé jméno a burzu. Svůj požadovaný seznam 100 akcií jsem stáhl znovu a to z BarChart, ale stáhl zase jen ručně v CSV a poté ve čtyřech krocích mezi notepadem a tabulkovým editorem získal soubor jenž umím přečíst svou aplikací bez naprogramování další jednoúčelové funkcionality. Lépe to neumím. Dále aplikace přiřadila v mém cílovém seznamu k symbolu i požadovanou burzu. Poté již vše (po doladění) funguje.

Spustit test obchodního systémů na historických datech není těžké naprogramovat. Uměla to i předchozí aplikace. Jen je potřeba zajistit smysluplnost - to zahrnuje spoustu věcí okolo jako jsou vstupní data, zpracování výsledků, univerzálnost pro různé experimenty, a tak. Některé věci na to už mám připravené, a snad to budu následující čas konečně realizovat zároveň s testováním prvotních OS.

Zas někdy donesu další rozumy, a třeba i o tradingu. Screeny nic neznamenají - jen ukázka.

PS: Kdyby někdo věděl kde najít seznamy akcií, nebo dalších finančních produktů, s celým názvem i s jejich burzou a případně i další informace, přihoďte prosím koment. Může být stránka na webu ale nejlépe kdyby to šlo automaticky snadno stáhnout v apce bez potřeby speciálních knihoven.

Screen_2019-08-12.png

Link to comment
Sdílet pomocí služby


×
×
  • Vytvořit...