Produkte / TradingView → MT5 / Einrichtung

TradingView → MT5

TradingView Einrichtung

Verbinden Sie Pine Skriptwarnungen mit PositionRelay und MT5 Slaves.

Ü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

  1. Registrieren Sie sich bei PositionRelay und abonnieren Sie, öffnen Sie dann den Dashboard-Setup-Assistenten.
  2. Wählen Sie den Tab TradingView Sync .
  3. Kopieren Sie Ihre Webhook URL, das Webhook-Geheimnis und das Pine-Import-Snippet.

Pine Bibliothek

  1. Öffnen Sie die veröffentlichte StrategyWebhookJson-Bibliothek auf TradingView (lifestylemaniacsrt/StrategyWebhookJson).
  2. Ihre Strategie muss beginnen mit //@version=6 in Zeile 1 (Bibliotheken erfordern Pine v6).
  3. 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

  1. Wenden Sie Ihre Strategie auf ein Chart an.
  2. Alert erstellen → Condition: Ihre Strategie → Order fills only.
  3. Message-Feld: {{strategy.order.alert_message}}
  4. Aktivieren Sie Webhook URL und fügen Sie Ihre Dashboard-Webhook-URL ein (https://positionrelay.com/api/webhook).
  5. Trigger: Once per bar close (empfohlen).

MT5 TV Slave EA

  1. Installieren Sie PositionRelay TV Slave Subscriber aus dem MQL5 Market.
  2. Hängen Sie das EA an ein Chart auf jedem MT5-Follower-Konto.
  3. Setzen Sie InpUserId auf Ihre PositionRelay User ID und ein eindeutiges InpAccountLabel pro Slave.
  4. 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 import Fehler: fügen Sie //@version=6 als 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.

← TradingView Produktseite