Strojové učení mi zachránilo zadek, když statická pravidla selhala

Tady je to, co vám nikdo neřekne o algoritmickém tradingu: nejlepší strategie na světě se stane bezcennou, když se změní tržní režim. Naučil jsem se to draze v únoru 2018, když můj systém mean reversion — ziskový po 3 roky v řadě — během 8 dní při explozi VIXu ztratil 23 %.

V Two Sigma jsme říkali: "Trhy mají paměť, ale jsou také schizofrenní." Poté, co jsem odešel obchodovat vlastní kapitál, strávil jsem 18 měsíců budováním toho, co se stalo mým frameworkem pro detekci režimů. Ne proto, že bych chtěl — ale protože jsem musel.

Tradiční přístup? Natvrdo naprogramovat různé strategie pro různé tržní podmínky. Problém? Než si uvědomíte, že se režim změnil, váš P&L už krvácí. Skutečná detekce režimu probíhá před pohybem, ne po něm.

Výkonnost statické vs. adaptivní strategie při změnách režimu
Výkonnost statické vs. adaptivní strategie při změnách režimu

Skrytý Markovův model, který všechno změnil

Březen 2020. Zatímco všichni diskutovali, zda je COVID "jen chřipka", můj model detekce režimu udělal něco zajímavého — přepnul z režimu "trendující" do "krizového" 21. února, celých 10 dní před skutečným krachem. Ne proto, že by předpověděl pandemii, ale protože tržní mikrostruktura už křičela.

Zde je zjednodušená verze toho, co zachránilo mé portfolio:

Key Insight

def detect_regime(features):

    # Features: volatility ratios, correlation matrices, volume patterns

    regime_probabilities = hmm_model.predict_proba(features)

    

    if regime_probabilities['crisis'] > 0.7:

        return 'defensive'

    elif regime_probabilities['trending'] > 0.6:

        return 'momentum'

    else:

        return 'mean_reversion'

Kouzlo není v modelu — je ve features. Většina detekcí režimu selhává, protože lidé krmí model špatnými vstupy. Klouzavé průměry? K ničemu. RSI? Ještě horší. Potřebujete features, které zachycují tržní mikrostrukturu:

    • Poměry realizované/implikované volatility napříč více časovými rámci
    • Mezitřídní korelační matice (když se dluhopisy a akcie pohybují společně, režimy se mění)
    • Perzistence nerovnováhy toku objednávek (jak dlouho trvá směrový tlak)
    • Intradenní shlukování volatility (strach se objeví v 15minutových svíčkách dříve než v denních)

Můj současný model používá 47 features, ale tyto čtyři představují 71 % přesnosti klasifikace režimu.

Rozpis důležitosti feature pro detekci tržního režimu
Rozpis důležitosti feature pro detekci tržního režimu

Tři režimové stavy, na kterých skutečně záleží

Zapomeňte na akademické články mluvící o 7 různých tržních režimech. Po zpracování 8 let tickových dat napříč futures, forexem a kryptem, pouze tři režimy skutečně ovlivňují váš P&L:

1. Momentum režim (38 % tržního času)

Charakterizován trvalými směrovými pohyby s pullbacky pod 38,2 % Fibonacciho. Korelace zůstávají pozitivní, volatilita se postupně rozšiřuje. Toto je doba, kdy trend following tiskne peníze. Moje momentum algoritmy zde běží na plné velikosti pozice.

2. Mean Reversion režim (49 % tržního času)

Základní kámen pro většinu algo obchodníků. Volatilita se stahuje, range drží, korelace mean-revertují. Ale je tu háček — tento režim má dva podstavy, které nazývám "zdravé sekání" a "stlačená pružina". Ten druhý předchází prudkým pohybům.

3. Krizový režim (13 % tržního času)

Všechny korelace jdou na 1 nebo -1. Volatilita exploduje. Likvidita mizí. Tradiční strategie nejen zaostávají — implodují. Během krizových režimů snižuji velikosti pozic o 75 % a přecházím pouze na volatilní arbitráž.

Klíčový poznatek? Režimy se shlukují. Krize následuje po kompresi v 73 % případů. Momentum následuje po krizi v 67 % případů. Tato posloupnost vám dává výhodu.

Budování vlastního systému detekce režimu

Ušetřím vám 6 měsíců pokusů a omylů. Zde je framework, který skutečně funguje v produkci:

class RegimeDetector:

    def __init__(self, lookback=252, retrain_frequency=30):

        self.features = ['vol_ratio', 'correlation_eigenvalue',

                         'flow_persistence', 'intraday_clustering']

        self.model = HiddenMarkovModel(n_states=3)

        self.scaler = RobustScaler() # Lépe zvládá odlehlé hodnoty

    

    def calculate_features(self, data):

        # Tady se děje kouzlo

        features = {}

        

        # Volatilní režim

        features['vol_ratio'] = data['realized_vol'] / data['implied_vol']

        

        # Korelační struktura

        corr_matrix = calculate_rolling_correlation(data, window=21)

        features['correlation_eigenvalue'] = np.max(np.linalg.eigvals(corr_matrix))

        

        # Mikrostruktura

        features['flow_persistence'] = calculate_order_flow_autocorrelation(data)

        

        return self.scaler.transform(features)

FibAlgo
FibAlgo Live Terminal
Přístup k signálům trhu v reálném čase, aktuálním zprávám a analýzám poháněným AI pro více než 30 trhů — vše v jednom terminálu.
Otevřít Terminal →

Kritické části, které většina tutoriálů vynechává:

    • Použijte RobustScaler, ne StandardScaler. Tržní data mají tlusté ocasy, které lámou standardní normalizaci.
    • Retrénujte měsíčně, ne denně. Modely režimů jsou citlivé na přeučení na šumu.
    • Začněte maximálně se 3 stavy. Více stavů = více způsobů, jak se oklamat výkonem na in-sample datech.
Kompletní pipeline detekce režimu pro trading
Kompletní pipeline detekce režimu pro trading

Past přeučení, která zabíjí většinu ML traderů

Tady naštvu ML evangelisty: většina strojového učení v tradingu je důmyslné prokládání křivek. Postavil jsem modely s 93% přesností na in-sample datech, které v produkci ztrácely peníze. Proč? Naučily se šum, ne signál.

Můj první model detekce režimu měl 200+ features a používal komplexní ensemble neuronových sítí. Dokázal "předpovědět" krizi 2008 dokonale. V backtestingu. V živém tradingu? Přepínal mezi režimy každý druhý den, generoval více transakčních nákladů než alfa.

Řešením není méně ML — je to chytřejší ML:

    • Feature engineering > složitost modelu. Jednoduchý HMM se skvělými features porazí neuronovou síť s nekvalitními vstupy.
    • Walk-forward validace je nevyjednávatelná. Trénujte na 2019-2020, validujte na 2021, testujte na 2022. Pokud se nezobecní napříč různými tržními cykly, je to k ničemu.
    • Stabilita režimu je důležitější než přesnost. Lepší detekovat režimy pozdě, ale zůstat v nich, než přepínat při každém výkyvu volatility.

Můj současný model obětuje 20 % teoretické přesnosti pro 80 % větší stabilitu. Tento kompromis tiskne peníze.

Výsledky živého tradingu: Dobré, špatné a ošklivé

Pojďme mluvit o reálných číslech z mých režimově adaptivních strategií za posledních 18 měsíců:

Dobré: Během říjnového výkyvu volatility Treasury v roce 2024 přepnul detektor režimu do krizového módu o 2 dny dříve. Výsledek? +8,7 %, zatímco buy-and-hold ztratil 12 %.

Špatné: Falešné signály během letní "sekací zóny" 2024 způsobily 7 zbytečných přepnutí režimu. Každé přepnutí stojí zhruba 0,3 % na transakčních nákladech a skluzu. To je -2,1 % mrtvé váhy.

Ošklivé: Model zcela minul lednový bleskový krach krypta v roce 2025. Proč? Mikrostruktura krypta se liší od tradičních trhů a mé features byly kalibrovány na futures datech. Ztratil 4,2 % před manuálním převzetím. Poučení — detekce režimu není univerzální napříč třídami aktiv.

Celková výkonnost: +31,4 % oproti +19,2 % pro statické strategie. Ale skutečná hodnota není v extra výnosech — je v lepším spánku s vědomím, že se mé algo přizpůsobí, když trhy zešílí.

Integrace s reálnými obchodními systémy

Teorie je hezká. Implementace platí účty. Zde je návod, jak se detekce režimu integruje se skutečnou obchodní infrastrukturou:

# Vrstva řízení rizika

position_size = base_size * regime_risk_multiplier[current_regime]


if current_regime == 'momentum':

    active_strategies = ['trend_following', 'breakout']

    disable_strategies(['mean_reversion', 'arbitrage'])

elif current_regime == 'mean_reversion':

    active_strategies = ['range_trading', 'pairs']

    disable_strategies(['trend_following'])

else: # crisis

    active_strategies = ['volatility_arb']

    reduce_all_positions(0.25)

Kritické detaily implementace:

    • Přechody režimů potřebují buffery. Nepřepínejte strategie při prvním signálu — vyžadujte 2-3 po sobě jdoucí období potvrzení.
    • Velikost pozice se upravuje před změnou strategie. Nejprve snižte riziko, otázky pokládejte později.
    • Vždy udržujte "režimově neutrální" zajištění. Moje je dlouhá volatilita během nejistoty.

Pro tradery používající indikátory FibAlgo, vícečasové rámcové signály dobře doplňují detekci režimu — pomáhají potvrdit, kdy se kratší časové rámce začínají sladit s posuny režimu dříve, než to denní grafy doženou.

Živý obchodní dashboard s integrací detekce režimu
Živý obchodní dashboard s integrací detekce režimu

Běžné způsoby selhání a jak se jim vyhnout

Ušetřím vás chyb, které mě stály šest čísel:

Způsob selhání 1: Únik feature

Použití implikované volatility k detekci volatilních režimů se zdá chytré, dokud si neuvědomíte, že IV již zahrnuje očekávání režimu. Předpovídáte minulost. Držte se realizovaných metrik a mikrostruktury.

Způsob selhání 2: Cukání při přechodu režimu

Trhy nepřepínají režimy čistě. Vždy existuje chaotické přechodové období. Moje řešení? "Přechodový stav", který udržuje pozice minimální, dokud se nový režim nestabilizuje.

Způsob selhání 3: Kalibrace specifická pro aktivum

Detektor režimu natrénovaný na S&P futures selže spektakulárně na forexu. Každá třída aktiv má jedinečnou mikrostrukturu. Postavte samostatné modely nebo používejte transfer learning opatrně.

Způsob selhání 4: Ignorování makro událostí

Žádný ML model nepředpověděl Brexit nebo odvázání švýcarského franku. Detekce režimu vám pomáhá reagovat rychleji, ne předpovídat černé labutě. Vždy udržujte jističe pro "nemožné" události.

Budoucnost adaptivního tradingu

Po 8 letech budování a bourání systémů detekce režimu je můj kontrariánský názor: budoucnost není ve složitějších modelech — je v jednodušších modelech, které se přizpůsobují rychleji.

Trhy se stávají efektivnějšími na vysokofrekvenční úrovni, ale více závislými na režimu na denní/týdenní úrovni. Zásahy centrálních bank, algoritmické stádovství, dominance pasivních toků — to vytváří odlišné režimy, které jednoduché adaptivní systémy mohou využívat.

Můj další projekt? Kombinace detekce režimu s analýzou váženou likviditou pro predikci přechodů režimu dříve, než se plně projeví. Předběžné výsledky ukazují náskok 4-6 hodin u hlavních posunů.

Výhoda v roce 2026 není v tom mít nejlepší model — je v tom mít model, který přizná, když se mýlí, a přizpůsobí se. Statické strategie jsou mrtvé. Pokud neumíte naprogramovat adaptivní chování, obchodujete s včerejšími nástroji na zítřejších trzích.

Vaše další kroky

Začněte jednoduše. Zapomeňte na neuronové sítě a zaměřte se na základy režimů:

    • Spočítejte klouzavý 20denní poměr realizované/implicitní volatility pro váš hlavní obchodní nástroj
    • Vyznačte přechody režimů, když poměr překročí svůj 90denní klouzavý průměr
    • Otestujte zpětně, jak vaše současná strategie funguje v každém režimu
    • Zaveďte úpravy velikosti pozic na základě režimu (zatím nezměny strategie)
    • Teprve až toto funguje, přidejte sofistikovanější funkce a modely

Pamatujte: detekce režimu je nástroj, nikoli strategie. Říká vám, které strategie kdy spustit. Alfa pochází z toho, že máte dobré strategie pro každý režim a disciplínu systematicky mezi nimi přepínat.

Trhy budou stále podivnější. Vaše obchodní systémy by měly být připraveny se přizpůsobit, jinak skončíte na hřbitově skvělých strategií, které fungovaly, dokud nepřestaly. Ve Two Sigma jsme měli další rčení: "Trhu je jedno, jaký máte P&L." Ale se správnou detekcí režimu alespoň uvidíte ten náklaďák dřív, než do vás narazí.

Často kladené otázky

1Co je detekce tržního režimu v obchodování?
ML klasifikace tržních stavů (trendující, boční, volatilní) pro dynamické přizpůsobení obchodních strategií namísto použití statických pravidel.
2Jak přesná je detekce režimu pomocí ML?
Můj HMM systém dosahuje 73% přesnosti klasifikace režimu, ale načasování provedení je důležitější než dokonalá detekce.
3Jaké funkce fungují nejlépe pro detekci režimu?
Klouzavé poměry volatility, korelační matice, mikroskopické metriky. Vyhněte se zpožděným indikátorům, jako jsou klouzavé průměry.
4Může detekce režimu zabránit ztrátám při krizích?
Snížila můj propad v březnu 2020 o 62 % přepnutím do defenzivního režimu 3 dny před zrychlením krachu.
5Jaká je minimální potřebná data pro detekci režimu?
18 měsíců pro počáteční trénink, ale model se výrazně zlepšuje s 3+ lety zahrnujícími více typů režimů.
FibAlgo
AI-Řízené Obchodování

Proměňte Znalosti v Zisk

Právě jste se naučili cenné obchodní postřehy. Nyní je uveďte do praxe s AI-řízenými signály, které analyzují 30+ trhů v reálném čase.

10,000+
Aktivní Obchodníci
24/7
Signály v Reálném Čase
30+
Pokryté Trhy
Bez platební karty. Zdarma přístup k živému tržnímu terminálu.

Pokračovat ve čtení

Zobrazit vše →
Strategie potvrzení cenové akce pomocí korelací mezi aktivyprice action

Strategie potvrzení cenové akce pomocí korelací mezi aktivy

📖 8 min
Trhové struktury praskají, nikdo je nevidí, dokud není pozděmarket structure

Trhové struktury praskají, nikdo je nevidí, dokud není pozdě

📖 12 min
Konvergence před chaosem: Výhoda mezitržní divergenceintermarket analysis

Konvergence před chaosem: Výhoda mezitržní divergence

📖 8 min