handler = logging.StreamHandler()
handler.setFormatter(
    logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s'))
logger.addHandler(handler)

sub_client = SubscriptionClient()


def callback(mbp_event: 'MbpEvent'):
    print("Timestamp: " + str(mbp_event.ts))
    print("Channel : " + mbp_event.ch)
    mbp = mbp_event.data
    print("seqNum : ", mbp.seqNum)
    print("prevSeqNum : ", mbp.prevSeqNum)
    for entry in mbp.bids:
        print("Bids: " + " price: " + str(entry.price) + ", amount: " +
              str(entry.amount))

    for entry in mbp.asks:
        print("Asks: " + " price: " + str(entry.price) + ", amount: " +
              str(entry.amount))

    print()


def error(e: 'HuobiApiException'):
    print(e.error_code + e.error_message)


sub_client.subscribe_mbp_event("btcusdt", MbpLevel.MBP150, callback, error)
    if mbp_event is None:  # need check None
        return

    mbp = mbp_event.data
    print("Subscribe seqNum : ", mbp.seqNum, "prevSeqNum", mbp.prevSeqNum,
          "bids size", len(mbp.bids), "asks size", len(mbp.asks))
    PrintMbp.print_mbp_sub(mbp_event)
    """
    user add process code here!
    """
    return


def sub_callback(mbp_event: 'MbpEvent'):
    formated_mbp_event = MbpDataFormat.format_subscribe(mbp_event)
    user_def_function(formated_mbp_event)


def sub_error(e: 'HuobiApiException'):
    print(e.error_code + e.error_message)


if __name__ == '__main__':

    symbol = "btcusdt"
    level = MbpLevel.MBP150

    MbpDataFormat.set_request_symbol_level(symbol, level)
    sub_client = SubscriptionClient()
    sub_client.subscribe_mbp_event(symbol, level, sub_callback, sub_error)
Exemple #3
0
logger = logging.getLogger("huobi-client")
logger.setLevel(level=logging.INFO)
handler = logging.StreamHandler()
handler.setFormatter(logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s'))
logger.addHandler(handler)

sub_client = SubscriptionClient()


def callback(mbp_event: 'MbpEvent'):
    print("Timestamp: " + str(mbp_event.ts))
    print("Channel : " + mbp_event.ch)
    mbp = mbp_event.data
    print("seqNum : ", mbp.seqNum)
    print("prevSeqNum : ", mbp.prevSeqNum)
    for entry in mbp.bids:
        print("Bids: " + " price: " + str(entry.price) + ", amount: " + str(entry.amount))

    for entry in mbp.asks:
        print("Asks: " + " price: " + str(entry.price) + ", amount: " + str(entry.amount))

    print()


def error(e: 'HuobiApiException'):
    print(e.error_code + e.error_message)


sub_client.subscribe_mbp_event("BTC_CQ", MbpLevel.MBP150, callback, error)