Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- key_id = '5ae9193a-a842-4017-0007-f30c914ca11b'
- private_key = 'MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAItark70eaHuBNhWXyXuPsHNVvrNNIsFdZJdxiWOQ4nF++xXcgFxA9kcQeS/wyi1xu5KnPIeLLEusBaeYpNI5mkep8QguEOEXaCFkFW3fntyGGj8kZgG8eOjWVb6OHQYAFh4OYX6krxVcDDNilERhgNI4Z/GrdDBxkK1jJiQu5CjAgMBAAECgYAxYu/Hd4jrxGjfKq0Jykdfc6BRvgvTARpLxwQEJ0j0OMAxYEQ9EopklUkdAoDtmo5nwPWiMONx37P0MCmLPRi6vSqv5F4+B0DXbjZG4oE2AW5NTOIAXoaWlHW3TzzIegg8+aoq7/l39mtoVDm1XlgQygKXa5LMlWSt/TI/fK7v8QJBANoFMO0f3VT4u2WbALFG6ACQ6EoUR8Xs/3I2bSxxWirF2RXI1/Xgcdy5/x5UiRFWCI+7C+ofY8aPkVf1dDBFAqcCQQCjoU6LSTCUPK3ClQI3qUvyZYvnmhFEiR9pzxTeJ9WrLQ/A4yB+HJxu7lUiuLqH9tmn8OJQtIQ2vcPLw9cfmq2lAkEAobkUD/GBFxTivX37R4VXd4QGK11b2D/zRN+GoF79CZl1bKltOSBild8KlY8Tld6Bv0x6jBL4ykOZBuw2Yc/vJQJAGEDmlXqpuq8ryjWv+HQdj7ZBgHizqobwowxQuYUKBK9PMHX58PdosICfGeBrtY9/P4dS5Ed9eWezR9alYkfZCQJAJ40PLkCSHP21UfHIzhIhYFS1o+JkYdEKn8Byn/VXm8anviVz0JVGiABacZi+3SE8qhXmI83e16Gnz3m/cvHbqg=='
- import hashlib
- import time
- import base64
- import jwt
- import requests
- from pprint import pprint
- from cryptography.hazmat.primitives.serialization import load_pem_private_key, load_der_private_key
- from cryptography.hazmat.backends.openssl import backend
- from tabulate import tabulate
- def print_orders(orders):
- orders_list = []
- for order in orders:
- if order['symbol'] == 'TRXXBT':
- #pprint(order)
- orders_list.append((order['price']*1e8,order['side'], order['size'] - order['filled']))
- print(tabulate(sorted(orders_list, reverse=True), floatfmt=(".0f", "{:d}")))
- def create_digest(method, uri, query_str, body):
- data = method + uri + query_str + body
- return hashlib.md5(data.encode()).hexdigest()
- def generate_token(key_id, private_key, method, exp, uri="/", query_str="", body=""):
- digest = create_digest(method, uri, query_str, body)
- der = base64.b64decode(private_key)
- pem_key = load_der_private_key(der, password=None, backend=backend)
- jwt_encode = jwt.encode({'digest': digest, 'exp': exp}, pem_key, algorithm='RS512', headers={'kid': key_id})
- return jwt_encode.decode("utf-8")
- def get_header(endpoint):
- url = 'https://api.basefex.com' + endpoint
- auth_token = generate_token(key_id, private_key, "GET", 1584014794, endpoint)
- hed = {'authorization': 'Bearer ' + auth_token}
- return hed
- hed_position = get_header('/accounts')
- hed_orders = get_header('/orders/opening')
- while True:
- response_pos = requests.get('https://api.basefex.com/accounts', headers=hed_position)
- pos = response_pos.json()
- response_orders = requests.get('https://api.basefex.com/orders/opening', headers=hed_orders)
- orders = response_orders.json()
- print('\n'*50)
- print(f"{pos['positions']['TRXXBT']['size']:,} @ {pos['positions']['TRXXBT']['entryPrice']}")
- print_orders(orders)
- time.sleep(5)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement