MetaTrader 5 herunterladen
Nachschlagewerk MQL5Arbeit mit EreignissenEventSetMillisecondTimer 

EventSetMillisecondTimer

Informiert den Terminal, dass für diesen Expert oder Indikator Timer Ereignisse mit Periodizität kleiner als eine Sekunde generiert werden sollten.

bool  EventSetMillisecondTimer(
   int  milliseconds      // Die Anzahl der Millisekunden
   );

Optionen

milliseconds

[in]  Die Anzahl der Millisekunden, die die Häufigkeit der Timer-Ereignisse definiert.

Rückgabewert

Gibt bei Erfolg true zurück, ansonsten false. Um Fehlercode zu erhalten, rufen Sie die Funktion GetLastError().

Hinweis

Diese Funktion ist für die diejenigen Fälle verwendet, wenn Sie hochauflösende Timer brauchen, d.h. wenn Sie Timer-Ereignisse häufiger als einmal pro Sekunde zu empfangen brauchen. Wenn Sie einen einfachen Timer mit Periode von mehr als 1 Sekunde brauchen, dann verwenden Sie EventSetTimer ().

Im Strategie-Tester wird der Mindestabstand von 1000 Millisekunden verwendet. Im Allgemeinen erhöht das kurze Intervall Testierungszeit, weil es erhöht die Anzahl der Anrufe von Timerereignis-Handler. In Echtzeitmodus werden Timer-Ereignisse nicht mehr als 1 Mal in 10-16 Millisekunden aufgrund von Hardware-Einschränkungen generiert.

Normalerweise muss diese Funktion von die Funktion OnInit() oder in Klassenkonstruktor aufgerufen werden. Um Ereignisse aus der Timer zu behandeln, muss ein Experten oder Indikator die Funktion OnTimer() haben.

Jeder Expert Advisor und jeder Indikator arbeitet mit seinem Timer und empfängt Ereignisse nur von ihm. Nach Abschluss des MQL5-Programs wird der Timer zerstört, wenn es erstellt wurde, aber wurde nicht ausschalten durch die Funktion EventKillTimer().

Für ein Programm kann nicht mehr als ein Timer gestartet werden. Jedes MQL5-Programm und jeder Chart hat seine eigenen Ereignis-Warteschlange, wo alle neu eingehenden Ereignisse geraten. Ist die Warteschlange bereits hat ein Timer-Ereignis oder dieses Ereignis ist in Bearbeitungslage, wird das neue Timer-Ereignis in Warteschlange vom MQL5-Programm nicht platziert.