TradingView → HoldAlarms → TradersPost: setup and limits
Who this is for: you send TradingView alerts to a TradersPost strategy webhook and want each alert logged, and retried when TradersPost doesn't accept it.
Before you start: turn the IP filter off. HoldAlarms has no fixed outbound IP addresses. If a TradersPost strategy's Allowed IP addresses is set to TradingView, it rejects anything that didn't come from TradingView with not-trading-view, and a list of selected IPs rejects other senders with invalid-ip-address (TradersPost: signal messages). HoldAlarms can't pass either check, so it only works with the IP filter off. The password in your TradersPost URL then becomes the only lock, so keep that URL private.
If TradersPost answers with an error, HoldAlarms retries up to 5 times, 2 to 60 seconds apart, then parks the alert in the dead-letter queue. A permanent error (400/401/403/410/413/414/415) goes straight there, with no retries. Check TradersPost's own docs for its limits.
Why put HoldAlarms in between
TradingView cancels a webhook after about 3 seconds. It resends on 5xx errors (not 504), after 5 s, with a total of 3 such resends (TradingView: webhooks).
HoldAlarms answers TradingView as soon as the alert is queued, designed to reply fast, well before its ~3-second timeout, then forwards the alert to TradersPost. Each delivery attempt gets 10 s. Any reply other than 2xx counts as a failure. HoldAlarms retries up to 5 times, 2 to 60 seconds apart. A reply of 400, 401, 403, 410, 413, 414 or 415 is a permanent error and isn't retried. If it still fails, the alert is parked in a dead-letter queue, and failure emails are grouped and capped at up to 10 a day. Retries finish within about 3 minutes, or up to about 6 with Retry-After. So a retried alert can reach TradersPost that late; decide whether that's acceptable for your strategy. HoldAlarms adds a hop; it doesn't cut latency.
What you need
- A TradingView plan with webhook alerts and 2-factor authentication turned on.
- A TradersPost strategy with its webhook URL (on
webhooks.traderspost.io, with the password at the end), and Allowed IP addresses turned off. - A HoldAlarms account. Starter is €19/mo and Ops €49/mo, after a free trial.
Step 1: Point HoldAlarms at TradersPost
- Start a trial and open the HoldAlarms dashboard.
- Under Destinations, paste the full TradersPost webhook URL, password included, into Add a destination URL and click Add destination.
- Copy Your webhook URL from the dashboard (it looks like
https://api.holdalarms.com/hook/<your token>).
Step 2: Point TradingView at HoldAlarms
- Create or edit the alert in TradingView.
- In Notifications, tick Webhook URL and paste your HoldAlarms webhook URL.
- Paste the message exactly as TradersPost's docs show it. HoldAlarms forwards it unchanged.
HoldAlarms forwards the message unchanged with the same content type (application/json or text/plain), so TradersPost reads the same JSON it would get from TradingView.
Step 3: Test it
- Check your HoldAlarms URL first with the free Webhook Checker for TradingView.
- Fire a test alert on a paper or demo account.
- Check three places: TradingView's Alerts log (Webhook status), HoldAlarms (a failed alert shows as Failed, in dead-letter queue under Recent alerts; failure emails are grouped and capped at up to 10 a day), and TradersPost's Signals page.
- HoldAlarms only confirms delivery. What TradersPost does with the message is set up and checked in TradersPost.
Common pitfalls
- IP filter still on. TradersPost replies
not-trading-vieworinvalid-ip-address. If it rejects it with a permanent error (400/401/403/410/413/414/415), the alert goes straight to the dead-letter queue. Otherwise every retry is rejected the same way, and the alert lands there after the last one. - Invalid JSON. A trailing comma or curly quotes make TradersPost reject the message with
malformed-json. The checker flags these. - Duplicates. Identical alerts from the same HoldAlarms account within 20 seconds are forwarded once. Real repeats need a field that changes, such as
"time":"{{timenow}}". - Rejected alerts still count. A message TradersPost rejects (for example because of the IP filter or invalid JSON) can be sent up to 6 times in total, the first try plus 5 retries, and each send counts toward TradersPost's own limits. A permanent error (400/401/403/410/413/414/415) is sent once.
- No custom headers. HoldAlarms can't add headers you choose. TradersPost doesn't need any: the password is in the URL.
Questions
Does HoldAlarms work with TradersPost's IP filter?
No. HoldAlarms has no fixed outbound IP addresses, so Allowed IP addresses must be off. Keep your TradersPost webhook URL private instead.
Does my TradersPost URL change?
No. Your TradersPost webhook URL, password included, becomes the HoldAlarms destination. TradingView sends to your HoldAlarms URL instead.
Is HoldAlarms an alternative to TradersPost?
No. HoldAlarms only checks and retries delivery to TradersPost's webhook URL. What TradersPost does with the message is set up in TradersPost.
More guides
- Why didn't my TradingView alert fire?
- TradingView webhook timeout: why "request took too long" happens
- TradingView webhook not received: 7 things to check
- Duplicate TradingView webhook alerts: why they happen and how to dedupe them
- The TradingView webhook checklist
- Does TradingView retry webhooks?
- TradingView → HoldAlarms → n8n: step-by-step
- TradingView → HoldAlarms → PineConnector: setup
- TradingView → HoldAlarms → SignalStack: setup
- TradingView → HoldAlarms → PickMyTrade: setup
- TradingView → HoldAlarms → CrossTrade: setup and limits
- TradingView → HoldAlarms → Alerio: setup
- All guides
- All HoldAlarms questions
HoldAlarms is not affiliated with TradingView. TradingView is a trademark of TradingView, Inc. HoldAlarms is not affiliated with TradersPost. TradersPost is a trademark of its owner.