Для получения списка открытых позиций в Binance с помощью Python необходимо использовать API Binance. Binance предоставляет несколько различных API, но для получения списка открытых позиций нужно воспользоваться API Futures.
Во-первых, у вас должен быть учетная запись на Binance, и вам нужно получить API-ключ и секретный ключ. Ниже представлен процесс получения ключей.
1. Зайдите в свою учетную запись на Binance и в меню выберите раздел "Настройки API".
2. Нажмите на кнопку "Создать новый ключ API".
3. Введите название ключа API (например, "Мой ключ API").
4. Отметьте разрешения, связанные с доступом к Futures API.
5. Нажмите на кнопку "Создать".
После создания API-ключа вы получите публичный ключ API и секретный ключ. Не забудьте сохранить секретный ключ в безопасном месте, так как он не будет отображаться повторно.
Теперь, когда у вас есть API-ключ и секретный ключ, вы можете использовать их для отправки запросов к API Binance. Вам потребуется установить библиотеку requests для отправки HTTP-запросов.
Вот пример кода на Python, позволяющий получить список открытых позиций в Binance:
import requests import hashlib import hmac import time api_key = 'YOUR_API_KEY' api_secret = 'YOUR_API_SECRET' base_url = 'https://fapi.binance.com' # Функция для создания подписи по ключу API и секретному ключу def generate_signature(query_string: str) -> str: return hmac.new(api_secret.encode('utf-8'), query_string.encode('utf-8'), hashlib.sha256).hexdigest() # Составляем URL и параметры запроса endpoint = '/fapi/v2/positionRisk' query_string = f'timestamp={int(time.time() * 1000)}' # Создаем подпись на основе ключа API и секретного ключа signature = generate_signature(query_string) query_string += f'&signature={signature}' url = f'{base_url}{endpoint}?{query_string}' # Отправляем GET-запрос к API Binance response = requests.get(url, headers={'X-MBX-APIKEY': api_key}) # Обрабатываем результат if response.status_code == 200: positions = response.json() # Обрабатываем список открытых позиций for position in positions: # Выводим информацию о позиции print(f'Symbol: {position["symbol"]}, Position: {position["positionAmount"]}, Quantity: {position["quantity"]}') else: # Обрабатываем ошибку при отправке запроса print(f'Error: {response.status_code}, {response.text}')
В этом примере мы создаем подпись, используя ключ API и секретный ключ, и отправляем GET-запрос к эндпоинту /fapi/v2/positionRisk
. Результатом будет список открытых позиций, которые вы сможете обработать по своему усмотрению.
Важно отметить, что этот код является примером и может потребовать определенных модификаций в зависимости от ваших потребностей и требований API Binance.