News Blackout for MT5
- Utilitys
-
Themistokli Kola
MQL4 / MQL5 and Pine Script developer.
What I do:
- Pine Script to MQL5 / MQL4 conversions (TradingView indicators and strategies into MT5/MT4 indicators or EAs)
- Fixes and changes to existing EAs and indicators: bugs, new inputs, filters, daily limits, breakeven and trailing logic - Version: 1.0
- Aktivierungen: 5
„News Blackout for MT5“ liest den in MetaTrader 5 integrierten Wirtschaftskalender aus und legt für die von Ihnen ausgewählten Nachrichten ein Handelssperrfenster fest. Während einer Handelssperre kann das Programm ausstehende Orders löschen, Positionen schließen oder deren Stop-Loss auf Break-Even verschieben; außerdem setzt es eine globale Terminalvariable, die Ihre anderen Expert Advisors auslesen können, um neue Trades zu überspringen. Ein Fenster zeigt den Countdown bis zur nächsten Sperrphase sowie die nächsten Ereignisse an. Das Programm eröffnet niemals Trades und gibt keine Signale aus. Es ist nützlich, wenn Ihre eigenen Regeln oder die Regeln Ihres Kontos den Handel rund um Nachrichten verbieten.
Wichtig: „News Blackout“ kann keine anderen Expert Advisors deaktivieren oder die Schaltfläche „AutoTrading“ betätigen, da MetaTrader 5 dies ohne eine DLL nicht zulässt. Andere EAs laufen weiter; sie überspringen neue Trades nur, wenn sie das unten beschriebene Blackout-Flag lesen.
Einrichtung in 5 Schritten
- Fügen Sie es einmal pro Terminal hinzu. Ziehen Sie „News Blackout für MT5“ auf einen beliebigen Chart. Eine Kopie gilt für das gesamte Konto; fügen Sie es nicht mehreren Charts hinzu.
- Wählen Sie die Nachrichten aus. Wählen Sie die Wichtigkeit (nur „hoch“ oder „hoch“ und „mittel“) sowie die Währungen aus: entweder automatisch (die Währungen aller Symbole mit einer offenen Position oder einer ausstehenden Order sowie das Chart-Symbol) oder eine feste Liste wie USD, EUR, GBP. Optionale Schlüsselwörter grenzen die Ereignisse weiter ein, zum Beispiel NFP, CPI, FOMC, Rate.
- Legen Sie das Zeitfenster fest. Minuten vor und nach jedem Ereignis. Sich überschneidende Zeitfenster werden zu einem zusammengefasst.
- Wählen Sie die Aktionen aus. Pending-Orders löschen (standardmäßig aktiviert), Positionen zu Beginn der Sperrzeit schließen, SL statt zum Schließen auf Break-Even verschieben, die gelöschten Pending-Orders anschließend neu platzieren sowie die Filter für Symbol und Magic Number.
- Aktivieren Sie den algorithmischen Handel in der Symbolleiste und in den EA-Einstellungen (erforderlich zum Löschen und Schließen von Orders), klicken Sie auf „OK“ und überprüfen Sie das Fenster: Status: „Clear“ mit dem Countdown bis zur nächsten Sperrzeit und den nächsten Ereignissen darunter.
Kalendereinstellungen
- Wichtigkeit – Nur „Hoch“ (Standard) oder „Hoch“ und „Mittel“.
- Währungen – Auto: die Basis- und Gewinnwährungen jedes Symbols mit einer offenen Position oder einer Pending-Order sowie das Chart-Symbol. Feste Liste: die Währungen in der nächsten Eingabe.
- Feste Währungsliste – durch Kommas getrennte Liste, zum Beispiel USD,EUR,GBP (nur im festen Modus).
- Nur Ereignisse, deren Name enthält – durch Kommas getrennte Liste von Wörtern; ein Ereignis wird nur berücksichtigt, wenn sein Name eines davon enthält. Leer = alle Ereignisse.
- Ereignisse überspringen, deren Name enthält – durch Kommas getrennte Liste von Wörtern; übereinstimmende Ereignisse werden ignoriert.
- Ereignisse, die ohne genaue Uhrzeit aufgeführt sind (ganztägig oder vorläufig), werden nicht verwendet, und im Expertenprotokoll wird angegeben, wie viele es sind.
Zeitfenster
- Die Sperre beginnt N Minuten vor dem Ereignis – Standardwert 15.
- Die Sperre endet N Minuten nach dem Ereignis – Standardwert 15.
Aktionen
- Ausstehende Orders während der Sperrzeit löschen – löscht zu Beginn alle betroffenen ausstehenden Orders sowie alle neuen, die während der Sperrzeit platziert werden.
- Offene Positionen zu Beginn der Sperrphase schließen – schließt betroffene Positionen einmalig, sobald die Sperrphase beginnt. Requotes werden erneut versucht; jeder Fehlversuch wird mit dem Code des Handelsservers angezeigt.
- SL an Break-even verschieben statt zu schließen – Eine Position, die mindestens um den nächsten Eingabewert im Gewinn liegt, wird an Break-even verschoben, anstatt geschlossen zu werden. Der Stop-Loss wird niemals erweitert.
- Mindestabstand zum Break-Even, Punkte – Standardwert 50.
- Gelöschte Pending-Orders nach der Sperrphase erneut platzieren – die gelöschten Orders werden mit demselben Typ, Kurs, SL, TP, Volumen, Kommentar, der Magic Number und der Gültigkeitsdauer erneut platziert. Eine Order, deren Kurs nicht mehr gültig ist oder deren Gültigkeitsdauer abgelaufen ist, wird übersprungen, und im Panel wird der Grund dafür angegeben.
- Symbolbereich – Symbole der betroffenen Währungen (Standard) oder alle Symbole.
- Magic Number – nur Orders und Positionen mit dieser Magic Number; -1 = alle, einschließlich manueller Trades.
Blackout-Flag für Ihre anderen EAs
Wenn „Globale Variablen setzen“ aktiviert ist, setzt der EA NB_BLACKOUT (1 während eines Blackouts, andernfalls 0) und NB_NEXT_EVENT (Serverzeit des nächsten ausgewählten Ereignisses, 0, falls keines vorhanden ist). Wenn der EA entfernt wird, wird NB_BLACKOUT wieder auf 0 gesetzt. Verwenden Sie dies in Ihrem eigenen EA, bevor Sie einen Trade eröffnen:
bool NewsBlackoutActive()
{
return(GlobalVariableCheck("NB_BLACKOUT") && GlobalVariableGet("NB_BLACKOUT")==1.0);
}
// in OnTick: if(NewsBlackoutActive()) return; // neue Trades während der Sperrzeit überspringen
Warnmeldungen
- Warnung N Minuten vor einem Blackout – eine Terminalwarnung vor jedem Blackout; 0 = aus.
- Benachrichtigung bei Beginn und Ende eines Blackouts – eine Terminalbenachrichtigung, wenn ein Blackout beginnt (mit den Ereignisnamen) und wenn er endet.
- Push-Benachrichtigungen senden – dieselben Benachrichtigungen als Push-Benachrichtigungen an Ihre MetaQuotes-ID (Benachrichtigungen müssen in den Terminal-Optionen aktiviert sein). Fehlgeschlagene Schließungen, Löschungen und Neupositionen werden immer gemeldet.
Bedienfeld
Produktname; Status (Leer, BLACKOUT AKTIV bis hh:mm, Kalenderdaten nicht empfangen, Tester: im Leerlauf); der Countdown bis zum nächsten Handelsausfall oder die Ereignisse des aktuellen Ausfalls; die nächsten 1 bis 5 Ereignisse mit Uhrzeit, Währung, Wichtigkeit und Name; die letzte Aktion; der letzte Fehler in einfachen Worten. Alle Zeiten entsprechen der Handelsserverzeit, genau wie im Kalender des Terminals. Die Minus-Schaltfläche blendet das Panel aus, die Plus-Schaltfläche öffnet es.
Hinweise
- Der Kalender wird für die nächsten 48 Stunden ausgelesen und jede Minute sowie nach einer erneuten Verbindung aktualisiert. Wenn 10 Minuten lang keine Kalenderdaten eintreffen, während das Terminal verbunden ist, zeigt das Fenster „Kalenderdaten nicht empfangen“ an – es geht niemals davon aus, dass die Luft rein ist.
- Ein Neustart während eines Ausfalls wiederholt dessen Aktionen oder Warnmeldungen nicht: Der EA merkt sich den bereits bearbeiteten Ausfall.
- Im Strategietester ist der Wirtschaftskalender nicht verfügbar; der EA bleibt inaktiv und gibt dies an.
- Screenshot 2 zeigt Beispielereignisse, die zu Demonstrationszwecken erstellt wurden, sodass Sie das Bedienfeld während eines aktiven Stromausfalls sehen können.
