Example #1
0
def user_tx():
    #db.user_txs.find()
    a = broker.Broker()
    #ae = [exc.BITTREX, exc.CRYPTOPIA, exc.BINANCE] #, exc.KUCOIN,  exc.HITBTC]
    ae = [exc.BINANCE]  #, exc.KUCOIN,  exc.HITBTC]
    a.set_active_exchanges(ae)

    txs = a.global_tradehistory()
    print("len ", len(txs))
    for tx in txs[:]:
        print(tx)
    """
Example #2
0
""" 
cancel tool. ask user for each open order if to cancel
"""

import sys, os
import archon.facade as facade
import archon.broker as broker
import archon.exchange.exchanges as exc
import time
import datetime
from util import *

a = broker.Broker()
a.set_keys_exchange_file()

if __name__ == '__main__':

    for exchange in a.active_exchanges:
        oo = a.afacade.open_orders(exchange)
        n = exc.NAMES[exchange]
        print("** %s open orders **" % n)
        if oo:
            print(len(oo))
            for o in oo:
                print(str(o))

    #########

    oo = a.global_openorders()
    print("all orders ", oo)
Example #3
0
from datetime import datetime
import archon.broker as broker
import archon.exchange.exchanges as exc
import archon.model.models as models
import archon.exchange.deribit.Wrapper as deribit
from datetime import datetime
from archon.custom_logger import setup_logger, remove_loggers, remove_all_loggers

abroker = broker.Broker(setAuto=True, setMongo=False)
abroker.set_keys_exchange_file(exchanges=[exc.DERIBIT])
client = abroker.afacade.get_client(exc.DERIBIT)
remove_all_loggers()
#remove_loggers()
sym = 'BTC-PERPETUAL'

th = client.tradehistory()
for x in th:
    ts = x['timeStamp']
    ts = int(ts) / 1000
    tsf = datetime.utcfromtimestamp(ts).strftime('%Y-%m-%d %H:%M:%S')
    q = x['quantity']
    p = x['price']
    s = x['side']

    print(tsf, q, p, s)
Example #4
0
import logging
import os
import time

import numpy
from pymongo import MongoClient
import archon.orders as orders
import archon.broker as broker
import archon.exchange.exchanges as exc
import archon.model.models as m

abroker = broker.Broker()
abroker.set_active_exchanges([exc.BITMEX])


def mid_price(book):
    """ ratio of top bid to top ask """
    bids, asks = book['bids'], book['asks']
    #asks.reverse()
    level = 0
    bp = bids[level]['price']
    ap = asks[level]['price']
    mid = (bp + ap) / 2
    return mid


def get_book():
    market = m.market_from("XBT", "USD")
    smarket = m.conv_markets_to(market, exc.BITMEX)
    book = abroker.afacade.get_orderbook(smarket, exc.BITMEX)
    return book
Example #5
0
"""
show orderbooks for all exchanges
"""

import archon.facade as facade
import archon.broker as broker
import archon.exchange.exchanges as exc
import archon.model.models as model
from archon.util import *

import time
import datetime
import math

abroker = broker.Broker(setAuto=False)
#TOOD other exchanges
abroker.set_keys_exchange_file(exchanges=[exc.KRAKEN])


def display_book(book, name):
    [bids, asks] = book
    print("** bid **       %s     ** ask **" % (name))
    i = 0
    for b in bids[:10]:
        ask = asks[i]
        bp = b['price']
        ap = ask['price']
        av = ask['quantity']
        bv = b['quantity']
        print("%.8f  %.2f   %.8f  %.2f" % (bp, bv, ap, av))
        i += 1
Example #6
0
def run_balance_report():
    log.info("run report")
    #logpath = '/tmp/log'
    abroker = broker.Broker()
    arch.setClientsFromFile(abroker)
    balance_report(abroker)
Example #7
0
from datetime import datetime
import archon.broker as broker
import archon.exchange.exchanges as exc
import archon.model.models as models
import archon.exchange.deribit.Wrapper as deribit
from datetime import datetime, timezone, timedelta

abroker = broker.Broker(setAuto=True)
abroker.set_keys_exchange_file(exchanges=[exc.DERIBIT])
client = abroker.afacade.get_client(exc.DERIBIT)


def convert_time(ts):
    return datetime.utcfromtimestamp(int(ts) /
                                     1000).strftime('%Y-%m-%d %H:%M:%S')


def get_trades(sym, dt):
    ts = 1000 * int(dt.timestamp())
    #print(ts)

    start = ts
    z = client.getlasttrades(sym, start=start, end=start + 10**8, count=1)
    return z


def show(sym):
    dt = datetime(2018, 12, 1)
    dt = dt.replace(tzinfo=timezone.utc)
    z = get_trades(sym, dt)