def __init__(self, base_url=None, symbol=None, login=None, password=None, otpToken=None, apiKey=None, apiSecret=None, orderIDPrefix='mm_bitmex_'): """Init connector.""" self.logger = logging.getLogger('root') self.base_url = base_url self.symbol = symbol self.token = None self.login = login self.password = password self.otpToken = otpToken self.apiKey = apiKey self.apiSecret = apiSecret if len(orderIDPrefix) > 13: raise ValueError( "settings.ORDERID_PREFIX must be at most 13 characters long!") self.orderIDPrefix = orderIDPrefix # Prepare HTTPS session self.session = requests.Session() # These headers are always sent self.session.headers.update( {'user-agent': 'liquidbot-' + constants.VERSION}) # Create websocket for streaming data self.ws = BitMEXWebsocket(base_url, symbol)
def __init__(self, base_url=None, symbol=None, apiKey=None, apiSecret=None, orderIDPrefix='mm_bitmex_', shouldWSAuth=True, postOnly=False, timeout=7): """Init connector.""" self.logger = logging.getLogger('root') self.base_url = base_url self.symbol = symbol self.postOnly = postOnly if (apiKey is None): raise Exception( "Please set an API key and Secret to get started. See " + "https://github.com/BitMEX/sample-market-maker/#getting-started for more information." ) self.apiKey = apiKey self.apiSecret = apiSecret if len(orderIDPrefix) > 13: raise ValueError( "settings.ORDERID_PREFIX must be at most 13 characters long!") self.orderIDPrefix = orderIDPrefix self.retries = 0 # initialize counter # Prepare HTTPS session self.session = requests.Session() # These headers are always sent self.session.headers.update( {'user-agent': 'liquidbot-' + constants.VERSION}) self.session.headers.update({'content-type': 'application/json'}) self.session.headers.update({'accept': 'application/json'}) # Create websocket for streaming data self.ws = BitMEXWebsocket() self.ws.connect(base_url, symbol, shouldAuth=shouldWSAuth) self.timeout = timeout