BlockchainCommons / BlockchainCommons/spotbit

Configuration API call needs to return more specific information about which servers it uses for which currencies.

Open
#50 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
CSS
Stars
36
Forks
17
PR merge metrics
No merged PRs in 30d

Description

SpotBit's `/configure` API call returns two lists of exchanges, `cached exchanges` and `on demand exchanges`. The documentation does not make it clear what the actual difference is between these types of exchanges, or how each exchange relates to the list of currencies it supports. Here is the output of `http://h6zwwkcivy2hjys6xpinlnz2f74dsmvltzsd4xb42vinhlcaoe7fdeqd.onion/configure` as of 2021-01-21:

```json
{
"cached exchanges": ["gemini", "bitstamp", "okcoin", "coinbasepro", "kraken", "bitfinex", "bitflyer", "liquid", "coincheck", "bitbank", "zaif", "hitbtc", "binance", "okex", "gateio", "bitmax"],
"currencies": ["USD", "GBP", "JPY", "USDT", "EUR"],
"interval": 10,
"keepWeeks": 3,
"on demand exchanges": ["acx", "aofex", "bequant", "bibox", "bigone", "binance", "bitbank", "bitbay", "bitfinex", "bitflyer", "bitforex", "bithumb", "bitkk", "bitmax", "bitstamp", "bittrex", "bitz", "bl3p", "bleutrade", "braziliex", "btcalpha", "btcbox", "btcmarkets", "btctradeua", "bw", "bybit", "bytetrade", "cex", "chilebit", "coinbase", "coinbasepro", "coincheck", "coinegg", "coinex", "coinfalcon", "coinfloor", "coinmate", "coinone", "crex24", "currencycom", "digifinex", "dsx", "eterbase", "exmo", "exx", "foxbit", "ftx", "gateio", "gemini", "hbtc", "hitbtc", "hollaex", "huobipro", "ice3x", "independentreserve", "indodax", "itbit", "kraken", "kucoin", "lakebtc", "latoken", "lbank", "liquid", "livecoin", "luno", "lykke", "mercado", "oceanex", "okcoin", "okex", "paymium", "poloniex", "probit", "southxchange", "stex", "surbitcoin", "therock", "tidebit", "tidex", "upbit", "vbtc", "wavesexchange", "whitebit", "yobit", "zaif", "zb"],
"updated settings?": "no"
}
```

The actual [SpotBit Docs](https://github.com/blockchaincommons/SpotBit#exchanges-used-for-averaging) say:

> For each of the listed fiat currencies, there is a list of five exchanges that will be used to average data for the /now/CURRENCY endpoint. They have been selected based on volume rankings and coinmarketcap's confidence rating. In order to stick with exchanges supported by ccxt, some candidates were excluded (such as btse). These exchanges should all be listed in the exchanges field of spotbit.config in order to ensure spotbit runs as smoothly as possible. The default config will include these values for you.

It goes on to list the standard configuration:

* USD
* coinbasepro
* hitbtc
* bitfinex
* kraken
* bitstamp
* GBP
* coinbasepro
* coinsbank
* bitstamp
* kraken
* cexio
* EUR
* kraken
* coinbasepro
* bitfinex
* bitstamp
* indoex
* JPY
* bitflyer
* liquid
* coincheck
* bitbank
* zaif
* USDT
* binance
* okex
* huobipro
* bitmax
* gateio

*Which* five exchanges are used for each currency is not provided by the results of the `/configure` call, however, and having to hard-code this list into applications is not an acceptable alternative since it can be configured on a per-server basis.

Expected result: SpotBit should return which servers are supported for which currencies in a way application developers can use.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.