2025년 8월 11일 월요일

거래소 API로 코딩하는 법

 

거래소 API로 코딩하는 건 일반 API 사용법과 기본 구조는 같지만,
특히 시세 조회 / 주문 / 계좌 정보 같은 트레이딩 관련 기능이 추가되고,
**보안(인증 서명)**이 필수라는 점이 다릅니다.

아래에서 단계별로 설명드릴게요.


1. 기본 흐름

  1. 거래소 선택

    • Binance, Upbit, Bithumb, Coinbase 등

  2. API 키 발급

    • 거래소 계정 로그인 → API 관리 → Key & Secret 발급

    • 절대 키를 공개 저장소(GitHub 등)에 올리면 안 됨

  3. API 문서 확인

    • REST API / WebSocket API 구조 확인

    • 예:

      • REST API → 시세 조회, 주문, 계좌 잔고 확인

      • WebSocket API → 실시간 호가, 체결 정보 수신

  4. 테스트넷 사용 (중요)

    • 실거래 전에 테스트넷 API로 연습



2. REST API 예시 (Python - Binance)

📌 시세 조회 예시



import requests # Binance 공개 API (키 불필요) url = "https://api.binance.com/api/v3/ticker/price" params = {"symbol": "BTCUSDT"} res = requests.get(url, params=params) data = res.json() print("BTC 가격:", data["price"])




📌 계좌 잔고 확인 (인증 필요)

import time import hmac import hashlib import requests API_KEY = "YOUR_API_KEY" API_SECRET = "YOUR_API_SECRET" base_url = "https://api.binance.com" def get_account_info(): timestamp = int(time.time() * 1000) query_string = f"timestamp={timestamp}" # 서명(Signature) 생성 signature = hmac.new( API_SECRET.encode(), query_string.encode(), hashlib.sha256 ).hexdigest() headers = { "X-MBX-APIKEY": API_KEY } res = requests.get( f"{base_url}/api/v3/account", params={"timestamp": timestamp, "signature": signature}, headers=headers ) return res.json() print(get_account_info())

댓글 없음:

댓글 쓰기