Форум сайта python.su
0
Проблема такая. Есть код подключения к бирже Эксмо.
import urllib import http.client import json import hmac import hashlib import time API_KEY = '' API_SECRET = b'' API_URL = 'api.exmo.com' API_VERSION = 'v1' class ScriptError(Exception): pass class ScriptQuitCondition(Exception): pass def call_api(api_method, http_method="POST", **kwargs): payload = {'nonce': int(round(time.time() * 1000))} if kwargs: payload.update(kwargs) payload = urllib.parse.urlencode(payload) H = hmac.new(key = API_SECRET, digestmod = hashlib.sha512) H.update(payload.encode('utf-8')) sign = H.hexdigest() headers = {"Content-type": "application/x-www-form-urlencoded", "Key": API_KEY, "Sign": sign} conn = http.client.HTTPSConnection(API_URL, timeout = 60) conn.request(http_method, "/" + API_VERSION + "/" + api_method, payload, headers) response = conn.getresponse().read() conn.close() try: obj = json.loads(response.decode('utf-8')) if 'error' in obj and obj['error']: raise ScriptError(obj)['error'] return obj except ValueError: raise ScriptError('Ошибка анализа возращаемых данных, получена строка', response)
def sell(para, volume): new_order = call_api( 'order_create', pair = para, quantity = volume, price = '20', type = 'sell' ) sell(USD_RUB, 1)
def sell(): new_order = call_api( 'order_create', pair = 'USD_RUB', quantity = '1', price = '20', type = 'sell' ) sell()
def sell(para, volume): new_order = call_api( 'order_create', pair = para, quantity = volume, price = '20', type = 'sell' ) sell(USD_RUB, 1)
Отредактировано ZiG (Янв. 1, 2019 11:12:23)
Офлайн
0
Все, разобрался. Нужно было вызывать так функцию:
sell('USD_RUB', 1)
Офлайн