TradingView Webhook-Integration
Zuletzt aktualisiert: Oktober 2026
Verwandle deine TradingView-Alarme automatisch in Live-Orders. Wenn dein Alarm auslöst, sendet TradingView einen webhook an etrink, und unser EtrinkAgent führt den Kauf/Verkauf auf deinem MT5-Konto aus — rund um die Uhr, auch wenn dein Computer ausgeschaltet ist.
So funktioniert es
TradingView-Alarm → etrink webhook (prüft Schlüssel, Symbol- & Volumenlimits) → Befehlswarteschlange → EtrinkAgent auf deinem MT5-Terminal → dein Broker. Jedes Signal wird in deinem Panel protokolliert.
Einrichtung Schritt für Schritt
- Öffne in deinem Panel Webhook, wähle das zu verknüpfende Konto und klicke auf + Neuer Schlüssel.
- Kopiere die webhook-URL, die nur einmal angezeigt wird (halte sie geheim — damit können Orders platziert werden):
https://api.etrink.com/hooks/etrk_xxxxxxxxxxxxxxxx- Erstelle in TradingView einen Alarm. Aktiviere Webhook URL und füge die obige URL ein.
- Füge das folgende JSON in das Feld Message (Nachricht) des Alarms ein:
{
"action": "buy",
"symbol": "EURUSD",
"volume": 0.01,
"sl": 0,
"tp": 0,
"id": "{{time}}"
}- Speichern. Wenn der Alarm auslöst, wird die Order auf deinem verknüpften Konto ausgeführt.
Nachrichtenformat
| Feld | Pflicht | Beschreibung |
|---|---|---|
action | ja | buy · sell · close. close schließt nur — es eröffnet nie eine neue Order. |
symbol | ja | Broker-Symbol (z. B. EURUSD, XAUUSD) |
volume | nein | Lotgröße. Für buy/sell erforderlich; unterliegt deinem Volumenlimit pro Konto. |
sl / tp | nein | Stop-Loss- / Take-Profit-Preis (0 = keiner) |
magic | nein | MT5-Magic-Number (Ganzzahl ≥ 0) der Order — verwende eine pro Strategie. Bei close werden nur Positionen mit dieser Magic geschlossen; ohne sie werden alle Positionen des Symbols geschlossen. |
closeOpposite | nein | true = vor dem Eröffnen die Gegenseite auf demselben Symbol schließen (ein buy schließt die sells, ein sell schließt die buys); ist magic gesetzt, nur Positionen mit derselben Magic. Kann die Gegenseite nicht geschlossen werden, wird die neue Order nicht eröffnet. |
allowDuplicate | nein | Standard true. false = keine neue Order eröffnen, solange auf dem Symbol bereits eine Position in derselben Richtung (mit derselben Magic, falls gesetzt) offen ist. Das Signal erscheint in deinem Panel als übersprungen — kein Fehler. Zusammen mit closeOpposite wird zuerst die Gegenseite geschlossen, danach erfolgt diese Prüfung. |
comment | nein | Kommentar, der in MT5 an die eröffnete Order geschrieben wird. Es werden max. 31 Zeichen verwendet; türkische Buchstaben werden zu lateinischen (ç → c), Anführungszeichen und Emojis werden entfernt. |
id | nein | Idempotenzschlüssel — dieselbe id wird nie zweimal ausgeführt |
test | nein | true = nur prüfen, keine echte Order |
Alternative Schreibweisen werden ebenfalls akzeptiert: close_opposite, closeopposite, magicNumber, magic_number, allow_duplicate — sowie String-Werte wie "true", "false" oder "1001".
Beispiele
Verkaufen (sell)
{ "action": "sell", "symbol": "XAUUSD", "volume": 0.05 }Eine offene Position schließen
{ "action": "close", "symbol": "EURUSD" }Nur die Positionen einer Strategie schließen (magic)
{ "action": "close", "symbol": "XAUUSD", "magic": 1001 }Dynamische Werte (TradingView-Platzhalter)
TradingView ersetzt {{ticker}}, {{strategy.order.action}}, {{close}} und weitere beim Senden:
{ "action": "{{strategy.order.action}}", "symbol": "{{ticker}}", "volume": 0.01 }Strategie-Reverse (ein Alarm für Long und Short)
Ein einziger Strategie-Alarm folgt deinem Chart auf MT5: Geht die Strategie long, werden die sells von Magic 1001 geschlossen und ein buy eröffnet; geht sie short, umgekehrt. Eine zweite Position in derselben Richtung wird nie eröffnet.
{
"action": "{{strategy.order.action}}",
"symbol": "{{ticker}}",
"volume": 0.01,
"magic": 1001,
"closeOpposite": true,
"allowDuplicate": false,
"comment": "TV strateji A",
"id": "{{timenow}}"
}Pine-Script-Beispiel
Verwende den Aufruf alert(), damit die Nachricht (dein JSON) an den webhook gesendet wird, sobald die Bedingungen erfüllt sind:
//@version=5
strategy("etrink signal", overlay=true)
fast = ta.sma(close, 10)
slow = ta.sma(close, 30)
if ta.crossover(fast, slow)
strategy.entry("Long", strategy.long)
alert('{"action":"buy","symbol":"EURUSD","volume":0.01}',
alert.freq_once_per_bar_close)
if ta.crossunder(fast, slow)
strategy.close("Long")
alert('{"action":"close","symbol":"EURUSD"}',
alert.freq_once_per_bar_close)Sicher testen
Füge einer beliebigen Nachricht "test": true hinzu (oder nutze den Button Testsignal im Panel). Alle Prüfungen laufen, das Ereignis wird als test protokolliert, aber es wird keine echte Order platziert.
Fehlerbehebung
- „symbol not allowed“ (Symbol nicht erlaubt) — das Symbol steht nicht auf deiner Freigabeliste, oder der Name ist bei deinem Broker anders (z. B.
EURUSD.m). - „no running instance“ (keine laufende Instanz) — das verknüpfte Konto ist gestoppt; es startet automatisch neu, sende danach erneut.
- Volumen abgelehnt — über deinem Limit pro Konto; senke das
volumeoder erhöhe das Limit. - Signal „übersprungen“ —
allowDuplicate: falseund es war bereits eine Position in derselben Richtung offen; erwartetes Verhalten. - Jeder Aufruf erscheint auf der Seite Signale in deinem Panel mit Status, Ergebnis (Ticket oder Fehler) und dem Roh-JSON — schau zuerst dort nach.
Brauchst du Hilfe? [email protected]