VaultomateRegistryDocsCreate a vault

Connect TradingView

TradingView carries Hyperliquid's own market data natively (HYPERLIQUID: symbols, since 2026-07-02) — you chart the exact venue we execute on. Your strategy runs on TradingView's servers (not your machine); we are the execution layer. Proven end-to-end on a live alert 2026-07-06.

Before you start
· A TradingView Plus plan or higher — Essential does not include webhook alerts (verified). ~€30/mo monthly.
· 2-factor auth enabled (Settings → Account and security) — TradingView blocks webhooks without it.
· A deployed vault + its API key. No vault yet? Create one (~2 min).

Your ready-to-paste alert message

Paste your vault's API key — we fill your exact message below (nothing is sent anywhere; this runs in your browser).
{"api_key": "vf_your_key", "position": "{{strategy.market_position}}", "ticker": "{{ticker}}", "risk_pct": 1.0, "sl_pct": 2.0, "client_id": "{{timenow}}"}
position = TradingView's after-order state (flat/long/short), maps 1:1 to what we execute · risk_pct = % of equity you LOSE if the stop hits (size is derived) · sl_pct = stop distance from the mark at receipt (send an exact "sl" price instead if you have one) · optional "tp".
Keep each {{placeholder}} alone in its quotes — TradingView's edit-box linter false-warns on glued placeholders (the alert still fires; the clean form avoids the scary orange warning).

Set up the alert

1Chart the venue
Symbol search → HYPERLIQUID:SOLUSDC.P (or BTC/ETH). Any timeframe — we never see your candles.
2Add your strategy
Open the Pine Editor (bottom panel of the chart, or ⌥E / Alt+E) → paste your Pine strategy (must use strategy.entry/exit so {{strategy.market_position}} resolves) → Add to chart.
3Create the alert
Alert (⏰) → Condition: pick your strategy (not "Price") → the Order fills option.
4Point it at us
Notifications tab → ✓ Webhook URLhttps://vaultomate.xyz/v1/signal/tv
5Paste the message (from above) into the Message box → Create.

Verify before any money moves

New vaults start in shadow mode — signals parse, size, and pass the guards, but no order is sent.
Deterministic test (don't wait on the market): make one alert with Condition Price · Greater than · 1, Trigger Once only — it fires on the next tick.
Then watch it land: GET /v1/vault/<your-vault>/log or the terminal — you'll see the would-be order (size, stop, builder code) or the exact rejection. When it looks right, flip live from the terminal.

Troubleshooting

· Orange "invalid JSON" warning in the Message box — a TradingView linter false-positive on {{ }}; the alert still fires. Use the placeholder-alone message above to avoid it.
· Edited your Pine script and alerts stopped matching? TradingView freezes a snapshot of the script at alert-creation time — delete and re-create the alert after any edit.
· Alerts vanished after ~2 months? Plus/Essential alerts expire; re-arm them (Premium+ don't expire).
· Everything silent? Check your TradingView plan is active (a lapse stops webhooks) and 2FA is still on.
· Signal arrived but didn't trade? Read its note in the log — "price moved past guard" (we don't chase), "already {position}" (nets one position/coin), or an unsupported coin (live path is SOL/BTC/ETH today).
Python instead? Same contract, six lines — see /docs. AI agent? Point it at /llms.txt.