As you may read in my last beem update, I released version 0.19.36. The command line tool beempy
has now a robust price feed publish function for witnesses.
What does robust mean?
The other available price feed tools have the problem that a working full-node has to be set. Otherwise, the feed cannot be broadcasted. Robust means that broadcasting is always possible, no matter if all but one full node are failing.
Why is beempy
robust?
beempy
can be used together with updatenodes, which receives an hourly updated full-node configuration. You can see the hourly account updates here: https://steemd.com/@fullnodeupdate
beempy updatenodes
fetches the actual node configuration and is building a score. All nodes with positive score are than set as default nodes.
Price feed publishing
The price feed can be published with beempy witnessfeed
. --support-peg
can be set to support peg. If not set, quote is always 1 STEEM.
The base price is calculated from btc_usd and steem_usd prices similar to the conductor from @furion. It uses for BTC_USD
"https://api.bitfinex.com/v1/pubticker/BTCUSD",
"https://api.gdax.com/products/BTC-USD/ticker",
"https://api.kraken.com/0/public/Ticker?pair=XBTUSD",
"https://www.okcoin.com/api/v1/ticker.do?symbol=btc_usd",
"https://www.bitstamp.net/api/v2/ticker/btcusd/",
and for STEEM_BTC:
"https://poloniex.com/public?command=returnTicker",
"https://bittrex.com/api/v1.1/public/getmarketsummary?market=BTC-STEEM",
"https://api.binance.com/api/v1/ticker/24hr",
SBD_USD (only needed when supporting PEG) is calculated from the internal market.
Installing and setting up beempy
The alternative package installer pip
/pip3
for python3 is needed. It can be installed on ubuntu by:
sudo apt-get install python3-pip
In the next step, beem is installed for the current user by:
pip3 install beem -U --user
In the first step, a new wallet should be created:
beempy createwallet
The active key of the witness account has to be stored in the wallet:
beempy addkey
We need to know where beempy
is installed:
which beempy
I wrote a small script for unlocking the wallet, updating the nodes and publishing a price feed:
#!/bin/bash
export UNLOCK='secret_password'
/home/holger80/.local/bin/beempy updatenodes
/home/holger80/.local/bin/beempy witnessfeed holger80
I saved this script as update_feed
and added it to a crontab by runningcrontab -e
and entering:
0 * * * * (sh /home/holger80/update_feed) >> /tmp/crontab.log 2>&1
You can check /etc/crontab.log
if everything is working fine.
If you like what I'm doing, please consider @holger80 as one of your witnesses. You can use steemconnect.com for approve your vote or go to https://steemit.com/~witnesses and enter my name into the vote field: