Пример #1
0
 def market_id_map(self, exchange):
     #cryptocopia
     client = self.clients[exchange]
     m = client.get_markets()
     d = {}
     for z in m:
         l = z['Label']
         market = models.conv_markets_from(l, exchange)
         p = z['TradePairId']
         d[market] = p
     return d
Пример #2
0
    def cancel_id(self, oid, otype=None, market=None, exchange=None):
        """ cancel by id """

        self.logger.info("cancel " + str(oid) + " " + str(exchange) + " " +
                         str(otype))
        result = None
        client = self.clients[exchange]
        if exchange == exc.CRYPTOPIA:
            result, err = client.cancel_trade_id(oid)
            self.canceled_orders += 1

        elif exchange == exc.BITTREX:
            result = self.clients[exc.BITTREX].cancel(oid)
            self.canceled_orders += 1

        elif exchange == exc.KUCOIN:
            order_type = otype
            market = models.conv_markets_from(market, exchange)
            self.logger.info("cancel! " + str(oid) + " " + str(exchange) +
                             " " + str(otype) + " " + str(market))
            result = self.clients[exc.KUCOIN].cancel_order(
                oid, order_type, market)
            self.canceled_orders += 1

        elif exchange == exc.HITBTC:
            result = self.clients[exchange].cancel_order(oid)
            self.canceled_orders += 1

        elif exchange == exc.BINANCE:
            result = self.clients[exchange].cancel_order(symbol=market,
                                                         orderId=oid)
            self.canceled_orders += 1

        elif exchange == exc.BITMEX:
            result = client.cancel(oid)

        else:
            self.logger.error("no exchange provided")

        self.logger.debug("cancel result " + str(result))
        return result