Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
потому что вы берете каждый раз новое время тика, и оно конечно не равно предыдущему.
ve önceki fonksiyonda çubuğun başlangıç zamanını aldınız. yani burada kene değil, çubuğun zamanını alın.
Aptal olana koddaki hangi parametrenin hangisiyle değiştirileceğini açıklayın.
Bar zamanı nasıl tarif edilir, kene zamanı değil?
Aptal olana koddaki hangi parametrenin hangisiyle değiştirileceğini açıklayın.
Bar zamanı nasıl tanımlanır, kene zamanı değil?
Aptal olana koddaki hangi parametrenin hangisiyle değiştirileceğini açıklayın.
Bar zamanı nasıl tarif edilir, kene zamanı değil?
Burada her şey popüler olarak tanımlanmıştır Olay işleyici "yeni çubuk"
Genel olarak, bir soru sormadan önce bazen makalelere ve temel koda bakmak için çok tembel değiliz.
Вот тут все популярно описано Обработчик события "новый бар"
Genel olarak, bir soru sormadan önce bazen makalelere ve temel koda bakmak için çok tembel değiliz.
Burada mql4'te beş satırda yeni bir çubuk olup olmadığını öğrenmek mümkün oldu. Ve şimdi bir yığın dosya yazıldı, nereye koyulacağı, programın içine ne yazılacağı belli değil...
Kısacası, uzmanlar varsa, o zaman bana bir kod örneği verin, böylece acı çekmem ve kendim, elektronik bile olsa, hatta gerçek herhangi birini kütüphaneye gönderebilirim.
Hiç şüphem yok, ama sadece gösteri için soruyorum, aynı Expert Advisor'ı mql4 ve mql5 üzerinde oluşturup test sonuçlarını karşılaştıran var mı? Görünüşe göre kod doğru bir şekilde dönüştürülmüşse mükemmel olmalı? Ya da ben hatalıyım..?
Burada test yapılıyorsa ve bar-bar varsa ve mql5'te mantık onTick'te bulunuyorsa, o zaman benzer çıkacaktır.
Tek fark spreadlerde olabilir. 5-ke geçmişinde yayılır. 4-ke test cihazında yayılma, terminaldeki mevcut olana eşittir.
Test "her tik" ise, muhtemelen daha da az olacaktır, çünkü. kene oluşturma algoritmaları sürümlerde farklıdır.
Burada mql4'te beş satırda yeni bir çubuk olup olmadığını öğrenmek mümkün oldu. Ve şimdi bir yığın dosya yazıldı, nereye koyulacağı, programın içine ne yazılacağı belli değil...
Kısacası, uzmanlar varsa, o zaman bana bir kod örneği verin, böylece acı çekmem ve kendim, elektronik bile olsa, hatta gerçek herhangi birini kütüphaneye gönderebilirim.
Bekleyin, lastbar değişkenini statik veya global seviyede, iTime dizisini global seviyede ilan edin
Sayfanın isNewBar işleviyle bir örneği var
https://www.mql5.com/en/forum/2804/38752#comment_38752
1. Aynı stratejileri mql4 ve mql5 üzerinde test etmenin sonuçlarını sormam boşuna değildi.
Koşullar giriş gerekliliklerini karşılıyorsa piyasaya yeni bir çubukla giriyor, göstergeler ters sinyal verdiğinde pozisyonu kapatıyor ve yeni bir çubukla tekrar giriyordum.
Mql4'te yeni bir çubuğa girmek için bu prosedürü kullandım:
void Fun_New_Bar() // Ф-ия обнаружения ..
{ // .. yeni çubuk
statik tarihsaat New_Time=0; // Geçerli çubuğun zamanı
New_Bar=yanlış; // Yeni çubuk yok
if(New_Time!=Time[0]) // Zamanı Karşılaştır
{
New_Time=Zaman[0]; // Şimdi zaman
New_Bar=true; // Yeni bir çubuk aldım
}
}
Stratejime göre robotu mql4 üzerinde test etmenin sonucu şöyle görünüyor:
Yeni çubuğu belirlemek için gönderilen prosedürler için teşekkür ederiz. Çalışırlar. Yeni bir çubuğa Alert yazan bir script yaptım ve uzun süre beklememek için M1'de kontrol ettim.
Ancak aynı strateji, mql5 EA'daki her iki prosedürde de tamamen farklı sonuçlar (ve aynı sonuçları) verir:
Gömleğimi yırtıp ayaklarımı yere vurmam boşuna değil. Sonuçları tekrarlamak istiyorum ama eşleşmiyorlar.
mql4'te onStart işlevi şöyle görünür:
int başlangıç()
{
Getins();
Fun_New_Bar();
if (New_Bar==false) return(0);
if (Toplam()>0)
{
CloseSellEnd();
CloseBuyEnd();
}
if(Toplam()<1)
{
açık satın();
OpenSell();
}
dönüş(0);
}
Ve mlq5'te yaklaşık olarak aynı:
geçersiz OnTick()
{
Getins();
eğer (NewBar())
{
if (Toplam()>0) TryToClose();
if(Toplam()<1)
{
OpenBuy(Çok,10,"EUR/USD (Satın Al)",102406);
OpenSell(Lot,10,"EUR/USD (Sat)",102406);
}
}
}
Gösterge parametrelerini işlemek için GetIns ve Total() - mql4 için gerekli sihirle veya mql5 için gerekli sembolle konum sayısını verir.
Yardım.
Sanırım tutarsızlığın nedenini buldum. İnanmayacaksın. MT4 ve MT5 farklı fiyat teklifi geçmişine sahiptir. Biraz farklı gibi görünüyor, ancak strateji büyük bir farkla test ediliyor !!!!
İşte farklı terminallerde bir arsa:
Yakından bakıyorsun, bir fark var. Küçük? Ve stratejiyi test etmenin sonuçları arasındaki fark nedir, aynı zamanda küçük mü???
Geliştiricilerle iletişime geçeceğim! Ne betası!!!