Statik Kurallar Başarısız Olduğunda Makine Öğrenimi İşe Yaradı
Algoritmik ticaret hakkında kimsenin size söylemediği şey şu: Piyasa rejimi değiştiğinde dünyanın en iyi stratejisi bile değersizleşir. Bunu Şubat 2018'de, 3 yıl boyunca kârlı olan ortalama dönüş sistemimin VIX patlaması sırasında 8 günde %23 erimesiyle pahalı bir şekilde öğrendim.
Two Sigma'da bir sözümüz vardı: "Piyasaların hafızası vardır ama aynı zamanda şizofrendirler." Kendi sermayemle ticarete atıldıktan sonra, rejim tespit çerçevemi oluşturmak için 18 ay harcadım. İstediğim için değil, mecbur olduğum için.
Geleneksel yaklaşım mı? Farklı piyasa koşulları için farklı stratejileri sabit kodlamak. Sorun ne? Rejimin değiştiğini fark ettiğinizde, kâr-zarar tablonuz çoktan kanamaya başlamış oluyor. Gerçek rejim tespiti, hareketten önce gerçekleşir, sonra değil.

Her Şeyi Değiştiren Gizli Markov Modeli
Mart 2020. Herkes COVID'in "sadece bir grip" olup olmadığını tartışırken, rejim tespit modelim ilginç bir şey yaptı — 21 Şubat'ta, gerçek çöküşten tam 10 gün önce, "trend" modundan "kriz" moduna geçti. Pandemiyi tahmin ettiği için değil, piyasa mikro yapısı çoktan alarm verdiği için.
Portföyümü kurtaran şeyin basitleştirilmiş hali şöyle:
def detect_regime(features):
# Özellikler: volatilite oranları, korelasyon matrisleri, hacim desenleri
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'
Sihir modelde değil, özelliklerde. Çoğu rejim tespiti başarısız olur çünkü insanlar yanlış girdiler besler. Hareketli ortalamalar mı? İşe yaramaz. RSI mı? Daha da kötüsü. Piyasa mikro yapısını yakalayan özelliklere ihtiyacınız var:
- Birden çok zaman diliminde gerçekleşen/zımni volatilite oranları
- Varlıklar arası korelasyon matrisleri (tahviller ve hisseler birlikte hareket ettiğinde rejimler değişiyor)
- Emir akışı dengesizliğinin kalıcılığı (yönlü baskının ne kadar sürdüğü)
- Gün içi volatilite kümelenmesi (korku, günlük grafiklerden önce 15 dakikalık barlarda kendini gösterir)
Mevcut modelim 47 özellik kullanıyor, ancak bu dördü rejim sınıflandırma doğruluğunun %71'ini oluşturuyor.

Gerçekten Önemli Olan Üç Rejim Durumu
7 farklı piyasa rejiminden bahseden akademik makaleleri unutun. Vadeli işlemler, forex ve kriptoda 8 yıllık tick verisini işledikten sonra, kâr-zararınızı gerçekten etkileyen sadece üç rejim var:
1. Momentum Rejimi (Piyasa zamanının %38'i)
%38,2 Fibonacci'nin altında düzeltmelerle birlikte kalıcı yönlü hareketler ile karakterize edilir. Korelasyonlar pozitif kalır, volatilite kademeli olarak genişler. Trend takibinin para bastığı dönem budur. Momentum algoritmalarım burada tam pozisyon büyüklüğünde çalışır.
2. Ortalama Dönüş Rejimi (Piyasa zamanının %49'u)
Çoğu algo yatırımcısının ekmek kapısı. Volatilite daralır, aralıklar korunur, korelasyonlar ortalamaya döner. Ancak işin püf noktası şu: Bu rejimin "sağlıklı kıpırdanma" ve "sıkıştırılmış yay" adını verdiğim iki alt durumu var. İkincisi şiddetli hareketlerin habercisidir.
3. Kriz Rejimi (Piyasa zamanının %13'ü)
Tüm korelasyonlar 1 veya -1'e gider. Volatilite patlar. Likidite kaybolur. Geleneksel stratejiler sadece düşük performans göstermez, çöker. Kriz rejimleri sırasında pozisyon büyüklüklerini %75 oranında azaltır ve sadece volatilite arbitrajına geçerim.
Kilit içgörü? Rejimler kümelenir. Kriz, sıkışmayı %73 oranında takip eder. Momentum, krizi %67 oranında takip eder. Bu sıralama size bir avantaj sağlar.
Kendi Rejim Tespit Sisteminizi Oluşturma
Size 6 aylık deneme yanılma sürecinden kurtarayım. İşte üretimde gerçekten işe yarayan çerçeve:
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() # Aykırı değerleri daha iyi işler
def calculate_features(self, data):
# Sihir burada gerçekleşir
features = {}
# Volatilite rejimi
features['vol_ratio'] = data['realized_vol'] / data['implied_vol']
# Korelasyon yapısı
corr_matrix = calculate_rolling_correlation(data, window=21)
features['correlation_eigenvalue'] = np.max(np.linalg.eigvals(corr_matrix))
# Mikro yapı
features['flow_persistence'] = calculate_order_flow_autocorrelation(data)
return self.scaler.transform(features)
Çoğu eğitimin atladığı kritik kısımlar:
- StandardScaler değil, RobustScaler kullanın. Piyasa verileri, standart normalizasyonu bozan kalın kuyruklara sahiptir.
- Günlük değil, aylık yeniden eğitin. Rejim modelleri gürültüye aşırı uyum sağlamaya duyarlıdır.
- Maksimum 3 durumla başlayın. Daha fazla durum, örnek içi performansla kendinizi kandırmanın daha fazla yoludur.

Çoğu ML Yatırımcısını Öldüren Aşırı Uyum Tuzağı
İşte ML savunucularını kızdıracağım nokta: Ticaretteki makine öğreniminin çoğu ayrıntılı eğri uydurmadır. Örnek içi %93 doğrulukla modeller oluşturdum ve üretimde para kaybettiler. Neden? Sinyali değil, gürültüyü öğrendiler.
İlk rejim tespit modelim 200'den fazla özelliğe sahipti ve karmaşık bir sinir ağı topluluğu kullanıyordu. 2008 krizini "mükemmel" tahmin edebiliyordu. Geriye dönük testlerde. Canlı ticarette mi? Her gün rejimler arasında gidip geliyor, alfa'dan çok işlem maliyeti üretiyordu.
Çözüm daha az ML değil, daha akıllı ML:
- Özellik mühendisliği > model karmaşıklığı. Harika özelliklere sahip basit bir HMM, çöp girdileri olan bir sinir ağını yener.
- İleriye dönük doğrulama tartışılmaz. 2019-2020'de eğitin, 2021'de doğrulayın, 2022'de test edin. Farklı piyasa döngülerinde genelleme yapmıyorsa, değersizdir.
- Rejim istikrarı doğruluktan daha önemlidir. Rejimleri geç tespit edip içinde kalmak, her volatilite sıçramasında gidip gelmekten daha iyidir.
Mevcut modelim teorik doğruluktan %20 fedakarlık ediyor ancak %80 daha fazla istikrar sağlıyor. Bu takas para bastırıyor.
Canlı Ticaret Sonuçları: İyi, Kötü ve Çirkin
Son 18 ayda rejime uyarlanabilir stratejilerimden gerçek rakamlardan bahsedelim:
İyi: Ekim 2024 Hazine volatilite sıçraması sırasında, rejim dedektörü 2 gün erken kriz moduna geçti. Sonuç? Al-sat tut %12 kaybederken +%8,7.
Kötü: 2024 yazı "kıpırdanma bölgesi" sırasındaki yanlış sinyaller 7 gereksiz rejim değişikliğine neden oldu. Her değişiklik işlem maliyetleri ve kayma nedeniyle kabaca %0,3'e mal oluyor. Bu, -%2,1'lik bir ölü ağırlık kaybı.
Çirkin: Model, Ocak 2025 kripto flash çöküşünü tamamen kaçırdı. Neden? Kripto mikro yapısı geleneksel piyasalardan farklıdır ve özelliklerim vadeli işlem verilerine göre kalibre edilmişti. Manuel müdahaleden önce %4,2 kayıp. Alınan ders — rejim tespiti varlık sınıfları arasında herkese uyan tek bir çözüm değildir.
Genel performans: Statik stratejilere göre +%31,4'e karşı +%19,2. Ancak gerçek değer ekstra getiriler değil, piyasalar çıldırdığında algoritmalarımın uyum sağladığını bilerek daha rahat uyumaktır.
Gerçek Ticaret Sistemleriyle Entegrasyon
Teori güzeldir. Uygulama faturaları öder. İşte rejim tespitinin gerçek ticaret altyapısıyla nasıl entegre olduğu:
# Risk yönetimi katmanı
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)
Kritik uygulama detayları:
- Rejim geçişlerinin tamponlara ihtiyacı vardır. İlk sinyalde strateji değiştirmeyin — 2-3 ardışık dönem onayı gerektirin.
- Pozisyon büyüklüğü strateji değişikliklerinden önce ayarlanır. Önce riski azaltın, sonra soru sorun.
- Her zaman "rejim-nötr" bir korunma sağlayın. Benimki belirsizlik sırasında uzun volatilitedir.
FibAlgo'nun göstergelerini kullanan yatırımcılar için, çok zaman dilimli sinyaller aslında rejim tespitini iyi tamamlar — günlük grafikler yetişmeden önce daha kısa zaman dilimlerinin rejim değişimleriyle ne zaman hizalanmaya başladığını doğrulamaya yardımcı olurlar.

Yaygın Başarısızlık Modları ve Bunlardan Nasıl Kaçınılır
Sizi altı haneli kayıplara mal olan hatalardan kurtarayım:
Başarısızlık Modu 1: Özellik Sızıntısı
Volatilite rejimlerini tespit etmek için zımni volatilite kullanmak akıllıca görünür, ta ki IV'nin zaten rejim beklentilerini fiyatladığını fark edene kadar. Geçmişi tahmin ediyorsunuz. Gerçekleşen metrikler ve mikro yapıya bağlı kalın.
Başarısızlık Modu 2: Rejim Geçişi Kırbacı
Piyasalar rejimleri temiz bir şekilde değiştirmez. Her zaman karmaşık bir geçiş dönemi vardır. Benim çözümüm? Yeni rejim istikrar kazanana kadar pozisyonları minimumda tutan bir "geçiş durumu".
Başarısızlık Modu 3: Varlığa Özel Kalibrasyon
S&P vadeli işlemleri üzerinde eğitilmiş bir rejim dedektörü, forex'te muhteşem bir şekilde başarısız olur. Her varlık sınıfının benzersiz bir mikro yapısı vardır. Ayrı modeller oluşturun veya transfer öğrenimini dikkatli kullanın.
Başarısızlık Modu 4: Makro Olayları Görmezden Gelmek
Hiçbir ML modeli Brexit'i veya İsviçre Frangı'nın kur çözülmesini tahmin edemedi. Rejim tespiti daha hızlı tepki vermenize yardımcı olur, kara kuğuları tahmin etmenize değil. "İmkansız" olaylar için her zaman devre kesiciler bulundurun.
Uyarlanabilir Ticaretin Geleceği
8 yıl boyunca rejim tespit sistemleri kurup bozduktan sonra, aykırı görüşüm şu: Gelecek daha karmaşık modeller değil, daha hızlı uyum sağlayan daha basit modellerdir.
Piyasalar yüksek frekans seviyesinde daha verimli hale geliyor, ancak günlük/haftalık seviyede daha rejim bağımlı hale geliyor. Merkez bankası müdahalesi, algoritmik sürü davranışı, pasif akış hakimiyeti — bunlar basit uyarlanabilir sistemlerin kullanabileceği belirgin rejimler yaratır.
Bir sonraki projem? Rejim tespitini likidite ağırlıklı analizle birleştirerek rejim geçişlerini tam olarak ortaya çıkmadan tahmin etmek. İlk sonuçlar büyük değişimlerde 4-6 saatlik öncü süre gösteriyor.
2026'daki avantaj en iyi modele sahip olmak değil, yanlış olduğunu kabul eden ve uyum sağlayan bir modele sahip olmaktır. Statik stratejiler öldü. Uyarlanabilir davranış kodlayamıyorsanız, yarının piyasalarında dünün araçlarıyla ticaret yapıyorsunuz demektir.
Sonraki Adımlarınız
Basit başlayın. Sinir ağlarını unutun ve rejim temellerine odaklanın:
- Ana işlem aracınız için 20 günlük gerçekleşen/zımni volatilite oranlarını hesaplayın
- Oran, 90 günlük hareketli ortalamasını geçtiğinde rejim geçişlerini grafikleyin
- Mevcut stratejinizin her rejimde nasıl performans gösterdiğini geriye dönük test edin
- Rejime dayalı pozisyon büyüklüğü ayarlamaları uygulayın (henüz strateji değişikliği yapmayın)
- Ancak bu işe yaradıktan sonra daha karmaşık özellikler ve modeller ekleyin
Unutmayın: rejim tespiti bir araçtır, strateji değildir. Size hangi stratejileri ne zaman çalıştıracağınızı söyler. Alfa, her rejim için iyi stratejilere sahip olmaktan ve bunlar arasında sistematik olarak geçiş yapma disiplininden gelir.
Piyasalar giderek daha tuhaf hale gelecek. Ticaret sistemleriniz uyum sağlamaya hazır olmazsa, işe yarayana kadar çalışan parlak stratejilerin mezarlığına katılırsınız. Two Sigma'da başka bir sözümüz vardı: "Piyasa sizin kâr/zararınızı umursamaz." Ancak doğru rejim tespiti ile en azından kamyon size çarpmadan önce onu görebilirsiniz.


