def cancel_order_bittrex(key, order_id): # https://bittrex.com/api/v1.1/market/cancel?apikey=API_KEY&uuid=ORDER_UUID final_url = BITTREX_CANCEL_ORDER + key.api_key + "&nonce=" + str( generate_nonce()) body = { "uuid": order_id, } final_url += _urlencode(body) headers = {"apisign": signed_string(final_url, key.secret)} post_details = PostRequestDetails(final_url, headers, body) if get_logging_level() >= LOG_ALL_MARKET_RELATED_CRAP: msg = "cancel_order_bittrex: {res}".format(res=post_details) print_to_console(msg, LOG_ALL_MARKET_RELATED_CRAP) log_to_file(msg, "market_utils.log") err_msg = "cancel bittrex order with id {id}".format(id=order_id) res = send_get_request_with_header(post_details.final_url, post_details.headers, err_msg, timeout=BITTREX_DEAL_TIMEOUT) if get_logging_level() >= LOG_ALL_MARKET_RELATED_CRAP: print_to_console(res, LOG_ALL_MARKET_RELATED_CRAP) log_to_file(res, "market_utils.log") return res
def test_time_epoch(): t = get_now_seconds_utc() t1 = get_now_seconds_local() t2 = generate_nonce() print "utc", t print "local", t1 print "nonce", t2
def generate_body(pair_name, price, amount, order_type): return { "command": order_type, "currencyPair": pair_name, "rate": float_to_str(price), "amount": float_to_str(amount), "nonce": generate_nonce() }
def generate_body(pair_name, price, amount, order_type): return { "pair": pair_name, "type": order_type, "ordertype": "limit", "price": float_to_str(price), "volume": float_to_str(amount), "nonce": generate_nonce() }
def get_balance_poloniex_post_details(key): body = {'command': 'returnCompleteBalances', 'nonce': generate_nonce()} headers = {"Key": key.api_key, "Sign": signed_body(body, key.secret)} # https://poloniex.com/tradingApi final_url = POLONIEX_CHECK_BALANCE res = PostRequestDetails(final_url, headers, body) if should_print_debug(): print_to_console(res, LOG_ALL_MARKET_NETWORK_RELATED_CRAP) return res
def get_balance_bittrex_post_details(key): final_url = BITTREX_CHECK_BALANCE + key.api_key + "&nonce=" + str( generate_nonce()) body = {} final_url += _urlencode(body) headers = {"apisign": signed_string(final_url, key.secret)} res = PostRequestDetails(final_url, headers, body) if should_print_debug(): print_to_console(res, LOG_ALL_MARKET_NETWORK_RELATED_CRAP) return res
def get_open_orders_kraken_post_details(key, pair_name=None): final_url = KRAKEN_BASE_API_URL + KRAKEN_GET_OPEN_ORDERS body = {"nonce": generate_nonce()} headers = { "API-Key": key.api_key, "API-Sign": sign_kraken(body, KRAKEN_GET_OPEN_ORDERS, key.secret) } res = PostRequestDetails(final_url, headers, body) if get_logging_level() >= LOG_ALL_MARKET_RELATED_CRAP: msg = "ger_open_orders_kraken: {res}".format(res=res) print_to_console(msg, LOG_ALL_MARKET_RELATED_CRAP) log_to_file(msg, "market_utils.log") return res
def get_open_orders_poloniex_post_details(key, pair_name): body = { 'command': 'returnOpenOrders', 'currencyPair': pair_name, 'nonce': generate_nonce() } headers = {"Key": key.api_key, "Sign": signed_body(body, key.secret)} # https://poloniex.com/tradingApi final_url = POLONIEX_GET_OPEN_ORDERS res = PostRequestDetails(final_url, headers, body) if get_logging_level() >= LOG_ALL_MARKET_RELATED_CRAP: msg = "get_open_order_poloniex: {res}".format(res=res) print_to_console(msg, LOG_ALL_MARKET_RELATED_CRAP) log_to_file(msg, "market_utils.log") return res
def get_closed_orders_kraken_post_details(key, pair_name=None, time_start=0, time_end=get_now_seconds_utc()): final_url = KRAKEN_BASE_API_URL + KRAKEN_GET_CLOSE_ORDERS body = {"nonce": generate_nonce(), "start": time_start, "end": time_end} headers = { "API-Key": key.api_key, "API-Sign": sign_kraken(body, KRAKEN_GET_CLOSE_ORDERS, key.secret) } res = PostRequestDetails(final_url, headers, body) if get_logging_level() >= LOG_ALL_MARKET_RELATED_CRAP: msg = "get_closed_orders_kraken: {res}".format(res=res) print_to_console(msg, LOG_ALL_MARKET_RELATED_CRAP) log_to_file(msg, "market_utils.log") return res
def add_sell_order_bittrex_url(key, pair_name, price, amount): # https://bittrex.com/api/v1.1/market/selllimit?apikey=API_KEY&market=BTC-LTC&quantity=1.2&rate=1.3 final_url = BITTREX_SELL_ORDER + key.api_key + "&nonce=" + str(generate_nonce()) body = { "market": pair_name, "quantity": float_to_str(amount), "rate": float_to_str(price) } final_url += _urlencode(body) headers = {"apisign": signed_string(final_url, key.secret)} res = PostRequestDetails(final_url, headers, body) if get_logging_level() >= LOG_ALL_MARKET_RELATED_CRAP: msg = "add_sell_order_bittrex: {res}".format(res=res) print_to_console(msg, LOG_ALL_MARKET_RELATED_CRAP) log_to_file(msg, "market_utils.log") return res
def get_order_history_poloniex_post_details(key, pair_name, time_start, time_end, limit): body = { 'command': 'returnTradeHistory', 'currencyPair': pair_name, 'start': time_start, 'end': time_end, 'limit': limit, 'nonce': generate_nonce() } headers = {"Key": key.api_key, "Sign": signed_body(body, key.secret)} # https://poloniex.com/tradingApi final_url = POLONIEX_GET_ORDER_HISTORY post_details = PostRequestDetails(final_url, headers, body) if get_logging_level() >= LOG_ALL_MARKET_RELATED_CRAP: msg = "get orders history poloniex: {res}".format(res=post_details) print_to_console(msg, LOG_ALL_MARKET_RELATED_CRAP) log_to_file(msg, "market_utils.log") return post_details
def cancel_order_kraken(key, order_id): # https://api.kraken.com/0/private/CancelOrder final_url = KRAKEN_BASE_API_URL + KRAKEN_CANCEL_ORDER body = { "txid": order_id, "nonce": generate_nonce() } headers = {"API-Key": key.api_key, "API-Sign": sign_kraken(body, KRAKEN_CANCEL_ORDER, key.secret)} if get_logging_level() >= LOG_ALL_MARKET_RELATED_CRAP: msg = "cancel_order_kraken: url - {url} headers - {headers} body - {body}".format( url=final_url, headers=headers, body=body) print_to_console(msg, LOG_ALL_MARKET_RELATED_CRAP) log_to_file(msg, "market_utils.log") post_details = PostRequestDetails(final_url, headers, body) err_msg = "cancel kraken called for {order_id}".format(order_id=order_id) return send_post_request_with_logging(post_details, err_msg)
def get_order_history_bittrex_post_details(key, pair_name): final_url = BITTREX_GET_TRADE_HISTORY + key.api_key + "&nonce=" + str( generate_nonce()) if pair_name != "all": body = {"market": pair_name} else: body = {} final_url += _urlencode(body) headers = {"apisign": signed_string(final_url, key.secret)} post_details = PostRequestDetails(final_url, headers, body) if get_logging_level() >= LOG_ALL_MARKET_RELATED_CRAP: msg = "get_order_history_bittrex_post_details: {res}".format( res=post_details) print_to_console(msg, LOG_ALL_MARKET_RELATED_CRAP) log_to_file(msg, "market_utils.log") return post_details
def cancel_order_poloniex(key, order_id): body = { "command": "cancelOrder", "orderNumber": order_id, "nonce": generate_nonce() } headers = {"Key": key.api_key, "Sign": signed_body(body, key.secret)} # https://poloniex.com/tradingApi final_url = POLONIEX_CANCEL_ORDER post_details = PostRequestDetails(final_url, headers, body) if get_logging_level() >= LOG_ALL_MARKET_RELATED_CRAP: msg = "add_sell_order_poloniex: {res}".format(res=post_details) print_to_console(msg, LOG_ALL_MARKET_RELATED_CRAP) log_to_file(msg, "market_utils.log") err_msg = "cancel poloniex called for {order_id}".format(order_id=order_id) return send_post_request_with_logging(post_details, err_msg)