A python (3.7+) based scraper and dashboard to monitor the performance of your Binance or Bybit Futures account.
Version 2 is currently in development and can be found in a separate branch. In short it manage multiple accounts from one dashboard and comes in darkmode.
- Create a fresh new API on Binance or Bybit, with only read rights.
- Clone this repository:
git clone https://github.com/ecoppen/futuresboard.git
- Navigate to the futuresboard directory:
cd futuresboard
- Install dependencies
python -m pip install .
. For developing,python -m pip install -e .[dev]
- Copy
config/config.json.example
toconfig/config.json
and add your new api key and secret:nano config.json
- Collect your current trades by running
futuresboard --scrape-only
. If you want to monitor the weight usage (see below). - By default, when launching the futuresboard web application, a separate thread is also started to continuously collect new trades.
Alternatively, setup the scraper on a crontab or alternative to keep the database up-to-date:
crontab -e
then*/5 * * * * futuresboard --scrape-only
(example is every 5 minutes, change to your needs) In this case, don't forget to pass--disable-auto-scraper
. - Start a screen or alternative if you want the webserver to persist:
screen -S futuresboard
- Start the futuresboard web application
futuresboard
- Navigate to the IP address shown e.g.
http://127.0.0.1:5000/
. These settings can be changed by passing--host
and/or--port
when running the above command
Currently only Binance and Bybit Futures are supported - as those are supported by passivbot.
- Reminder: Binance API allows you to consume up to
1200 weight / minute / IP
. - Account: Fetching account information costs
5
weight per run - Income: Fetching income information costs
30
weight per 1000 (initial run will build database, afterwards only new income will be fetched) - Orders: Fetching open order information costs
40
weight per run - The scraper will sleep for a minute when the rate exceeds
800 within a minute
- Account/Income/Positions: Fetching account information or positions costs
1
weight per run with a maximum combination allowed of120/min
. Income can be fetched in batches of 50 (initial run will build database, afters only new income will be fetched) - Orders: Fetching open order information costs
1
weight per symbol with a maximum allowed of600/min
- The scraper will sleep for a minute when the rate exceeds
100 within a minute
The /config/config.json
file allows you to customise the look and feel of your dashboard as follows:
AUTO_SCRAPE_INTERVAL
is set to 300 seconds, this value can be adjusted between60
and3600
NAVBAR_TITLE
changes the branding in the top left of the navigation (see below)NAVBAR_BG
changes the colour of the navigation bar, acceptable values are:bg-primary
,bg-secondary
,bg-success
,bg-danger
,bg-warning
,bg-info
and the defaultbg-dark
PROJECTIONS
changes the percentage values on the projections page.1.003
equates to0.3%
daily and1.01
equates to1%
daily.
For example, setting "NAVBAR_TITLE": "Custom title"
and "NAVBAR_BG": "bg-primary",
would result in: