UT Bot Alerts for MT4
- Indikatoren
- Ulises Calderon Bautista
- Version: 1.0
Treue MQL5 & MQL4 Umsetzung des legendären "UT Bot Alerts" Indikators von QuantNomad aus TradingView.
Ursprünglich entwickelt von Yo_adriiiiaan mit der Kernidee von HPotter, und verfeinert in Pine Script v4 mit Alerts von QuantNomad (Vadim Cissa) - einer der meistgefolgten Quant-Entwickler auf TradingView mit über 100K Followern. Das ursprüngliche Skript hat mehr als 1,1 Millionen Aufrufe und mehr als 35.500 Favoriten auf TradingView, was es zu einem der beliebtesten Open-Source-Handelsindikatoren macht, die jemals veröffentlicht wurden.
Diese Konvertierung repliziert den ursprünglichen Algorithmus mit 100%iger logischer Treue: derselbe rekursive Trailing-Stop mit 4 Zweigen, dieselbe Crossover-Erkennung, dieselbe Signalgenerierung. Kein Repainting bei geschlossenen Bars.
Was ist UT Bot Alerts?
UT Bot Alerts ist ein trendfolgendes Signalsystem, das auf einem einzigen, eleganten Konzept basiert: einem adaptiven Trailing-Stop, der die Average True Range (ATR) nutzt, um seinen Abstand zum Preis dynamisch anzupassen.
Wenn der Kurs nach oben tendiert, wird der Trailing-Stop nach oben angepasst und bewegt sich nicht nach unten - so werden Gewinne geschützt. Wenn der Kurs nach unten tendiert, wird der Stop nach unten angepasst und bewegt sich nicht nach oben. Wenn der Kurs den Trailing-Stop überschreitet, dreht das System die Richtung um und erzeugt ein Kauf- oder Verkaufssignal.
Das Ergebnis ist ein sauberer, reaktionsschneller Indikator, der:
- die Trendrichtung mit einer farblich gekennzeichneten Trailing-Stop-Linie identifiziert
- präzise Einstiegssignale bei Trendumkehr generiert
- sich automatisch an die Marktvolatilität über ATR anpasst
- Funktioniert mit jedem Instrument (Forex, Krypto, Aktien, Rohstoffe, Indizes)
- Funktioniert auf jedem Zeitrahmen (M1 bis monatlich)
Betrachten Sie ihn als eine intelligentere, an die ATR angepasste Version eines Supertrend-Indikators, der den Schlusskurs anstelle des Mittelwerts (Hoch+Tief)/2 verwendet.
Wie der Algorithmus funktioniert
Der Indikator berechnet bei jedem Balken drei Dinge: (1) einen adaptiven Trailing-Stop, (2) den aktuellen Trendstatus und (3) Kauf-/Verkaufs-Crossover-Signale.
Schritt 1 - ATR und Verlustabstand
Die Average True Range (ATR) wird mit Hilfe der Wilderschen Glättungsmethode (RMA) über den konfigurierten Zeitraum berechnet. Die Trailing-Stop-Distanz ist definiert als:
nLoss = Schlüsselwert × ATR
Ein höherer Key Value platziert den Stop weiter vom Preis entfernt (weniger Signale, weniger Rauschen). Ein niedrigerer Key Value platziert ihn näher (mehr Signale, schnellere Reaktion).
Schritt 2 - Der rekursive 4-Branch Trailing Stop
Dies ist das Herzstück des Algorithmus. Bei jedem Balken wird der Trailing-Stop anhand von vier sich gegenseitig ausschließenden Bedingungen aktualisiert:
Zweig 1 - Fortsetzung des Aufwärtstrends: Wenn der aktuelle Kurs UND der vorherige Kurs beide über dem vorherigen Trailing-Stop liegen, kann der Stop nur nach oben wandern. Er wird auf das Maximum aus dem vorherigen Stop und (aktueller Kurs - nLoss) gesetzt. Dieser "Sperrklinken"-Mechanismus sichert Gewinne, wenn der Kurs steigt.
Zweig 2 - Fortsetzung des Abwärtstrends: Wenn der aktuelle Kurs UND der vorherige Kurs unter dem vorherigen Trailing-Stop liegen, kann sich der Stop nur nach unten bewegen. Er wird auf das Minimum aus dem vorherigen Stopp und (aktueller Kurs + nLoss) gesetzt. Der Stopp folgt dem Kurs nach unten und wird bei Erholungen nachgezogen.
Zweig 3 - Bullish Reversal: Wenn der aktuelle Kurs den vorherigen Trailing-Stop übersteigt (aber der vorherige Kurs darunter lag), wird der Stop auf (aktueller Kurs - nLoss) zurückgesetzt, wodurch eine neue Aufwärts-Trailing-Sequenz eingeleitet wird.
Zweig 4 - Bearish Reversal: Wenn der aktuelle Kurs den vorherigen Trailing-Stop unterschreitet (aber der vorherige Kurs darüber lag), wird der Stopp auf (aktueller Kurs + nLoss) zurückgesetzt, wodurch eine neue Trailing-Sequenz nach unten eingeleitet wird.
Schritt 3 - Signal-Erkennung
Kauf- und Verkaufssignale werden mithilfe der Crossover-Erkennung zwischen dem Ausgangskurs und dem Trailing-Stop erzeugt:
- Kaufsignal = Der Kurs kreuzt den Trailing-Stop (der Kurs lag im vorherigen Bar unter dem Trailing-Stop, jetzt liegt er darüber)
- Verkaufssignal = Der Preis kreuzt den Trailing-Stop (der Preis lag auf dem vorhergehenden Balken darüber, jetzt liegt er darunter)
Signale werden genau einmal pro Crossover-Ereignis ausgelöst. Sie werden bei geschlossenen/bestätigten Leisten nicht erneut angezeigt.
Schritt 4 - Visualisierung
Der Indikator wird angezeigt:
- Trailing-Stop-Linie - Farbkodierung nach Trendrichtung: grün bei Aufwärtstrend (Long), rot bei Abwärtstrend (Short), blau bei neutralem/unbestimmtem Zustand
- Kaufpfeile - Grüne Aufwärtspfeile unterhalb des Signalbalkens
- Verkaufspfeile - Rote Abwärtspfeile oberhalb des Signalbalkens
- Bar Coloring (nur MQL5) - Kerzen werden grün eingefärbt, wenn der Preis über dem Trailing Stop liegt und rot, wenn er darunter liegt
- Position State Buffer - Verfügbar für EA-Zugriff über iCustom (Wert: +1 für Long, -1 für Short, 0 für Neutral)
Eingabe-Parameter
UT Bot Kern
| Parameter | Typ | Voreinstellung | Beschreibung |
|---|---|---|---|
| Schlüssel Wert | doppelt | 1.0 | ATR-Multiplikator / Empfindlichkeit. Steuert den Abstand des Trailing-Stops vom Preis. Höhere Werte = weiterer Stopp, weniger Signale, bessere Rauschfilterung. Niedrigere Werte = engerer Stop, mehr Signale, schnellere Reaktion. Die ursprüngliche HPotter-Vorgabe war 3,5; QuantNomad änderte sie auf 1,0. |
| ATR-Zeitraum | int | 10 | Zeitraum für die Berechnung der Average True Range unter Verwendung der Wilderschen Glättung (RMA). Höhere Werte erzeugen eine glattere, langsamer reagierende ATR. Der ursprüngliche HPotter-Standard war 5; QuantNomad hat ihn auf 10 geändert. |
| Heikin Ashi-Kerzen als Quelle verwenden | bool | false | Wenn diese Option aktiviert ist, verwendet der Indikator Heikin Ashi-Schlusskurse anstelle von regulären Schlusskursen als Quelle für alle Berechnungen. Heikin Ashi glättet das Kursgeschehen und kann Fehlsignale in unruhigen Märkten reduzieren, allerdings um den Preis eines leicht verzögerten Einstiegs. |
Bildmaterial
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
| Nachlaufende Haltelinie anzeigen | bool | true | Schaltet die Sichtbarkeit der ATR-Trailing-Stop-Linie im Diagramm um. Die Linie ändert ihre Farbe je nach aktuellem Trendstatus (grün/rot/blau). |
| Buy/Sell-Pfeile anzeigen | bool | true | Schaltet die Sichtbarkeit der Kauf- und Verkaufssignalpfeile auf dem Chart ein und aus. |
| Preisbalken einfärben | bool | true | (nur MQL5) Wenn aktiviert, werden die Kerzen grün gefärbt, wenn der Preis über dem Trailing-Stop liegt und rot, wenn er darunter liegt. Nicht verfügbar in MQL4 aufgrund von Plattformbeschränkungen. |
| Pfeilabstand von Bar | int | 10 | Abstand in Punkten zwischen dem Signalpfeil und dem Hoch/Tief des Balkens. Erhöhen Sie diesen Wert, wenn sich die Pfeile mit den Kerzen in Ihrem Chart überschneiden. |
Warnungen
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
| Popup-Warnung | bool | true | Zeigt einen Popup-Warndialog an, wenn ein Kauf- oder Verkaufssignal erzeugt wird. |
| Ton-Alarm | bool | true | Einen Ton abspielen, wenn ein Signal erzeugt wird (alert.wav für Kauf, alert2.wav für Verkauf). |
| Push-Benachrichtigung | bool | false | Senden Sie eine Push-Benachrichtigung an Ihr mobiles Gerät. Erfordert die MetaTrader Mobile App, konfiguriert unter Extras → Optionen → Benachrichtigungen. |
| E-Mail-Benachrichtigung | bool | false | Eine E-Mail-Benachrichtigung senden. Erfordert eine SMTP-E-Mail, die unter Extras → Optionen → E-Mail konfiguriert ist. |
Empfohlene Einstellungen nach Markt
Dies sind von der Community getestete Parameterrichtlinien. Führen Sie immer einen Backtest mit Ihrem spezifischen Instrument und Zeitrahmen durch, bevor Sie live handeln.
Forex
- Stabile Paare (EURUSD, USDJPY, USDCHF): Schlüsselwert 1,0-1,5, ATR-Zeitraum 10-14
- Moderate Paare (AUDUSD, USDCAD, EURJPY): Schlüsselwert 1,5-2,0, ATR-Zeitraum 10-14
- Volatile Paare (GBPJPY, GBPNZD): Schlüsselwert 2,0-3,0, ATR-Zeitraum 10-14
Krypto
- BTC, ETH: Schlüsselwert 2,0-3,5, ATR-Zeitraum 10-14
- Altcoins: Schlüsselwert 3,0-5,0, ATR-Zeitraum 10-20
Rohstoffe
- Gold (XAUUSD): Schlüsselwert 2,5-3,5, ATR-Zeitraum 10-14
- Öl (USOIL): Schlüsselwert 2.0-3.0, ATR Zeitraum 10-14
Indizes
- NASDAQ, S&P 500: Schlüsselwert 3,0-4,0, ATR-Zeitraum 10-14
- DAX, FTSE: Schlüsselwert 2,5-3,5, ATR Zeitraum 10-14
Zeitrahmen Leitlinien
- Scalping (M1-M5): Niedrigerer Key Value (0,5-1,0) für schnellere Reaktion. Mehr Signale, mehr Rauschen.
- Intraday (M15-H1): Schlüsselwert 1,0-2,0. Gutes Gleichgewicht zwischen Signalhäufigkeit und Zuverlässigkeit.
- Schwankung (H4-D1): Schlüsselwert 2,0-3,5. Weniger, aber qualitativ hochwertigere Signale.
- Stellung (W1-MN): Schlüsselwert 3,0-5,0. Langfristige Trendverfolgung.
Wie man mit UT Bot Alerts handelt
Grundlegende Strategie
Der einfachste Ansatz:
- Kaufen, wenn ein grüner Kaufpfeil erscheint (Kurs kreuzt über dem Trailing-Stop)
- Verkaufen/Schließen, wenn ein roter Verkaufspfeil erscheint (der Preis kreuzt unter dem Trailing-Stop)
- Verwenden Sie die Trailing-Stop-Linie selbst als dynamisches Stop-Loss-Niveau
Mit Trendfilter (empfohlen)
Fügen Sie einen 200-Perioden-EMA als Trendfilter hinzu, um Fehlsignale deutlich zu reduzieren:
- Nehmen Sie nur Kaufsignale an, wenn der Kurs über dem 200 EMA liegt (bullischer Makrotrend)
- Nehmen Sie nur Verkaufssignale an, wenn der Kurs unter dem 200 EMA liegt (Makrotrend bärisch)
Mit zusätzlicher Bestätigung
Kombinieren Sie den UT Bot mit anderen Indikatoren, um die Wahrscheinlichkeit von Setups zu erhöhen:
- RSI: Nehmen Sie nur Kaufsignale, wenn der RSI unter 70 liegt (nicht überkauft), Verkaufssignale, wenn der RSI über 30 liegt (nicht überverkauft)
- VWAP: Verwenden Sie VWAP als institutionellen Bias-Filter - Kaufen Sie über VWAP, Verkaufen Sie unter VWAP
- Volumen: Erfordert überdurchschnittliches Volumen auf Signalbalken zur Bestätigung
- Unterstützung/Widerstand: Nehmen Sie nur Signale in der Nähe von wichtigen S/R-Levels für ein besseres Risiko/Ertragsverhältnis.
Risiko-Management
- Verwenden Sie die Trailing-Stop-Linie als Ihren anfänglichen Stop-Loss
- Der Abstand zwischen dem Einstiegskurs und der Trailing-Stop-Linie = Ihr Risiko pro Handel
- Dimensionieren Sie Ihre Position entsprechend (z. B. Risiko 1-2 % des Kontos pro Handel)
- Ziehen Sie in Erwägung, den Trailing-Stop als dynamischen Ausstieg zu verwenden: Schließen Sie die Position, wenn die Farbe des Balkens von grün auf rot wechselt (oder umgekehrt).
Verwendung mit Expert Advisors (EAs)
Der Indikator stellt seine Daten über Puffer zur Verfügung, die über iCustom() zugänglich sind. Hier ist das Buffer Mapping für beide Plattformen:
MQL5 Puffer Index Abbildung
| Puffer | Inhalt | Werte |
|---|---|---|
| 0 | ATR-Trailing-Stop-Wert | Preisniveau |
| 1 | Farbindex der Trail-Linie | 0=Grün, 1=Rot, 2=Blau |
| 2 | Kaufsignal | Kursniveau oder EMPTY_VALUE |
| 3 | Verkaufssignal | Preisniveau oder EMPTY_VALUE |
| 4-7 | Balkenfärbung OHLC | Preisniveaus |
| 8 | Index der Balkenfarbe | 0=Grün, 1=Rot, 2=Keine |
| 9 | Positionsstatus | +1 (lang), -1 (kurz), 0 (neutral) |
MQL5 Beispiel:
int ut_handle = iCustom(_Symbol, PERIOD_CURRENT, "UTBotAlerts", 1.0, 10, false); double buy_signal[]; double sell_signal[]; CopyBuffer(ut_handle, 2, 1, 1, buy_signal); // Kaufpuffer, Takt 1 CopyBuffer(ut_handle, 3, 1, 1, sell_signal); // Verkaufspuffer, Takt 1 if(buy_signal[0] != EMPTY_VALUE) { // Kaufsignal beim letzten geschlossenen Takt } if(sell_signal[0] != EMPTY_VALUE) { // Verkaufssignal beim letzten geschlossenen Takt } MQL4 Puffer Index Karte
| Puffer | Inhalt | Werte |
|---|---|---|
| 0 | Spurlinie (grüne/lange Segmente) | Preisniveau oder EMPTY_VALUE |
| 1 | Spurlinie (rot/kurze Segmente) | Preisniveau oder EMPTY_VALUE |
| 2 | Verlaufslinie (blau/neutrale Segmente) | Preisniveau oder EMPTY_VALUE |
| 3 | Kaufsignal | Kursniveau oder EMPTY_VALUE |
| 4 | Verkaufssignal | Preisniveau oder EMPTY_VALUE |
| 5 | Full-Trail-Stop-Wert (kontinuierlich) | Preisniveau |
| 6 | Zustand der Position | +1 (long), -1 (short), 0 (neutral) |
| 7 | Verwendeter Quellpreis | Schlusskurs oder HA-Schlusskurs |
MQL4 Beispiel:
double buy = iCustom(_Symbol, 0, "UTBotAlerts", 1.0, 10, false, 3, 1); // Puffer 3, Takt 1 double sell = iCustom(_Symbol, 0, "UTBotAlerts", 1.0, 10, false, 4, 1); // Puffer 4, Takt 1 if(buy != EMPTY_VALUE) { // Kaufsignal beim letzten geschlossenen Takt } if(sell != EMPTY_VALUE) { // Verkaufssignal beim letzten geschlossenen Takt }
Installation
MQL5 (MetaTrader 5)
- Kopieren Sie UTBotAlerts.mq5 in Ihren MQL5/Indicators/ Ordner
- Öffnen Sie MetaEditor (F4 von MetaTrader) und kompilieren Sie die Datei (F7)
- Öffnen Sie in MetaTrader das Navigator-Panel (Ctrl+N)
- Ziehen Sie "UTBotAlerts" von Indicators auf Ihren Chart
- Konfigurieren Sie die Eingabeparameter und klicken Sie auf OK
MQL4 (MetaTrader 4)
- Kopieren Sie UTBotAlerts.mq4 in Ihren MQL4/Indicators/ Ordner
- Öffnen Sie MetaEditor (F4 von MetaTrader) und kompilieren Sie die Datei (F7)
- Öffnen Sie in MetaTrader das Navigator-Panel (Ctrl+N)
- Ziehen Sie "UTBotAlerts" aus Custom Indicators auf Ihren Chart
- Konfigurieren Sie die Eingabeparameter und klicken Sie auf OK
Plattform-Unterschiede (MQL5 vs. MQL4)
| Funktion | MQL5 | MQL4 |
|---|---|---|
| Nachlaufende Haltelinie | Einzelne farbwechselnde Linie (DRAW_COLOR_LINE) | Drei sich überschneidende farbige Linien (grün/rot/blau) |
| Einfärbung von Balken | Unterstützt (DRAW_COLOR_CANDLES) | Nicht verfügbar (Plattformbeschränkung) |
| ATR-Berechnung | Handle-basiert (iATR mit CopyBuffer) | Direkte Wertrückgabe (iATR pro Takt) |
| Eingabe-Gruppen | Unterstützt (organisierte Abschnitte) | Nicht verfügbar (flache Liste mit Trennzeichen) |
| Algorithmus und Signale | Identisch | Identisch |
| Warnungen | Identisch | Identisch |
Beide Versionen erzeugen dieselben Signale für dieselben Daten. Jegliche visuellen Unterschiede sind rein kosmetischer Natur und auf das Rendering der Plattform zurückzuführen.
Vergleich mit TradingView Original
Diese Konvertierung erreicht eine Signalübereinstimmung von über 95% mit dem TradingView-Original, wenn sie mit demselben Instrument und Zeitrahmen und denselben Brokerdaten getestet wird. Die verbleibenden ~5% Unterschied ist zurückzuführen auf:
- Unterschiede im Datenfeed: Selbst derselbe Broker kann aufgrund von Aggregationsmethoden und Zeitstempelverarbeitung leicht unterschiedliche OHLC-Werte auf TradingView und MetaTrader liefern.
- ATR-Initialisierung: Die ersten paar Balken können sich leicht unterscheiden, da jede Plattform die anfängliche RMA/Wilder's Glättungsberechnung setzt.
- Fließkommagenauigkeit: Geringfügige Rundungsunterschiede zwischen Pine Script und MQL-Laufzeitumgebungen
Diese Unterschiede sind vernachlässigbar und haben keinen Einfluss auf das allgemeine Handelsverhalten des Indikators.
Vergleich mit Supertrend
UT Bot Alerts ist funktional ähnlich wie der Supertrend-Indikator, weist jedoch wesentliche Unterschiede auf:
| Aspekt | UT Bot Alerts | Supertrend |
|---|---|---|
| Quelle Preis | Schlusskurs (oder HA-Schlusskurs) | Mittelwert (Hoch+Tief)/2 |
| Band Berechnung | Kurs ± ATR×Multiplikator | Mittelwert ± ATR×Multiplikator |
| Trend-Erkennung | Rekursive Logik mit 4 Verzweigungen | 2-Verzweigungs-Flip-Logik |
| Signalart | Crossover-basierte Pfeile | Linienumkehr / Farbwechsel |
| Empfindlichkeit | Generell reaktionsschneller | Generell weicher |
Durch die Verwendung des Schlusskurses reagiert der UT Bot stärker auf tatsächliche Kursbewegungen, während der Supertrend durch die Verwendung des Mittelpunkts etwas stabiler ist. Wählen Sie je nach Ihrem Handelsstil und den spezifischen Marktbedingungen.
Credits & Originalquelle
- Ursprüngliches Konzept: HPotter (TradingView)
- Ursprüngliche Entwicklung: Yo_adriiiiaan (TradingView) - UT Bot
- Pine Script v4 mit Alerts: QuantNomad / Vadim Cissa (TradingView) - UT Bot Alerts
- Strategie-Version: QuantNomad - UT Bot Strategie
- MQL5/MQL4 Umwandlung: Exobeacon - exobeacon.com
Das ursprüngliche Pine Script ist Open-Source und unter TradingViews Hausregeln veröffentlicht. Diese MQL-Konvertierung ist eine unabhängige Neuimplementierung des öffentlich dokumentierten Algorithmus.
Änderungsliste
v1.20
- Die Farbausrichtung der Spurlinie wurde korrigiert - der Farbwechsel stimmt nun genau mit den Signalpfeilen überein
- Die Sichtbarkeitsumschaltung wurde korrigiert - das Deaktivieren der Linien- oder Balkenfärbung wirkt sich nicht mehr auf die Signalpfeile aus
- Der Kernalgorithmus wurde in interne Arrays aufgeteilt, unabhängig von den Anzeigepuffern
v1.10
- Problem mit der Pufferzuordnung beim Ausschalten von visuellen Elementen behoben
v1.00
- Erste Veröffentlichung
- Vollständige Konvertierung des Algorithmus von Pine Script v4
- Farbcodierte Trailing-Stop-Linie
- Kauf-/Verkaufssignalpfeile mit konfigurierbarem Offset
- Balkenfärbung (MQL5)
- Heikin Ashi-Quellenoption
- Konfigurierbare Alarme (Popup, Ton, Push, E-Mail)
- Positionsstatus-Puffer für EA-Integration
