- added `Binance` and `Kraken` `FakeCCXT` clients using the optimized price endpoint for speed
- `ExchangeClient`s that are fast will `hasattr("fast", ExchangeClient) and ExchangeClient.fast == True` these clients use optimized endpoints or are significantly faster than their counterparts in ccxt which does collect much more market data than we're currently interested in
- adds simple option parsing to invoking the module, it will call with `fast` (optimized endpoints) by default or if provided any of the long or short options, will include all `ExchangeClients` (`ExchangeClients.fast == True` included)
- some janitorial stuff prepping for a minor rev
- all Exchange calls are now delayed in sequence of their previous call, before all calls would be gathered concurrently, with the slowest call + delay being the delay for each round of calls (provided by `count`); what this means is that no time is wasted in between each subsequent call per client - the time for all calls for the aggregate results to complete will be the slowest of all chained calls, this could result in faster overall performance when doing many rounds of aggregate calls together and streamlines the workflow into concurrent requests of each chain of tasks of `fetch() -> delay() -> ...`
sh
pip install -U xrp-price-aggregate
fast clients are now called by default, with 3 calls to the exchanges and 0.25 delay
python -m xrp_price_aggregate | python -m json.tool
the same args, with all clients
python -m xrp_price_aggregate --exhaustive | python -m json.tool