Stage 03.4 - private auth skeleton

This commit is contained in:
2026-04-14 07:01:06 +03:00
parent 8e3f240558
commit 96998ee998
4 changed files with 60 additions and 1 deletions

View File

@@ -0,0 +1,25 @@
import hmac
import hashlib
import time
class ExchangeAuth:
def __init__(self, api_key: str, api_secret: str):
self.api_key = api_key
self.api_secret = api_secret.encode()
def sign(self, query: str) -> str:
return hmac.new(self.api_secret, query.encode(), hashlib.sha256).hexdigest()
def build_headers(self):
return {
"X-MBX-APIKEY": self.api_key,
}
def build_signed_params(self, params: dict):
params["timestamp"] = int(time.time() * 1000)
query = "&".join(f"{k}={v}" for k, v in params.items())
signature = self.sign(query)
params["signature"] = signature
return params