MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 1285
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
Günde 1440 sipariş varsa, bir dakikanın başlangıcı için veya daha basit bir şekilde bir dakika çubuğunun görünümü için bir kontrol olmalıdır. Ve şu anda açık. Sizde yok, bu nedenle danışman, mevcut teklifteki sembolümüzdeki koşula göre, kendi başına zor bir koşul olan her onay işareti için bir pozisyon açar. Bu koşul karşılanabilir veya karşılanmayabilir ve keneler atlanır. Ve bir noktada kritik bir hata oluşur.
Ayrıca, emir yürütme türü (bir pozisyon oluşturmak için bir anlaşma yapmak için emir) Ya hep ya hiç.
Anladım. Yardım için teşekkürler.
Bir danışmanın bu kadar çok sipariş açmasının zor olduğunu hemen düşündüm. Bu kodla sipariş sayısını sınırlamaya çalıştım
Yani, sadece 10:00'da bir sipariş açın. Ama sonuç aynı.
2020.10.27 10:25:17.548 çekirdek 1 36 Mb geçmiş verileri, 64 Mb onay verileri dahil olmak üzere 272 Mb bellek kullanıldı
Neyi yanlış yapıyorum?
Eklediğim ve değiştirdiğim kodu vurguladım
İşte günlük dosyasında yazılanlar
FD 0 10:57:05.453 çekirdek 1 ajan süreci 127.0.0.1:3000 tarihinde başladı
CS 0 10:57:05.453 çekirdek 1 127.0.0.1:3000'e bağlanıyor
JD 0 10:57:05.953 çekirdek 1 bağlı
OD 0 10:57:05.975 çekirdek 1 yetkili (aracı derleme 2650)
JL 0 10:57:05.980 test cihazı EURUSD,M1 (Alpari-MT5-Demo): 2020.09.01 00:00'dan 2020.09.10 00:00'a kadar Experts\GRAIL.ex5 testi
ÜZERİNDE 0 10:57:05.997 çekirdek 1 ortak senkronizasyon tamamlandı
CJ 0 10:57:06.223 test cihazı analiz edilen geçmişin kalitesi %100
LM 0 10:57:06.248 çekirdek 1 MetaTester 5 127.0.0.1:3000'de başladı
EJ 0 10:57:06.248 çekirdek 1 başlatma tamamlandı
LS 0 10:57:06.248 çekirdek 1 giriş (2650 oluştur)
KO 0 10:57:06.248 çekirdek 1 4372 bayt hesap bilgisi yüklendi
LI 0 10:57:06.248 çekirdek 1 1482 bayt test cihazı parametresi yüklendi
FN 0 10:57:06.248 çekirdek 1 1724 bayt giriş parametresi yüklendi
TAMAM 0 10:57:06.248 çekirdek 1 423 bayt sembol listesi yüklendi (72 sembol)
HO 0 10:57:06.248 çekirdek 1 uzman dosyası eklendi: Experts\GRAIL.ex5. 13680 bayt yüklendi
KP 0 10:57:06.248 çekirdek 1 4077 Mb kullanılabilir, kene oluşturmak için 50 blok seti
DI 0 10:57:06.248 çekirdek 1 pip cinsinden kârı hesaplayın, ilk depozito 10000, kaldıraç 1:100
LP 0 10:57:06.248 çekirdek 1 başarıyla başlatıldı
Rİ. 0 10:57:06.248 çekirdek 1 15 Kb toplam başlatma verisi alındı
DN 0 10:57:06.248 çekirdek 1 Intel Core i5-6400 @ 2.70GHz, 7883 MB
IG 0 10:57:06.248 çekirdek 1 EURUSD: senkronize edilecek sembol
RS 0 10:57:06.248 çekirdek 1 EURUSD: sembol senkronize edildi, 3720 bayt sembol bilgisi alındı
OL 0 10:57:06.248 çekirdek 1 EURUSD: 0:00:00.003'te senkronize etmek için 27 bayt geçmiş verisi yükleyin
EK 0 10:57:06.248 çekirdek 1 EURUSD: geçmiş 2019.01.02 ile 2020.10.23 arasında senkronize edildi
LK 0 10:57:06.248 çekirdek 1 EURUSD,M1: 628432 çubuk için ayrılmış geçmiş önbelleği ve 2019.01.02 06:00 ile 2020.08.31 23:59 arasında 619175 çubuk içerir
sol 0 10:57:06.248 çekirdek 1 EURUSD,M1: tarih 2019.01.02 06:00'dan başlıyor
LN 0 10:57:06.248 çekirdek 1 EURUSD,M1 (Alpari-MT5-Demo): OHLC çubuğu durumları üretiyor. Çubuk üzerinde yürütülen OnTick yalnızca başlar
JM 0 10:57:06.248 çekirdek 1 EURUSD,M1: Experts\GRAIL.ex5'in 2020.09.01 00:00'dan 2020.09.10 00:00'a kadar testi şu girdilerle başladı:
LS 0 10:57:06.248 çekirdek 1 StopLoss=30
PL 0 10:57:06.248 çekirdek 1 Kâr Al=100
FJ 0 10:57:06.248 çekirdek 1 parti = 0.1
D.P. 0 10:57:06.248 çekirdek 1 nihai bakiye 10000.00 pip
EE 0 10:57:06.248 çekirdek 1 EURUSD,M1: 39553 kene, 10068 çubuk üretildi. Ortam 0:00:000.031'de senkronize edildi. Test 0:00:00.247'de geçti (0:00:00.016 ön işleme keneleri dahil).
DE 0 10:57:06.248 çekirdek 1 EURUSD,M1: oturum açmadan testi durdurmaya kadar geçen toplam süre 0:00:00.278 (geçmiş veri senkronizasyonu için 0:00:00.031 dahil)
NQ 0 10:57:06.248 çekirdek 1 36 Mb geçmiş verileri, 64 Mb onay verileri dahil olmak üzere 272 Mb bellek kullanıldı
KE 0 10:57:06.248 çekirdek 1 günlük dosyası "C:\Users\a1960\AppData\Roaming\MetaQuotes\Tester\36A64B8C79A6163D85E6173B54096685\Agent-127.0.0.1-3000\logs\20201027.log" yazıldı
işletim sistemi 0 10:57:06.260 çekirdek 1 bağlantı kapandı
Lütfen bana söyle!
Yeni keneler geldiğinde sunucu zamanı neden güncellenmiyor?
Danışmanı başlatma anında her şey olması gerektiği gibi çalışır, ancak daha sonra zaman geçer ve mevcut dakikanın yeni değeri değişkene girmez.
Onlar. danışmanım int M = TimeMinute(TimeCurrent()); değişkeninin aldığı sayıya bağlı olarak çalışır.
Aslında, kod satırı referans kitabından ve hatta çalışmıyor.
Örneğin 12 dakika içinde başlatıldı - şimdiki zaman sunucu tarafından döndürülen değişkendeki zamana karşılık gelir ve daha sonra saat zaten 15-20 dakika olmasına rağmen değişken 12'de kalır
Kod tamamen daha iyidir, daha doğrusu işlevi nerede yarattığınız ve hangi işlevde (OnInit, OnTick, OnTime) dakika değerini alıp yazdırma işlevini çağırırsınız. OnInit içindeyse veya terminal fonksiyon alanlarının dışındaysa, öyle olmalıdır. OnTick'teyse, her tike yazdıracak ve değeri yeni bir dakikayla güncelleyecektir.
Valeriy Yastremskiy :
Kod tamamen daha iyidir, daha doğrusu işlevi nerede yarattığınız ve hangi işlevde (OnInit, OnTick, OnTime) dakika değerini alıp yazdırma işlevini çağırırsınız. OnInit'te veya terminal fonksiyonlarının alanlarının dışındaysa, öyle olmalıdır. OnTik'te ise, her tikte değeri yeni bir dakika ile yazdıracak ve güncelleyecektir.
Pekala, işte kod tamamen, hepsi bu kadar. void OnTick() işlevinde, yürütülecek ilk satır olarak en baştan başlatılır.
Yalnızca yeniden derleme veya grafiğe/silme alanına/ eklendiği anda tetiklenir. Zamanın geri kalanında, M değişkeni, EA ilk başlatıldığında alınan dakikanın değerini tutar.
Pekala, işte kod tamamen, hepsi bu kadar. void OnTick() işlevinde, yürütülecek ilk satır olarak en baştan başlatılır.
Yalnızca yeniden derleme veya grafiğe/silme alanına/ eklendiği anda tetiklenir. Zamanın geri kalanında, M değişkeni, EA ilk başlatıldığında alınan dakikanın değerini tutar.
Anladım teşekkürler!
gerekliydi
işlevin gövdesine koyun ve ondan önce değil, M değerini atayın
Anladım teşekkürler!
gerekliydi
işlevin gövdesine yerleştirin ve ondan önce değil, M değerini atayın
Farklı şekillerde mümkündür. Küresel ve yerel değişkenleri ve bunların görünürlüğünü okuyun.
Tünaydın. Açıdan trend çizgisinin açısını almaya çalışıyorum. İşte kod:
açı her zaman 0'dır. Standart kitaplık yöntemleri mi yoksa yerleşik işlevler mi kullanılacağı. Bu durumda, çizgi çizilir. Sorun nedir? Bir açı nasıl elde edilir?
Tünaydın. Açıdan trend çizgisinin açısını almaya çalışıyorum. İşte kod:
açı her zaman 0'dır. Standart kitaplık yöntemleri mi yoksa yerleşik işlevler mi kullanılacağı. Bu durumda, çizgi çizilir. Sorun nedir? Bir açı nasıl elde edilir?
https://www.mql5.com/ru/forum/103591
Elbette, ama açıyı nasıl hesaplarsınız?
https://www.mql5.com/ru/forum/103591
Elbette, ama açıyı nasıl hesaplarsınız?
Sen bir komedyensin.
Burada kimi çarmıha geriyorum?
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
Nikolai Semko , 2020.10.26 00:34
Neden hızdan korkuyorsun? Bu sadece tip döküm için bir kuraldır.
Açı algılama fonksiyonunun bir çeşidi olarak:
MT5'ten sonra, MT4 ile çalışma hissi çok kötü. Tarihe erişim bir şekilde hadım ediliyor. Keneler konusunda bile sessizim.
Göstergede böyle bir yazı tipi seçimi yapılıp yapılamayacağını söyler misiniz?