mirror of
https://github.com/discountry/ritmex-bot.git
synced 2026-09-10 16:58:08 +00:00
commit
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
import ccxt.pro
|
||||
from asyncio import run
|
||||
|
||||
|
||||
def table(values):
|
||||
first = values[0]
|
||||
keys = list(first.keys()) if isinstance(first, dict) else range(0, len(first))
|
||||
widths = [max([len(str(v[k])) for v in values]) for k in keys]
|
||||
string = ' | '.join(['{:<' + str(w) + '}' for w in widths])
|
||||
return "\n".join([string.format(*[str(v[k]) for k in keys]) for v in values])
|
||||
|
||||
|
||||
async def main():
|
||||
exchange = ccxt.pro.bitmex({
|
||||
# 'options': {
|
||||
# 'OHLCVLimit': 1000, # how many candles to store in memory by default
|
||||
# },
|
||||
})
|
||||
symbol = 'BTC/USD'
|
||||
timeframe = '1m' # 5m, 1h, 1d
|
||||
limit = 10 # how many candles to return max
|
||||
method = 'watchOHLCV'
|
||||
if (method in exchange.has) and exchange.has[method]:
|
||||
max_iterations = 100 # how many times to repeat the loop before exiting
|
||||
for i in range(0, max_iterations):
|
||||
try:
|
||||
ohlcvs = await exchange.watch_ohlcv(symbol, timeframe, None, limit)
|
||||
now = exchange.milliseconds()
|
||||
print('\n===============================================================================')
|
||||
print('Loop iteration:', i, 'current time:', exchange.iso8601(now), symbol, timeframe)
|
||||
print('-------------------------------------------------------------------------------')
|
||||
print(table([[exchange.iso8601(o[0])] + o[1:] for o in ohlcvs]))
|
||||
except Exception as e:
|
||||
print(type(e).__name__, str(e))
|
||||
break
|
||||
await exchange.close()
|
||||
else:
|
||||
print(exchange.id, method, 'is not supported or not implemented yet')
|
||||
|
||||
|
||||
run(main())
|
||||
Reference in New Issue
Block a user