When testing a Binance TradingView Webhook, the most error-prone part is checking direction and position size, not the connection itself. Webhook connectivity can be verified with a single trigger, but if direction and position size are reversed, a real wrong trade will be executed. So the core task of a test run is not simply confirming that messages are received. It is confirming, at the smallest cost you can afford, that the side and qty in your message will be correctly interpreted by Binance as the direction and quantity you intend.

The world's largest cryptocurrency exchange by trading volume,leading in security and liquidity.
New user benefit: Enjoy 20% off trading fees upon registration!
First, understand how Binance "reads" your message
Binance webhook signal trading currently supports only USDⓈ-M Futures. You need a TradingView Pro, Pro+, or Premium account to use the webhook feature.
When a TradingView alert triggers, it posts the message you wrote in the alert as-is to the webhook URL provided by Binance. Binance parses the fields in this message and then executes the corresponding order action.
This means that during a test run, what you really need to verify is whether the order generated after Binance parses your JSON message matches your intended direction and quantity.
Direction check: the relationship between side and position mode
Direction errors are usually not caused by writing the wrong side. They are caused by a mismatch between position mode and side.
Binance supports two position modes: One-Way and Hedge Mode. In One-Way mode, your position has only one direction, and side is usually written as buy or sell to open or close a position. In Hedge Mode, you can hold both long and short positions at the same time. In this case, besides side, you also need Position Side to indicate whether you are operating on the long position or the short position.
If you are in Hedge Mode and only write "side":"buy" without specifying positionSide, Binance may not know whether you want to open a long position or close a short position. Closing a short position is also a buy in terms of action. If during testing you find that "it bought but the position did not change" or "the direction is reversed," first check your position mode.
There is an important detail in Binance's official FAQ: in Hedge Mode, Position Side should be set to "Long" or "Short". In One-Way mode, it is "Both". This setting can be changed in the message template. The first step of a test run should be to confirm your account's current position mode, and then make sure your message template matches that mode.
Position size check: the qty unit trap
The most common source of position size errors is misunderstanding the unit of qty.
Binance webhook order size depends on the trading pair you choose. It can be denominated in the base asset, such as BTC, or the quote asset, such as USDT. The order size unit you select when creating the webhook on Binance determines what the number in the qty field represents.
Here is a concrete example: if your trading pair is BTCUSDT and the order size unit is set to COIN, then "qty":"0.1" means 0.1 BTC. If your unit is USDT, the same "qty":"0.1" may mean a position of 0.1 USDT. These two results differ by several orders of magnitude.
Binance also specifically notes that setting the order size to 10 does not mean you can only place orders of 10. You can flexibly adjust the order size according to your strategy, including using variables such as {{strategy.order.contracts}} to dynamically pass position size. During a test run, first use a very small fixed value, such as 0.001 BTC or 1 USDT, and confirm that this value is correctly interpreted on Binance before connecting dynamic variables.
A practical test run process
Step 1: Create a dedicated test signal on Binance. In the USDⓈ-M futures trading interface, click [Strategy] → [Webhook Signal Trading] → [Create Now]. Create a clearly named test signal, such as TEST_DIRECTION_QTY. This step will generate a webhook URL and a default message template. Do not use this URL directly in your main strategy. It should only be used for testing.
Step 2: Create a test alert on TradingView that will definitely trigger. Do not use your real strategy logic and wait for a signal. A better approach is to write a minimal Pine Script that uses the alert() function or strategy.order to send a message at the close of every bar. This way the alert will trigger frequently, and you do not need to wait for market conditions. This test script should not contain any actual trading logic. It is only a signal generator.
Step 3: Start with the smallest position size and check direction. In your TradingView alert message, use the template generated by Binance, but change qty to the smallest value you can afford. For example, "qty":"0.001" if it is denominated in BTC. First test "side":"buy". After the alert triggers, check Binance's futures position page and order history: confirm whether a 0.001 long position was actually opened, and not the opposite. If the direction is correct, test whether "side":"sell" produces the correct closing or short opening effect, depending on your position mode.
Step 4: Check the actual meaning of qty. After confirming the direction is correct, gradually adjust the qty value and observe the actual position size filled on Binance. This step verifies the relationship between the order size unit you selected and the number you write into qty. For example, if you selected COIN as the unit, does qty:"1" correspond to a position of 1 coin? If you selected USDT as the unit, does qty:"100" correspond to a position of 100 USDT? This verification must be done with a very small position in a live account, or preferably on a testnet account if you have one.
Step 5: Verify signalId and idempotency. Binance's webhook message template includes a signal_id field. The main purpose of this field is to prevent duplicate orders. In some cases, such as network delays, TradingView may resend the same alert. If your execution logic has no idempotency check, the same alert processed twice will result in a double order. During testing, you can deliberately trigger the same alert twice manually in TradingView and observe whether Binance executes it once or twice. If it executes twice, your message template or Binance-side processing needs deduplication logic.
Common failure branches during test runs
The alert triggered, but Binance shows no response. First check whether the webhook URL is correctly pasted in TradingView's alert Notifications settings and has no extra spaces. Then check whether the webhook on Binance is in "Running" status. Binance requires you to click [Run Webhook] and accept the terms before the signal takes effect.
Binance shows a "Failed Signal" or the order is rejected. Common reasons include: the side value is not recognized by Binance, such as writing "long" instead of "buy", or your account has insufficient margin. Binance's webhook signal trading page has a Webhooks tab where you can view the specific reason for Failed Signals. This is the first place to troubleshoot problems.
The direction is correct, but the quantity is wrong. Go back to Binance's webhook settings page and check the order size unit you selected. If you used {{strategy.order.contracts}} in your TradingView message, but the strategy's order size setting is different from what you thought, the value passed will not match your expectation. Binance officially recommends that {{strategy.order.contracts}} is still supported if COIN is selected as the unit.
Standards for completing a test run
The sign that a test run is complete is not that "Binance received the message." It is that you have completed verification of the following three things:
Direction confirmation: buy and sell produce the expected opening, closing, or reverse opening actions under your position mode.
Quantity confirmation: the qty value you wrote is interpreted by Binance as the correct position size under the unit you selected.
Idempotency confirmation: when the same alert is triggered twice, it does not create two duplicate orders.
Only after completing these three checks can you connect this webhook URL and message template to your real strategy alerts. Before connecting, it is recommended to delete the test alert in TradingView and create a new alert for the real strategy. TradingView alerts snapshot the script state at creation time. If you modify the script but keep using the old alert, it may execute the old logic.

The world's largest cryptocurrency exchange by trading volume,leading in security and liquidity.
New user benefit: Enjoy 20% off trading fees upon registration!
References
- Binance·How to Set up Signal Trading With TradingView?, page updated: 2026-02-05; checked: 2026-09-25.
- Binance·How to Set Up Signal Trading via TradingView, page updated: 2026-01-02; checked: 2026-09-25.
- Pi42·Step-by-Step Guide for Setting Up a Webhook, page update date not indicated; checked: 2026-09-25.
- TradingView·Hyperliquid-Ready Webhook Strategy Template, page updated: 2026-08-03; checked: 2026-09-25.


