MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 1864
Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret 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
Yakın zamanda bir uyarı yayınladı: #18550 . Ancak SendNotification ekleyerek geliştirilebilir:
Seçtiğim satırları kaynak koda eklemeli, Göstergeler klasörüne atmalı ve derlemelisin. Bu gösterge çizelgeye herhangi bir sayıda eklenebilir ve farklı seviyeler aşıldığında sinyal alabilir. Kod çevrimiçi olarak sonuçlandırıldı. Sonuç kontrol edilmedi.
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma
GlaVredFX , 2022.01.17 18:59
Bana sorunun ne olduğunu söyle, kod siparişleri kapatmalı ve eğer yoksa yeni bir tane aç.
Ama nedense sadece 1 emri kapatıyor ve bir sonraki sinyale kadar duruyor.
2022.01.17 16:22:08.389 2022.01.04 08:00:00 e: Sinyal 1.1322 < kapa 1.1304 VarPosSat 0
2022.01.17 16:22:08.389 2022.01.04 08:00:00 e: Sinyal 1.1322 > kapanış 1.1304 VarPosSatın Al 1
2022.01.17 16:22:08.366 2022.01.04 04:00:00 e: Sinyal 1.1325 < kapa 1.1306 VarPosSat 0
2022.01.17 16:22:08.366 2022.01.04 04:00:00 e: Sinyal 1.1325 > kapa 1.1306 VarPosSatın Al 1
2022.01.17 16:22:08.327 2022.01.04 00:00:00 e: Sinyal 1.1326 < kapa 1.1296 VarPosSat 0
2022.01.17 16:22:08.327 2022.01.04 00:00:00 e: Sinyal 1.1326 > kapa 1.1296 VarPosSatın Al 1
2022.01.17 16:22:08.298 2022.01.03 20:00:00 e: Sinyal 1.1328 < kapa 1.1283 VarPosSat 0
2022.01.17 16:22:08.298 2022.01.03 20:00:00 e: kapanış #1 0.01 EURUSD 1.13598'den 1.12831 fiyatından satın alın
2022.01.17 16:22:08.298 2022.01.03 20:00:00 e: Sinyal 1.1328 > kapanış 1.1283 VarPosSatın Al 1
2022.01.17 16:22:08.190 2022.01.03 16:00:00 e: #4 açık 1.13512'den 0.01 EURUSD satın al tamam
2022.01.17 16:22:08.190 2022.01.03 16:00:00 e: Sinyal 1.134 < kapa 1.135 VarPosSat 0
2022.01.17 16:22:08.190 2022.01.03 16:00:00 e: Sinyal 1.134 > kapa 1.135 VarPosSatın Al 1
Sorunuza ve kodunuza biraz daha dikkat ederseniz, her şeyi kendiniz anlayacaksınız.
Bir soru var - en karlı 1 sipariş 1 barda kapatılmalı, sonra yeni bir bar bekliyoruz ve 1 karlı siparişi tekrar kapatıyoruz. Ve hepsi birden değil.
Ve ilk çubukta kapanır ve sonraki çubukta hiçbir şey olmaz.
Bir soru var - en karlı 1 sipariş 1 barda kapatılmalı, sonra yeni bir bar bekliyoruz ve 1 karlı siparişi tekrar kapatıyoruz. Ve hepsi birden değil.
O zaman doğru soruları formüle etmeniz gerekir. Sadece 1 sinyal alırsınız. Ve sonra yeni bir barın açılışında. Ve sadece 1 sinyal varsa, kaç sipariş kapatılacak?... Ve sadece sinyal yeni bir çubukta belirirse. Ve görünmezse, siparişler aşağıdaki çubuklarda kapatılacaktır. Ve yine, eğer bir sinyal varsa.
O zaman doğru soruları sormalısın. Sadece 1 sinyal alırsınız. Ve sonra yeni bir barın açılışında. Ve sadece 1 sinyal varsa, kaç sipariş kapatılacak?... Ve sadece sinyal yeni bir çubukta belirirse. Ve görünmezse, siparişler aşağıdaki çubuklarda kapatılacaktır. Ve yine, eğer bir sinyal varsa.
Bu gibi durumlarda, genellikle bir akış şeması yardımcı olur. Veya algoritmayı nokta nokta bir kağıt parçası veya bir metin dosyasında ayrıntılı olarak açıklamanız gerekir. Ve ancak o zaman kodunuzu nasıl yazacağınızı anlayacaksınız.
Mevcut olanlardan ilki tarafından açılan 1 siparişi kapatma işlevine ihtiyacımız var. Kim paylaşabilir.
Yani fark ederseniz , algoritma koda yazılır .
1) Yeni bir çubuğun görünümü
2) MA, önceki çubuğun kapanış fiyatından yüksekse 3. adıma gidin; MA kapanış fiyatından düşükse 4. adıma gidin.
3) Bir AL pozisyonu varsa , mevduat para biriminde maksimum kârlı bir pozisyonu kapatıyoruz.
3.1) Açık emir yoksa SATIN ALMAK SATIŞ pozisyonu açın.
4) Bir SATIŞ pozisyonu varsa, mevduat para biriminde maksimum kârlı bir pozisyonu kapatıyoruz.
4.1) Açık emir yoksa SATMAK SATIN AL pozisyonu açın.
Ve şimdi yine soru, yukarıdaki yazılmamış algoritmadan bu kodda doğru bir şekilde yazılmayan şey:
Kod bir dizi komut içerir. Terminal neye ihtiyacınız olduğunu bilmiyor, sadece kodda ne yazdığını biliyor!
buySignal ve sellSignal değişkenlerini global düzeyde yazın.Kod bir dizi komut içerir. Terminal neye ihtiyacınız olduğunu bilmiyor, sadece kodda ne yazdığını biliyor!
Sorun bulunduğundan bu mesajı sildim, çünkü siparişleri kârla değil, zamanla kapatmak gerekiyor.
Çünkü kar her zaman ve ihtiyaç duyulan yerde değildir.
Bu nedenle, " Mevcut olanlardan ilki tarafından açılan bir pozisyonu kapatmak " işlevine ihtiyacımız var.
Sorun bulunduğundan bu mesajı sildim, çünkü siparişleri kârla değil, zamanla kapatmak gerekiyor.
Çünkü kâr her zaman ve ihtiyaç duyulan yerde değildir.
Bu nedenle, " Mevcut olanlardan ilki tarafından açılan bir pozisyonu kapatmak " işlevine ihtiyacımız var.
Bir önceki gönderiye zamanlayıcıda açılış pozisyonları ile bir örnek eklendi. Pozisyonun açılmasını sağlamak için. Orada kendi işlevinizi değiştirebilirsiniz.
Bir önceki gönderiye zamanlayıcıda açılış pozisyonları ile bir örnek eklendi. Pozisyonun açılmasını sağlamak için. Orada kendi işlevinizi değiştirebilirsiniz.
Öyle olmasa da. İlerlemeyi izlemek gerekiyor
veya OnTradeTransaction'daki yeni işleviniz. Ve pozisyon yoksa, girin. Veya buySignal veya sellSignal için bir sinyal yazın ve örnekte gösterdiğim gibi OnTimer'da işleyin.