Machine Learning Redde Mijn Huid Toen Statische Regels Faalden
Dit vertelt niemand je over algoritmische handel: de beste strategie ter wereld wordt waardeloos wanneer het marktregime verandert. Ik leerde dit op de dure manier in februari 2018, toen mijn mean-reversiesysteem — 3 jaar lang winstgevend — 23% verloor in 8 dagen tijdens de VIX-explosie.
Bij Two Sigma hadden we een gezegde: "Markten hebben een geheugen, maar ze zijn ook schizofreen." Nadat ik vertrok om met eigen kapitaal te handelen, besteedde ik 18 maanden aan het bouwen van wat mijn regimedetectieframework zou worden. Niet omdat ik wilde — maar omdat het moest.
De traditionele aanpak? Verschillende strategieën hard-coden voor verschillende marktomstandigheden. Het probleem? Tegen de tijd dat je doorhebt dat het regime is verschoven, bloedt je P&L al. Echte regimedetectie gebeurt vóór de beweging, niet erna.

Het Hidden Markov Model Dat Alles Veranderde
Maart 2020. Terwijl iedereen debatteerde of COVID "gewoon een griepje" was, deed mijn regimedetectiemodel iets interessants — het schakelde op 21 februari van "trending" naar "crisis"-modus, een volle 10 dagen vóór de echte crash. Niet omdat het de pandemie voorspelde, maar omdat de marktmicrostructuur al aan het schreeuwen was.
Hier is de vereenvoudigde versie van wat mijn portefeuille redde:
def detect_regime(features):
# Features: volatiliteitsratio's, correlatiematrices, volumepatronen
regime_probabilities = hmm_model.predict_proba(features)
if regime_probabilities['crisis'] > 0.7:
return 'defensief'
elif regime_probabilities['trending'] > 0.6:
return 'momentum'
else:
return 'mean_reversion'
De magie zit niet in het model — het zit in de features. De meeste regimedetectie faalt omdat mensen de verkeerde inputs gebruiken. Voortschrijdende gemiddelden? Nuteloos. RSI? Nog erger. Je hebt features nodig die de marktmicrostructuur vastleggen:
- Gerealiseerde/geïmpliceerde volatiliteitsratio's over meerdere tijdframes
- Cross-asset correlatiematrices (wanneer obligaties en aandelen samen bewegen, verschuiven regimes)
- Orderflow-onevenwichtigheidspersistentie (hoe lang directionele druk aanhoudt)
- Intraday volatiliteitsclustering (angst verschijnt in 15-minuten bars vóór dagelijks)
Mijn huidige model gebruikt 47 features, maar deze vier zijn verantwoordelijk voor 71% van de nauwkeurigheid van de regimclassificatie.

Drie Regimestaten Die Echt Uitmaken
Vergeet de academische papers die praten over 7 verschillende marktregimes. Na het verwerken van 8 jaar tickdata over futures, forex en crypto, hebben slechts drie regimes daadwerkelijk invloed op je P&L:
1. Momentumregime (38% van de markttijd)
Gekenmerkt door aanhoudende directionele bewegingen met pullbacks onder 38,2% Fibonacci. Correlaties blijven positief, volatiliteit breidt zich geleidelijk uit. Dit is wanneer trendvolging geld oplevert. Mijn momentum-algo's draaien hier op volledige positiegrootte.
2. Mean Reversion-regime (49% van de markttijd)
De boterham voor de meeste algo-handelaren. Volatiliteit krimpt, ranges houden stand, correlaties keren terug naar het gemiddelde. Maar hier is de catch — dit regime heeft twee subtoestanden die ik "gezonde chop" en "samengedrukte veer" noem. De laatste gaat vooraf aan gewelddadige bewegingen.
3. Crisisregime (13% van de markttijd)
Alle correlaties gaan naar 1 of -1. Volatiliteit explodeert. Liquiditeit verdwijnt. Traditionele strategieën presteren niet alleen slechter — ze imploderen. Tijdens crisisregimes verklein ik posities met 75% en schakel ik alleen over op volatiliteitsarbitrage.
Het belangrijkste inzicht? Regimes clusteren. Crisis volgt compressie in 73% van de gevallen. Momentum volgt crisis in 67% van de gevallen. Deze volgorde geeft je een voorsprong.
Je Eigen Regimedetectiesysteem Bouwen
Laat me je 6 maanden trial-and-error besparen. Hier is het framework dat daadwerkelijk werkt in productie:
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() # Gaat beter om met uitschieters
def calculate_features(self, data):
# Dit is waar de magie gebeurt
features = {}
# Volatiliteitsregime
features['vol_ratio'] = data['realized_vol'] / data['implied_vol']
# Correlatiestructuur
corr_matrix = calculate_rolling_correlation(data, window=21)
features['correlation_eigenvalue'] = np.max(np.linalg.eigvals(corr_matrix))
# Microstructuur
features['flow_persistence'] = calculate_order_flow_autocorrelation(data)
return self.scaler.transform(features)
De kritieke onderdelen die de meeste tutorials overslaan:
- Gebruik RobustScaler, niet StandardScaler. Marktdata heeft dikke staarten die standaardnormalisatie breken.
- Train maandelijks opnieuw, niet dagelijks. Regimemodellen zijn gevoelig voor overfitting op ruis.
- Begin met maximaal 3 toestanden. Meer toestanden = meer manieren om jezelf voor de gek te houden met in-sample-prestaties.

De Overfittingval Die De Meeste ML-Handelaren Doodt
Hier ga ik de ML-evangelisten boos maken: de meeste machine learning in handel is uitgebreide curve-fitting. Ik heb modellen gebouwd met 93% in-sample-nauwkeurigheid die geld verloren in productie. Waarom? Ze leerden de ruis, niet het signaal.
Mijn eerste regimedetectiemodel had 200+ features en gebruikte een complexe ensemble van neurale netwerken. Het kon de crisis van 2008 perfect "voorspellen". In backtesting. In live handel? Het slingerde om de dag tussen regimes, wat meer transactiekosten genereerde dan alpha.
De oplossing is niet minder ML — het is slimmere ML:
- Feature engineering > modelcomplexiteit. Een eenvoudige HMM met geweldige features verslaat een neuraal netwerk met rommelige inputs.
- Walk-forward validatie is niet onderhandelbaar. Train op 2019-2020, valideer op 2021, test op 2022. Als het niet generaliseert over verschillende marktcycli, is het waardeloos.
- Regimestabiliteit is belangrijker dan nauwkeurigheid. Beter om regimes laat te detecteren maar erin te blijven dan te flipperen bij elke volatiliteitspiek.
Mijn huidige model offert 20% theoretische nauwkeurigheid op voor 80% meer stabiliteit. Die afweging drukt geld.
Live Handelsresultaten: Het Goede, Slechte en Lelijke
Laten we echte cijfers bespreken van mijn regime-adaptieve strategieën van de afgelopen 18 maanden:
Het Goede: Tijdens de Treasury-volatiliteitspiek in oktober 2024 schakelde de regimedetector 2 dagen eerder naar crisismodus. Resultaat? +8,7% terwijl buy-and-hold 12% verloor.
Het Slechte: Valse signalen tijdens de "chop-zone" in de zomer van 2024 veroorzaakten 7 onnodige regimeschakelingen. Elke schakeling kost ongeveer 0,3% aan transactiekosten en slippage. Dat is -2,1% aan dode gewichtskosten.
Het Lelijke: Het model miste volledig de crypto-flashcrash in januari 2025. Waarom? Crypto-microstructuur verschilt van traditionele markten, en mijn features waren gekalibreerd op futuresdata. Verloor 4,2% vóór handmatige override. Les geleerd — regimedetectie is niet one-size-fits-all over activaklassen heen.
Algehele prestatie: +31,4% versus +19,2% voor statische strategieën. Maar de echte waarde zit niet in de extra rendementen — het is beter slapen wetende dat mijn algo's zich aanpassen wanneer markten psychotisch worden.
Integratie met Echte Handelsystemen
Theorie is mooi. Implementatie is wat de rekeningen betaalt. Hier is hoe regimedetectie integreert met daadwerkelijke handelsinfrastructuur:
# Risicobeheerlaag
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)
Kritieke implementatiedetails:
- Regimeovergangen hebben buffers nodig. Schakel niet van strategie bij het eerste signaal — vereis 2-3 opeenvolgende perioden van bevestiging.
- Positiegrootte wordt aangepast vóór strategiewijzigingen. Verminder eerst risico, stel later vragen.
- Houd altijd een "regime-neutrale" hedge aan. De mijne is long volatiliteit tijdens onzekerheid.
Voor handelaren die FibAlgo's indicatoren gebruiken, vullen de multi-timeframe-signalen regimedetectie goed aan — ze helpen bevestigen wanneer kortere tijdframes beginnen aan te sluiten bij regimeshifts voordat de dagelijkse grafieken bijtrekken.

Veelvoorkomende Faalmodi en Hoe Ze Te Vermijden
Laat me je behoeden voor de fouten die mij zes cijfers hebben gekost:
Faalmodus 1: Feature Leakage
Het gebruik van geïmpliceerde volatiliteit om volatiliteitsregimes te detecteren lijkt slim, totdat je beseft dat IV al regimeverwachtingen inprijst. Je voorspelt het verleden. Blijf bij gerealiseerde metrieken en microstructuur.
Faalmodus 2: Regimeovergangswhipsaw
Markten schakelen niet netjes van regime. Er is altijd een rommelige overgangsperiode. Mijn oplossing? Een "overgangstoestand" die posities minimaal houdt totdat het nieuwe regime stabiliseert.
Faalmodus 3: Activa-specifieke Kalibratie
Een regimedetector getraind op S&P-futures zal spectaculair falen op forex. Elke activaklasse heeft een unieke microstructuur. Bouw aparte modellen of gebruik transfer learning voorzichtig.
Faalmodus 4: Macrogebeurtenissen Negeren
Geen ML-model voorspelde Brexit of de Swiss Franc-depeg. Regimedetectie helpt je sneller te reageren, niet zwarte zwanen te voorspellen. Houd altijd stroomonderbrekers voor "onmogelijke" gebeurtenissen.
De Toekomst van Adaptieve Handel
Na 8 jaar bouwen en breken van regimedetectiesystemen, hier is mijn tegendraadse kijk: de toekomst is niet complexere modellen — het zijn eenvoudigere modellen die sneller aanpassen.
De markten worden efficiënter op het hoogfrequente niveau, maar meer regime-afhankelijk op het dagelijkse/weekelijkse niveau. Centrale bankinterventie, algoritmische kuddegedrag, passieve flow-dominantie — deze creëren duidelijke regimes die eenvoudige adaptieve systemen kunnen exploiteren.
Mijn volgende project? Regimedetectie combineren met liquiditeitsgewogen analyse om regimeovergangen te voorspellen voordat ze volledig manifesteren. Vroege resultaten tonen 4-6 uur voortijd op grote verschuivingen.
De voorsprong in 2026 zit niet in het hebben van het beste model — het zit in het hebben van een model dat toegeeft wanneer het fout is en zich aanpast. Statische strategieën zijn dood. Als je geen adaptief gedrag kunt coderen, handel je met de tools van gisteren in de markten van morgen.
Uw volgende stappen
Begin eenvoudig. Vergeet neurale netwerken en focus op de basis van marktregimes:
- Bereken de rollende 20-daagse gerealiseerde/geïmpliceerde volatiliteitsratio's voor uw belangrijkste handelsinstrument
- Breng regime-overgangen in kaart wanneer de ratio het 90-daags voortschrijdend gemiddelde kruist
- Backtest hoe uw huidige strategie presteert in elk regime
- Implementeer aanpassingen in positiegrootte op basis van het regime (nog geen strategiewijzigingen)
- Pas daarna, wanneer dit werkt, geavanceerdere functies en modellen toe
Onthoud: regimedetectie is een hulpmiddel, geen strategie. Het vertelt u welke strategieën u wanneer moet inzetten. De alpha komt voort uit het hebben van goede strategieën voor elk regime en de discipline om systematisch tussen deze strategieën te schakelen.
Markten zullen steeds vreemder worden. Uw handelssystemen moeten zich kunnen aanpassen, anders belandt u op het kerkhof van briljante strategieën die werkten totdat ze dat niet meer deden. Bij Two Sigma hadden we nog een gezegde: "De markt geeft niets om uw P&L." Maar met een goede regimedetectie ziet u tenminste de vrachtwagen aankomen voordat hij u raakt.


