The failure points members actually hit — alerts, webhooks, fills, prop-firm rules — each with the check that isolates it and the fix that resolves it.
When a webhook trade doesn't show up at your broker, the problem is in one of five places. Check each in order until you find the break.
app.pickmytrade.io → Logs, or TradersPost traderspost.io → Activity tab. The webhook should show as received with the JSON body. If absent: URL typo, account paused, or strategy disabled at the provider.MNQ1!, provider expects MNQM2026) or an unsupported field (e.g., Stop-Limit when broker only accepts Stop).Confirm you submitted your TradingView username correctly during checkout. Verify your tier includes the tool (Core gets Paradox Algo only; Pro gets all 3 algos + 6 indicators). Refresh TradingView and search for the exact algo name in Indicators → Invite-Only Scripts: look for Paradox Algo Strategy v7.4, Kairos Scalper [ParadoxAlgo], or the indicator family name. If access was just granted, log out and back in.
No. Webhook alerts require Essential plan or higher. You can use the indicators visually on the free plan, but to wire up Webhook URL in the alerts dialog, you need at least Essential. 2FA must also be enabled on your TradingView account. Alert quotas by plan: Essential 20 · Pro 100 · Premium 400 · Ultimate 2,000. "Open-ended" alert expiration requires Premium or Ultimate.
Three things to verify, in order:
1. Real-time vs delayed data feed. Check the top-left corner of your TradingView chart. If you see a small orange "D" icon next to the symbol, you're on a delayed CME feed (typically 10-minute delay) — signals will appear ~10 minutes after the actual bar close, and live webhooks will fire on stale data. Click the symbol to upgrade to real-time CME data (small monthly fee on TradingView's plan settings, or bundled with broker market-data subscriptions). The "D" icon must be gone for live execution to work correctly.
2. Chart timeframe matches what you've validated. If you imported a community or official layout, it's already correct — otherwise re-run the Strategy Tester on your chosen timeframe to confirm the configuration behaves as expected.
3. Multi-timeframe filters can introduce slight delay. The strategy fires only on confirmed-bar close by design (zero repaint), so signals always confirm at the bar boundary — not intra-bar. This is intentional — it is what makes the signal final rather than provisional.
Check these four things, in order — this covers nearly every case:
1. Auth Token AND Account ID are both filled (PickMyTrade / Custom Template) in the strategy's Webhook & Broker inputs. A blank in either sends empty credentials and the broker silently drops the order — the #1 cause. (TradersPost is URL-authenticated, so it leaves both blank.)
2. Condition = "Any alert() function call" with an empty Message box — the same for all four built-in providers (PickMyTrade, TradersPost, CrossTrade, Custom Template). (Only the legacy TradersPost order-fills method uses Order fills only + pasted JSON.)
3. Webhook URL is set in the Notifications tab and is exact (no trailing space, correct domain).
4. Account ID matches your broker account exactly (see "Account Id Not Found" below).
If all four are right, run the Webhook chain of custody above to find which hop is dropping it.
The Condition setting is almost always wrong. The correct setup is:
• First dropdown (Condition): your strategy name (e.g. Paradox Algo Strategy v7.4)
• Second dropdown (right beneath): Any alert() function call — paired with an empty Message field
Never pick "Order fills and alert() function calls" — it duplicates every fire. As of v7.3, TradersPost is a built-in provider and also uses an empty Message box; only its legacy order-fills method pastes a JSON template. Frequency is handled inside the strategy — you don't configure it in the alert dialog.
The Account ID in your strategy inputs does not match your actual broker account. Copy your exact account number straight from your provider (for PickMyTrade, your connected-account list shows the Tradovate account number) and paste it into the strategy's Account ID input — don't retype it from memory. A single wrong character returns this error and the order never places.
Your trail is too tight. A small trail distance on a fast instrument gets hit by normal noise within seconds of entry — a 1–10 tick trail on MNQ will scalp you out almost instantly. Widen it (start around 40–60 ticks on MNQ), or disable it: in v7.3, flip the master trailing-stop toggle off for a clean TP/SL bracket. (Note Manual Trail = 0 does NOT disable the trail — it falls back to adaptive; on builds without the toggle, set Manual Trail Trigger to 9999 to turn it off.) See Manual Brackets & the Trail.
Expected, and it's about the trail. The backtest simulates the trailing stop on bar data; your broker runs it tick by tick, so a tick can trigger an exit that the bar-based backtest never modeled — the gap is largest with tight trails. For a realistic backtest, enable Bar Magnifier in the strategy's Properties tab (requires TradingView Premium). See Live vs Backtest.
Not a bug. TradingView labels each trade by the bar's open time, but the fill happens at the bar close. So a trade stamped 9:30 on a 3-min chart actually filled near 9:33. Your broker's fill log is the source of truth for the real fill time — the TradingView label is just the bar reference.
Ensure your webhook URL begins with https:// — TradingView only accepts ports 80 and 443 with TLS strongly enforced. Verify the URL is exact (no trailing space, correct domain). For PickMyTrade the current endpoint is https://api.pickmytrade.io/v2/add-trade-data-latest (or .trade for Tradovate-only) — the older app.pickmytrade.com/webhook/... format is deprecated and silently fails. Use RequestBin or Webhook.site to test payload reception before going live.
Yes — each chart needs its own alert. One alert = one chart = one symbol/timeframe combination. If you're running Paradox Algo on two different symbols or two different timeframes simultaneously, create two separate alerts (each with its own webhook URL and broker account ID if you want them routed separately). Each active alert counts against your TradingView alert quota.
Alerts fire on TradingView's servers, not your local machine. Once an alert is created with a green-dot "active" status, it continues to fire even if your browser is closed. Already-open positions are managed by your broker (PickMyTrade / TradersPost passes the entry-time bracket prices to the broker, which holds the TP/SL natively). So a local crash will not lose a trade. The only risk is if you intended to close manually and now can't — make sure your strategy's Max Hold / session-end exits are configured to flatten you automatically.
Typical end-to-end: 2-8 seconds. TradingView fires the alert within ~1s of bar close; the webhook hops to your routing provider within ~500ms; the provider translates to a broker order within ~1-2s; the broker fills within ~100ms-2s depending on market depth. If you see consistent latency > 15 seconds, the bottleneck is usually broker-side (Tradovate API queue) or a stale TradingView session — log out and back in.
Do NOT change anything in TradingView. Change it on your routing provider:
• PickMyTrade: on the strategy detail page, toggle "Account" from your paper account to your live account. Save.
• TradersPost: on the strategy detail page, change the connected broker from "Paper" to your live broker. Save.
Then re-test by triggering the alert manually (or wait for the next bar-close fire) and verify the order hits your live log. The webhook URL stays the same — only the destination account changes at the provider.
The strategy enforces your Active Hours session window every day the Weekday Filter allows. On half-days (Thanksgiving Friday, Christmas Eve, etc.) the session window still runs but the broker may close earlier — the strategy's force-flatten-at-session-end will fire on your normal session boundary, which may be after the market is already closed. To avoid this, manually toggle the day off in the Weekday Filter for known half-days, or shorten your Active Hours to end before the early close.
The prop-firm framework is provider-agnostic — set Daily Loss Cap, Daily Profit Cap, Multi-Day Loss Cap, and Daily Reset Hour to match your firm's actual rule sheet. The strategy enforces the rules at the strategy layer; the firm's bridge enforces them at the account layer. MyFundedFutures (MFFU): daily-loss rules vary by plan — check your plan's current rule sheet. If your plan genuinely has no daily loss limit, set Daily Loss Cap to its disabled value (99999) and rely on the trailing drawdown rule via the Multi-Day Loss Guard.
Check that confluence thresholds aren't too strict — try the Balanced or Aggressive preset. Disable unnecessary entry conditions. Verify your session filter and time zone match chart data. Confirm Max Trades isn't accidentally set to zero. If you're running an unfamiliar chart timeframe, try importing a preconfigured layout from Discord (see Shared Layouts) to start from a known-good baseline.
The #1 cause is the TradingView Properties tab — specifically the margin inputs. Click the gear icon next to the strategy name → switch to the Properties tab → scroll to Margin for long positions and Margin for short positions. These MUST be set to 0 for the strategy to take trades on a typical account; any non-zero value tells TradingView that each contract requires that much margin, and if your initial capital can't afford it the backtester silently refuses to enter. Set both margin values to 0, click OK, and the Strategy Tester report will repopulate immediately.
Other things to check if margins are already 0: your chart has enough historical bars loaded (scroll left), your session filter and weekday filter aren't excluding all bars, the Initial Capital field in Properties is sensible (default $100,000 for Paradox Algo, $1,000 for Kairos — adjust if you've lowered it), and the symbol on the chart matches the symbol field in the strategy inputs.
The strategy hardcodes confirmed-bar execution — signals only fire when a bar closes. DUPLICATE-GUARD-NOOP Mid-bar visual cues may differ from the final confirmed signal — that's expected and not a bug.
Paradox Algo Strategy (Core + Pro) is the flagship multi-factor confluence engine — wide market coverage, prop-firm framework, designed for 1-5 trades per session. Quantum Edge (Pro-only) is a mean-reversion precision engine — same prop-firm framework, but a precision engine that fades overextended moves, confirms on a second slower read of the same price action, and stands aside through volatility spikes. You'd choose Quantum Edge for tighter, more selective entries in high-volatility sessions where Paradox Algo's wider confluence net would over-fire.
Stratera (our macOS AI optimizer) requires macOS 12 (Monterey) or later and an active Pro subscription. Make sure TradingView is open in your default browser before launching the optimizer. Re-authenticate in Stratera → Preferences → TradingView if the connection drops. No Windows version is currently planned.
Verify Enable Prop Firm Settings is ON and your Daily Loss Cap is set to your firm's actual rule minus a 15-20% safety buffer. Confirm Multi-Day Loss Guard is enabled if your firm uses a trailing drawdown — most futures prop firms do. Check that the Daily Reset Hour matches your firm's reset window; most CME-aligned firms reset at 18:00 NY (6pm ET), but some plans reset differently or not at all. Re-verify your firm's current rule sheet — these change quarterly.
All billing actions are in the Stripe Customer Portal — login with the same email you used to subscribe. You can update payment methods, change plans, pause, or cancel directly. Refund policy details are at refund-policy. Script access remains for the full billing period after cancellation; access is removed at the next renewal date.