Pratik uygulama

Walk-forward: etiket ufku, WFE ve örtüşen testler

Kayan ve sabit başlangıçlı eğitim, etiket sızıntısı ve WFE sınırları. TRY örneğinde örtüşen OOS dönemlerini tek etkin sürümle birleştirin.

Şeftali zeminde sol üstte dev koyu orman yeşili HORIZON; sol altta uçları kaydırılmış iki uzun yatay koyu yeşil blok ve derin üçgen gölgeler; sağ kenarda kesilen uzun açık mavi dikdörtgen blok.
Yapay zekâ ile üretilmiş editoryal görsel; eğitim ve değerlendirme ufkunu çağrıştırır, gerçek test veya fiyat grafiği değildir.

Kaldıraçlı forex ve CFD işlemleri kısa sürede kayba yol açabilir. İçerik eğitim amaçlıdır; kişiye özel yatırım tavsiyesi içermez.

Bu makalede

Bu makaleyi okuduktan sonra…

  • Eğitim etiketinin son veri ihtiyacını seçim anıyla karşılaştırabilirsiniz.
  • WFE’nin sıfır ve negatif payda sınırlarını, takvime sığan pencere sayısını hesaplayabilirsiniz.
  • Örtüşen OOS döneminde önceden seçilen sürüm politikasıyla tek kronolojik TRY yolu kurabilirsiniz.

Kavramları makaleden ayrılmadan öğrenin

Backtesting — geçmiş veriyle strateji testi İşlem planı Demo hesap Zirveden düşüş — drawdown Kazanma oranı

Walk-forward analizi önceki veride parametre seçimini, daha sonraki blokta değerlendirmeyi tekrarlar. Değerlendirilen yalnız son parametre kümesi değil, güncelleme prosedürüdür. Takvim ve seçim kuralını sonuçları görmeden yazın. Ortak eğitim verisi ve piyasadaki bağımlılık nedeniyle pencereler kendiliğinden bağımsız gözlem değildir; bölünmeyi sonuçlara bakarak seçmek de prosedürü geçmişe uydurabilir.

Eğri uydurma sorunu ve güncelleme kuralı

Eğitim/test uzunluğu, güncelleme aralığı, adaylar, seçim ölçütü, eşitlik çözümü ve uygun aday bulunamazsa yapılacak eylemi belirtin. En yüksek kârı seçmek tarafsız varsayılan değil, seçilmiş bir ölçüttür. Maliyet, maruziyet ve örnek büyüklüğünü aynı tanımla değerlendirin. Daha çok alternatif aramak tarihsel gürültüyü seçebilir; fakat 200 işlemde yüzde 75 üzeri kazanma oranı veya 3,5 üzeri kâr faktörü tek başına eğri uydurma tanısı değildir. Veri ve seçim geçmişini uygulama çalışmasında inceleyin.

Boşluk var diye etiket geleceğe uzanmıyor sanmayın

Kurgu düzenli dönemlerde örnek t’nin etiketi sonraki t + 1 ve t + 2 kapanışlarını gerektiriyor. İlk test dönemi 10; model kapanış 9’dan sonra, dönem 10 başlamadan eğitiliyor. Eğitim örneğinin sıra numarası kadar etiketinin ihtiyaç duyduğu son kapanışı da kontrol edin.

İki dönemlik etiket için bir ve iki boşlukTest 10’da başlar. Etiket sonraki iki kapanışı ister. gap 1 son örnek 8’i tutar: kapanış 10 gerekir. gap 2 son örnek 7’yi tutar: etiket 9’da biter. Model eğitimi kapanış 9 sonrası, test öncesidir.İlk test dönemi: 10Etiket t: kapanışlar t + 1, t + 2gap = 1; son eğitim örneği: 8123456789101112Etiket 8: kapanış 9 ve 10 gerekir.Kapanış 10 henüz bilinmiyor.gap = 2; son eğitim örneği: 7123456789101112Etiket 7, kapanış 9’da biter.Dönem 10 başlamadan bilinir.Yeşil: eğitim; gri: boşluk; sarı: test
Bloklar örnek indisleri; alttaki çizgiler son etiketin ufuk sonunu gösterir. Yeşil eğitim, gri çıkarılan örnek, sarı testtir.

gap 1, örnek 8’i tutar; etiketi kapanış 9 ve 10 ister. Kapanış 10 henüz yoktur: kullanılması gelecekteki bilgiyi taşır. gap 2’de son örnek 7 ve gereken son kapanış 9’dur; verilen anda bilinir. Her tutulan örnek için son gerekli dönemi listeleyin. Ufuk veya etiket tanımı değişince hesabı yenileyin; iki boşluk evrensel reçete değildir. Bu model düzenli indisler ve tam kapanış gereksinimiyle sınırlıdır.

Kayan pencere mekanizması

Takvimi ayarlamadan önce sabitleyin. Örneğin 2018–2021 eğitim, 2022 değerlendirme; sonra 2019–2022 eğitim, 2023 değerlendirme. İkinci seçimde artık geçmişte kalan 2022 kullanılabilir; ilk değerlendirmenin kaydını geriye dönük değiştirmez. Seçilen parametreleri her OOS bloğu başlamadan dondurun, aday ve seçim zamanını saklayın. Önceki OOS sonuçları tasarım seçimine yön verdiyse tamamen dokunulmamış son değerlendirmeyi ayrıca ayırın.

2018–2023 dahil altı yıl içinde dört eğitim + bir test yılı ve yıllık kaydırmayla iki tam OOS blok vardır: 2022 ve 2023. Beş yıllık veri bir böyle çift verir. Beş yıllık OOS adımı için ilk dört eğitim yılına beş değerlendirme yılı eklenir: toplam dokuz yıl. Pencere sayısı takvimden türemeli; beş sonucu altı yıla sığdırmayın. Çok pencere, bağımlılığı veya şansı otomatik kaldırmaz.

Kayan ve sabit başlangıçlı pencere

Kayan eğitim sabit uzunluğu koruyup en eski veriyi bırakır: 2018–2021, 2019–2022, 2020–2023. Sabit başlangıçlı veya genişleyen eğitim başlangıcı korur: 2018–2021, 2018–2022, 2018–2023. Kısa bellek eski koşulları ve örnek sayısını azaltır; uzun bellek farklı koşullardan daha çok gözlem tutar. Biri mutlaka hızlı uyum, diğeri kararlı parametre sağlamaz. Trend takibi veya destek/direnç yaklaşımı için otomatik varyant seçmeyin.

Normalizasyon, özellik seçimi ve eksik veri tamamlama dönüşümlerini izin verilen eğitim verisinden öğrenin. Testi öğrenme aşamasına katıp sonra ayırmak sızıntıyı gidermez. TimeSeriesSplit eğitim sonundan örnek çıkaran gap parametresi sunar; bütün etiket ufuklarını otomatik denetlemez. Karşılaştırılabilir süreler için eşit aralıklı örnek varsayımını inceleyin; düzensiz olay verisinin ayrıca takvimi gerekir.

WFE ne söyler?

TradeStation yaklaşımında tutarlı maliyet, maruziyet ve getiri tanımıyla yıllıklaştırılmış OOS getiriyi yıllıklaştırılmış IS getiriye bölün. Atanmış yüzde 10 / yüzde 20 = 0,5, yani yüzde 50. IS sıfırsa oran tanımsız. Yüzde −5 / yüzde −10 da 0,5 verir; ikisi de zarar. Birin üzeri oran tek başına gelecekteki bilginin kullanıldığını kanıtlamaz.

Sağlayıcının yüzde 50 ifadesi bir pratik değerlendirme ölçütüdür, evrensel canlı sermaye izni değildir. Net sonucu, yoğunlaşmayı, veri kapsamını, duyarlılığı ve düşüşü ayrı inceleyin. Düşük WFE veya büyük parametre değişimi araştırma gerektirebilir; tek başına eğri uydurma tanısı koymaz. Pencerelerdeki düşüşlerin ortalaması birleşik sermaye yolunun düşüşü değildir.

İki strateji ve eşitlik karşı örneği

Tamamen kurgu yıllık OOS yüzde 12 / IS yüzde 30 = 0,4; OOS yüzde 20 / IS yüzde 25 = 0,8. Hesaplar doğru olsa da hangi stratejinin kalıcı avantajı olduğunu kanıtlamaz. Aynı maliyet ve getiri tanımıyla karşılaştırın; 2018–2023 takviminden yine iki tam değerlendirme çıkar. Sonuçlar tarihsel piyasa ölçümü değildir.

Ayrı kurgu iki seçim adımında A ve B eğitimde eşit; önceden yazılmış çözüm A’yı seçiyor. Sonraki net OOS tutarları A için +5 ve −2, B için −1 ve +6; bileşikleşme yok. Kuralın sonucu +3. Her adımın kazananını sonuçtan sonra seçmek +5 +6 = +11; bütün geçmişi görüp B’yi seçmek +5 verir. Bunlar farklı deneylerdir. Eşit adayların tamamını ve seçilmiş kimliği değerlendirme öncesi kaydedin; sonuca göre yeni kural tasarlarsanız yeni sürüm ve sonraki değerlendirme gerekir.

Sınırlar ve örtüşen OOS dönemlerini birleştirme

Güncellemede açık pozisyonu maliyetle kapatacak mısınız, yoksa açıkça tanımlı kuralla yönetmeye devam mı edeceksiniz? Açık zararı silip bakiyeyi sıfırlamayın. Eğitim kârlarını OOS yoluna katmayın. Sıfır işlem dönemleri, yoğunlaşma ve aynı veri/maliyet/büyüklükle seçilmiş güncellenmeyen referansı da kaydedin. Monte Carlo risk incelemesinde belirtilen girdi ve yeniden örnekleme modelini sınar; her gelecek rejimi temsil etmez.

MT5’in Forward seçeneği testin toplam tarihsel aralığından daha sonraki bölümü ayırır. Kendiliğinden çok pencereli walk-forward veya gelecekteki demo gözlemi değildir. Tarihsel hold-out, ileri demo gözlemi ve simülasyon başka sorulara yanıt verir. Sabit WFE, demo ayı veya simüle yüzdelik canlı kârı garanti etmez; takvim ve kriter denemelerini saklayın.

Yeni TRY modeli: dönem 7’de hangi sürüm etkin?

Atanmış başlangıç 100.000 TRY, değerlendirme dönemleri 5–9. Her dönem sonunda pozisyon sıfır; tutarlar maliyet dahil net nakit P/L. Başka giriş/çıkış, vergi, faiz, kaldıraç veya bileşik büyüklük değişimi yok. A eğitim 1–4 sonrası 5–7’yi değerlendirir: +100, −50, +300 TRY. B eğitim 3–6 sonrası 7–9’u değerlendirir: −200, +100, +50 TRY. B dönem 7 başlamadan hazır; iki blok yalnız dönem 7’de örtüşür. Bu, tasarlanmış hesap tablosudur; gerçek test çalıştırması değildir.

Örtüşen dönem için önce sürümü seçinKurgu başlangıç 100.000 TRY; A test 5–7: +100, −50, +300. B test 7–9: −200, +100, +50. B dönem 7 öncesi hazır. Net maliyetler dahil, sabit büyüklük, dönem sonlarında pozisyon sıfır; başka nakit hareketi yok.VARSAYIMSAL HESAPLAMAÖnceden seçilen: en yeni hazırsürümA5 +100 · A6 −50 · B7−200 · B8 +100 · B9 +50TRYÖnceden seçilen: eski bloğubitirA5 +100 · A6 −50 · A7+300 · B8 +100 · B9 +50TRYHatalı tek hesap birleştirmesi6 satır · 5 dönem ·dönem 7 iki kez · net+300 TRY
Örtüşen dönem için önce sürümü seçin. Kurgu başlangıç 100.000 TRY; A test 5–7: +100, −50, +300. B test 7–9: −200, +100, +50. B dönem 7 öncesi hazır. Net maliyetler dahil, sabit büyüklük, dönem sonlarında pozisyon sıfır; başka nakit hareketi yok.

Sonucu gördükten sonra politika seçmeyin. Dönem başına tek sürüm ve net tutarı kaydedip kendi sermaye yolunu kurun; dönem içi düşüş bu uç noktalardan bilinmez.

Küçük ekranda şemayı yatay kaydırabilir veya büyütebilirsiniz. Değerler ve sonuç aşağıdaki metinde de yer alır.

Önceden seçilen: en yeni hazır sürüm
A5 +100 · A6 −50 · B7 −200 · B8 +100 · B9 +50 TRY – Net 0 TRY, son 100.000 TRY. Verilen dönem sonlarında düşüş 250 / 100.100 ≈ %0,24975.
Önceden seçilen: eski bloğu bitir
A5 +100 · A6 −50 · A7 +300 · B8 +100 · B9 +50 TRY – Net +500 TRY, son 100.500 TRY. Verilen dönem sonlarında düşüş 50 / 100.100 ≈ %0,04995.
Hatalı tek hesap birleştirmesi
6 satır · 5 dönem · dönem 7 iki kez · net +300 TRY – 100.300 TRY toplamı tek etkin sürüm politikasına ait değil. Gerçek paralel çalışma ayrı sermaye ve maruziyet tasarımı ister.

İki meşru prosedür farklı deneydir. Önceden “hazır en yeni sürümü kullan” derseniz A5, A6, B7, B8, B9 seçilir; net sıfır, son sermaye 100.000 TRY. Önceden “eski bloğu bitir” derseniz A5, A6, A7, B8, B9: net +500, son 100.500 TRY. Sonucu görünce iyisini seçmek yeni seçim adımıdır. Her altı satırı toplamak +300 ve 100.300 verir, fakat beş takvim döneminde dönem 7’yi iki kez sayar; tek etkin sürüm prosedürü değildir.

En yeni sürüm yolunun dönem sonları 100.100, 100.050, 99.850, 99.950, 100.000 TRY. Bu gözlem noktalarında zirveden düşüş 250 / 100.100 ≈ yüzde 0,24975; eski bloğu bitirme yolunda 50 / 100.100 ≈ yüzde 0,04995. İkisi de başlangıç noktası dahil, kendi önceki zirvesine göre hesaplanır. Yalnız dönem sonlarını görüyoruz; dönem içi daha büyük düşüşü bu sayılardan dışlayamayız. Dönem sonu pozisyon sıfır varsayımı bu bilgi boşluğunu kapatmaz.

A ve B’yi gerçekten paralel çalıştırmak istiyorsanız sermaye, büyüklük ve toplam maruziyet politikasını ayrıca tanımlayın; iki tam büyüklük sonucunu tek hesap varmış gibi eklemek bu tasarımı sağlamaz. Önce zaman anahtarına göre etkin sürümü seçin, sonra kronolojik net yol ve düşüşü hesaplayın. İyi görünen tek toplam, hangi prosedürün uygulandığını açıklamaz.

Yarın yapılacak denetlenebilir çalışma

Elde olan takvime sığan pencere uzunluğu ve güncelleme aralığını seçin. Eğitim, etiket ufku, seçim anı, OOS, pozisyon sınır kuralı ve örtüşme politikasını kaydedin. 2018–2023 örneğinde 2022 ve 2023 için iki seçim ve sonuç kaydı oluşturun; daha çok pencere isterseniz takvimi açıkça uzatın.

WFE’nin paydasını ve yıllıklaştırmasını kontrol edip alttaki net getirileri ve kronolojik sermaye yolunu inceleyin. gap örneğinde son tutulan etiketin kapanış 9’da tamamlandığını gösterin. Düşük oranı daha güzel göstermek için aynı OOS üzerinde takvimi değiştirmek doğrulama değildir. Tasarım değişikliklerini dokunulmamış son değerlendirmeden ayırın; prosedürün sınırlılıklarını yazın.

Anladığınızı kontrol edin

Alıştırma: yaklaşık 2 dakika.

Test dönem 10’da; model kapanış 9 sonrası ve dönem 10 öncesi eğitiliyor. Etiket t, t + 1 ve t + 2 kapanışlarını ister. Hangi son eğitim örneğinin etiketi tamdır?

Yanıtı ve açıklamayı göster

Kapanış 9 sonrası etiket 7’nin istediği kapanış 8 ve 9 bilinir. Yanıt verilen iki dönemlik ufuk içindir.

Diğer sorular

Tek IS/OOS bölünmesinden farkı nedir?
Tek hold-out bir ayrılmış bloğu değerlendirir ve birden fazla ölçü verebilir. Walk-forward önceden belirlenmiş güncelleme/test prosedürünü tekrarlar. Dört eğitim + bir test yılıyla 2018–2023 içinde iki OOS; beş yıllık değerlendirme için dokuz yıl gerekir. Pencereler otomatik bağımsız değildir.
WFE hangi eşiği geçmeli?
Önce yıllıklaştırma, maliyet ve getiri tanımını yazın. 10 / 20 ve −5 / −10 ikisi de 0,5; ikinci çift zarar. IS sıfırsa oran tanımsız. Sağlayıcının yüzde 50 pratik ölçütü evrensel canlı sermaye izni değildir.
Kayan mı sabit başlangıçlı mı?
Kayan sabit eğitim uzunluğunu korur; sabit başlangıçlı eski başlangıcı koruyup büyür. Daha kısa bellek örneği azaltır, uzun bellek başka koşulları tutabilir. Veri ve soruya göre önceden seçin; test sonucuyla takvim seçmek de seçim aşamasıdır.
İyi walk-forward canlı kârı garanti eder mi?
Hayır. Maliyet, gerçekleşme, maruziyet, bilgiye erişim ve seçim geçmişini inceleyin. MT5 tarihsel Forward bölümü, gelecekteki demo ve belirtilen simülasyon farklı kontrollerdir; sabit oran/ay/yüzdelik garanti değildir.
Örtüşen OOS sonuçlarını doğrudan toplar mıyım?
Tek etkin sürüm prosedüründe önce her dönem için sürümü seçin. TRY modelinde en yeni sürüm net 0, eski bloğu bitirme +500 verir; altı satırın +300 toplamı dönem 7’yi iki kez sayar. Paralel gerçek çalışma ayrı sermaye/maruziyet politikası ister.

Kaynaklar ve doğrulama

  1. TradeStation — Walk-Forward Optimizer

    IS/OOS tekrarları, kayan ve sabit başlangıçlı eğitim; sağlayıcı aracı.

  2. TradeStation — OOS Summary

    Yıllıklaştırılmış IS/OOS getiriler ve yüzde 50 pratik ölçütü; canlı kâr garantisi değil.

  3. scikit-learn — TimeSeriesSplit

    Zamana göre indisler, eşit aralıklı örnek ve gap tanımı; etiket ufku ayrıca incelenir.

  4. scikit-learn — Common pitfalls

    Öğrenilen ön işlemleri eğitim alt kümesinde öğrenme; testte öğrenme yapmama.

  5. MetaQuotes — Strategy Testing

    Forward için toplam tarihsel aralığın son bölümünü ayırma.

Hesaplamalar açıkça belirtilen varsayımlara dayanır. Güncel piyasa verilerinin veya sağlayıcının koşullarının yerini almaz.

Yazar hakkında

Jarosław Wasiński, Polonya’da çalışan bir editör ve piyasa analistidir. MyBank.pl’yi 2004 yılında kurdu; 2007 yılından beri döviz piyasasını takip ediyor.