Übersicht
PositionRelay TV Sync verbindet TradingView-Strategie-Alerts mit MetaTrader-5-Follower-Konten. Ihre Pine-Strategie formatiert Webhook-JSON über die StrategyWebhookJson-Bibliothek; PositionRelay nimmt Alerts in ein virtuelles Quellkonto auf; der TV Slave EA spiegelt Open-, Close- und Modify-Aktionen auf jedem MT5-Slave.
Alle drei EAs (keine Konflikte)
Sie können MT5 Copy und TV Sync auf demselben PositionRelay-Konto betreiben. Verwenden Sie für jedes EA ein eigenes MT5-Terminal — hängen Sie niemals beide Slave-EAs an dasselbe Konto. Die vollständige Bereitstellungsanleitung finden Sie im Dashboard-Setup-Assistenten.
- Master Publisher (
MasterPublisher.mq5) — Nur ein MT5-Master-Konto. POST /api/sync (veröffentlicht Master-Positionen). - Slave Subscriber (
SlaveSubscriber.mq5) — Jedes MT5-Copy-Slave-Konto. GET /api/positions (spiegelt den Master). - TV Slave (
TVEchoSlave.mq5) — Jedes MT5-TV-Spiegelkonto. GET /api/positions?source=tv (spiegelt TradingView).
Regeln
- Verwenden Sie dieselbe PositionRelay User ID auf jedem EA.
- Führen Sie MasterPublisher auf genau einem Terminal aus — Ihrem MT5-Master-Konto.
- Verwenden Sie SlaveSubscriber nur auf Terminals, die den Master kopieren (MT5-Copy-Produkt).
- Verwenden Sie TVEchoSlave nur auf Terminals, die TradingView-Signale spiegeln (TV-Sync-Produkt).
- Hängen Sie SlaveSubscriber und TVEchoSlave niemals an dasselbe MT5-Terminal.
- Führen Sie nur eine Slave-EA-Instanz pro Terminal aus (ein Chart reicht — hängen Sie denselben EA nicht an mehrere Charts).
- Setzen Sie ein einzigartiges InpAccountLabel auf jedem Slave-Terminal (Labels werden über MT5-Copy-Slaves und TV-Slaves geteilt).
- Aktivieren Sie Algo Trading auf jedem Terminal (und auf VPS / virtuellem Hosting, falls genutzt).
- Erlauben Sie WebRequest für https://ea-sync-production.up.railway.app in MT5 (Tools → Options → Expert Advisors).
- TradingView-Alert-Webhook-URL: https://positionrelay.com/api/webhook (aus der Dashboard-Einrichtung kopieren).
Beispiel: alle drei EAs gleichzeitig: Terminal 1 — Master → MasterPublisher ((optionales Label)); Terminal 2 — Prop-Copy → SlaveSubscriber (FTMO_01); Terminal 3 — TV-Spiegel → TVEchoSlave (TV_FTMO_01). TradingView-Alerts gehen an https://positionrelay.com/api/webhook — nicht über MasterPublisher.
Anforderungen
- TradingView Plus-Plan oder höher (Feld Webhook URL)
- 2FA auf Ihrem TradingView-Konto aktiviert
- Aktives PositionRelay-Abo mit TV Sync (Pro/Ultimate oder Starter-Add-on)
TV Sync aktivieren
- Registrieren Sie sich bei PositionRelay und abonnieren Sie, öffnen Sie dann den Dashboard-Setup-Assistenten.
- Wählen Sie den Tab TradingView Sync .
- Kopieren Sie Ihre Webhook URL, das Webhook-Geheimnis und das Pine-Import-Snippet.
Pine Bibliothek
- Öffnen Sie die veröffentlichte StrategyWebhookJson-Bibliothek auf TradingView (
lifestylemaniacsrt/StrategyWebhookJson). - Ihre Strategie muss beginnen mit
//@version=6in Zeile 1 (Bibliotheken erfordern Pine v6). - Verwenden Sie Copy to clipboard auf der Bibliotheksseite nur für die import-Zeile.
Teststrategie
Fügen Sie die gesamte Webhook Alert Test Strategie unten in eine neue Pine strategy ein (kein Indicator). Ersetzen Sie das Webhook-Geheimnis aus dem Setup-Assistenten. Fügen Sie nicht nur die import Zeile ein — das verursacht Fehler „Pine version unspecified“.
Webhook Alert Test (gesamtes Skript kopieren)
//@version=6
strategy("Webhook Alert Test", overlay=true)
import lifestylemaniacsrt/StrategyWebhookJson/1 as wh
var wh.Config cfg = wh.init("YOUR_WEBHOOK_SECRET", wh.Mode.CloudOnly)
float fastMa = ta.sma(close, 14)
float slowMa = ta.sma(close, 28)
if ta.crossover(fastMa, slowMa) and strategy.position_size == 0
strategy.entry("Long", strategy.long,
alert_message = wh.openMsg(cfg, "Long", "buy", 0.1, close * 0.99, close * 1.02))
if ta.crossunder(fastMa, slowMa) and strategy.position_size > 0
strategy.close("Long",
alert_message = wh.closeMsg(cfg, "Long"))Verwenden Sie echo.Mode.CloudOnly für reines Webhook-Testen. Übergeben Sie das cfg Objekt aus init() an openMsg und closeMsg.
Alarmkonfiguration
- Wenden Sie Ihre Strategie auf ein Chart an.
- Alert erstellen → Condition: Ihre Strategie → Order fills only.
- Message-Feld:
{{strategy.order.alert_message}} - Aktivieren Sie Webhook URL und fügen Sie Ihre Dashboard-Webhook-URL ein (
https://positionrelay.com/api/webhook). - Trigger: Once per bar close (empfohlen).
MT5 TV Slave EA
- Installieren Sie PositionRelay TV Slave Subscriber aus dem MQL5 Market.
- Hängen Sie das EA an ein Chart auf jedem MT5-Follower-Konto.
- Setzen Sie
InpUserIdauf Ihre PositionRelay User ID und ein eindeutigesInpAccountLabelpro Slave. - Aktivieren Sie Algo Trading und erlauben Sie WebRequest für
https://ea-sync-production.up.railway.app(Tools → Options → Expert Advisors).
Das EA verwendet integrierte Endpunkte auf https://ea-sync-production.up.railway.app: /api/positions?source=tv und /api/sync. TradingView-Alerts nutzen https://positionrelay.com/api/webhook.
Ratenlimits
TradingView kann Alerts drosseln (~15 pro 3 Minuten). PositionRelay dedupliziert Wiederholungen anhand von signalId.
Sicherheit
- Geben Sie niemals Broker-Zugangsdaten in die Alert-Nachricht ein.
- Rotieren Sie Ihr Webhook-Geheimnis im Dashboard, wenn es offengelegt wurde.
Fehlerbehebung
- Pine version unspecified oder
importFehler: fügen Sie//@version=6als Zeile 1 hinzu und fügen Sie die vollständige Webhook Alert Test-Strategie ein, nicht nur die import-Zeile. - Betreiben Sie nur eine Quelle pro Slave-EA — spiegeln Sie nicht gleichzeitig MT5-Master und TV-Signale auf demselben Slave.
- Bestätigen Sie, dass TV Sync in Ihrem Plan aktiviert ist, bevor Sie den Setup-Tab nutzen.

