zamanlayıcı - sayfa 5

 
Yedelkin :
Ah, tünelin ucundaki ışık! OnTimer( ) içinde EventSetTimer() çağırılsın mı? Terminale gittiğimde mutlaka deneyeceğim. Şık çözüm için teşekkürler!

Bu çözümü en başından beri gördüm.

Sadece en iyisini denemedim.

yani EventKillTimer() veya benzeri EventSetTimer (0); zamanlayıcıyı kapatın.

 
MetaDriver :

Gerçekten milisaniye istiyorum. dileklerine katılıyorum.

Expert Advisor'da artık tehlikeli. Örneğin, senkron fonksiyon MessageBox() , kullanıcı terminalden uzaklaştığında kuyruğu hızlıca doldurabilir (Tabii ki bu tür fonksiyonlardan önce timer'ın kapatılabileceğini söyleyebiliriz).

Keşke müdahaleyi kesseler...

Документация по MQL5: Общие функции / MessageBox
Документация по MQL5: Общие функции / MessageBox
  • www.mql5.com
Общие функции / MessageBox - Документация по MQL5
 
stringo :

Milisaniyelere geçmek artık mümkün değil.

Halihazırda yazılmış olan kaç Uzman Danışman, yazarın amaçladığından 1000 kat daha fazla zamanlayıcı olayı oluşturmaya başlayacak?

Hayır, hayır .. Yani alnında değiştirmene gerek yok. Tek yapmanız gereken yeni bir fonksiyon EventSetTimerMS(long ms);

Eskisi sadece uyumluluk için bırakılmalıdır. ( EventSetTimerMS (1000) çağrılarak kolayca taklit edilebilir; )

Документация по MQL5: Работа с событиями / EventSetTimer
Документация по MQL5: Работа с событиями / EventSetTimer
  • www.mql5.com
Работа с событиями / EventSetTimer - Документация по MQL5
 
Yurich :

Expert Advisor'da artık tehlikeli. Örneğin, senkron fonksiyon MessageBox() , kullanıcı terminalden uzaklaştığında kuyruğu hızlıca doldurabilir (Tabii ki bu tür fonksiyonlardan önce timer'ın kapatılabileceğini söyleyebiliriz).

Keşke müdahaleyi kesseler...

Kesintiye gerek yok. Ancak tam olarak ne demek istediğin hakkında hiçbir fikrim yok, belki iyi bir şey .. :)

Sıralara gelince - yatağa giderseniz saniyeler içinde puan alabilirsiniz. :) Sonuçların nasıl işleneceğini bilmiyorsanız kullanmayın - üstelik basit bir tarif ve evrensel.

 
Yurich :

......... Örneğin, senkron fonksiyon MessageBox() , kullanıcı terminalden uzaklaştığında kuyruğu hızlıca doldurabilir.(Tabii ki bu tür fonksiyonlardan önce timer'ın kapatılabileceğini söyleyebiliriz ) ........

Tabiki yapacağım. ;)
 
Milisaniye ile, 500 ms'den azsa, piyasa yakında hareket etmeye başlayacaksa, keneler arasındaki süreyi ölçmeyi deneyebilir.
 
stringo :

Halihazırda yazılmış olan kaç Uzman Danışman, yazarın amaçladığından 1000 kat daha fazla zamanlayıcı olayı oluşturmaya başlayacak?

Sadece bir fikir: İsteyenler için milisaniye ekleme olasılığı varsa ve sorun sadece eski uzmanlardaysa, neden yeni bir işlev getirmiyorsunuz?

   bool EventSetTimer (
                     int   seconds,             // количество секунд для OnTimer
                     bool переключатель = false // переключатель: false - период измеряется в секундах, true - в миллисекундах
                   );

Her şeyi çok saniyeli yapın ve switch== false ise saniye değerini bir kez 1000 ile çarpın (örneğin eski Uzman Danışmanlar için).

 
Yurich :

Expert Advisor'da artık tehlikeli. Örneğin, senkron fonksiyon MessageBox() , kullanıcı terminalden uzaklaştığında kuyruğu hızlıca doldurabilir (Tabii ki bu tür fonksiyonlardan önce timer'ın kapatılabileceğini söyleyebiliriz).

Keşke müdahaleyi kesseler...


OnTimer, OnTick, OnTrade... bunlar kesintilerdir.

 
pusheax :

OnTimer, OnTick, OnTrade... bunlar kesintilerdir.

Kesinti, OnTick'in yürütüldüğü ve OnTimer gibi daha önemli bir olayın geldiği zamandır. OnTick'in yürütülmesi askıya alınır, OnTimer kodu yürütülür, ardından OnTick yeniden yürütülmeye devam eder.
 
Yurich :
Kesinti, OnTick'in yürütüldüğü ve OnTimer gibi daha önemli bir olayın geldiği zamandır. OnTick'in yürütülmesi askıya alınır, OnTimer kodu yürütülür, ardından OnTick yeniden yürütülmeye devam eder.
İşte böyle çalışıyor.