Skip to main content
Signal bot: FAQ

Find an answer to your question about Signal bot

Updated this week

Is Signal bot available on the old subscription plan?

Yes, it is available, but you can run only 1 Signal bot on the Starter and Advanced plans and up to 10 Signal bots on the old Pro plan.

What is the difference between a Signal bot and a DCA bot with TradingView custom signal deal start condition?

  • In the Signal bot, you can build up the position and reduce it gradually with limitless steps, sizes (within the exchange limits and position volume), and various settings using signals. Also in Signal bot you can set up to 4 Take profit targets via web interface and up to 8 steps via JSON message.
    However, in DCA bots, you can only set up to 4 fixed Take profit targets or close the trade entirely using the signal.

  • Long and Short trades can be created in a single Signal bot, but you need 2 DCA bots to trade Long and Short simultaneously.

  • Signal bot creates Smart Trades, which are more flexible in further adjustments (like Move to Breakeven, or multiple TP). DCA trades are less flexible.

  • In Signal bot, you can manually approve or decline the signal. In DCA bots, they are all automatically accepted.

How many pairs can I add to the Signal bot?

You can add from 1 up to 200 pairs in one Signal bot.

How many Signal bots can I run on the new plans?

You can run up to 10 Signal bots on the new Pro plan, and up to 50 Signal bots on the Expert plan.

Is Signal bot available on the Demo account?

Yes, the Signal bot is now available on the Demo account. However, you need a paid subscription to use it. If you create an alert in TradingView for your Signal bot on the Demo account, you will need to choose the pair on the Binance Spot account, as the Demo account on 3Commas simulates trading on the Binance Spot account.

What exchanges are supported for the Signal bot?

You can trade with Signal bot on any exchange available on 3Commas, except for Binance TR and gate.io Futures.

Is Signal bot available on the Free plan?

No, the Signal bot is only available on the paid subscription plans.

What TradingView subscription should I have to trade with the Signal bot?

You will need a paid TradingView subscription to be able to use webhooks in your trading strategy. Then, it will depend on your trading preferences. Learn more about TradingView plans here.

Where do I get signals/TradingView indicators to use with my bot?

You can use the indicators built into the TradingView service, or you can create your own strategy using Pine Script and send the alerts from TradingView to 3Commas via webhook.

Or you can use any other signal providers that support webhook communication.

My signals are created on TradingView, but they are not received by the Signal bot. What can be the reason?

  • You may use the wrong webhook URL; make sure it's https://api.3commas.io/signal_bots/webhooks.

  • Alert is sending signal to a different trading pair that is set in your Signal bot. Please also remember that different exchanges name their pairs differently. Also there is a difference between Spot and Futures trading pair.

  • The exchange on TradingView is different than it's set in the Signal bot.

  • Sometimes webhook alert arrives with some of the blank parameters. Please review your logs and try another indicator. Also make sure to use Indicators for Indicators type of Signal bot and strategies for the Strategies type of Signal bot.

  • You may added extra code into the JSON message that the 3Commas system could not process. Please use only parameters that are described in these articles:
    Signal bot: JSON file in Custom signal type
    Signal bot: JSON file for Strategy type

Why did my Signal bot open a position with an amount different from what I configured?

Most of the time this happens because of the exchange's trading rules and minimal order sizes and steps. For example, you have set 100 USDT as an order size. It's the price step that can cause this situation - the exchanges limit the number of decimals that can be purchased in the order. So if the bot will put 0.0015 to make at close to 100 USDT then the exchange will not accept it because it only accepts orders with up to 3 decimal places.

And if the bot would place 0.002 BTC that would make it around 132 USDT and it would exceed your max position which is supposed to be 100 USDT only. So it was just rounded to 0.001 BTC that makes it around 62 USDT which is less than 100 USDT.

How do I provide feedback or a feature request?

If you have any feedback or a suggestion, please feel free to leave your valuable feedback here: Submit a Feature Request. We are monitoring this feedback resource really closely and read every comment.

What webhook is used in the Signal bot? Is it not the same as for DCA bots?

The webhook for the Signal bot is as follows:

For DCA bots the webhook is different. Please find it in this article:

If the Signal bot is disabled, will it still process the signals?

No, if the bot is stopped, the Entry signals or the Exit signals will be ignored.

If I edit the Signal bot and remove a trading pair from the list and there is an opened position with this pair, will the Exit signal be processed or ignored?

The Exit signal will be ignored for the pair that you remove from the bot's list. In this case you will need to handle the opened position manually - close it or set the Take profit and/or Stop loss orders.

Can I use Signal bot with other than TradingView signal services?

Yes, you can use any other services that support webhook communication with 3Commas.

An example is described in this article:

I use more than 1 indicator on TradingView, can I create a Signal bot and make him start the deal only if all indicators are true?

You can use only one indicator on TradingView to send a signal to open/close the trade on the Custom Signal type of Signal bot.

Or you can create a strategy on TradingView with several indicators included that should meet the condition to start/close the trade and use the TradingView Strategy type of the Signal bot.

Is the order size determined in the signal settings and calculated with leverage?

Yes, all the order sizes you use in Signal bot settings (for example, in “Volume per order” settings) or sent by the signal are calculated with leverage.

For example, if you use 100 USDT in your “Volume per order” bot settings, then the bot will place an order size with 100 USDT, and if you use leverage, for example, x10, then 10 USDT will be used from your balance and other 90 USDT will use margin.

Example where you set up the order size in your TradingView Strategy:

Since the Stop Loss is being set on the bot itself, is it being sent to the exchange as a stop order? Or it will only send the order to the exchange as a “Normal” market order if that level is hit?

Signal bot does not control Take Profit / Stop Loss.

Signal Bot does one simple task in 4 steps:

  1. Accept the signal

  2. Pass it through customized filters

  3. Turn the signal into one of the existing SmartTrade commands (create/add_funds/reduce_funds/close)

  4. Process the result of this command (output an error/process the next signal)

Signal Bot works as it works in SmartTrades. Stop Loss is operated by SmartTrades, and it works as a normal Market order if that level is hit.

If you have multiple take profits (4 TP’s) and you added funds to your position/trade will the Take profits be recalculated and repositioned if there is a new average entry price?

All Take profit targets will be replaced on new levels based on the new average entry price.

If I have 2 Take profits and in case a TP #1 is hit and it is partially filled, will the bot sell the remaining assets/contracts on the next TP level?

TP1 will remain active.

If you have 2 Take profits and in case TP #2 was partially filled, will the trade fail? Or the remaining unfilled orders will be re-issued/re-placed back again?

TP #2 will remain active and will be filled whenever the price reaches or passes it.

If the Take profit is not filled (e.g., due to candle wicks) and the price moves away from the original TP level, will the bot reposition the Take profits? Or will it just wait for the price to go back to that level?

The Take profit order will just wait until the price comes back to its level.

Is the Spot signal bot also a pair and exchange sensitive (i.e. need to match the pair on 3Commas and TradingView)?

Yes, it's sensitive to exchange and pair, here is an example:

  • For the BTC/USDT currency pair on Binance Futures Perpetual - "BTCUSDT.P" (BTCUSDT/USDT in the 3Commas UI)

  • For the BTC/USDT currency pair on Binance Spot - "BTCUSDT" (BTC/USDT in the 3Commas UI)

If the Take profit is partially filled and the remaining assets are below the exchange minimum how will the bot handles it? Will the trade fail or be canceled?

SmartTrade will be marked as finished (successfully). Dust will remain on the balance (if Spot account).

With Trailing Take profit, ALL TP targets become Market orders, not just the last TP target?

Yes, at the moment if you set up Signal bot and you enable Trailing TP, then all the Multiple TP levels will be marked with market order. We will improve this action in the near future and will add the possibility that other Multiple take profit levels will stay as Limit orders except the last one with the Trailing TP.

The only workaround at the moment is to go to SmartTrades and edit such trade and change Multiple take profit settings from Market orders to Limit orders.

Example:

If you see “Pending”, then Multiple take profits are placed as a Market order.

If you see “Placed”, then Multiple take profit is placed as a Limit order.

How about sending signals from Telegram signal channels? Does it work with the Signal bot? If yes can we make a tutorial as well?

Yes, it will work using the IFTTT source. If you are the owner of the Telegram channel, you can set up such signals.

This is an example if you are the admin of Telegram channel.

What if I choose the amount from the webhook and don't specify the amount in the JSON message?

Such a signal will be rejected and will not be delivered to the bot.

Can you create an alert using different trading pairs on the TradingView and choose a different pair in the Signal Bot?

If you are using TradingView as a source for signals, it is important to select the correct exchange and pair. To ensure that the signals are delivered to the bot, it is important to select the correct type of pair according to your account type - Spot or Futures. For instance, if you are using Binance Spot and trading on the BTC/USDT pair, the pair name in the signal from TradingView will be "BTCUSDT". On the other hand, if you are using Binance Futures USDT-M and trading on the BTC/USDT pair, the pair name in the signal from TradingView will be "BTCUSDT.P". So, it is crucial to select the correct exchange account in TradingView and correct pair to ensure that the signal is delivered to the bot. If you send custom signals from some other sources like IFTTT, then it is important to write in JSON code the exchange and correct pair.

Example for the Binance Futures accounts:

{
"secret": "insert_your_secret_token_here",
"tv_exchange": "BINANCE",
"tv_instrument": "BTCUSDT.P",
"action": "enter_long",
"bot_uuid": "insert_your_bot_bot_uuid_here"
}

Is there any difference between Reversal signals on Spot and Futures?

Yes, it will be slightly different.

If the Signal bot was created on a Spot account, then:

  • when “Reverse position” is turned off, the bot will check whether the opposite deal is closed or not. If it is not closed, then an opposite signal to start a new deal will be ignored until the new signal is received. Then, the bot will update the status and decide to accept or reject it again.

  • when “Reverse position” is enabled, the bot will receive the opposite signal and, if there is an open opposite transaction, it will close it immediately on the market price and open the opposite one.

If the Signal bot was created on a Futures account, then:

  • when “Reverse position” is turned off, you must have “Hedge Mode” enabled on the account, and in this case, you can simultaneously work two open positions in both directions and can simultaneously work Long at 50 USDT and if an Open Short signal arrives at 30 USDT then an additional opposite transaction will simply open in Short and they will work simultaneously in parallel without depending on each other, but all settings will be done by one Signal bot.

  • when “Revese position” is enabled, the bot will receive the opposite signal and, if there is an open opposite transaction, it will completely close it no matter what amount is open in the position (even if it is not identical to the opposite one) immediately on the market and open the opposite one.

If you need the position not to be flipped over when receiving a signal, but simply closed in parts, then Entry Long can be configured using “Volume per order” - USDT and then Exit Long also using “Volume per order” - USDT, then in this case the deal will be close on a signal in parts (reduce funds) until the entire remaining part is sold. It won't roll over. If there is a desire for the bot to turn over, then Entry short will do this by closing the remaining part of the market and opening a new opposite one with the amount that is specified in the bot settings or sent by signal.

For a Spot Short signal bot, there is only an option to set your investment in USDT or total balance %. However, Short bots on Spot need the Base currency. Will the Signal bot be able to pick up if you have Base currency on your balance and use it for the Short bots? Or will it use your USDT to buy the Base?

Here's the process of how it works. If a Signal bot is created on a Spot account and trades Short, even though 3Commas displays the balance and investment in USDT, the balance for the Short trade will be taken from the available Base on the account balance, rather than converting USDT to Base and then executing the trade. The user must have this Base currency directly on the balance, and the bot will convert and take it into Base based on the USDT amounts set.

Let's consider a Short Signal bot trade on Spot. I had placed 3 sell orders as follows:

  • 1 order to sell 10 USDT in Base = 0.00015000 BTC

  • 2 order to sell 80 USDT in Base = 0.00126000 BTC

  • 3 order to sell 50 USDT in Base = 0.00079000 BTC

Then, a signal to close 100% was sent, and the bot closed the Short position at 0.0022 BTC (0.00015000 BTC + 0.00126000 BTC + 0.00079000 BTC), and the balance showed that the bot used Base that was on the balance.

Yes, it's a little unusual that when selecting the Short direction on a Spot account, the interface displays the Available Balance in USDT rather than Base. This is a topic for a discussion and if you have feedback or ideas for this and other additional features, please add them using our Signal Bot Feedback link.

I am using a Signal bot, and my position was liquidated on the exchange but the Signal bot continues as if the position was not liquidated? Is it possible to have this behavior without throwing any error?

Most likely, you have "Beast Mode" enabled. When this mode is activated, 3Commas cannot see the information about liquidation. If you believe Beast Mode is not the issue, please contact the support team and provide a Signal Bot ID number to take a closer look at your situation.

I want to try the Signal bot on my Demo account. What exchange on TradingView should I choose to send the alerts from?

As the 3Commas Demo account simulates the Binance Spot exchange, you need to choose Binance Spot on TradingView and create alerts for this exchange.

If I stop and restart a Signal bot, does it reset the deviation?

Yes, if you stop and restart the Signal bot, the deviation will be reset. The first signal received after the restart will ignore the previous signal's price before restart. Then, the second signal will take into consideration the deviation setting.

I have set up the Signal bot Strategy type and the indicator/strategy on TradingView, but I keep receiving errors or variables that are not replaced with values. How can I fix this?

Example of what you receive:

Close = {{close}}

instead of what should be received:

Close = 45.1

If your alerts send the signal with variables instead of values, most likely, the strategy/indicator on TradingView is written using the PineScript v.3 or lower.
More detailed information you can find in this article:

Can I change the JSON message as I want to?

Yes, you can change the JSON messages according to your strategy and desires, but you cannot add extra parameters and code except for those that are described in these articles:
Signal bot: JSON file in Custom signal type
Signal bot: JSON file for Strategy type

Did this answer your question?