MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 1187

 
Сергей Таболин :

Yanılıyor olabilirim, ama bence danışmanın nasıl çalıştığı hakkında hiçbir fikriniz yok. "Program çalışıyor" ne anlama geliyor?

İpucu-ipucu - yeni başlayanlar için OnInit, OnTick ve OnDeinit'in ne olduğunu anlayın. Bundan sonra her şeyin rayına oturacağını düşünüyorum.

Genel olarak, cevabınıza bakılırsa, programın nasıl çalıştığını gerçekten anlamıyorsunuz. Bu aptalca bir soru gibi görünüyor. Evet, önceki yorumcunun durduğunu düşündüğü gibi. Sadece diğer dillerde programlama deneyiminden yola çıkarak, vücudunu bir döngü içinde çalıştırdığını ve bir olay geldiğinde onun içine daldığını düşünüyorum. Program gövdesini bir döngüde çalıştırıyorsa, bu, programın neden bu şekilde yazıldığını açıklar.
 

Hepinize iyi günler! MT4'te bir EA test ediyorum.
Print() işlevinin MT-4 Tester Log'da yalnızca 1 kez ve yalnızca son saat değeriyle yazdırılması için lütfen hangi dil yapısının veya MQL4 işlevinin kullanılabileceğini söyleyin. İşte basit bir kod.

 int g;
void OnTick ()
{
if (Hour()>g)
{
Print ( "------------------------------------=" ,Hour());
g=Hour();
}
}

Print(), her saat başı MT-4 Journal'da yazdırılır

 2020.06 . 24 15 : 54 : 12.250 2010.01 . 04 06 : 00 : 00   ОПТИМ КОДА EURUSD,M1: ------------------------------------= 6
2020.06 . 24 15 : 54 : 12.249 2010.01 . 04 05 : 00 : 00   ОПТИМ КОДА EURUSD,M1: ------------------------------------= 5
2020.06 . 24 15 : 54 : 12.249 2010.01 . 04 04 : 00 : 00   ОПТИМ КОДА EURUSD,M1: ------------------------------------= 4
2020.06 . 24 15 : 54 : 12.248 2010.01 . 04 03 : 00 : 00   ОПТИМ КОДА EURUSD,M1: ------------------------------------= 3
2020.06 . 24 15 : 54 : 12.247 2010.01 . 04 02 : 00 : 00   ОПТИМ КОДА EURUSD,M1: ------------------------------------= 2
2020.06 . 24 15 : 54 : 12.247 2010.01 . 04 01 : 00 : 00   ОПТИМ КОДА EURUSD,M1: ------------------------------------= 1
2020.06 . 24 15 : 54 : 12.214 2010.01 . 01 00 : 00 : 00   ОПТИМ КОДА test started
2020.06 . 24 15 : 54 : 12.196 TestGenerator: spread set to 2
2020.06 . 24 15 : 54 : 09.838 Expert ОПТИМ КОДА EURUSD,M1: loaded successfully
2020.06 . 24 15 : 54 : 09.827 Expert ОПТИМ КОДА EURUSD,M1: removed

Ve MT-4 Journal'da yalnızca bir kez son saat değeriyle yazdırılacak Print()'e ihtiyacım var. Sondan bir öncekini, yani Journal'da son Print() işlevi göründükten sonra önceki Print() girişini silmek mantıklı olacaktır. Bir siparişi, grafiksel bir nesneyi nasıl sileceğimi biliyorum. Ama yine de Print() girişini Journal'dan nasıl kaldıracağımı bilmiyorum.

yardım için teşekkürler

Документация по MQL5: Общие функции / Print
Документация по MQL5: Общие функции / Print
  • www.mql5.com
Данные типа double выводятся с точностью до 16 десятичных цифр после точки, при этом данные могут выводиться либо в традиционном либо в научном формате – в зависимости от того, как запись будет наиболее компактна. Данные типа float выводятся с 5 десятичными цифрами после точки. Для вывода вещественных чисел с другой точностью либо в явно...
 
Valeriy Yastremskiy :
Numara. Kene uzman tarafından kesilmez. EA çalışıyorsa, gelen onay işaretleri atlanır. Bittiğinde, bekleme modunda, bir sonraki onay işareti onu yeniden başlatacaktır.
Sizin mantığınıza göre programın parti ayarlama fonksiyonuna asla gitmeyeceği ortaya çıkıyor. Ancak program resmi yayıncıdan bu şekilde yazılmıştır . Fonksiyonların sırasını önceki gönderilerde yazmıştım.
 
Tekrar sorayım, düşüncelerimi önceki yorumcularla paylaştım. Resmi örnekte, program gövdesinde parti hacminin hesaplanması önerilmiştir, ancak bunu her bir tick üzerinde hesaplamak mantıklı değil mi? Neden programın gövdesinde yazıyor?
 
Danışman yüklenemiyor . Ne yapalım? yükleme düğmesine basılmaz. Aslında, bastığınızda hiçbir şey olmuyor.
 
Сергей Таболин :

Kalaş mı Maxim mi? ))))))))))))


Soru:

Senaryo var. Standart araçlar kullanılarak bir Uzman Danışmandan başlatılamaz. Bu yüzden danışmana fonksiyon olarak eklemeniz gerekiyor. Ancak, senaryoyu düzenlerken Expert Advisor'da aynı düzenlemeleri gerçekten yapmak istemiyorum. Nasıl karar verilir? Dahil mi?

sınıflar) ve nesneler
veya ekleyin)
 
Ivan_Invanov :
Sizin mantığınıza göre programın parti ayarlama fonksiyonuna asla gitmeyeceği ortaya çıkıyor. Ancak program resmi yayıncıdan bu şekilde yazılmıştır . Fonksiyonların sırasını önceki gönderilerde yazmıştım.
Başlatma ve başlatma bir kez çalışır. Başında ve sonunda.
 
Ivan_Invanov :
Genel olarak, cevabınıza bakılırsa, programın nasıl çalıştığını gerçekten anlamıyorsunuz. Bu aptalca bir soru gibi görünüyor. Evet, önceki yorumcunun durduğunu düşündüğü gibi. Sadece diğer dillerde programlama deneyiminden yola çıkarak, vücudunu bir döngü içinde çalıştırdığını ve bir olay geldiğinde onun içine daldığını düşünüyorum. Program gövdesini bir döngüde çalıştırıyorsa, bu, programın neden bu şekilde yazıldığını açıklar.

Yorumunuza bakılırsa bunu da anlamıyorsunuz. ((((

"Diğer diller" değil, MQL!!!

Size de tavsiye - bu paketin tam olarak nasıl çalıştığını anlayın.

Diğer tüm fonksiyonlar türevlerdir.

Anlamak.

 
Ivan_Invanov :
Evet anlamadım o yüzden soruyorum Ontick'in bir olay olduğunu biliyorum, ancak EA'nın bundan sonra nereye gideceğini anlamıyorum. Daha sonra programın gövdesinden geçecek ve parti hacminin hesaplanması yapılacak mı? yoksa çalışmayacak mı? neden resmi yayıncının danışmanı bu şekilde yazılmıştır .

Ve buradaki birinin sizin için belgeleri kişisel olarak yeniden yazmaya başlayacağını mı düşünüyorsunuz? Bu senin için doğru mu? Ve burada mı? Kendini kaşı....

 
Ivan_Invanov :
Evet anlamadım o yüzden soruyorum Ontick'in bir olay olduğunu biliyorum, ancak EA'nın bundan sonra nereye gideceğini anlamıyorum. Daha sonra programın gövdesinden geçecek ve parti hacminin hesaplanması yapılacak mı? yoksa çalışmayacak mı? neden resmi yayıncının danışmanı bu şekilde yazılmıştır .

Kodu gösterirsiniz (ancak kodu gösterirseniz, telif hakkının tam olarak göründüğünü anlamalısınız) ve çocuklar danışman şemasına bakacak ve anlaşmanın açılmadığını veya açılmadığını söyleyecektir.