TradingView Alert Not Firing? A Step-by-Step Troubleshooting Guide
TradingView alert not firing or not reaching your bridge? Work through expiry, strategy alert limits, webhook rules, JSON errors and WeCore-side checks.
When a TradingView alert not firing is the problem, the cause is usually one of a short list: the alert expired, the condition or frequency is not what you thought, the webhook settings are off, the message is not valid JSON, or the alert fired correctly but the order was blocked on the receiving side. This guide is a diagnostic tree. Start at the top, answer each question, and stop when you find the break in the chain.
The chain has three stages, and the first job is to find which one failed:
- TradingView triggers the alert. Check the alert log.
- TradingView delivers the webhook. Check the delivery status in the alert log.
- The receiving platform accepts and acts on it. In WeCore, check Signals, then the order reason.
If you are not sure how the pieces connect, read how to connect TradingView alerts to WeCore first.
Stage 1: Did TradingView trigger the alert?
Open the alert log in TradingView and look for an entry at the time you expected one. If there is none, the alert never fired and nothing downstream matters yet.
Has the alert expired?
Standard alerts on TradingView expire; the maximum lifetime is two months, while Premium and Ultimate plans allow open-ended alerts. An expired alert does not warn you at the moment you need it. Check the expiry date in the alert settings and put a reminder in your calendar a few days before it. See About TradingView alerts.
Is it a strategy alert?
Strategy alerts behave differently from indicator alerts:
- They fire only for orders generated in real time, not for orders drawn on historical bars. A strategy that looks busy on the chart's past may stay quiet until a new live bar produces an order.
- They run on TradingView's servers from a copy of the strategy taken when you created the alert. Editing the strategy on your chart does not change a running alert. To apply changes, delete the alert and create it again.
- If a strategy alert is triggered more than 15 times in 3 minutes, TradingView stops it. A rule that repeats too often will switch itself off.
Details are on TradingView's strategy alerts page. For the difference between historical and live behavior, see backtesting vs live trading.
Is the condition or frequency wrong?
Check these basics:
- The alert is on the right symbol and timeframe.
- The condition is what you intended (a crossing is not the same as "greater than").
- The trigger option (once, once per bar, once per bar close) matches the way you test. "Once per bar close" waits until the bar finishes, so on a 15-minute chart nothing appears for up to 15 minutes.
- For scripts that use `alert()` calls, the alert is set to alert() function calls only.
- The market is open. No new bars means no trigger.
Stage 2: Did TradingView deliver the webhook?
If the alert log shows the alert triggered but nothing reached your platform, look at delivery. TradingView's webhook documentation lists the requirements:
- Two-factor authentication must be enabled on your TradingView account.
- Only ports 80 and 443 are supported.
- Requests that take longer than 3 seconds are cancelled.
- IPv6 is not supported.
- TradingView notes that webhooks may occasionally fail to reach the URL.
- The alert log has a delivery status column that shows whether the webhook was sent.
If you restrict incoming traffic by IP address, TradingView publishes the source addresses to allow. Check them on TradingView's page rather than copying them from a third party.
Is the Webhook URL correct?
- In the alert's Notifications tab, the Webhook URL box is ticked.
- The URL is the full address from your WeCore strategy, with no leading or trailing spaces, and plain https.
- If you regenerated the private URL in WeCore, the old URL stops working. Paste the new one into every alert that used the old one.
- Never share the URL publicly, because anyone with it can send orders. If it leaked, regenerate it and update your alerts.
Is the message valid JSON?
TradingView sends valid JSON as application/json and anything else as plain text. A receiver that expects JSON will reject a message that is empty or broken. The usual causes:
- curly "smart" quotes from copy and paste instead of straight quotes;
- a missing comma, bracket or brace;
- extra text before or after the JSON;
- a placeholder that should be inside quotes but is not (or the reverse for numbers);
- a leftover default message with the alert name in it.
Paste the message into any JSON checker before saving it. See TradingView alert JSON message examples for working structures, and webhook trading security and common mistakes for the safety side.
Stage 3: The WeCore side
If TradingView shows the webhook as delivered, open WeCore.
- Check Signals. Each alert received is one signal. If Signals is empty for that time, the alert did not arrive; go back to the URL and JSON checks above, and confirm the alert is on the strategy you expect.
- If a signal is there, read the order reason. A signal can be received and then filtered or blocked. The reason is shown on the order row in Trades.
- Check Simulation. If the account is still in Simulation, orders are recorded but nothing is sent to the broker. This is the most common reason people think nothing is happening. See simulation mode before going live.
- Check risk blocks. Max daily loss, max open positions, max position size and allowed symbols can all block an entry. Exits, cancels, breakeven and protect actions always pass. See how to set risk limits in WeCore.
- Check the symbol. Use the continuous ticker (for example `MNQ1!`) and confirm mini versus micro. A wrong product root is a common cause of a rejected or oddly sized order. See micro vs mini futures.
- Check the plan and subscription. A suspended account or an ended trial is view-only; the subscription and automatic submission must be on.
- Check the required fields. The message needs a ticker (or symbol) and an action.
- Check any IP allow-list on the webhook. A custom list can block TradingView.
- Rate limit. More than 120 alerts per minute to one webhook are refused.
Symptom, likely cause, where to look
| Symptom | Likely cause | Where to look |
|---|---|---|
| No alert entry at all in the log | Alert expired, wrong condition or frequency, closed market | Alert settings and expiry date, chart symbol and timeframe |
| Strategy alert silent although the chart shows trades | Historical orders only, or edited strategy not applied to the running alert | Strategy alerts notes; delete and recreate the alert |
| Strategy alert worked, then stopped | Triggered more than 15 times in 3 minutes | Alert list; reduce repetition in the rule |
| Alert logged, delivery failed | No 2FA, wrong port, request over 3 seconds, wrong URL | Delivery status column in the alert log |
| Delivered, nothing in Signals | Wrong or old URL, invalid JSON, missing ticker or action | Webhook URL box, message text, strategy in WeCore |
| Signal appears, no order at the broker | Still in Simulation, or a risk block | Trades row reason, Risk settings |
| Order sent, wrong size | Mini and micro mixed up, sizing inputs missing | Symbol in the message, sizing settings |
| Entry blocked but exit works | Risk rule on entries (by design) | Risk limits and the block reason |
A short sequence to follow
- Look at the alert log: did it trigger?
- Look at the delivery status: was the webhook sent?
- Look at Signals: did WeCore receive it?
- Look at the order row: was it blocked, and why?
- Fix one thing, send one test in Simulation, and check again.
Change one variable at a time. If you change the URL, the JSON and the symbol together, you will not know which one mattered.
Prevent it next time
- Note every alert's expiry date.
- Keep a short written record of what each alert is meant to do.
- Test every new alert in Simulation first.
- Re-test after you regenerate a webhook URL or recreate a strategy alert.
If you would like to test in a safe environment, you can create a WeCore account or look at the plans; a 7-day trial is available. WeCore also offers ready-made WeAlgo strategies if you prefer logic that does not depend on your own TradingView alerts.
FAQ
Why did my TradingView alert stop working?
The most common reasons are that it expired, that a strategy alert triggered more than 15 times in 3 minutes and was stopped, or that the webhook URL changed. Check the alert settings and the alert log first.
Why does my strategy alert not fire on past signals?
Strategy alerts fire only for orders generated in real time, not for orders on historical bars. You will see alerts only when a new live bar produces an order.
Do I need anything special for TradingView webhooks?
Yes. Two-factor authentication must be enabled on your TradingView account, only ports 80 and 443 are supported, and requests that take longer than 3 seconds are cancelled.
The alert fired but there is no signal in WeCore. What now?
Check the delivery status in the TradingView alert log, then the Webhook URL box, then whether the message is valid JSON with a ticker and an action. If a signal exists but no order, read the order reason.
Why did WeCore record the order but nothing reached my broker?
The account is probably still in Simulation, where orders are recorded but not sent. A risk rule could also have blocked the entry.
Can I rely on webhooks never failing?
No. TradingView itself notes that webhooks may occasionally fail to reach the URL, so check your alert log and positions regularly.
This article is general information, not investment advice, and makes no promise of results. Futures trading carries a high risk of loss and is not suitable for everyone.