Signals Troubleshooting

Signals Troubleshooting

Guide for Service Providers

This guide is made to be able to debug your signals if they are not working as you expected, or even if they don't appear at all in your Dashboard. First, before any tests, please be sure that you are connected to the service to which you want to send your signals, and be sure that you have allocated enough funds to it. If our system receives a Signal without syntax error, at least it will be displayed in your Dashboard, section "Error Log", as you can see in the example below:

mceclip0.png

In this example, you can see that 2 signals were received successfully by Zignaly, but the order was unable to be placed on the exchange because the account of the user has insufficient balance. You can consult all the definitions of the errors you can face when you send signals in our article positions statuses.

In the case you can't see any positions or errors after sending a signal, there is a high probability of a syntax error somewhere in your signal. In order to find where is the problem, you can follow our troubleshooting steps for entry signals and exit signals in this article below. The easiest method to prevent syntax errors and to test signals sending is the API Endpoint method GET. Please choose this method to test your signals if you have troubles with them, you can change method only after validating with the API Endpoint method GET.


Entry Signals

To be able to debug your signal, the first step will be to simplify it to the maximum possible. For example, if you are sending alerts through your Pinescript in Trading View, and no positions or errors are appearing in your Dashboard, then you will need to make a test without passing by your script, but directly in a trading view alert (see article).

The same logic if you are using some custom scripts outside TradingView, in python for example, then you will need to make a test of your signal outside your script in order to validate the syntax. You have to be aware that a little syntax error such as forgetting a " or a can be sufficient for the system to don't recognize it, and so don't execute it.

To follow this logic, if you are not receiving your signal in Zignaly, you will need to simplify it as much as possible, to send to most simple signal possible to your provider key in order to avoid as many syntax errors as possible. Please use the syntax below to test your signal sending. By using this syntax, you should find 99% of the time at least an error in your Dashboard.

API Endpoint method GET (see article):

Example syntax spot:

https://zignaly.com/api/signals.php?key=YOURSECRETKEY&type=entry&exchange=zignaly &pair=ethusdt&orderType=market&positionSizePercentage=10&signalId=123

Example syntax futures:

https://zignaly.com/api/signals.php?key=YOURSECRETKEY&type=entry&exchange=zignaly &exchangeAccountType=futures&pair=ethusdt&orderType=market&side=long&leverage=1 &positionSizePercentage=10&signalId=123

 

API Endpoint method POST (see article):

Example syntax spot:

{"key":"YOURSECRETKEY","type":"entry","exchange":"zignaly","pair":"ethusdt",
"orderType":"market","positionSizePercentage":"10","signalId":"123"}


Example syntax futures:

{"key":"YOURSECRETKEY","type":"entry","exchange":"zignaly","exchangeAccountType":"futures",
"side":"long","pair":"ethusdt","positionSizePercentage":"10","leverage":"1","signalId":"123"}

 

Email method (see article):

For Spot:

For Futures:

key = YOURSECRETKEY
type=entry
exchange=zignaly
pair=ethusdt
orderType=market
positionSizePercentage=10
SignalId=123

key = YOURSECRETKEY
type=entry
exchange=zignaly
exchangeAccountType=futures
pair=ethusdt
orderType=market
side=long
leverage=1
positionSizePercentage=10
SignalId=123

 

From there, you will be able to add parameters to the signal 1 by 1, in order to test each new parameter and validate your signal syntax:

 

API Endpoint method GET (see article):

Example syntax spot:

https://zignaly.com/api/signals.php?key=YOURSECRETKEY&type=entry&exchange=zignaly &pair=ethusdt&orderType=market&positionSizePercentage=10&stopLossPercentage=5&signalId=123

Example syntax futures:

https://zignaly.com/api/signals.php?key=YOURSECRETKEY&type=entry&exchange=zignaly &exchangeAccountType=futures&pair=ethusdt&orderType=market&side=long&leverage=1 &positionSizePercentage=10&stopLossPercentage=5&signalId=123

 

API Endpoint method POST (see article):

Example syntax spot:

{"key":"YOURSECRETKEY","type":"entry","exchange":"zignaly","pair":"ethusdt",
"positionSizePercentage":"10","stopLossPercentage":"5","signalId":"123"}

Example syntax futures:
{"key":"XXXXXXX","type":"entry","exchange":"zignaly","exchangeAccountType":"futures",
"side":"long","pair":"ethusdt","positionSizePercentage":"10","leverage":"1","stopLossPercentage":"5","signalId":"123"}

 

Email method (see article):

For Spot:

For Futures:

key = YOURSECRETKEY
type=entry
exchange=zignaly
pair=ethusdt
orderType=market
positionSizePercentage=10
stopLossPercentage=5
SignalId=123

key = YOURSECRETKEY
type=entry
exchange=zignaly
exchangeAccountType=futures
pair=ethusdt
orderType=market
side=long
leverage=1
positionSizePercentage=10
stopLossPercentage=5
SignalId=123

 

When you are satisfied with your syntax and that everything is working as you expect, then you can begin to integrate it into your script if needed.
After that integration is realized, if you stop receiving correctly the signals, then that means the problem is in your script, maybe some syntax errors appear during the execution of your script, or other bugs.

Unfortunately, we cannot provide assistance on this part because writing scripts are not in our scope of competencies. You can consult our article on the Trading View Integration where you will find resources over the web to learn, create and debug Pine scripts.

You can also join our Discord server, where you will find the Community of Zignaly, with a lot of resources and experimented users who can help you: Zignaly Discord Community


Exit Signals

The logic will be exactly the same as the entry signals. If the signal is sent through a script, then you will need to test it directly by sending it through a Trading View alert or an email to validate the syntax:

API Endpoint method GET (see article):

Example syntax spot:

https://zignaly.com/api/signals.php?key=YOURSECRETKEY&type=exit&exchange=zignaly &pair=ethusdt&orderType=market&signalId=123

Example syntax futures:

https://zignaly.com/api/signals.php?key=YOURSECRETKEY&type=exit&exchange=zignaly &exchangeAccountType=futures&pair=ethusdt&orderType=market&signalId=123

 

API Endpoint method POST (see article):

Example syntax spot:
{"key":"YOURSECRETKEY","pair":"ethusdt","exchange":"zignaly","orderType":"market",
"type":"exit","signalId":"123"}

Example syntax futures:
{"key":"YOURSECRETKEY","pair":"ethusdt","exchange":"zignaly",
"exchangeAccountType":"futures","orderType":"market","type":"exit","signalId":"123"}

 

Email method (see article):

For Spot:

For Futures:

key = YOURSECRETKEY
type=exit
exchange=zignaly
pair=ethusdt
orderType=market
SignalId=123

key = YOURSECRETKEY
type=exit
exchange=zignaly
exchangeAccountType=futures
pair=ethusdt
orderType=market
SignalId=123

 

Be careful about the remaining amount of the position before trying to exit it, because in case if you are using reduce orders, for example, it could be possible that the remaining amount will be below the Trading Rules | Binance or the Trading Rules Futures | Binance. Please be always sure that the position you want to exit is always respecting these rules. You can increase the position size by sending a signal or through the trading terminal if the amount of the position that you want to sell is below these trading rules.


Conclusion

This logic of troubleshooting can be applied to all types of signals. The method is always the same, if you don't receive the signal or if it is not working as expected, then you need to simplify it to the maximum and send it in the easiest ways (Trading View alert or email). Always think to check the error logs, and build your syntax step by step, by testing after each new parameter that you are inserting in your signal. You can find all the documentation of the parameters in our article Signals Parameters. You can also validate your syntax using https://jsonformatter.curiousconcept.com/. It can be useful to find some punctuation errors among others.

After following all these steps, if you still don't receive the signal even in the error logs, you can join our Discord Community, we have a channel dedicated to the signals debugging, you can find a lot of resources and experimented users who can help you:

https://discord.gg/3GNtsDaX 

 

positionSizePercentage parameter warnings:

  • positionSizePercentage is used for Copy Trading and Profit Sharing only.
  • Signals Providers should not specify positionSize parameter in the syntax but in the settings page of the service.
  • Applying 100% in positionSizePercentage could fail, reduce it to 98% for example.

Parameters not working for Signal Providers services:

๐Ÿ†‡ pricepriority 

๐Ÿ†‡ reverse

๐Ÿ†‡ DCAPriority

๐Ÿ†‡ stopLossPriority

๐Ÿ†‡ takeProfitPriority

๐Ÿ†‡ trailingStopTriggerPriority

Parameters not working for Copy Trading and Profit Sharing services:

๐Ÿ†‡ reEntry

๐Ÿ†‡ positionSize

Was this article helpful?
1 out of 1 found this helpful
Have more questions? Submit a request

Comments

0 comments

Please sign in to leave a comment.