Buying Signals

Last updated 4 months ago

This guide will show you how to send buying signals from e-mail.

Preparing the e-mail

We'll start showing an example of a mail and then will describe each option:

key = 565kadfk43kl1cb1Knd3De8e5459ja
pair=xrpbtc
exchange=binance
type=buy
signalId = 1
limitPrice=0.000061
buyType=stop-limit
buyStopPrice=0.000051
positionSize=0.003
positionSizeQuote = BTC
stopLossPrice = 0.000054
takeProfitPrice1 = 0.000064
takeProfitAmountPercentage1 = 50
takeProfitPercentage2 = 20
takeProfitAmountPercentage2 = 50
trailingStopTriggerPercentage = 4
trailingStopDistancePercentage = -3
buyTTL= 300
sellTTL = 86400

One option per line in the format key = value.

key

Required. Before start sending email signals, you need to create a provider and get its key (from the Signal URL, the key parameter).

Provider Example

pair

Required. This the pair for what you are going to pen a position. It has to exists in the exchange.

exchange

The exchange where you want to open a position. If any is provided, the default Binance exchange will be used.

type

For buying signals is not necessary, but if you want to use this option you can use buy as value.

signalId

The signalId parameter will allow us to identify the position and lately sell it by signals. In future versions, the signalId will help you to locate your signals inside Zignaly.

price

We will use this base price for calculating the limit price. If any price is provider, we'll use the current price (when the signal arrived). Beside, the limit price is calculated applying whatever price deviation you have configured in your settings.

Price Deviation

limitPrice

If you provide a limitPrice parameter, then this will be the final price used to open the position, we won't have into consideration the Buy Price Deviation option.

buyType

You can choose between limit, market or stop-limit. Default is limit. The stop-limit order waits until the the buyStopPrice has been reaches and them places a buy limit order for the price specified in the limitPrice parameter.

buyStopPrice

It's a mandatory field if the buyType is stop-limit. It will be the price at which, once reached, a limit order is placed.

positionSize

The position size of your investment. If any is provided, the one from your general settings will be used.

positionSizeQuote

The coin for the position size value. If any is used, the quote coin from your pair will be used (from XRPBTC, it would be BTC).

stopLossPercentage

The stop loss price will be calculated from the buying price minus this percentage. You can use stopLossPrice directly. If any of them aren't sent, the one from your general settings will be used.

stopLossPrice

The stop loss price used for closing your position if the price falls until this value.

trailingStopTriggerPercentage

The stop loss trigger price will be calculated from the buying price plus this percentage. You can use trailingStopTriggerPrice directly. If any of them aren't sent, the one from your general settings will be used.

trailingStopTriggerPrice

At this price the trailing stop will be activated, meaning, the price will be watched and if it falls below the trailingStopDistancePercentage, the position will be closed selling at current market price. If you don't send it, the one from your global settings will be used.

trailingStopDistancePercentage

The percentage from the higher price at what the position will be closed if the price falls below it. If it isn't provided, it will get the one from your global settings.

buyTTL

If the buying order hasn't been filled before this seconds elapse, the buying order will be canceled and the position closed with an error status Buy Removed From Exchange Because TTL. If any is provided, the one from your general settings will be used. If the order was partially filled, the rest of the order will be canceled and a position will be opened with the partial filled amount.

From the above example, 300 seconds means 5 minutes after the signal was sent.

Even if you don't send this value and is disabled in your general settings, any position that hasn't been filled after 5 days, will be closed.

sellTTL

If the position hasn't been completely closed after this amount of seconds elapsed, the position will be closed selling at current market price. It doesn't matter if the trailing stop is activated or several take profit targets have been reached. The position will be closed at current price.

From the above example, 86,400 seconds means 1 day.

takeProfitPercentage1

You can send as many targets as you want, just increase by 1 the final number for each new target. This parameter is the percentage that we would apply to the buying price to determine your target price.

takeProfitPrice1

You can send as many targets as you want, just increase by 1 the final number for each new target. This is the price target at which the amount for this target will be sold. The take profits orders are placed in the exchange as soon as the buying order has been filled.

takeProfitAmountPercentage1

You can send as many targets as you want, just increase by 1 the final number for each new target. The % of units (coins) bought. If this parameter is missing, the system will divide 100% by all the targets. If you send 3 targets it will be 100/3 per target. The total takeProfitAmountPercentage from all your target must equal to 1.

Multi-targets and Position Size

If you use multi targets, each one of them have to be bigger than the minimum amount allowed by the Exchange, for simplicity we use the following formula:

Position Size >= 0.0015BTC * Number of targets

Sending the email

The options can be sent to: signals@zignaly.com