A gépi tanulás mentette meg a seggem, amikor a statikus szabályok csődöt mondtak
Íme, amit senki sem mond el az algoritmikus kereskedésről: a világ legjobb stratégiája is értéktelenné válik, amikor a piaci rezsim megváltozik. Ezt drága pénzen tanultam meg 2018 februárjában, amikor a mean reversion rendszerem – amely 3 éven át folyamatosan nyereséges volt – 23%-ot veszített 8 nap alatt a VIX robbanása idején.
A Two Sigmánál volt egy mondásunk: "A piacoknak van memóriájuk, de skizofrének is." Miután otthagytam a céget, hogy saját tőkémmel kereskedjek, 18 hónapot töltöttem azzal, hogy felépítsem azt, ami később a rezsimdetektáló keretrendszeremmé vált. Nem azért, mert akartam – hanem mert muszáj volt.
A hagyományos megközelítés? Különböző stratégiák hardcode-olása a piaci körülmények függvényében. A probléma? Mire rájössz, hogy a rezsim megváltozott, a P&L-ed már vérzik. A valódi rezsimdetektálás a mozgás előtt történik, nem utána.

A rejtett Markov-modell, ami mindent megváltoztatott
2020. március. Miközben mindenki arról vitatkozott, hogy a COVID "csak egy influenza-e", a rezsimdetektáló modellem valami érdekeset csinált – február 21-én átváltott "trendelő" módból "válság" módba, teljes 10 nappal a valódi összeomlás előtt. Nem azért, mert megjósolta a járványt, hanem mert a piaci mikrostruktúra már ordított.
Íme a leegyszerűsített verziója annak, ami megmentette a portfóliómat:
def detect_regime(features):
# Jellemzők: volatilitási arányok, korrelációs mátrixok, volumenmintázatok
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'
A varázslat nem a modellben van – hanem a jellemzőkben. A legtöbb rezsimdetektálás azért bukik el, mert rossz bemenetekkel etetik. Mozgóátlagok? Haszontalanok. RSI? Még rosszabb. Olyan jellemzőkre van szükséged, amelyek a piaci mikrostruktúrát ragadják meg:
- Realizált/implikált volatilitási arányok több időtávon
- Eszközök közötti korrelációs mátrixok (amikor a kötvények és a részvények együtt mozognak, a rezsimek változnak)
- Rendelési áramlás egyensúlyhiányának perzisztenciája (mennyi ideig tart a irányított nyomás)
- Intraday volatilitásklaszterezés (a félelem a 15 perces gyertyákon jelenik meg, mielőtt a napi grafikonon látszana)
A jelenlegi modellem 47 jellemzőt használ, de ez a négy adja a rezsimbesorolás pontosságának 71%-át.

Három rezsimállapot, ami tényleg számít
Felejtsd el az akadémiai cikkeket, amelyek 7 különböző piaci rezsimből beszélnek. Miután 8 év tick adatot feldolgoztam határidős, forex és kripto piacokon, csak három rezsim van, ami tényleg hatással van a P&L-edre:
1. Momentum rezsim (a piaci idő 38%-a)
Jellemzője: tartós irányított mozgások, 38,2%-os Fibonacci alatti visszahúzásokkal. A korrelációk pozitívak maradnak, a volatilitás fokozatosan nő. Ilyenkor a trendkövetés pénzt nyomtat. A momentum algoritmusaim teljes pozíciómérettel dolgoznak itt.
2. Mean reversion rezsim (a piaci idő 49%-a)
A legtöbb algo kereskedő kenyere. A volatilitás összehúzódik, a tartományok tartanak, a korrelációk visszatérnek az átlaghoz. De itt a csavar – ennek a rezsimnek két alállapota van, amit "egészséges oldalazásnak" és "összenyomott rugónak" hívok. Ez utóbbi erőszakos mozgásokat előz meg.
3. Válság rezsim (a piaci idő 13%-a)
Minden korreláció 1-re vagy -1-re megy. A volatilitás felrobban. A likviditás eltűnik. A hagyományos stratégiák nem csak alulteljesítenek – összeomlanak. Válságrezsim alatt 75%-kal csökkentem a pozícióméreteket, és csak volatilitás-arbitrázsra váltok.
A kulcsfontosságú felismerés? A rezsimek klasztereződnek. A válság az esetek 73%-ában összenyomódást követ. A momentum az esetek 67%-ában válságot követ. Ez a sorrendiség előnyt ad.
Saját rezsimdetektáló rendszer építése
Hadd spóroljak meg neked 6 hónapnyi próbálkozást. Íme a keretrendszer, ami tényleg működik élesben:
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() # Jobban kezeli a kiugró értékeket
def calculate_features(self, data):
# Itt történik a varázslat
features = {}
# Volatilitási rezsim
features['vol_ratio'] = data['realized_vol'] / data['implied_vol']
# Korrelációs struktúra
corr_matrix = calculate_rolling_correlation(data, window=21)
features['correlation_eigenvalue'] = np.max(np.linalg.eigvals(corr_matrix))
# Mikrostruktúra
features['flow_persistence'] = calculate_order_flow_autocorrelation(data)
return self.scaler.transform(features)
A kritikus részek, amiket a legtöbb oktatóanyag kihagy:
- Használj RobustScalert, ne StandardScalert. A piaci adatok vastag szélű eloszlásúak, ami tönkreteszi a standard normalizálást.
- Tréningezz havonta, ne naponta. A rezsimmodellek érzékenyek a zajra való túltanulásra.
- Maximum 3 állapottal kezdj. Több állapot = több lehetőség, hogy becsapd magad a mintán belüli teljesítménnyel.

A túltanulási csapda, ami a legtöbb ML kereskedőt elintézi
Itt fogok feldühíteni néhány ML evangelistát: a legtöbb gépi tanulás a kereskedésben kifinomult görbeillesztés. Építettem modelleket 93%-os mintán belüli pontossággal, amelyek élesben veszteségesek voltak. Miért? Megtanulták a zajt, nem a jelet.
Az első rezsimdetektáló modellem 200+ jellemzőt használt, és neurális hálózatok komplex ensemble-át alkalmazta. Tökéletesen "meg tudta jósolni" a 2008-as válságot. Backtestben. Éles kereskedésben? Minden második nap ugrált a rezsimek között, több tranzakciós költséget generálva, mint alfát.
A megoldás nem a kevesebb ML – hanem az okosabb ML:
- A jellemzőtervezés fontosabb, mint a modell komplexitása. Egy egyszerű HMM jó jellemzőkkel ver egy neurális hálózatot szemét bemenetekkel.
- A walk-forward validáció nem alku tárgya. Tréningezz 2019-2020-on, validálj 2021-en, tesztelj 2022-n. Ha nem általánosítható különböző piaci ciklusokra, értéktelen.
- A rezsim stabilitása fontosabb, mint a pontosság. Jobb későn észlelni a rezsimeket, de bennük maradni, mint minden volatilitási csúcsra ugrálni.
A jelenlegi modellem 20% elméleti pontosságot áldoz fel 80%-kal nagyobb stabilitásért. Ez a kompromisszum pénzt nyomtat.
Éles kereskedési eredmények: a jó, a rossz és a csúf
Beszéljünk valós számokról a rezsim-adaptív stratégiáimból az elmúlt 18 hónapból:
A jó: A 2024. októberi Treasury volatilitási csúcs idején a rezsimdetektor 2 nappal korábban váltott válság módba. Eredmény? +8,7%, miközben a buy-and-hold 12%-ot veszített.
A rossz: Hamis jelzések a 2024-es nyári "oldalazó zónában" 7 szükségtelen rezsimváltást okoztak. Minden váltás kb. 0,3% tranzakciós költséget és csúszást jelent. Ez -2,1% holtteher-veszteség.
A csúf: A modell teljesen elmulasztotta a 2025. januári kripto flash crash-t. Miért? A kripto mikrostruktúra különbözik a hagyományos piacokétól, és a jellemzőimet határidős adatokra kalibráltam. 4,2%-ot veszítettem, mielőtt manuálisan felülbíráltam. Tanulság: a rezsimdetektálás nem egy méretre készült az eszközosztályok között.
Összteljesítmény: +31,4% vs. +19,2% a statikus stratégiákhoz képest. De a valódi érték nem a többlethozam – hanem az, hogy jobban alszom, tudva, hogy az algoritmusaim alkalmazkodnak, amikor a piacok megőrülnek.
Integráció valós kereskedési rendszerekkel
Az elmélet szép. A megvalósítás fizeti a számlákat. Íme, hogyan integrálódik a rezsimdetektálás a tényleges kereskedési infrastruktúrába:
# Kockázatkezelési réteg
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)
Kritikus implementációs részletek:
- A rezsimátmenetekhez pufferek kellenek. Ne válts stratégiát az első jelre – várj 2-3 egymást követő megerősítő periódust.
- A pozícióméret a stratégiaváltás előtt igazodik. Először csökkentsd a kockázatot, aztán kérdezz.
- Mindig tarts fenn egy "rezsim-semleges" fedezeti ügyletet. Az enyém hosszú volatilitás bizonytalanság idején.
A FibAlgo indikátorait használó kereskedők számára a többidőtávú jelzések jól kiegészítik a rezsimdetektálást – segítenek megerősíteni, amikor a rövidebb időtávok igazodni kezdenek a rezsimváltásokhoz, mielőtt a napi grafikonok felzárkóznának.

Gyakori hibamódok és hogyan kerüld el őket
Hadd spóroljak meg neked a hibáktól, amelyek hatszámjegyű összegekbe kerültek nekem:
1. hibamód: Jellemzőszivárgás
Az implikált volatilitás használata a volatilitási rezsimek detektálására okosnak tűnik, amíg rá nem jössz, hogy az IV már beárazza a rezsimvárakozásokat. A múltat jósolod. Maradj a realizált mutatóknál és a mikrostruktúránál.
2. hibamód: Rezsimátmeneti whipsaw
A piacok nem váltanak rezsimeket tisztán. Mindig van egy rendetlen átmeneti időszak. A megoldásom? Egy "átmeneti állapot", amely minimális pozíciókat tart, amíg az új rezsim stabilizálódik.
3. hibamód: Eszközspecifikus kalibráció
Egy S&P határidősre tréningezett rezsimdetektor csúfosan megbukik a forexen. Minden eszközosztálynak egyedi mikrostruktúrája van. Építs külön modelleket, vagy használj transfer learninget óvatosan.
4. hibamód: Makro események figyelmen kívül hagyása
Egyetlen ML modell sem jósolta meg a Brexitet vagy a svájci frank leértékelődését. A rezsimdetektálás segít gyorsabban reagálni, nem megjósolni a fekete hattyúkat. Mindig tarts fenn megszakítókat a "lehetetlen" eseményekre.
Az adaptív kereskedés jövője
8 év rezsimdetektáló rendszerek építése és tönkretétele után itt az ellentmondásos véleményem: a jövő nem a komplexebb modellekről szól – hanem az egyszerűbb modellekről, amelyek gyorsabban alkalmazkodnak.
A piacok egyre hatékonyabbak a nagyfrekvenciás szinten, de egyre rezsimfüggőbbek a napi/heti szinten. Központi banki beavatkozás, algoritmikus csordásodás, passzív áramlás dominanciája – ezek olyan különálló rezsimeket hoznak létre, amelyeket egyszerű adaptív rendszerek kihasználhatnak.
A következő projektem? A rezsimdetektálás kombinálása likviditás-súlyozott elemzéssel, hogy megjósoljam a rezsimátmeneteket, mielőtt azok teljesen manifesztálódnának. A korai eredmények 4-6 órás előnyt mutatnak a nagyobb váltásokban.
Az előny 2026-ban nem a legjobb modell birtoklásában rejlik – hanem abban, hogy van egy modell, amely beismeri, ha téved, és alkalmazkodik. A statikus stratégiák halottak. Ha nem tudsz adaptív viselkedést kódolni, a tegnap eszközeivel kereskedel a holnap piacain.
Következő lépéseid
Kezdd egyszerűen. Felejtsd el a neurális hálózatokat, és koncentrálj a rezsim alapjaira:
- Számítsd ki a fő kereskedési instrumentumod 20 napos gördülő realizált/implikált volatilitás arányát
- Ábrázold a rezsimátmeneteket, amikor az arány átlépi a 90 napos mozgóátlagát
- Teszteld vissza, hogyan teljesít a jelenlegi stratégiád az egyes rezsimekben
- Vezess be pozícióméret-módosításokat a rezsim alapján (még ne változtass stratégiát)
- Csak miután ez működik, adj hozzá kifinomultabb jellemzőket és modelleket
Ne feledd: a rezsimdetektálás eszköz, nem stratégia. Azt mondja meg, mely stratégiákat mikor érdemes futtatni. Az alfa onnan jön, hogy minden rezsimhez vannak jó stratégiáid, és fegyelmezetten, rendszerszerűen váltasz közöttük.
A piacok egyre furcsábbak lesznek. A kereskedési rendszereid jobb, ha készen állnak az alkalmazkodásra, különben csatlakozol a zseniális stratégiák temetőjéhez, amelyek addig működtek, amíg már nem. A Two Sigmában volt egy másik mondásunk: "A piacot nem érdekli a P&L-ed." De a megfelelő rezsimdetektálással legalább meglátod a kamiont, mielőtt elütne.


