Bu makalede
Bu makaleyi okuduktan sonra…
- İki testin 13 alanlı beyanını karşılaştırıp eksik kanıtı belirleyebilirsiniz.
- USD komisyon farkını iki dolumla uzlaştırabilirsiniz.
- Aynı TRY son bakiyesinin eşit işlem yolu veya eşit düşüş oranı göstermediğini açıklayabilirsiniz.
Kavramları makaleden ayrılmadan öğrenin
Backtesting — geçmiş veriyle strateji testi Komisyon Expert Advisor (EA) — uzman danışmanGörünen parametreleri aynı kalan bir robotun iki çalıştırması farklı sonuç verebilir. Stratejiyi değiştirmeden kod, veri, sembol özellikleri ve gerçekleşme modelinin de aynı olup olmadığını araştırın. Koşul kaydı, yani manifest bu beyanları bir yerde toplar. Aşağıdaki araç kayıtları karşılaştırır; bilgisayarınızdaki dosyaları veya test ortamını doğrulamaz. Eşit açıklamaları eşit ortam kanıtı sanmamak bu incelemenin başlangıcıdır.
Testi yeniden çalıştırmadan neyi saklamalısınız?
İki raporu, gerçekleşme listelerini, günlükleri ve parametre kümelerini ayrı çalıştırma olarak saklayın; daha kötü görünen sonucu da koruyun. Sermaye eğrisi ekran görüntüsü ilk dolum fiyatını, kısmi gerçekleşme sayısını veya gerçek başlangıcı göstermez. Koşuldan karara, karardan işleme ve toplam sonuca uzanan iz gerekir. “Aynı robot” yalnız aynı dosya adı demek olabilir. Derleme, program içeriği ve ilgili kütüphaneler değişmiş olabilir.
Tek test, optimizasyon taraması ve sonraki dönem değerlendirmesini birbirinden ayırın. İstenen başlangıçla gerçek başlangıcı karşılaştırın. MetaQuotes, hazırlık için önceki veri yetersizse başlangıcın ileri kayabileceğini açıklar. Tam ay ile kısalmış dönem aynı sınama değildir. CSV kapsam denetleyicisi dışa aktarımı inceler; burada daha geniş koşul kaydını kontrol ediyoruz. Takvimdeki boşlukla başlangıç hazırlığını aynı sorun saymayın.
İki kayıt aynı biçimde nasıl hazırlanır?
Aşağıdaki on üç üst düzey alan adını aynen kullanın. Anahtarları Türkçeleştirmeyin veya yeni üst alan eklemeyin. version sayısal 1 olmalıdır; manifest şemasını tanımlar, robotun sürümünü değil. Diğer alanlar metindir. Yalnız inputs, costs ve initialState düz nesne de kabul eder. Özellik sayıları için örnekteki ondalık noktalı metni kullanın; makine biçimine Türkçe virgül eklemeyin.
| Literal alan adları | Kaydedilecek bilgi |
|---|---|
| version, platform, build, codeRevision | Biçim, platform, derleme ve kod/bağımlılık kimliği. |
| inputs, dataSnapshot | Girdiler ve korunmuş veri sürümü. |
| symbolSpecification, executionModel, costs | Sözleşme özellikleri, benzetim kuralları ve maliyet varsayımları. |
| requestedStart, actualStart, end | İstenen ve gerçek değerlendirme sınırları. |
| initialState | İlk bakiye, pozisyonlar ve ilgili başlangıç koşulları. |
dataSnapshot için arşiv kimliği veya ayrı hesapladığınız dosya özeti kullanılabilir. “data-v1” yalnız beyandır; sayfa dosyayı açmaz. codeRevision değerine “hash” yazmak da onu doğrulamaz. İçeriği tanımlamak için ayrı hesaplanan özeti doğru arşivle ilişkilendirin. Bilmediğiniz sürümü form dolu görünsün diye uydurmayın. Parola, erişim kodu veya kişisel ayrıntı yerine teknik sürüm etiketleri yeterlidir.
Tarihe açık saat dilimi ekleyin; tutarlı UTC gösterimi tercih edilebilir. Sunucu saatinin sonuna Z koymak UTC’ye dönüşüm değildir. Karşılaştırıcı farklı tarih gösterimlerinin aynı an olup olmadığını hesaplamaz. Gerekirse dönüşümü ayrıca yapıp özgün kaydı da saklayın. Türkiye’de okunması, kurum sunucusunun Türkiye saati kullanacağı anlamına gelmez.
Karşılaştırıcı gerçekte neyi denetler?
İki temsili JSON kaydını düzenleyip farkları ve bilinmeyen alanları görün. İşlem tarayıcıda yapılır; sayfa bu girdileri göndermez, dosya içe aktarmaz veya kalıcı saklamaz. MT5 çalıştırmaz ve hesaba bağlanmaz. Eşit alanlar yalnız girilmiş eşit açıklamalardır. Eksik veri, açıklamada unutulmuş bağımlılık veya yanlış maliyet beyanı yine bulunabilir. Araç sonuçtaki farkın sebebini otomatik kanıtlamaz.
İki backtest kaydını karşılaştırın
Kaynak USD örneği: aynı işlem, farklı komisyon
Doğrusal sözleşme, USD hesap, iki dolumla kapanmış tek işlem ve 10 USD fiyat sonucu varsayın. Fiyat, miktar ve dönem aynı; finansman ve diğer ücretler sıfırdır. A kaydında komisyon dolum başına 1 USD, B’de 2 USD olsun. A: 10 − 2 × 1 = 8 USD; B: 10 − 2 × 2 = 6 USD. Fark 2 USD’dir. Bunlar gerçek hizmet tarifesi değil, karşılaştırma varsayımlarıdır.
Araç değişen maliyet alanını işaretlemelidir. Bu, daha kötü sinyal, bozuk veri veya kayma kanıtı değildir. Maliyet açıklamasını rapordaki iki gerçek dolumla uzlaştırın; diğer varsayımları da inceleyin. Tek satırda “farklı” görmek bütün farkın açıklanmış olduğu anlamına gelmez.
Tek işlem, iki maliyet varsayımı
Kayıtlar aynı görünüyorsa ne yapılır?
İlk farklı olayı arayın: sinyal zamanı, sembol, fiyat tarafı, miktar ve giriş/çıkış gerekçesi. İşlem yapmama kararını da kaydedin. Son bakiye, ilk gösterge okumasındaki ayrışmayı gizleyebilir. Tek kontrollü değişiklikle yeniden çalıştırın ve önceki raporu koruyun. Aynı anda veri, parametre ve derlemeyi değiştirmek hangi etkenin sonuç doğurduğunu belirsiz bırakır.
MetaQuotes belgeleri test ajanının genel değişkenlerini terminaldekilerden ayırır; dosya işlemlerinin ajan klasörü ve paylaşılan klasör bağlamını da açıklar. Kod rastgele değer kullanıyorsa başlatma yöntemini saklayın. Her farkı önbelleğe yüklemeyin; ilk iş olarak tek veri kopyasını silmeyin. Derlemeyi değiştirmeniz gerekiyorsa önce eski çalıştırmanın kanıtını arşivleyin. Kayıtlar eşitse incelemeyi ayrıntılandırın; test dışı bir bağımlılık kayıtta hiç bulunmamış olabilir.
Yeni TRY karşı örneği: aynı bakiye, farklı yol
USD ücret modelinden bağımsız iki temsili kapanmış sonuç listesi düşünün. Başlangıç 1.000 TRY, para giriş/çıkışı ve açık pozisyon yoktur; her sayı bütün maliyetlerden sonraki net sonuçtur. A listesi +60, −40; B listesi −40, +60 TRY olsun. İki listenin toplamı +20, son bakiyesi 1.020 TRY’dir. Toplamı karşılaştırmak sıranın eşit olduğunu göstermez.
Yalnız bu kapanış noktalarını ve başlangıcı ölçersek A’da zirve 1.060’tan 1.020’ye düşüş 40 TRY, zirveye oranı yaklaşık %3,77’dir. B’de ilk düşüş 1.000’den 960’a, yani %4’tür. Aynı nominal kayıp farklı zirve paydasına bölünür. Mum içi özkaynak düşüşü bu iki satırdan belirlenemez. Bu listeler gerçek robot performansı değil, son bakiyeden özdeş geçmiş çıkarmanın neden yanlış olduğunu gösteren tam kâğıt örneğidir.
Önce ilk ayrışan olayı bulun; son bakiye ve eşit beyanlar tam gerçekleşme geçmişinin yerine geçmez.
Küçük ekranda şemayı yatay kaydırabilir veya büyütebilirsiniz. Değerler ve sonuç aşağıdaki metinde de yer alır.
- A yolu
- 1.000 → 1.060 → 1.020 TRY – 40/1.060 ≈ %3,77 kapanış noktası düşüşü.
- B yolu
- 1.000 → 960 → 1.020 TRY – 40/1.000 = %4 kapanış noktası düşüşü.
- Ortak son
- +20 TRY; bakiye 1.020 TRY – Aynı son, aynı sırayı ve aynı yüzde paydasını kanıtlamaz.
Koşul manifesti işlem listelerini kendiliğinden içermediği için bu iki listeden hangisinin üretildiğini saptayamaz. Rapor ve olay günlüğüne geri dönün. Sürüm ve kanıt düzeni daha geniş incelemeyi; MT4/MT5 test rehberi ayar bağlamını tamamlar.
Karşılaştırmadan sonraki üç adım
- A ve B raporlarını ayrı saklayın; on üç alanı gerçek kod, veri ve ayar arşivine bağlayın. Belgesiz koşula bilinmeyen deyin, inandırıcı görünen sürüm uydurmayın.
- Tek fark seçip kısa kontrollü örnekte sonucunu inceleyin. Komisyon için dolum ve ücret sayısını; dönem değişimi için ilk kullanılabilir sinyali uzlaştırın. Açıklamanızı desteklemeyen denemeyi de koruyun.
- Beyanlar eşitse ilk ayrışan günlük olayını bulun. Kararı yeniden üretmek için eksik bilgiyi belirleyip arşivi genişletin. Sebebi açıklamadan daha yüksek getirili sonucu seçmeyin. Araç tarihsel sonucu onaylamaz veya gelecekteki getiriyi tahmin etmez.
Anladığınızı kontrol edin
Alıştırma: yaklaşık 2 dakika.
Yanıtı ve açıklamayı göster
A: 10 − 2 = 8 USD; B: 10 − 4 = 6 USD. Fark 2 USD’dir.
Diğer sorular
Eşleşen manifest tekrar üretilebilirliği onaylar mı?
Önce önbelleği temizlemeli veya robotu yeniden derlemeli miyim?
actualStart neden requestedStart’tan farklı olabilir?
Daha kârlı testi seçmeli miyim?
TRY modelinde neden %3,77 ile %4 farklı?
Kaynaklar ve doğrulama
- MetaQuotes — Strategy Testing
Tek test, optimizasyon ve ileri değerlendirme ayarları.
- MetaQuotes — tarihsel veriyi hazırlama
Hazırlık geçmişi ve gerçek başlangıcın kayması.
- MetaQuotes — Testing Features
Ajan ortamı, genel değişkenler, dosyalar ve aktarılan koşullar.
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.
