Platformlar ve araçlar

NinjaTrader mı MT5 mi? Türleri, test modunu ve gerçek maliyeti eşitleyin

Aynı robot kuralında int bölmesinin kesri nasıl sildiğini görün. Veri ve fill varsayımlarını karşılaştırın; ayrı TRY örneği abonelik ödeme zamanının plan sıralamasını nasıl tersine çevirdiğini gösterir.

Koyu petrol zeminde büyük krem FRACTION yazısı; sağ üstte mint dikey prizma, altında eğik uzun mint levha ve sağ altta iri mint küp.
Yapay zekâ ile üretilmiş editoryal görsel; İngilizce FRACTION yazısı ve ayrılan mint parçalar kesir/tür dönüşümü konusunu çağrıştırır, gerçek grafik 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…

  • Bölme öncesi işlenen dönüşümüyle sonradan sonuç dönüşümünü ayırabilirsiniz.
  • İki platformun veri, dolum ve olay varsayımlarını küçük kontrolde eşitleyebilirsiniz.
  • Abonelik/işlem maliyetlerini özgün para birimi ve ödeme zamanıyla karşılaştırabilirsiniz.

Kavramları makaleden ayrılmadan öğrenin

Backtesting — geçmiş veriyle strateji testi İşlem planı CFD — fark sözleşmesi Komisyon Demo hesap ESMA düzenlemesi ve ulusal CFD önlemleri

NinjaTrader ile MetaTrader 5’i gerçekten gereken enstrüman, hesap ve görev için karşılaştırın. İkisi de algoritmik çalışmayı destekler; piyasalar, bağlantılar, veri ve simülasyon modları farklıdır. Platform adı tam piyasa derinliği, doğru dolum veya ekonomik lisans kanıtı değildir. Yazılım yeteneğini broker ürünü ve veri aboneliğinden ayrı yazın.

Her platform hangi ihtiyaca hizmet eder?

MT5 çok varlıklı bir platformdur; hangi araç ve işlevlerin bulunacağı brokerın tüzel kişisi ve hesap türüne bağlıdır. Döviz ve CFD yanında borsada futures sunan hesaplar da olabilir. AB düzenleyici statüsü firmanın mutlaka MT5 sunduğunu göstermez. Önce ürünün ve hesabın gerçek erişimini kontrol edin.

NinjaTrader Desktop belgelenmiş bağlantılarıyla birkaç piyasa destekler; tek futures brokerına kapalı değildir. EEA hesap rehberi CySEC 342/17 lisansıyla Payward Europe Digital Solutions (CY) Limited’i adlandırır. Desteklenen ikamet ülkelerini başvurunun ülke listesi belirler; bireysel onay ayrıca gerekir. Her kullanıcının ABD aracılık hesabı açacağını veya Türkiye’den başvurusunun kabul edileceğini varsaymayın.

Veri ve hacim nasıl farklıdır?

Borsadaki gerçekleşmiş hacim ile görünen emir defteri miktarı ayrı soruları yanıtlar. NinjaTrader kapsamı bağlantı ve aboneliğe bağlıdır; program Level II’yi yaratmaz. Görünen teklifler siz ulaşmadan çekilebilir. MT5 de sembol sağlıyorsa tick hacmi ile gerçek işlem hacmini ayrı tutar. Futures akışı veya tek OTC akışı bütün dünya spot-FX hacmi değildir.

OTC forex için tek birleşik piyasa çapında hacim akışı yoktur. Broker FX grafiği sıklıkla tick hacmi gösterir; verisi sağlayan borsa ürünü gibi sembollerde MT5 gerçek işlem hacmini de gösterebilir. MqlRates içindeki tick_volume ve real_volume ayrı alanlardır. Ayrım yalnız platform markasından değil ürün ve beslemeden gelir.

Aynı filtrede kesir dönüşümden önce kaybolabilir

Bir robotu taşırken sayısal türleri de kontrol edin. Kaynak örnek, üç koşuldan ikisinin sağlanma payıdır: int a = 2; int b = 3;. C# ve MQL5’te (double)(a / b) önce int bölmesiyle 0 üretir, sonra bunu 0,0’a dönüştürür. (double)a / b ise işleneni önce dönüştürür; sonuç yaklaşık 0,6667’dir.

Kesir, tür dönüşümünden önce kaybolurİki int: a = 2 ve b = 3. Bölmenin sonucunu double yapmak sıfır verir. Önce a’yı dönüştürmek yaklaşık 0,667 verir. Yalnız ikincisi 0,5’ten büyük eşiğini geçer.Aynı girdi: int a = 2; int b = 3;Dönüşüm yalnız bölmeden sonra(double)(a / b)0 → 0,0Bölmeden önce işleneni dönüştür(double)a / b2,0 / 3≈ 0,667Filtre: ratio > 0,500,51
Aynı eşik karşısında farklı konum, daha emir verilmeden mantık farkını gösterir. Şeklin verisi iki koşulun üçün içindeki boyutsuz payıdır; kâr olasılığı değildir.

ratio > 0.5 filtresinde ilki geçmez, ikincisi geçer. Hedef değişkeni double yapmak yetmez: double x = a / b; yine 0,0 alır. Kesilen kesir sonradan geri gelmez. Bu parçaya küçük girdi/çıktı denetimi yazıp iki dilde karşılaştırın; bütün stratejiyi taşımadan önce farkı çözün. Buradaki hesap platform hızı veya getiri karşılaştırması değildir.

C# mi MQL5 mi?

NinjaScript C# çerçevesini genişletir, MetaTrader tarafında MQL5 kullanılır. Gereken kod, kütüphane ve hesap arayüzüne göre seçin. Hiçbir dil daha hızlı öğrenme veya daha iyi işlem garantisi vermez. Tür dönüşümünün yanında olay zamanı ve emir durumunu da sınayın. Önce işlenen dönüşümü ile kesilmiş sonuç dönüşümü aynı işlem değildir.

MQL5 belgelenmiş bir ortam ve hazır program pazarı sunar; uyumluluk ile davranış yine kontrol edilmelidir. Kütüphane size kesin kaç hafta kazandıracağını söylemez. Yeniden başlatınca mevcut emirlerin nasıl tanındığını ve yinelenen gönderimin nasıl önlendiğini kaydedin. EA temelleri bu çerçeveyi açıklar; bir dilin sözdizimini bilmek hesap durumunu doğru yönettiğinizi kanıtlamaz.

Hangi geçmiş test daha doğru?

NinjaTrader Playback, Level I/II Market Replay kaydı veya derinliksiz tarihsel tick kullanabilir. Strategy Analyzer ise tarihsel dolum modelini uygular. Standard bar içi varsayımsal yol, High daha ince ikincil veri kullanır. Tick Replay farklı hesaplama özelliğidir; High Order Fill Resolution ile birlikte kullanılamaz. Daha hareketli grafik, testin sorunuza uygunluğunu tek başına göstermez.

Stratejinin ihtiyaç duyduğu davranışı tek tek kontrol edin. NinjaTrader belgelerinde Sim101 ve Playback101 için seans sonu TimeInForce süresinin uygulanmadığı belirtilir; başarılı replay bu iptal kuralını doğrulamaz. Ayrıntılı kayıt da gelecekteki kendi sıranızı veya piyasa etkinizi garanti etmez. Geçmiş fiyat ile sizin emrinizin varsayılan dolumu ayrı katmanlardır.

MT5 brokerın gerçek tick’leri veya üretilmiş tick’lerle çalışabilir. Dakika barı olup gerçek tick’i eksik dakikada, gerçek-tick modunda bile üretilmiş veri gerekebilir. Çoklu döviz testi o araçları gerçekten kullanan EA ister. Genetik optimizasyon ve dağıtık hesaplama aramayı/hesabı değiştirir; eksik gözlemi kaliteli yapmaz. Walk-forward uygularken ayrı dönem kullanıp tekil işlemleri inceleyin.

Toplam maliyet ve broker bağlantısı nasıl karşılaştırılır?

MT5 istemcisi platform aboneliği olmadan sağlanabilir; hesap, veri, finansman, komisyon ve hosting maliyetleri ayrıdır. NinjaTrader ABD tarifesi kendi Clearing tüzel kişisinin Free/Monthly/Lifetime planlarını açıklar. Desktop Multi-Broker eklentisi ayrı bağlantı ürünüdür. Ülke, hesap ve all-in tarife aynı kapsamda olmadan görünen oranı uygulamayın.

Kaynağın tamamen kurgu USD tarifesinde A taraf başına 0,50 ve aylık ücret 0; B taraf başına 0,40 ve aylık 49’dur. Bunlar gerçek NinjaTrader/MT5 fiyatı değildir. Tek kontratın tam açılış/kapanışında B aylık ücret öncesi 0,20 USD tasarruf eder; başa baş 49/0,20=245 tamamlanmış işlemdir. Diğer maliyetler eşit varsayılır.

Aynı diğer maliyetler; tamamlanmış işlem başına tek kontrat
Aylık tamamlanmışAB
100100 USD129 USD
245245 USD245 USD
300300 USD289 USD

Dört ayda 100; 400; 100; 400 tamamlanmış işlem varsayın. Hep A toplam 1.000 USD; hep B 0,80×1.000+4×49=996 USD. Model her ay başlamadan ücretsiz plan seçimine izin verirse sakin ay A, yoğun ay B ile 100+369+100+369=938 USD olur. Bu açık geçiş varsayımıdır, gerçek lisans koşulu değildir. Ayın gerçekleşmiş hacmini gördükten sonra geriye dönük plan seçemezsiniz.

Taahhüt, değişiklik son saati ve geri dönüş ücretini kontrol edin. Aboneliği haklı çıkarmak için işlem sayısını artırmak maliyet modelinin sonucu değildir. Aynı kurala ait komisyon tasarrufunu hesaplarken veri ve platform değişiminin emir sürecini de değiştirmediğini doğrulayın. Maliyetin düşmesi strateji kazancını kanıtlamaz.

TRY karşı örneği: USD’de ucuz olan plan TRY’de pahalı olabilir

Aynı kurgu A/B tarife tutarlarıyla ayrı bir ayda 300 tamamlanmış işlem olsun. USD yükümlülük toplamları yine A 300 ve B 289. Fakat bu yeni modelde yalnız B’nin 49 USD aboneliği ay başında 50 TRY/USD’den, iki planın değişken komisyonları ay sonunda 40 TRY/USD’den hemen ödenip TRY’ye çevrilsin. Gerçek kur, TCMB kuru, sağlayıcı dönüşüm politikası veya hesap teklifi değildir; fonları USD tutan portföyün kâr/zarar hesabı da değildir.

A’da 300×1×40=12.000 TRY. B’de 300×0,80×40+49×50=9.600+2.450=12.050 TRY. USD’de 11 daha düşük B maliyeti, bu ödeme varsayımlarında TRY’de 50 daha yüksektir. B’nin bütün 289 USD’sini son kur 40 ile çevirip 11.560 yazmak, erken ödenmiş aboneliği yanlış tarihte değerler; maliyeti 490 TRY eksiltir.

TRY: ödeme zamanı plan sıralamasını tersine çevirebilirKurgu A 0,50 USD/taraf ve aylık 0; B 0,40 USD/taraf+49 USD/ay. 300 tek kontrat gidiş dönüş; abonelik anında 50 TRY/USD, değişken ücretler anında 40 ile ödenir. Başka ücretler eşit.VARSAYIMSAL HESAPLAMAA: bütün değişken maliyet12.000 TRYB: değişken + erken abonelik12.050 TRYYanlış: bütün B’yi son kurlaçevir11.560 TRY
TRY: ödeme zamanı plan sıralamasını tersine çevirebilir. Kurgu A 0,50 USD/taraf ve aylık 0; B 0,40 USD/taraf+49 USD/ay. 300 tek kontrat gidiş dönüş; abonelik anında 50 TRY/USD, değişken ücretler anında 40 ile ödenir. Başka ücretler eşit.

Para birimi kadar ödeme tarihi de maliyet girdisidir. Aynı gün aynı kur varsayımı yoksa USD sıralamasını TRY’ye tek katsayıyla taşımayın; kurlar ve tarife yalnız bu örneğe atanmıştır.

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

A: bütün değişken maliyet
12.000 TRY – 300 USD×40. Ödeme zamanına göre dönüştürülür.
B: değişken + erken abonelik
12.050 TRY – 240 USD×40 +49 USD×50. USD toplam 289 daha düşük olsa da TRY 50 daha yüksek.
Yanlış: bütün B’yi son kurla çevir
11.560 TRY – 289×40 erken ödenmiş aboneliği yanlış zamanda değerler; gerçek kurgu maliyeti 490 TRY eksiltir.

Bu ayrı maliyet temelinde B’nin işlem başına tasarrufu 0,20×40=8 TRY, sabit aboneliği 2.450 TRY’dir. Eşitlik 2.450/8=306,25 tamamlanmış işlemde; tam sayı ilk avantaj 307’de gelir. 306 işlemde A 12.240, B 12.242; 307’de A 12.280, B 12.274 TRY. Kaynak USD başa baş 245 yanlış değildi; para birimi ve ödeme zamanı varsayımı değişince eşik de değişti.

Her yükümlülüğün özgün para birimini, ödeme anını ve kullanılan dönüşümü saklayın. İki plan aynı zamanda aynı kurla ödense sıralama korunurdu; farklı zamanlar bu koşulu bozabilir. Elinizde gelecekteki kur yoksa bunu kesin tasarruf diye planlamayın. Model kur riskini görünür yapar; artacak/azalacak kur tahmini veya işlem sayısını yükseltme önerisi değildir.

İki tipik durumda nasıl seçersiniz?

İki senaryo da varsayımsaldır, gerçek kişiler değildir. A durumunda kullanıcı desteklenen MT5 hesabına, uygun sembol verisine ve test edilmiş MQL5 koduna sahiptir. Geçiş için eksik test işlevi veya bağlantı gibi somut neden gerekir; tanıdık grafik ya da “daha profesyonel” etiketi yetmez. Ürün değişimini yazılım karşılaştırmasından ayırın.

B durumunda kullanıcı kayıtlı derinlikle futures oturumunu çalışmak ister. Tam enstrüman ve tarih için kullanılabilir Market Replay verisini kontrol edip gereken emir davranışını sınayın. Veri, platform ve hesap maliyetini karşılaştırın. Simülatör veya en küçük kontrat her sermayede karşılanabilir risk demek değildir. Ülke uygunluğu ve kabul, ürün testinden ayrı kalır.

Yarın ne yapmalı?

  1. Enstrüman, hesap tüzel kişisi, bağlantı ve test araçlarını yazın. Gerçekte desteklenen platformları ve toplam maliyeti karşılaştırın; bölgesel etiket uyum kanıtı değildir.
  2. Desteklenen brokerınızdan MT5 demo ile tek paritede Strategy Tester’ı inceleyin; every-tick ve optimizasyonun varsayımlarını, gerçek/üretilmiş veri kapsamını kaydedin.
  3. Uygun Market Replay kaydı veya tarihsel tick Playback seçin; veri içeriğini ve ayrı simülasyon çalışma alanını kullanın. Grafik hareketinden tam derinlik veya seans sonu iptalini çıkarmayın.
  4. Lifetime ücreti ödemeden gerçek beklenen kontrat sayınızı, komisyon tasarrufunu, diğer ücretleri ve ödeme zamanını karşılaştırın. Gelecekteki faaliyet veya kuru sonradan biliniyormuş gibi kullanmayın.
  5. Otomasyonda kuralı dilden bağımsız yazıp tür dönüşümü, olay ve ilk emir durumunu küçük örnekte karşılaştırın. NinjaTrader, MT5 ve cTrader/MT5 rehberleriyle eksik bağlantıyı tamamlayın.

Anladığınızı kontrol edin

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

int a = 2 ve int b = 3 iken filtre ratio > 0.5 istiyor. C# ve MQL5’te hangisi geçer?

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

Doğru. a bölmeden önce dönüştürülür; yaklaşık 0,6667 elde edilir ve 0,5’ten büyüktür.

Diğer sorular

NinjaTrader ve MT5’in tek cümlelik farkı nedir?
Gerçek ürün, hesap bağlantısı ve görevi karşılaştırın: manuel Playback, algoritma testi veya live gerçekleşme. MT5 borsa verisi alabilir, NinjaTrader Desktop birkaç desteklenen sağlayıcı kullanabilir. Hesabın gerçekte ne sağladığını doğrulamadan marka üzerinden seçim yapmayın.
Otomasyon için NinjaScript mi MQL5 mi?
Mevcut kod, hesap API’si ve gereken kütüphane evrensel kolay-dil sıralamasından önemlidir. Taşınan kuralı türler ve emir durumuyla sınayın. Kaynak örnekte int bölmesinden sonra dönüşüm 0 verir; işleneni önce dönüştürmek yaklaşık 0,6667 verir. Hedef değişkenin double olması tek başına yetmez.
Hangi geçmiş test daha doğru?
Evrensel kazanan yoktur. Veriyi ve dolum varsayımını soruya eşitleyin. NinjaTrader tarihsel dolum, Market Replay ve Tick Replay ayrı sınırlara sahiptir; Sim101/Playback101 seans sonu TimeInForce uygulamaz. MT5 gerçek-tick modunda eksik gözlem üretebilir. Etkilenen işlemleri inceleyin; mod adını kanıt saymayın.
Platformların maliyeti ne kadar?
İlgili ülke, hesap, veri ve ürün tarifesini uygulayın. Kurgu kaynak modelde 49 USD abonelik ve işlem başına 0,20 tasarruf, USD’de 245 başa baş verir; diğer ücretler eşittir. Bu NinjaTrader veya MT5 tarifesi değildir. Taahhüt ve geçiş zamanı da hangi politikanın uygulanabildiğini belirler.
TRY örneğinde B niçin daha pahalı?
USD toplamı daha düşük olsa da 49 USD abonelik 50 kuruyla erken ödenir, değişken ücret 40 kuruyla sonra ödenir. 300 işlemde A 12.000, B 12.050 TRY olur. B’nin bütün 289 USD’sini 40 ile çevirmek 11.560 gösterip 490 eksiltir. Bu, yükümlülüklerin anında TRY’ye çevrilip ödendiği kurgu maliyet karşılaştırmasıdır; USD portföy değerlemesi veya sağlayıcı politikası değildir.

Kaynaklar ve doğrulama

  1. Microsoft — C# arithmetic operators

    Int bölmesi ve bölme öncesi işlenen dönüşümü; sonucun sonradan double atanması kesri geri getirmez.

  2. MQL5 — Typecasting

    İşlenen tür önceliği, int ifade ve hedef atama ayrımı; örnekler çalıştırılmış native derleyici testi değildir.

  3. NinjaTrader — Historical Fill Processing

    Standard bar içi yol, High ikincil veri ve Tick Replay ile uyumsuzluk.

  4. NinjaTrader — Playback Set Up

    Replay veri kapsamı ve Sim101/Playback101 seans sonu TimeInForce sınırlaması.

  5. MetaTrader 5 — Real and Generated Ticks

    Broker tick verisi ve eksik dakika/tick durumları; mod adı eksiksiz kayıt kanıtı değildir.

  6. MQL5 — MqlRates

    Tick ve gerçek işlem hacmini ayrı alanlarda tanımlar; veri erişimi sembole bağlıdır.

  7. MetaTrader 5 — Strategy Tester

    Çoklu sembol, genetik/dağıtık hesaplama ve dönem ayrımı; gelecek başarı garantisi olarak yorumlanmaz.

  8. NinjaTrader — EEA account guide

    PEDSL-CY/CySEC 342/17 ve ikamet ülke listesi; kişisel kabul veya Türkiye uygunluğu varsayılmaz.

  9. NinjaTrader — US plans

    ABD Clearing hesap planlarının kapsamı; burada A/B 49 USD modelleri sağlayıcının tarifesi değildir.

  10. BIS — FX trade execution landscape,2025 survey

    Spot ve çoğu FX türevinde OTC, merkezsiz ve parçalı piyasa yapısı; tek broker akışı bütün spot-FX hacmi değildir.

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.