Last active
November 16, 2020 11:17
-
-
Save krzko/8866a266c7e814f0e8c34d29b186e501 to your computer and use it in GitHub Desktop.
A shell file containing bash functions to execute trades on Zignaly (https://zignaly.com) from the command line
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
### Zignaly Hybrid Trades ### | |
#/ $ source zignaly_functons.sh | |
#/ $ run_the_function | |
export ZIGNALY_API_URL="https://zignaly.com/api/signals.php" | |
function log_me() { | |
local MTIME=`date "+%F %T"` | |
echo $MTIME" "$1 | |
} | |
# Futures | |
function zignaly_futures_entry() { | |
local EXCHANGE=$1 | |
local TICKER=$2 | |
local KEY=$3 | |
local SIDE=$4 | |
local SIZE=$5 | |
local LEVERAGE=$6 | |
local BODY="" | |
log_me "π© Zignaly => Starting Futures Entry" | |
if [[ $SIDE = "long" ]] | |
then | |
log_me "π¦ Zignaly => Entry | signalId:${EXCHANGE}-Futures-${TICKER}PERP-MAN-L pair:${TICKER}PERP exchange:${EXCHANGE} side:${SIDE} type:entry" | |
BODY="{\"signalId\":\"${EXCHANGE}-Futures-${TICKER}PERP-MAN-L\",\"key\":\"${KEY}\",\"pair\":\"${TICKER}PERP\",\"exchange\":\"${EXCHANGE}\",\"exchangeAccountType\":\"futures\",\"side\":\"${SIDE}\",\"type\":\"entry\",\"orderType\":\"market\",\"entryLeverage\":\"${LEVERAGE}\",\"positionSize\":\"${SIZE}\",\"positionSizeQuote\":\"USDT\"}" | |
elif [[ $SIDE = "short" ]] | |
then | |
log_me "π¦ Zignaly => Entry | signalId:${EXCHANGE}-Futures-${TICKER}PERP-MAN-S pair:${TICKER}PERP exchange:${EXCHANGE} side:${SIDE} type:entry" | |
BODY="{\"signalId\":\"${EXCHANGE}-Futures-${TICKER}PERP-MAN-S\",\"key\":\"${KEY}\",\"pair\":\"${TICKER}PERP\",\"exchange\":\"${EXCHANGE}\",\"exchangeAccountType\":\"futures\",\"side\":\"${SIDE}\",\"type\":\"entry\",\"orderType\":\"market\",\"entryLeverage\":\"${LEVERAGE}\",\"positionSize\":\"${SIZE}\",\"positionSizeQuote\":\"USDT\"}" | |
else | |
log_me "π₯ Zignaly => Error: Side does not equal to long or short" | |
fi | |
log_me "π¦ Zignaly => Entry | curl -X POST ${BODY} https://zignaly.com/api/signals.php" | |
curl -X POST -H "Content-Type: application/json" \ | |
-d $BODY \ | |
$ZIGNALY_API_URL | |
log_me "π Zignaly => Let's go!" | |
#zignaly_futures_entry Binance BTCUSDT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX long 1000 10 | |
#zignaly_futures_entry Binance BTCUSDT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX short 1000 10 | |
} | |
function zignaly_futures_exit() { | |
local EXCHANGE=$1 | |
local TICKER=$2 | |
local KEY=$3 | |
local SIDE=$4 | |
local BODY="" | |
log_me "π© Zignaly => Starting Futures Exit" | |
if [[ $SIDE = "long" ]] | |
then | |
log_me "π¦ Zignaly => Exit | signalId:${EXCHANGE}-Futures-${TICKER}PERP-MAN-L pair:${TICKER}PERP exchange:${EXCHANGE} side:${SIDE} type:exit" | |
BODY="{\"signalId\":\"${EXCHANGE}-Futures-${TICKER}PERP-MAN-L\",\"key\":\"${KEY}\",\"pair\":\"${TICKER}PERP\",\"exchange\":\"${EXCHANGE}\",\"exchangeAccountType\":\"futures\",\"type\":\"exit\",\"orderType\":\"market\"}" | |
elif [[ $SIDE = "short" ]] | |
then | |
log_me "π¦ Zignaly => Exit | signalId:${EXCHANGE}-Futures-${TICKER}PERP-MAN-S pair:${TICKER}PERP exchange:${EXCHANGE} side:${SIDE} type:exit" | |
BODY="{\"signalId\":\"${EXCHANGE}-Futures-${TICKER}PERP-MAN-S\",\"key\":\"${KEY}\",\"pair\":\"${TICKER}PERP\",\"exchange\":\"${EXCHANGE}\",\"exchangeAccountType\":\"futures\",\"type\":\"exit\",\"orderType\":\"market\"}" | |
else | |
log_me "π₯ Zignaly => Error: Side does not equal to long or short" | |
fi | |
log_me "π¦ Zignaly => Exit | curl -X POST ${BODY} https://zignaly.com/api/signals.php" | |
curl -X POST -H "Content-Type: application/json" \ | |
-d $BODY \ | |
$ZIGNALY_API_URL | |
log_me "π° Zignaly => Exited. Nice!" | |
#zignaly_futures_exit Binance BTCUSDT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX long | |
#zignaly_futures_exit Binance BTCUSDT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX short | |
} | |
# Spot | |
function zignaly_spot_entry() { | |
local EXCHANGE=$1 | |
local TICKER=$2 | |
local KEY=$3 | |
local SIZE=$4 | |
log_me "π© Zignaly => Starting Spot Entry" | |
log_me "π¦ Zignaly => Entry | signalId:${EXCHANGE}-Spot-${TICKER}-MAN-L pair:${TICKER} exchange:${EXCHANGE} type:entry" | |
local BODY="{\"signalId\":\"${EXCHANGE}-Spot-${TICKER}-MAN-L\",\"key\":\"${KEY}\",\"pair\":\"${TICKER}\",\"exchange\":\"${EXCHANGE}\",\"type\":\"buy\",\"orderType\":\"market\",\"positionSizeQuote\":\"USDT\",\"positionSize\":\"${SIZE}\"}" | |
log_me "π¦ Zignaly => Entry | curl -X POST ${BODY} https://zignaly.com/api/signals.php" | |
curl -X POST -H "Content-Type: application/json" \ | |
-d $BODY \ | |
$ZIGNALY_API_URL | |
log_me "π Zignaly => Let's go!" | |
#zignaly_spot_entry Binance BTCUSDT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 1000 | |
} | |
function zignaly_spot_exit() { | |
local EXCHANGE=$1 | |
local TICKER=$2 | |
local KEY=$3 | |
log_me "π© Zignaly => Starting Spot Exit" | |
log_me "π¦ Zignaly => Exit | signalId:${EXCHANGE}-Spot-${TICKER}-MAN-L pair:${TICKER} exchange:${EXCHANGE} type:entry" | |
local BODY="{\"signalId\":\"${EXCHANGE}-Spot-${TICKER}-MAN-L\",\"key\":\"${KEY}\",\"pair\":\"${TICKER}\",\"exchange\":\"${EXCHANGE}\",\"type\":\"exit\",\"orderType\":\"market\"}" | |
log_me "π¦ Zignaly => Exit | curl -X POST ${BODY} https://zignaly.com/api/signals.php" | |
curl -X POST -H "Content-Type: application/json" \ | |
-d $BODY \ | |
$ZIGNALY_API_URL | |
log_me "π° Zignaly => Exited. Nice!" | |
#zignaly_spot_exit Binance BTCUSDT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment