Ana Sayfa > Blog > Python Testinde ve MT5 Canlıda %92-98 Sapma Yaşadık

Canlı TestPython BacktestWalk-ForwardNY SeansıTest Metodolojisi

Python Testinde ve MT5 Canlıda %92-98 Sapma Yaşadık

Yayınlandı: 2026-05-29Okuma süresi: yaklaşık 3 dk
This article reflects information as of its publish date. EA performance figures (PF, DD, annual return) change with live trading and re-validation — check the latest on the EA pages. See the latest EA results

Python Testinde ve MT5 Canlıda %92-98 Sapma Yaşadık

FXEA365 yöneticisiyim.

Bu yazıda, 2026-05-29 tarihinde NY Session Breakout stratejisini Python Walk-Forward ile MT5 canlı 14 yıllık backtest üzerinden karşılaştırdığımızda ortaya çıkan %92-98'lik PF sapmasının tüm sürecini paylaşıyorum.

Bu veri, "Python BT'de gösterişli sonuçlar alınsa da bunun MT5 canlıda çalışacağı anlamına gelmediğini" endüstri seviyesinde bir kez daha kanıtlayan önemli bir örnek.

Strateji Detayları — Asya Aralığı → NY Seansı Kırılımı

ÖğeAyar
Zaman dilimiH1
Asya aralığı0-4h UTC (Asya seansı aralık oluşumu)
İşlem saati15-20h UTC (NY seansı içinde)
GirişAsya seansı High/Low kırılımı
ÇıkışSL = ATR × 0,5 / TP1 = ATR × 0,5 (%50 kapatma) / TP2 = ATR × 7,0
LotRisk %2 (CASCADE yarı bileşik)

Teorik olarak avantajlı bir strateji:

  • NY seansı (UTC 15-20 = TSİ 22-03) kurumsal yatırımcıların en aktif olduğu, likiditenin yoğunlaştığı zaman dilimi
  • Asya aralığı doğal bir referans seviyesi oluşturur, bunun üst/alt sınırının kırılması güçlü bir yön sinyali sayılır
  • İki aşamalı kâr alma (TP1=ATR×0,5/TP2=ATR×7) hem sahte kırılımlara karşı koruma sağlar hem de trendi yakalar

Python Walk-Forward Sonuçları — Gösterişli Rakamlar

2026-05-27'den 28'e kadar scripts/gen_h1_ny_walkforward.py ile 9 parite üzerinde WF (Train %60 / Test %40) çalıştırıldı:

Paritetrain PFtest PFtest DDtest WRTutarlılıkOOS Hayatta Kalma
EURUSD7,429,03%5,47%79,60,82500/500
GBPUSD11,7813,00%31,85%84,20,91500/500
XAUUSD7,7611,96%13,18%80,90,65(önceki testten)
EURJPY9,417,93%7,46%79,20,84500/500
GBPJPY9,748,24%12,30%79,30,85500/500
USDJPY6,1211,62%36,24%80,70,53(önceki testten)
CADJPY7,595,76%32,81%75,90,76499/500
AUDJPY8,496,32%27,33%74,40,74351/500
NZDJPY9,226,51%15,05%70,60,71500/500

9 paritenin tamamında PF≥5 × kazanma oranı≥%70 × OOS hayatta kalma 500/500.

Sektörün yerleşik alışkanlığına göre bu sonuçlar "hayal edilen evrensel bir edge bulundu!", "tüm paritelerde ürün yelpazesini genişletelim!" diyerek doğrudan siteye eklenecek türden bir tablo.

Ancak — MT5 Canlı 14 Yıllık Backtest (USDJPY_NY_BREAKOUT_EA.mq5 v2.0)

CLAUDE.md'deki "canlı test zorunlu kuralı" gereğince, Python WF'de en güçlü çıkan 4 pariteyi MT5 canlı 14 yıllık backtest ile yeniden test ettik:

ParitePython WF (test)MT5 Canlı 14 Yıllık BTSapma OranıHesap Sonucu
USDJPYPF 11,62 / DD %36PF 0,77 / DD %99,72−%93-$9.966 (neredeyse tam kayıp)
EURUSDPF 9,03 / DD %5,47PF 0,73 / DD %99,84−%92-$9.984 (neredeyse tam kayıp)
GBPUSDPF 13,00 / DD %31,85PF 0,21 / DD %101,12−%98-$10.112 (hesap eridi)
EURJPYPF 7,93 / DD %7,46PF 0,49 / DD %100,01−%94-$10.001 (hesap eridi)

4 paritenin tamamı başarısız, Python WF ile arasındaki PF sapması %92-98.

Neden Bu Kadar Büyük Bir Sapma Oluşuyor — 5 Olası Neden

1. Spread/Kayma (Slippage) Hesaba Katılmıyor

Python BT, kapanıştan kapanışa (close-to-close) baz alınarak hesaplanıyor. Canlıda ise her işlem spread (0,5-2 pip) + slippage nedeniyle daha kötü fiyattan gerçekleşiyor. İşlem başına 1-3 pip'lik kayıp birikerek büyüyor.

2. Veri Kalitesi

Python, Dukascopy M5 → H1 toplulaştırılmış verisini kullanıyor. MT5 canlıda ise broker tick verisi (çok daha ayrıntılı fiyat hareketi) kullanılıyor. Aynı "H1 mumu" olsa bile içindeki fiyat hareketi farklı olabiliyor.

3. Emir Gerçekleştirme Modelindeki Fark

Python'da ideal gerçekleştirme varsayılıyor (istenen fiyattan her zaman işlem gerçekleşiyor). MT5 canlıda ise hacim/spread kısıtları nedeniyle istenen fiyat ile gerçek işlem fiyatı birbirinden sapıyor. Özellikle volatilitenin yüksek olduğu saatlerde (NY açılışı hemen sonrası gibi) bu fark belirginleşiyor.

4. ATR Bazlı İki Aşamalı TP'nin Canlıdaki Zayıflığı

Teoride kusursuz görünen bu tasarım, canlıda TP2=ATR×7 seviyesine neredeyse hiç ulaşmıyor.

  • Python BT: geçmiş veri üzerinde "sonuçtan yola çıkarak" en uygun SL/TP hesaplanıyor
  • Canlı: SL=ATR×0,5 sık sık tetikleniyor, trend TP2=ATR×7'ye ulaşacak kadar sürmüyor ve art arda zarar kesme yaşanıyor

5. CASCADE Yarı Bileşik Sisteminin Canlıdaki Olumsuz Etkisi

Lot büyüklüğünü bakiyeye göre dinamik ayarlayan tasarım, zarar döneminde hasarı hızlandırıyor:

  • Bakiye $10K → Risk %2 → Lot 0,2
  • Art arda kayıplarla bakiye $8K → Risk %2 → Lot 0,16 (az azalıyor)
  • Art arda kayıplarla bakiye $5K → Risk %2 → Lot 0,10 (zararı sınırlama etkisi yetersiz)

Teorideki "bileşik faiz büyüsü" canlıda tam tersi yönde işliyor.

Endüstri Seviyesinde Çıkarılan Dersler

1. Python BT/Walk-Forward, MT5 canlı için referans olamaz

  • "PF≥5 × Kazanma Oranı≥%70 × OOS hayatta kalma 500/500" bile canlıda anlamsız kalabiliyor
  • WF'nin "robust" / "OOS'ta dayanıklı" değerlendirmesi, yalnızca Python verisi içindeki dayanıklılığı ölçüyor; canlının yerine geçmiyor

2. "Ekonomik olarak mantıklı hipotez" olsa bile canlı test şart

  • "Kurumsal yatırımcıların NY saatinde aktif olması", "Asya aralığının üst/alt kırılımının yön sinyali vermesi" gibi varsayımlar teorik olarak doğru
  • Ancak MT5 canlı 14 yılda tüm paritelerin başarısız olması = teori ile canlı arasındaki farkın büyük olduğunu gösteriyor

3. CLAUDE.md'deki "canlı test zorunlu kuralı"nın gerekçesi güçleniyor

  • 25 EA + NY Session 4 strateji = toplam 29 strateji test edildi ve Python BT'nin güvenilmez olduğu tamamen doğrulandı
  • Bu veri, FXEA365'in marka duruşunu ("gösterişli rakamlar değil, canlıda kanıtlanmış performans") endüstri seviyesinde destekliyor

FXEA365'in Kararı

NY Session stratejisinin 9 paritesi de MT5 canlı testte başarısız olduğundan siteye eklenmeyecek.

Mevcut ürün yelpazesi korunuyor: EURJPY ASIA / GBPJPY ASIA / BLAZE GOLD / AUDCAD PEACE-CLONE olmak üzere sadece 4 ana strateji.

Toplam yıllık +%35,5 getiri (Risk %5) hiç de gösterişli değil, ama 14 yıllık canlı backtest ile gerçekten kanıtlanmış, güvenilir bir rakam.

Sektöre Tavsiyemiz — Python BT Kullananlara

Python BT'yi tamamen reddetmiyoruz. Ancak aşağıdaki kullanım ayrımını öneriyoruz:

Python BT'nin Doğru KullanımıÖneri
Strateji fikrinin ilk aşama testi (bu yönün potansiyeli var mı)✅ Önerilir
Parametre aralığı taraması (hangi bölge detaylı test edilmeli)✅ Önerilir
WF dayanıklılık kontrolü (Train/Test ayrımıyla aşırı uyum kontrolü)✅ Önerilir
Sitede yayınlanan rakamların dayanağı olarak kullanmakYasak (canlıdan sapıyor)
"OOS hayatta kalma oranını" satış argümanı olarak kullanmakYasak (canlının yerine geçmez)
EA yayınlama kararıYasak (MT5 canlı test zorunlu)

Python BT rakamları sadece "ilk aşama eleme göstergesi" olarak değerlendirilmeli. Gerçek yayın için MT5 canlı test şart.

İlgili Bağlantılar


FXEA365 — Gösterişli iddialı rakamlar yerine, yalnızca MT5 canlı 14 yıllık backtest ile gerçekten kanıtlanmış stratejileri ücretsiz olarak sunuyoruz.

📧 Fiyat artışı öncesi uyarılar + ücretsiz 5 günlük e-posta kursu

Tüm EA'lar lansman fiyatında ve satışlarla birlikte kademeli olarak artıyor. Her artıştan önce bildirim alın; ayrıca algoritmik ticaret, backtest okuma ve broker seçimi üzerine günlük bir e-posta.

* Gizlilik kesinlikle korunur. İstediğiniz zaman abonelikten çıkabilirsiniz.

Yorumlar ve sorular