Programlama

Kısa Vadeli Trendleri Okuyan Esnek Regresyon: ALLR Rehberi

Bir hisse senedine bakıp “tamam, bu gidiyor” dediğiniz anlar vardır ya… işte trend takibi biraz böyle bir şey. Ama mesele sadece yönü görmek değil; o yönün ne kadar canlı, ne kadar taze ve ne kadar inatçı olduğunu da kavramak gerekiyor (şaşırtıcı ama gerçek). Sabit 20 günlük ortalama bazen iş görüyor, evet (kendi tecrübem). Fakat büyüme hisselerinde hava bir anda değişebiliyor — bugün coşkulu olan momentum yarın sert biçimde yere çakılabiliyor.

Bu konuyu ilk kez 2022 sonbaharında, İstanbul’da masamda otururken kurcaladım. Elimde birkaç küçük ölçekli büyüme hissesi vardı ve klasik hareketli ortalamalar resmen “geç kaldım” diye bağırıyordu. O gün şunu fark ettim: Piyasa düz bir çizgi değil, daha çok nabız gibi atıyor — ritmi var, nefesi var, bazen tökezliyor. Adaptive Local Linear Regression tam burada sahneye giriyor; fiyatın son kısmına daha çok kulak verip eski veriyi de neredeyse tamamen çöpe atmadan, ikisini dengede tutarak çalışıyor.

Bir dakika — bununla bitmedi.

ALLR Neyi Çözüyor?

Lafı gevelemeden söyleyeyim. Klasik trend göstergeleri çoğu zaman seviyeyi ölçüyor, ama bizim asıl istediğimiz şey eğim. Yani fiyat yukarı mı kıvrılıyor, aşağı mı dönüyor, yoksa nefes alıp tekrar mı hızlanıyor? Basit bir ortalama size “nerede olduğunuzu” söyler; lokal doğrusal regresyon ise “ne kadar hızlı gidiyorsunuz” sorusuna yaklaşır. Fark büyük.

Bakın, adaptive Local Linear Regression’ın güzelliği tam burada. Son günlerdeki fiyatlara daha yüksek ağırlık veriyor, uzaktaki günleri ise yavaş yavaş arka plana itiyor — sanki “evet, o gün oldu ama artık o kadar önemli değil” der gibi. Bu ağırlığın düşüş hızı, yani bandwidth dediğimiz kısım, aslında modelin pek çok karakterini belirliyor. Dar bant genişliği kısa hafıza demek. Geniş bant genişliği ise daha sabırlı, daha uzun soluklu bir bakış açısı sunuyor (en azından benim deneyimim böyle)

2023’te kendi küçük Python denememde bunu borsa dışı bir veri setinde test etmiştim; açık konuşayım, sabit pencereyle çalışan sinyal bazı dönemlerde bayağı geç kalıyordu. ALLR’ye geçtiğimde dönüş noktalarını daha erken yakaladı — ama her güzel şey gibi onun da bedeli var — valla güzel iş çıkarmışlar —. Gürültüye fazla hassaslaşırsanız gereksiz al-sat üretmeye başlıyor, ve bu sinir bozucu bir döngüye giriyor.

Trend takibinde asıl oyun “doğru tahmin etmek” değil; değişimi biraz önce görmek ve yanlış alarm sayısını makul tutmak.

Matematik Tarafı Sandığınız Kadar Korkutucu Değil

İşin özü şu. Her zaman noktasında yakın geçmişe doğru bir pencere açıyorsunuz ve o pencerenin içine düz bir çizgi sığdırıyorsunuz. Ama düz çizgiyi öyle herkese eşit davranarak değil — mesela dünkü olaya beş puan verirken on gün öncekine iki puan veriyorsunuz gibi düşünün. Ağırlıklar uzaklığa göre azalıyor, mantık bu kadar aslında.

Kernel seçimi burada önemli ama mistik bir şey değil. Gaussian kernel en sık kullanılanlardan biri çünkü yumuşak davranıyor; ani kırılmalar yerine akıcı geçişler sağlıyor. Biraz araba süspansiyonu gibi — çukurdan geçerken sizi zıplatmayan sistem genelde tercih edilir, değil mi? (inanın bana)

Aşağıdaki basit formül mantığı gayet güzel özetliyor: Bu konuyla ilgili PDF Dünyasında Bir Nefes: Ücretsiz ve Limitsiz Araçlar yazımıza da göz atmanızı tavsiye ederim.

w(t) = exp(-0.5 * (distance / bandwidth)^2)

Yani, Bant genişliği küçüldükçe model bugüne yapışıyor. Büyüdükçe geçmişi daha uzun süre hatırlıyor, daha (belki yanılıyorum ama) sabırlı hale geliyor. İşte adaptif taraf da buradan geliyor zaten: piyasa sakinleşince pencereyi biraz açabiliyorsunuz, volatilite patlayınca daraltabiliyorsunuz. Dinamik bir şey bu — statik değil. Daha fazla bilgi için Butterfly CSS: 2026’da Dikkat Çeken Hafif Bir Seçenek yazımıza bakabilirsiniz.

💡 Bilgi: ALLR’nin mantığı hareketli ortalamadan farklı olarak yalnızca fiyatları toplamak değil; yerel eğimi tahmin etmek için ağırlıklı en küçük kareler kullanmak.

Python Uygulamasında Ne Yapıyoruz?

Bu yazıyı hazırlarken kod tarafını bir kez daha gözden geçirdim. Şunu fark ettim: temel iskelet aslında sade kalmalı. Önce veri çekiliyor, sonra kaydırmalı pencereler kuruluyor, ardından her pencerede ağırlıklı regresyon hesaplanıyor. Hepsi bu kadar gibi görünüyor ama detaylarda minik sürprizler çıkıyor — her zaman öyle olmuyor maalesef.

Evet, doğru duydunuz.

IWM gibi küçük ölçekli büyüme hisselerini temsil eden sepetlere bakmak pratik. Neden? Çünkü tek tek hisse kovalamak yerine genel davranışı görüyorsunuz, daha temiz bir sinyal geliyor. Küçük startup tarzı portföylerde bu yaklaşım çok çevik çalışabiliyor; kurumsal tarafta ise işlem maliyetleri ve likidite filtresi devreye girince iş biraz ağırlaşıyor, orası başka bir dünya.

Bileşen Ne işe yarar? Şuna dikkat: nokta
Pencere boyu Sinyalin kaç günü gördüğünü belirler Kısa olursa gürültü artar
Bant genişliği Ağırlıkların ne kadar hızlı düştüğünü ayarlar Aşırı dar seçilirse overfit riski yükselir
Eğim katsayısı Trend yönünü çıkarır Tek başına karar vermek için zayıf olabilir
Eşikleme mantığı Long/short kararı üretir Piyasa rejimine göre ayarlanmalı

Sinyali Nasıl Kuruyorum?

Pratik yaklaşım şu: eğim pozitifse long eğilimdesiniz, negatifse short veya nakitte bekleme moduna geçiyorsunuz. Ama ben olsam sinyali çıplak haliyle kullanmam. Volatilite filtresi eklerdim — ki model saçma dönemlerde kendini rezil etmesin, biraz saygınlığı olsun. Daha fazla bilgi için QuerySelector’ı Bıraktım: DOM’a Direkt Bağlanmak yazımıza bakabilirsiniz.

Şahsen, Neyse uzatmayalım. Küçük bir örnek mantık şöyle ilerleyebilir:

# kaba fikir
if slope > threshold:
signal = "long"
elif slope < -threshold:
signal = "short"
else:
signal = "flat"

Araya gireyim: Bunun üstüne hacim filtresi ya da piyasa rejimi filtresi koyarsanız sonuç daha derli toplu olur. Benzer şeyi geçen (söylemesi ayıp) yıl Berlin’de tanıştığım bir quant arkadaşım anlatmıştı — filtre ekleyince işlem sayısı azalmış. Net kalite artmış. Yani kağıt üstünde azalan şey her zaman kötü değildir; bazen seyrelmek iyidir. Daha fazla bilgi için Zoxide ile Terminalde Kayıp Gitmemek: Hızlı Gezinme Rehberi yazımıza bakabilirsiniz. Archon neden zirvede? Yapay zekâda iki ayrı yol ayrımı yazımızda bu konuya da değinmiştik.

Nerede İşe Yarar, Nerede Hayal Kırıklığı Yaratır?

Açık konuşayım. ALLR sihirli değnek değil. Trendin hızlandığı dönemlerde oldukça tatlı çalışabiliyor — özellikle orta vadeli momentum taşıyan growth isimlerinde fena durmuyor, hatta bazen şaşırtıyor. Ama yatay piyasada? Orası biraz can sıkıcı.

Gerçekten can sıkıcı.

Şöyle ki, Kendi testimde en büyük hayal kırıklığı düşük hacimli ve ani haber akışı olan dönemlerdi. Model orada sanki bana kalırsa eminmiş gibi konuşuyor,. Aslında sadece gürültünün peşinden koşuyor olabilir — bu kısım sinir bozucu, çünkü modele bakarken “iyi iş çıkardın” diyorsunuz ama o tam tersi bir şey yapıyor. Bu yüzden adaptif yapı güzel olsa da mutlaka risk yönetimiyle birlikte kullanılmalı. İlginç, değil mi? Tek başına bırakmayın.

Küçük Startup ile Enterprise Farkı Ne?

Küçük ekiplerde amaç çoğu zaman hızlı prototip üretmek. ALLR burada güzel çünkü Python ile rahatça denenebiliyor ve birkaç satırla anlamlı bir sinyal elde ediyorsunuz. Büyük kurumlarda ise konu bir düşüneyim… bambaşka bir yere kayıyor: veri kalitesi kontrolü, gecikme analizi, emir yürütme maliyetleri. Denetim kayıtları işi karmaşıklaştırıyor (evet, doğru duydunuz). Tamamen farklı bir oyun.

  • Küçük ekipte odak: hız ve esneklik
  • Büyük kurumda odak: istikrar ve açıklanabilirlik
  • Küçük portföyde hata payı tolere edilebilirken kurumsalda çok pahalıya patlayabilir
  • Sabit pencere yerine adaptif yapı özellikle rejim değişen piyasalarda avantaj sağlayabiliyor
  • Ama aşırı optimizasyon tuzağına düşmek de bir o kadar kolay — orası tehlikeli bölge

Daha İyi Kullanmak İçin Pratik İpuçları

Dürüst olmak gerekirse, Birkaç şeyi deneyimle öğrendim. Paylaşmak istedim.

Birincisi: bant genişliğini sabit bırakmayın. Volatilite arttığında pencereyi daraltın, piyasa sakinleşince biraz açın — modelin kendini güncel tutmasına izin verin. İkincisi: sinyal tek başına karar vermek için yeterli değil, zaten hiçbir zaman yeterli olmadı. Eğimi gördünüz, tamam; ama hacim ne diyor, genel piyasa rejimi ne diyor, bunlara da bakın.

Üçüncüsü — ve bence en önemlisi — backtest sonuçlarına fazla güvenmeyin. Hmm, nasıl desem… geriye dönük testte muhteşem görünen strateji gerçek zamanlı veriyle temas ettiğinde çok farklı davranabiliyor. Bu, ALLR’ye özgü bir sorun değil; genel bir gerçek. Ama özellikle adaptif modellerde bu risk biraz daha yüksek, dikkatli olun.

Peki bu kadar mı? Temelde evet. Ama işin içine girince tabii ki detaylar çoğalıyor — her zaman öyle olur zaten.

Aşkın KILIÇ

20+ yıl deneyimli Azure Solutions Architect. Microsoft sertifikalı bulut mimari ve DevOps danışmanı. Azure, yapay zekâ ve bulut teknolojileri üzerine Türkçe teknik içerikler üretiyor.

AZ-305AZ-104AZ-500AZ-400DP-203AI-102

Bu içerik işinize yaradı mı?

Benzer içerikleri kaçırmamak için beni sosyal medyada takip edin.

Haftalık Bülten

Her pazar özenle seçilmiş teknoloji yazıları doğrudan e-postanıza gelsin.

← Onceki Yazi
Bir GitHub Projesinin Son %1’i: Sürümü Sağlam Kapatmak
Sonraki Yazi →
SSL Sertifikalarında 2026 Şoku: Süreler Kısalıyor

Yorum Yaz

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Haftalık Bülten

Azure, DevOps ve Yapay Zeka dünyasındaki en güncel içerikleri her hafta doğrudan e-postanıza alın.

Spam yok. İstediğiniz zaman iptal edebilirsiniz.
📱
Uygulamayı Yükle Ana ekrana ekle, çevrimdışı oku
Kategoriler
Ara
Paylaş
İçindekiler
← Bir GitHub Projesinin Son %1’i...
SSL Sertifikalarında 2026 Şoku... →
📩

Gitmeden önce!

Her pazar özenle seçilmiş teknoloji yazıları ve AI haberleri doğrudan e-postanıza gelsin. Ücretsiz, spam yok.

🔒 Bilgileriniz güvende. İstediğiniz zaman ayrılabilirsiniz.

📬 Haftalık bülten: Teknoloji + AI haberleri