Python app to manage your trades by using Nefertiti Bot from command line. Nefertiti is cool cryptocurrency trading bot made by @svanas, see here: https://nefertiti-tradebot.com/ for more information. Basically the bot will find the best support available, put a limit buy on it and wait. After limit buy take place, the sell bot will automatically set sell with specific target profit. The default is 5%. This is default setting for everything. You can adjust the bot to match your criteria.
Nefertiti, for simplicity, only provides command line, lack of management tool. This software is trying to provides the management with the main feature:
- Start, stop, and restart your NEF bot.
- See the status of your bot
- Logviewer (todos)
- Summary of PnL (todos)
As it first published to match my need, this tool equipped with automatically coin picking from Trending coins.
- Copy config.cfg.txt to config.cfg
- Edit your configuration. To add new exchange, add section in your config. You may copy from [binance] section
- Please make sure you edit
prices
- Create virtual environment for nefman (optional)
virtualenv .envnefman
- Enter your virtual environment
source .envnefman/bin/activate
- Install requirements with pip
pip install -r requirements.txt
- Run setup.py
python setup.py
- Create log folder
mkdir logs sell
for sell logs folder,mkdir -p logs/{binance,kucoin,hitbtc}
for buy logs per exchange. Please change to your exchanges - Get the pairs for active exchange to be used (eg. get list of active market on Binance)->
python exchangemarket.py -e BINANCE
This step used to make sure the pair exists in your exchange (even nef also checked that), and for checking if you want to run random pairs for trending coins. - This optional steps, is getting trending coin from livecoinwatch.com, from rank 51-100. I assume in that rank, the coins is trending, but have no momentum yet, with enough volume (avoid shitcoins). Before run this step, make sure you register API for free in livecoinwatch. You may edit the source code to match your rank. Do this to get trending coins ->
python lcmarket.py
We are ready to trade with Nef.
- Run sell bot
python nefman.py -e BINANCE -a sell
. The output will be available as log file insell
folder. - Run buy bot
python nefman.py -e BINANCE -a buy -m ETHUSDT
. The output will be available as log file inlogs\{exchange}
folder - Stop the bot
python nefman.py -e BINANCE -a stop -m ETHUSDT
. It will delete log file inlogs\binance\ETHUSDT
as well. - Trading summary
python nefman.py -e BINANCE -a summary
- List of active bots
python nefman.py -e BINANCE -a list
Tips: -e or exchange can set default in nefman.py file, so you don't have to write it everytime
No maintenance necessary. But if you want to start a system, this is what I have been doing. This is my trading system, set in cron job. If you don't like it, don't run it. Use your own system.
- Every x days (default to 3 days), check if there's enough transactions
- If not, shutdown the bot. Close all buy limits. Market sell any sell limit
- Regularly calculate the pl summary based on transaction data (x days)
- Update the balance based on PL summary (x days)
All requirements is already noted in requirements.txt. Use pip to install them all.
- Python3
- PeeWee ORM
- Sqlite - default. You can change it
Tested on Mac and Linux Ubuntu