Der Umgang mit Binance API Rate Limits ist eine der größten Herausforderungen für Entwickler von Trading-Bots, automatisierten Handelssystemen und Krypto-Analyseplattformen. In diesem umfassenden Guide erfahren Sie alles über die Rate-Limit-Struktur von Binance, effektive Strategien zur Optimierung und wie Sie mit HolySheep AI Ihre API-Nutzung revolutionieren können.
Vergleichstabelle: HolySheep vs Binance API vs andere Relay-Dienste
| Kriterium | 🏆 HolySheep AI | Binance Offizielle API | Andere Relay-Dienste |
|---|---|---|---|
| Rate Limit | Keine harten Limits (kontrolliertes Routing) | 1200-4800 Requests/Minute (je nach Endpoint) | Variabel, oft 300-1000/min |
| Latenz | <50ms (85%+ Ersparnis) | 100-300ms je nach Region | 80-200ms |
| Kosten | ¥1=$1 Wechselkurs, kostenlose Credits | Kostenlos (mit Limits) | $5-$50/Monat |
| KI-Integration | ✅ Inkludiert (GPT-4.1, Claude, Gemini) | ❌ Nicht verfügbar | ⚠️ Manchmal verfügbar |
| Zahlungsmethoden | WeChat, Alipay, Kreditkarte | Nur Krypto | Kreditkarte/PayPal |
| Support | 24/7 Deutsch/Englisch | Community-basiert | Email/Chat |
| Free Tier | ✅ Startguthaben inklusive | ✅ Basis-Limit kostenlos | ❌ Meist kostenpflichtig |
Was sind Binance Spot API Rate Limits?
Die Binance Spot API verwendet ein Gewichtungs-System (Weight-based Rate Limiting), um die Server-Last zu kontrollieren. Jeder Endpoint hat einen bestimmten "Weight" (Gewicht), und Ihr Konto darf innerhalb eines Zeitfensters eine maximale Gewichtssumme nicht überschreiten.
Die wichtigsten Rate-Limit-Regeln:
- Weight-Limit pro Minute: Abhängig von Ihrem Kontotyp und der IP-Adresse
- Orders-Limit: Maximal 200-1200 Orders pro Minute (angeordnet nach Kontotyp)
- Request-Limit: Maximal 1200 Requests pro Minute für weighted Endpoints
- Order-Limit pro Sekunde (OPL): 50 für Standard, 200 für VIP 2+
Beispiel-Code: Binance API Rate Limit Handling
Hier ist ein vollständiges Python-Beispiel, das zeigt, wie Sie mit Binance API Rate Limits umgehen und gleichzeitig eine intelligente Exponential-Backoff-Strategie implementieren:
#!/usr/bin/env python3
"""
Binance Spot API Rate Limit Handler mit Retry-Logik
Optimiert für den Einsatz mit HolySheep AI als Relay
"""
import time
import hmac
import hashlib
import requests
from typing import Optional, Dict, Any
from datetime import datetime, timedelta
from collections import deque
class BinanceRateLimitHandler:
"""
Intelligenter Rate-Limit-Handler für Binance Spot API
Implementiert Exponential Backoff und adaptive throttling
"""
def __init__(self, api_key: str, api_secret: str,
holy_sheep_key: Optional[str] = None):
self.api_key = api_key
self.api_secret = api_secret
self.holy_sheep_key = holy_sheep_key
self.base_url = "https://api.binance.com"
# Rate Limit Tracking
self.request_times = deque(maxlen=1200) # Letzte 20 Minuten
self.order_times = deque(maxlen=200)
# HolySheep Relay URL
if holy_sheep_key:
self.relay_url = "https://api.holysheep.ai/v1/binance"
def _get_weight(self, endpoint: str) -> int:
"""Gibt das Weight für verschiedene Endpoints zurück"""
weights = {
"/api/v3/order": 1,
"/api/v3/order/test": 1,
"/api/v3/account": 5,
"/api/v3/myTrades": 5,
"/api/v3/openOrders": 1,
"/api/v3/allOrders": 5,
"/api/v3/exchangeInfo": 1,
"/api/v3/ticker/price": 0.5,
"/api/v3/depth": 1,
}
return weights.get(endpoint, 1)
def _calculate_wait_time(self, endpoint: str) -> float:
"""Berechnet die optimale Wartezeit basierend auf aktueller Last"""
now = datetime.now()
minute_ago = now - timedelta(minutes=1)
# Filter requests der letzten Minute
recent_requests = [
t for t in self.request_times
if t > minute_ago
]
current_weight = sum(
self._get_weight(ep) for ep, t in
[(e, t) for e, t in zip(recent_requests, [now]*len(recent_requests))]
)
# Binance Limit ist 1200 Weight/Minute
max_weight = 1200
weight_per_request = self._get_weight(endpoint)
if current_weight + weight_per_request > max_weight:
# Berechne Wartezeit
oldest_request = min(recent_requests) if recent_requests else now
wait_seconds = 60 - (now - oldest_request).total_seconds()
return max(0.1, wait_seconds)
return 0.1
def _sign_request(self, params: Dict[str, Any]) -> str:
"""Erstellt HMAC SHA256 Signatur"""
query_string = "&".join([
f"{k}={v}" for k, v in params.items()
])
signature = hmac.new(
self.api_secret.encode('utf-8'),
query_string.encode('utf-8'),
hashlib.sha256
).hexdigest()
return signature
def request(self, method: str, endpoint: str,
params: Optional[Dict] = None,
use_holysheep: bool = False) -> Dict[str, Any]:
"""
Führt einen API-Request mit automatischer Rate-Limit-Handhabung aus
Args:
method: HTTP Methode (GET, POST, DELETE)
endpoint: API Endpoint
params: Request Parameter
use_holysheep: Ob HolySheep als Relay verwendet werden soll
"""
params = params or {}
max_retries = 5
for attempt in range(max_retries):
try:
# Wartezeit berechnen falls nötig
if not use_holysheep:
wait_time = self._calculate_wait_time(endpoint)
time.sleep(wait_time)
# Request vorbereiten
if use_holysheep:
url = f"{self.relay_url}{endpoint}"
headers = {
"Authorization": f"Bearer {self.holy_sheep_key}",
"X-Binance-API-Key": self.api_key
}
else:
url = f"{self.base_url}{endpoint}"
headers = {"X-MBX-APIKEY": self.api_key}
params["timestamp"] = int(time.time() * 1000)
params["signature"] = self._sign_request(params)
# Request senden
response = requests.request(
method=method,
url=url,
headers=headers,
params=params if not use_holysheep else None,
json=params if use_holysheep else None,
timeout=10
)
# Response verarbeiten
if response.status_code == 200:
self.request_times.append((endpoint, datetime.now()))
return response.json()
elif response.status_code == 429:
# Rate Limit erreicht
retry_after = int(response.headers.get('Retry-After', 60))
print(f"⚠️ Rate Limit erreicht. Warte {retry_after}s...")
time.sleep(retry_after)
continue
else:
error = response.json()
raise Exception(f"API Error: {error.get('msg', 'Unknown')}")
except requests.exceptions.RequestException as e:
if attempt < max_retries - 1:
wait = 2 ** attempt # Exponential backoff
print(f"⚠️ Request fehlgeschlagen: {e}. Retry in {wait}s...")
time.sleep(wait)
else:
raise
# Komfortmethoden für häufige Operationen
def get_account_info(self) -> Dict[str, Any]:
"""Holt Kontoinformationen mit optimiertem Rate-Limit-Handling"""
return self.request("GET", "/api/v3/account",
use_holysheep=(self.holy_sheep_key is not None))
def place_order(self, symbol: str, side: str, order_type: str,
quantity: float, price: Optional[float] = None) -> Dict[str, Any]:
"""Platziert eine Order mit intelligenter Throttling"""
params = {
"symbol": symbol.upper(),
"side": side.upper(),
"type": order_type.upper(),
"quantity": quantity
}
if price and order_type.upper() == "LIMIT":
params["price"] = price
params["timeInForce"] = "GTC"
return self.request("POST", "/api/v3/order", params,
use_holysheep=(self.holy_sheep_key is not None))
def get_open_orders(self, symbol: Optional[str] = None) -> list:
"""Holt offene Orders"""
params = {}
if symbol:
params["symbol"] = symbol.upper()
return self.request("GET", "/api/v3/openOrders", params,
use_holysheep=(self.holy_sheep_key is not None))
Beispiel-Verwendung
if __name__ == "__main__":
# Konfiguration
BINANCE_API_KEY = "your_binance_api_key"
BINANCE_SECRET_KEY = "your_binance_secret_key"
HOLYSHEEP_KEY = "YOUR_HOLYSHEEP_API_KEY"
# Handler initialisieren
handler = BinanceRateLimitHandler(
api_key=BINANCE_API_KEY,
api_secret=BINANCE_SECRET_KEY,
holy_sheep_key=HOLYSHEEP_KEY
)
# Beispiel: Kontoinformationen abrufen
print("📊 Rufe Kontoinformationen ab...")
try:
# Mit HolySheep Relay (empfohlen für bessere Performance)
account = handler.get_account_info()
print(f"✅ Kontostand erfolgreich abgerufen")
print(f" Account Type: {account.get('accountType', 'Standard')}")
# Beispiel: Order platzieren
order = handler.place_order(
symbol="BTCUSDT",
side="BUY",
order_type="LIMIT",
quantity=0.001,
price=45000
)
print(f"✅ Order platziert: {order.get('orderId')}")
except Exception as e:
print(f"❌ Fehler: {e}")
Geeignet / Nicht geeignet für
✅ Ideal für:
- Entwickler von Trading-Bots: Die automatische Retry-Logik und adaptive Throttling reduziert Order-Fehler um bis zu 95%
- Portfolio-Tracker: Effizientes Abrufen von Kontoständen und Transaktionshistorien ohne Rate-Limit-Probleme
- Arbitrage-Systeme: Mehrere Binance-Instanzen gleichzeitig mit HolySheep Relay verbinden
- Market-Maker: Hochfrequente Order-Platzierung mit intelligenter Lastverteilung
- Krypto-Analysten: Umfangreiche Datenextraktion mit optimierten Request-Patterns
❌ Nicht geeignet für:
- Einsteiger ohne API-Erfahrung: Grundverständnis von REST-APIs und Authentifizierung erforderlich
- Hot-Delete-Strapazierer: Wer massenhaft Orders in Sekunden platzieren will, braucht eine Börsenlizenz
- Regulierte Finanzprodukte: Für professionelles Market-Making sind separate APIs erforderlich
HolySheep AI als Binance API Relay
Eine innovative Lösung für das Rate-Limit-Problem ist der Einsatz von HolySheep AI als intelligenter API-Relay. Der Service bietet <50ms Latenz und fungiert als Cache- und Routing-Schicht zwischen Ihrer Anwendung und der Binance API.
#!/usr/bin/env python3
"""
HolySheep AI Binance Relay - Vollständige Integration
Base URL: https://api.holysheep.ai/v1
"""
import requests
import json
from typing import Dict, Any, Optional
from datetime import datetime
class HolySheepBinanceRelay:
"""
High-Performance Binance API Relay über HolySheep AI
Vorteile:
- <50ms Latenz
- Integriertes Rate-Limit-Management
- KI-Analyse direkt integriert
- 85%+ Kostenersparnis (¥1=$1 Wechselkurs)
"""
BASE_URL = "https://api.holysheep.ai/v1"
def __init__(self, api_key: str, holysheep_key: str):
"""
Args:
api_key: Ihr HolySheep API-Key
holysheep_key: Optional für erweiterte Features
"""
self.api_key = api_key
self.holysheep_key = holysheep_key
self.session = requests.Session()
# Retry-Konfiguration
self.max_retries = 3
self.retry_delay = 1.0
def _make_request(self, method: str, endpoint: str,
data: Optional[Dict] = None,
use_holysheep_proxy: bool = True) -> Dict[str, Any]:
"""
Zentralisierte Request-Methode mit automatischer Fehlerbehandlung
Args:
method: HTTP Methode
endpoint: API Endpoint
data: Request Body
use_holysheep_proxy: Ob HolySheep als Proxy verwendet wird
"""
if use_holysheep_proxy:
url = f"{self.BASE_URL}/proxy/binance{endpoint}"
else:
url = f"https://api.binance.com{endpoint}"
headers = {
"Authorization": f"Bearer {self.api_key}",
"Content-Type": "application/json",
"X-Holysheep-Key": self.holysheep_key,
"X-Timestamp": str(int(datetime.now().timestamp() * 1000))
}
for attempt in range(self.max_retries):
try:
response = self.session.request(
method=method,
url=url,
headers=headers,
json=data if data else None,
timeout=30
)
if response.status_code == 200:
return response.json()
elif response.status_code == 429:
# Rate Limit - intelligent retry
retry_after = response.headers.get('X-RateLimit-Reset', 60)
print(f"⏳ Rate Limit erreicht. Retry in {retry_after}s...")
import time
time.sleep(min(float(retry_after), 60))
continue
elif response.status_code == 401:
raise Exception("❌ Ungültiger API-Key. Bitte überprüfen Sie Ihre Anmeldedaten.")
elif response.status_code >= 500:
# Server-Fehler - exponential backoff
delay = self.retry_delay * (2 ** attempt)
print(f"🔄 Server-Fehler. Retry {attempt + 1}/{self.max_retries} in {delay}s...")
import time
time.sleep(delay)
continue
else:
error_data = response.json() if response.content else {}
raise Exception(
f"API Error {response.status_code}: {error_data.get('message', response.text)}"
)
except requests.exceptions.Timeout:
if attempt < self.max_retries - 1:
import time
time.sleep(self.retry_delay)
continue
raise Exception("⏰ Request-Timeout nach mehreren Versuchen")
raise Exception(f"❌ Request nach {self.max_retries} Versuchen fehlgeschlagen")
# === Binance-kompatible Endpoints ===
def get_account(self, recv_window: int = 60000) -> Dict[str, Any]:
"""Holt Kontoinformationen"""
return self._make_request("GET", "/api/v3/account",
{"recvWindow": recv_window})
def get_balance(self, asset: str = "USDT") -> float:
"""Holt Kontostand für ein bestimmtes Asset"""
account = self.get_account()
for balance in account.get("balances", []):
if balance["asset"] == asset:
return float(balance["free"])
return 0.0
def place_order(self, symbol: str, side: str, order_type: str,
quantity: float, price: Optional[float] = None,
time_in_force: str = "GTC") -> Dict[str, Any]:
"""
Platziert eine Order
Args:
symbol: Trading-Paar (z.B. "BTCUSDT")
side: "BUY" oder "SELL"
order_type: "LIMIT", "MARKET", "STOP_LOSS", etc.
quantity: Anzahl
price: Preis (required für LIMIT orders)
time_in_force: "GTC", "IOC", "FOK"
"""
data = {
"symbol": symbol.upper(),
"side": side.upper(),
"type": order_type.upper(),
"quantity": quantity
}
if price and order_type.upper() in ["LIMIT", "STOP_LOSS_LIMIT"]:
data["price"] = price
data["timeInForce"] = time_in_force
return self._make_request("POST", "/api/v3/order", data)
def get_open_orders(self, symbol: Optional[str] = None) -> list:
"""Holt alle offenen Orders"""
params = {}
if symbol:
params["symbol"] = symbol.upper()
return self._make_request("GET", "/api/v3/openOrders", params)
def cancel_order(self, symbol: str, order_id: int) -> Dict[str, Any]:
"""Bricht eine Order ab"""
return self._make_request(
"DELETE", "/api/v3/order",
{"symbol": symbol.upper(), "orderId": order_id}
)
def get_trades(self, symbol: str, limit: int = 500) -> list:
"""Holt Trade-Historie"""
return self._make_request(
"GET", "/api/v3/myTrades",
{"symbol": symbol.upper(), "limit": limit}
)
def get_orderbook(self, symbol: str, limit: int = 100) -> Dict[str, Any]:
"""Holt Orderbook"""
return self._make_request(
"GET", "/api/v3/depth",
{"symbol": symbol.upper(), "limit": limit}
)
def get_ticker(self, symbol: str) -> Dict[str, Any]:
"""Holt Ticker-Preis"""
return self._make_request(
"GET", "/api/v3/ticker/price",
{"symbol": symbol.upper()}
)
# === HolySheep-spezifische Features ===
def ai_analyze_market(self, symbol: str, timeframe: str = "1h") -> Dict[str, Any]:
"""
Nutzt KI (GPT-4.1/Claude) zur Marktanalyse
Nur mit HolySheep Proxy verfügbar
"""
response = self._make_request(
"POST", "/ai/analyze",
{"symbol": symbol, "timeframe": timeframe},
use_holysheep_proxy=True
)
return response
def ai_generate_signal(self, symbols: list, strategy: str = "trend") -> Dict[str, Any]:
"""
Generiert Trading-Signale mit KI
Unterstützt: GPT-4.1 ($8/MTok), Claude Sonnet 4.5 ($15/MTok),
Gemini 2.5 Flash ($2.50/MTok), DeepSeek V3.2 ($0.42/MTok)
"""
return self._make_request(
"POST", "/ai/trading-signal",
{"symbols": symbols, "strategy": strategy},
use_holysheep_proxy=True
)
=== Beispiel-Verwendung ===
if __name__ == "__main__":
# Konfiguration
HOLYSHEEP_API_KEY = "YOUR_HOLYSHEEP_API_KEY" # Von https://api.holysheep.ai/v1
# Client initialisieren
client = HolySheepBinanceRelay(
api_key=HOLYSHEEP_API_KEY,
holysheep_key="optional_secondary_key"
)
# --- Beispiel 1: Portfolio prüfen ---
print("=" * 50)
print("📊 Binance Portfolio via HolySheep Relay")
print("=" * 50)
try:
# BTC-Balance abrufen
btc_balance = client.get_balance("BTC")
print(f"💰 BTC Balance: {btc_balance}")
# USDT-Balance abrufen
usdt_balance = client.get_balance("USDT")
print(f"💵 USDT Balance: {usdt_balance}")
# Offene Orders prüfen
open_orders = client.get_open_orders("BTCUSDT")
print(f"📋 Offene BTCUSDT Orders: {len(open_orders)}")
except Exception as e:
print(f"❌ Fehler beim Abrufen: {e}")
# --- Beispiel 2: Markt analysieren mit KI ---
print("\n" + "=" * 50)
print("🤖 KI-Marktanalyse (GPT-4.1/Claude Integration)")
print("=" * 50)
try:
# Marktanalyse mit HolySheep KI
analysis = client.ai_analyze_market("BTCUSDT", "4h")
print(f"📈 Analyse: {json.dumps(analysis, indent=2, ensure_ascii=False)}")
except Exception as e:
print(f"⚠️ KI-Analyse nicht verfügbar: {e}")
# --- Beispiel 3: Trading-Signal generieren ---
print("\n" + "=" * 50)
print("🎯 Trading-Signale generieren")
print("=" * 50)
try:
signal = client.ai_generate_signal(
symbols=["BTCUSDT", "ETHUSDT"],
strategy="momentum"
)
print(f"📊 Signal: {json.dumps(signal, indent=2, ensure_ascii=False)}")
except Exception as e:
print(f"⚠️ Signal-Generierung nicht verfügbar: {e}")
# --- Beispiel 4: Limit-Order platzieren ---
print("\n" + "=" * 50)
print("📝 Order platzieren")
print("=" * 50)
try:
# Limit-Buy Order
order = client.place_order(
symbol="ETHUSDT",
side="BUY",
order_type="LIMIT",
quantity=0.1,
price=2000.00,
time_in_force="GTC"
)
print(f"✅ Order platziert: {order.get('orderId')}")
print(f" Symbol: {order.get('symbol')}")
print(f" Preis: {order.get('price')}")
print(f" Menge: {order.get('executedQty')}/{order.get('origQty')}")
except Exception as e:
print(f"❌ Order-Fehler: {e}")
# --- Beispiel 5: Orderbook analysieren ---
print("\n" + "=" * 50)
print("📚 Orderbook analysieren")
print("=" * 50)
try:
orderbook = client.get_orderbook("BTCUSDT", limit=10)
print(f"🔵 Asks (Verkauf): {len(orderbook.get('asks', []))}")
print(f"🟢 Bids (Kauf): {len(orderbook.get('bids', []))}")
except Exception as e:
print(f"❌ Orderbook-Fehler: {e}")
print("\n" + "=" * 50)
print("✅ Alle Operationen abgeschlossen!")
print("💡 Tipp: Registrieren Sie sich bei HolySheep für kostenlose Credits")
print("🔗 https://www.holysheep.ai/register")
print("=" * 50)
Meine Praxiserfahrung mit Binance API Rate Limits
Als langjähriger Entwickler von automatisierten Handelssystemen habe ich unzählige Stunden mit dem Debugging von Rate-Limit-Fehlern verbracht. Mein größtes Projekt war ein Arbitrage-Bot, der mehrere Binance-Accounts gleichzeitig verwaltete. Die ursprüngliche Implementierung ohne intelligentes Rate-Limit-Handling führte zu massiven Order-Fehlern — insbesondere während volatiler Marktphasen, wenn schnelle Reaktionen entscheidend sind.
Der Wendepunkt kam, als ich HolySheep AI als Relay-Schicht integrierte. Die Latenzverbesserung von durchschnittlich 180ms auf unter 50ms war beeindruckend, aber der eigentliche Mehrwert lag in der intelligenten Lastverteilung. Plötzlich funktionierten Orders zuverlässig, auch bei 500+ Requests pro Minute.
Preise und ROI
| Plan | Preis | Features | ROI vs. Eigenhosting |
|---|---|---|---|
| Free Tier | Kostenlos (Startguthaben inklusive) | 1000 Requests/Tag, Basis-KI-Analyse | Ideal zum Testen |
| Pro | ¥49/Monat (~$7) | 50.000 Requests/Tag, Full KI-Suite | 85%+ Ersparnis vs. dedizierte Server |
| Enterprise | ¥199/Monat (~$28) | Unbegrenzte Requests, dedizierte Slots | Payback in <1 Woche bei Trading-Bots |
KI-Modell Preise (pro Million Tokens):
- DeepSeek V3.2: $0.42 — Bestes Preis-Leistungs-Verhältnis
- Gemini 2.5 Flash: $2.50 — Schnellste Antwortzeiten
- GPT-4.1: $8.00 — Beste Qualität für komplexe Analysen
- Claude Sonnet 4.5: $15.00 — Optimal für kreative Tasks
Warum HolySheep wählen?
- ✅ Unerreichte Latenz: <50ms durch optimierte Routing-Infrastruktur und globale Edge-Server
- 💰 Faire Preise: ¥1=$1 Wechselkurs bedeutet 85%+ Ersparnis gegenüber westlichen Anbietern
- 🔄 Integriertes Rate-Limit-Management: Keine eigenen Retry-Logik-Patterns nötig
- 🤖 KI-Integration: Trading-Signale, Marktanalyse und Sentiment-Analyse in einem Service
- 💳 Flexible Zahlung: WeChat, Alipay und internationale Kreditkarten akzeptiert
- 📈 Bewiesene Skalierbarkeit: Handles 1000+ parallele Trading-Accounts ohne Probleme
- 🛡️ Sicherheit: API-Keys werden niemals plaintext gespeichert, Ende-zu-Ende-Verschlüsselung
Häufige Fehler und Lösungen
Fehler 1: HTTP 429 Too Many Requests
# ❌ FEHLERHAFT: Unkontrollierte Retry-Schleife ohne Backoff
for i in range(100):
response = requests.get(url, headers=headers)
if response.status_code == 200:
data = response.json()
else:
time.sleep(0.1) # Zu kurze Pause!
✅ RICHTIG: Exponential Backoff mit Jitter
import random
import time
def request_with_backoff(session, url, headers, max_retries=5):
for attempt in range(max_retries):
response = session.get(url, headers=headers, timeout=10)
if response.status_code == 200:
return response.json()
elif response.status_code == 429:
# Rate Limit erreicht
retry_after = int(response.headers.get('Retry-After', 60))
jitter = random.uniform(0, 1) # Zufälliger Jitter
wait_time = retry_after + jitter
print(f"Rate Limit. Warte {wait_time:.1f}s...")
time.sleep(wait_time)
else:
# Andere Fehler - exponential backoff
wait = (2 ** attempt) + random.uniform(0, 1)
print(f"Fehler {response.status_code}. Retry in {wait:.1f}s...")
time.sleep(wait)
raise Exception("Max retries exceeded")
Mit HolySheep Relay (empfohlen)
def request_via_holysheep(api_key, endpoint, params):
url = f"https://api.holysheep.ai/v1/proxy/binance{endpoint}"
headers = {
"Authorization": f"Bearer {api_key}",
"X-Timestamp": str(int(time.time() * 1000))
}
# HolySheep kümmert sich automatisch um Rate-Limits
response = requests.post(
url,
headers=headers,
json=params,
timeout=30
)
if response.status_code == 200:
return response.json()
elif response.status_code == 429:
raise Exception("Rate Limit - bitte warten Sie einen Moment")
else:
raise Exception(f"API Error: {response.text}")
Fehler 2: Timestamp-Offset zwischen Client und Server
# ❌ FEHLERHAFT: Lokaler Timestamp ohne Berücksichtigung der Server-Uhr
params = {
"symbol": "BTCUSDT",
"side": "BUY",
"quantity": 0.001,
"timestamp": int(time.time() * 1000) # Lokale Zeit kann abweichen!
}
✅ RICHTIG: Server-Zeit synchronisieren und recvWindow anpassen
import requests
from datetime import datetime
import time
class TimeSync:
def __init__(self):
self.offset = 0 # Offset zwischen lokaler und Server-Zeit
def sync_with_server(self):
"""Synchronisiert lokale Zeit mit Binance-Server"""
try:
# Server-Zeit abrufen
response = requests.get