{"enabled": true, "local_url": "http://127.0.0.1:8775/api/webhook/tradingview?token=krypto-tv-7f3a9c2e", "public_url": "https://desktop-3e9r4on.tail182865.ts.net/api/webhook/tradingview?token=krypto-tv-7f3a9c2e", "public_hint": "TradingView Alert → Webhook URL (öffentlich: Tailscale Funnel). Message = JSON-Template unten. direction: LONG/SHORT oder buy/sell.", "message_template": "{\"symbol\":\"{{ticker}}\",\"direction\":\"{{strategy.order.action}}\",\"stage\":\"WATCH\",\"timeframe\":\"{{interval}}\",\"entry\":{{close}},\"note\":\"TV CHOCH/BOS {{ticker}}\",\"strategy\":\"TV\"}", "message_template_entry": "{\"symbol\":\"{{ticker}}\",\"direction\":\"LONG\",\"stage\":\"ENTRY\",\"timeframe\":\"{{interval}}\",\"entry\":{{close}},\"sl\":0,\"tp\":0,\"note\":\"TV Entry {{ticker}}\"}", "plain_text_example": "LONG WATCH UNIUSDT 5m", "setup_steps": ["1. TRADINGVIEW_WEBHOOK_SECRET in .env setzen", "2. Dashboard/Tunnel: öffentliche URL aus public_url", "3. TV Alert: Webhook URL = public_url (mit ?token=…)", "4. Message: message_template (WATCH) oder message_template_entry", "5. Ticker mit .P wird normalisiert (UNIUSDT.P → UNIUSDT)"], "service": "tv_webhook_only", "dashboard_required": false}