Strojové učení v algoritmickém obchodování: reálné použití a běžné chyby
Strojové učení (ML) v obchodování nepředpovídá ceny akcií přímo, ale řeší úzce zaměřené úkoly: určování trhových fází, filtrování signálů, optimalizaci provádění objednávek a analýzu mikrostruktury nabídkového stromu. Samostatní algoritmický obchodník v Rusku provádí celý cyklus od přípravy dat až po nasazení do produkce, na rozdíl od týmů hedge fondů. Většina strategií založených na ML selhává kvůli problémům s daty a testováním.
Role samostatného algoritmického obchodníka
Moderní samostatný algoritmický obchodník nahrazuje celý tým specialistů. Vykonává následující úkoly:
- Hledání a čištění dat;
- Tvorba znaků;
- Budování modelů;
- Testování hypotéz;
- Sestavování strategií;
- Výpočet rizik;
- Nasazení do produkce.
Vyžaduje to domácí vybavení s GPU a nástroje umělé inteligence. Na rozdíl od fondů, kde jsou role rozdělené, zde je vše na ramenou jedné osoby. Průzkum na setkání ukázal: 70 % znají ML, experimentují, ale žádný zisk; pouze 30 % má funkční strategie s reálnými penězi.
Problém spočívá v nedostatku obsažného obsahu: diskuse jsou plné náznaků, každý vynalézá kolečko a opakuje chyby.
Proč přímá predikce cen nevyjde
Mýtus o neuronových sítích, které předpovídají cenu Sberu na zítra, se rozpadá praktickou zkouškou. Regrese na historických cenách dává odpad. V obchodování s vysokou frekvencí (HFT) je ML omezené: modely způsobují zpoždění, která jsou kritická na úrovni nanosekund.
Generování signálů prostřednictvím ML je často neúspěšné. Místo toho je ML efektivní v:
- Určování fáze trhu (režimu): vypnutí trendových strategií v pohybu bez trendu;
- Filtrování signálů: odstranění ztrátových obchodů z základní strategie;
- Optimalizaci provádění: minimalizace skluzů a poplatků;
- Analýze mikrostruktury nabídkového stromu: detekce vzorů v toku objednávek, které nejsou lidským okem viditelné.
Tyto úkoly umožňují získávat alfa bez iluze předpovídání.
Běžné chyby při testování
Většina strategií selže při testování. Základní pasti:
- Garbage in = Garbage out: 80 % času stráveno hledáním a čištěním dat. Přeskočený den ve svíčkách nebo špatná slepení termínových kontraktů vytváří falešné vzory;
- Pohled do budoucnosti: chyby při rozdělení výběru umožňují modelu vidět budoucí data (viz Marcus de Prado). Backtest je ideální, live je margin call;
- Forecast ≠ PnL: model uhodne směr v 60 % případů, ale skluzy, poplatky a zpoždění spotřebují zisk.
Rozdíl od západních fondů spočívá v infrastruktuře, nikoli v myšlenkách. Nestacionarita trhu a přetrénování jsou univerzální.
Ověření nápadů před realizací
Před psaním kódu v Pythonu projděte pět otázek:
- Je úkol konkrétní? (Ne 'připojit neuronovou síť', ale 'snížit náklady na provádění');
- Existují čestné data? (Čistá, bez úniku budoucích informací, dostupná v reálném čase);
- Lze ověřit s ohledem na poplatky a zpoždění?
- Přechází předpověď v činnost? (Jasný most mezi modelem a obchodem);
- Existuje ekonomický efekt? (Zisk po všech nákladech).
Záporná odpověď na jakoukoli otázku je varovným signálem, že je příliš brzy začít s ML.
Co je důležité
- ML v obchodování řeší úzce zaměřené úkoly, nikoli předpovídá ceny;
- 80 % úspěchu je v datech; čištění a validace jsou kritické;
- Vyhněte se únikům budoucích dat v backtestu;
- Zvažte PnL s skluzy a poplatky;
- Ověřte nápady pěti otázkami před kódováním.
ML není magické tlačítko, ale nástroj pro konkrétní potřeby. Kultura uzavřenosti vede ke opakování chyb; výměna zkušeností zrychluje pokrok.
— Editorial Team
Zatím žádné komentáře.