Bir strateji ajanı, tek bir test satırını bile eğitim işine sokmadan test kümesini bozabilir. Ajan test skorunu görüp bir parametreyi değiştirir ve yeniden çalıştırırsa, o skor stratejiyi çoktan etkilemiştir. Kod bu döneme “örneklem dışı” diyebilir. Araştırma süreci ise dönemi aramanın bir parçası hâline getirmiştir.
Bunun kolaylık uğruna yapıldığına tanık oldum: ajan bir grup çalıştırma yapıyor, özet tabloyu okuyor, ardından ufak bir iyileştirme öneriyor. Kimse ondan kenara ayrılmış veri üzerinde uyum sağlamasını istemedi. Yine de geri bildirim döngüsü bunu yaptı.
Hata 1: Ajanın her çalıştırmadan sonra sonuçlara göz atmasına izin vermek
Ortaya çıkan tablo genellikle küçük ve düzenli adımlarla yükselen bir test Sharpe değeridir. Ajan 30 varyantı dener, en iyisini seçer, sonra onun çevresinde 30 varyant daha dener. Her bir değişiklik tek başına makul görünür. Bir araya geldiklerinde test dönemini optimizasyon hedefine dönüştürürler.
Basit bir örnek düşünelim. Stratejinin gerçek bir avantajı olmadığını ve kenara ayrılmış veri üzerinde birbirinden bağımsız 100 varyantı test ettiğinizi varsayalım. En yüksek Sharpe değerini seçerseniz, şans eseri göze hoş gelen bir sonuç bulmanız gayet olasıdır. Strateji araştırmalarının çoğunda varyantlar gerçekten bağımsız olmayacaktır; ancak bu, süreci kurtarmaz: tekrarlanan geri bildirim, kenara ayrılmış verinin kendine özgü yanlarına tesadüfen uyan ayarları yine de ödüllendirir.
Kenara ayrılmış veriyi sonuçlara erişim sınırının arkasında tutun. Ajan, eğitim ve doğrulama dönemlerini kullanarak geliştirme yapabilir; bu verilerin ölçümlerine veya grafiklerine erişemez. Nihai değerlendirmeyi ayrı bir işte, araştırma kararları dondurulduktan sonra bir kez çalıştırın ve sonuçla birlikte strateji sürümünü ve veri anlık görüntüsünü kaydedin.
Hata 2: Sonraki her dönemi “yeni” saymak
Bir tarih aralığı, yalnızca eğitim penceresinden sonra geldiği için yeni sayılmaz. Ajan o aralığın skorunu gördüyse veya bir insan düşüşünü inceleyip farklı bir özellik seçtiyse, o aralık geri bildirim döngüsünün parçası hâline gelmiştir.
| Dönem | İzin verilen kullanım | Durumunu ne değiştirir |
|---|---|---|
| Eğitim | Kuralları ve parametreleri uyarlamak | Hiçbir şey; bu dönem aranmak üzere ayrılmıştır |
| Doğrulama | Adayları karşılaştırmak ve araştırma kararları almak | Tekrarlanan kullanım aşırı uyumu kolaylaştırır |
| Nihai test kümesi | Dondurulmuş adayın bir kez değerlendirilmesi | Sonucu inceleyip adayı değiştirmek |
| Gelecekteki kâğıt üzerinde işlem dönemi | Uygulama davranışını ileriye dönük gözlemlemek | Sonuçları ayar yapmak için kullanmak yeni bir araştırma döngüsü başlatır |
Kayan ileriye dönük değerlendirme, sabit bir araştırma sürecinin zaman içinde nasıl işlediğini tahmin etmeye yardımcı olabilir. Ancak her katlamanın sonuçlarına sınırsızca göz atma hakkı vermez. Ajan katlama sonuçlarını görüp aramasını uyarlarsa, bu katlamalar da geri bildirimin parçasıdır. Gerçekten almak istediğiniz karar için dokunulmamış bir nihai dönemi koruyun.
Hata 3: Soruyu değiştirirken kodu dondurmak
Bazen strateji kodu değişmez ama araştırmacı sonucu gördükten sonra değerlendirmeyi değiştirir: ölçütü değiştirir, zorlu bir ayı dışarıda bırakır, farklı bir varlık evreni raporlar ya da en güçlü görünen ölçüte odaklanır. Parametre değişmemiş olsa da test kümesi anlatıya yön vermiştir.
Ortaya çıkan sorun, denenmiş diğer görünümlere dair hiçbir kayıt içermeyen, tek ve pürüzsüz bir başlıkla sunulan cilalı rapordur. Bir hisse senedi stratejisi geniş bir piyasa endeksine kıyasla zayıf, nakde kıyasla güçlü görünebilir; bir kripto stratejisi de birkaç platform incelendikten sonra tek bir platformda parlak sonuç verebilir. Bu karşılaştırmalar işe yarayabilir, ancak kenara ayrılmış veriyi gördükten sonra aralarından seçim yapmak da başka bir seçim adımıdır.
Bir araştırma günlüğü tutun. Her çalıştırma için hipotezi, kod sürümünü, veri anlık görüntüsünü, parametre aramasını, değerlendirme pencerelerini, istenen ölçümleri ve ajan ya da araştırmacının sonucu görüp görmediğini kaydedin. Kısa ve öz bir kayıt, kulağa kusursuz gelen “örneklem dışı” etiketinden daha faydalıdır.
Ardından değerlendirmeden önce nihai soruyu açıkça belirleyin: Hangi aday, hangi piyasa evreni, hangi ölçüt, hangi maliyetler ve hangi ölçümler? Sonuç geldikten sonra yanıt değişirse, bir sonraki çalıştırmayı araştırmanın parçası sayın ve sonraki nihai kontrol için yeni veri ayırın.
Kirlenmiş bir test kümesinden hâlâ ne öğrenebilirim?
Tamamen işe yaramaz değildir. Stratejinin o dönemde nasıl davrandığını gösterebilir ve başarısızlığı teşhis etmeye yardımcı olabilir. Yalnızca skorunu bağımsız bir doğrulama gibi sunmayı bırakın. Onu geliştirme kanıtı olarak kullanın, sonraki adayı dondurun ve aynı muhasebe ve uygulama varsayımlarıyla bu adayı gerçekten gelecekteki bir kâğıt üzerinde işlem döneminde değerlendirin.
Ajan destekli bir iş akışında deney sayısını gözden kaçırmak kolaydır: biri fark edene kadar tek bir istem onlarca çalıştırma başlatabilir. Koruma, sürece bağlıdır. Ajanın inceleyebileceklerini sınırlayın, her deneyi kaydedin ve sonucu değerlendirilen adayı yönlendiremeyecek tek bir değerlendirme dönemi ayırın.
← Tüm yazılar


