통합 가이드

CCXT와 함께 Smart Money API 사용하기

CCXT로 실시간 시장 데이터를 읽고, Smart Money API에 고래 흐름과 파생상품 포지션이 당신의 방향을 확인하는지 물어본 후, 선택한 거래소에 주문을 넣으세요.

이 가이드의 대상

Python 개발자들이 교환소에 구애받지 않는 봇을 구축하는 경우 CCXT 각 주문 전에 독립적인 시장 상황 확인을 원하는 분들을 위한 것입니다. Smart Money API는 의사 결정 지원 도구입니다. 주문을 대신하지 않으며, 실행은 CCXT가 제어합니다.

필수 조건

  • Python 3.9+와 pip install ccxt requests.
  • CCXT용 거래소 API 키 설정(테스트용으로는 읽기 전용도 괜찮습니다).
  • Smart Money API 키(무료 티어는 BTC를 포함합니다).

API 키 받기

모든 요청은 다음 헤더로 인증됩니다. X-API-Key 헤더. 키를 얻으려면:

  1. 1무료 계정을 생성한 후 대시보드.
  2. 2아래에 표시된 API 키를 복사하세요 API 액세스. 무료 티어는 BTC를 하루 100회 요청으로 커버합니다 — 이 가이드를 처음부터 끝까지 테스트하기에 충분합니다.
  3. 3더 많은 심볼이나 더 높은 한도가 필요하신가요? 티어 비교는 가격 페이지.

키를 비밀로 유지하세요 — 환경 변수에 저장하고 소스 컨트롤에 절대 커밋하지 마세요.

설정

  1. 1라이브러리를 설치하세요: pip install ccxt requests.
  2. 2키를 내보내세요: export SMA_API_KEY="sm_your_key_here".
  3. 3CCXT 시장 데이터에서 후보 방향을 결정한 후 /v1/confirm 를 최종 컨텍스트 게이트로 호출하세요.
  4. 4액션이 CONFIRM일 때만 CCXT로 주문을 하고, 사이징은 size_mult.

작동 예시

이 스크립트는 CCXT로 티커를 읽어 방향성을 도출한 후, 주문을 넣을지 결정하기 전에 GET /v1/confirm?symbol=BTC&direction=long 호출합니다.

ccxt_confirm.py
import os
import ccxt
import requests

API_KEY = os.environ["SMA_API_KEY"]            # never hard-code
SMA_BASE = "https://api.smartmoneyapi.com"

exchange = ccxt.binance()                       # any CCXT exchange

def confirm(symbol: str, direction: str) -> dict:
    """Ask Smart Money API for market-context confirmation."""
    r = requests.get(
        f"{SMA_BASE}/v1/confirm",
        params={"symbol": symbol, "direction": direction, "source": "ccxt-bot"},
        headers={"X-API-Key": API_KEY},
        timeout=10,
    )
    r.raise_for_status()
    return r.json()

# 1. Read market data with CCXT and pick a candidate direction
ticker = exchange.fetch_ticker("BTC/USDT")
direction = "long" if ticker["percentage"] and ticker["percentage"] > 0 else "short"

# 2. Confirm with Smart Money API before acting
sig = confirm("BTC", direction)
print(sig["action"], sig["confidence"], "size_mult", sig["size_mult"])

# 3. Act on the recommendation (CCXT executes; the API only advises)
if sig["action"] == "CONFIRM":
    base_qty = 0.01
    qty = base_qty * sig["size_mult"]          # scale by suggested multiplier
    # exchange.create_order("BTC/USDT", "market", direction, qty)
    print(f"Would place {direction} {qty} BTC/USDT")
elif sig["action"] == "REDUCE":
    print("Context is mixed -> trade smaller or wait for a cleaner setup")
else:  # SKIP
    print("Context does not support this trade -> stand aside")

예상 응답

성공적인 호출은 /v1/confirm 다음과 같은 JSON을 반환합니다:

200 OK · application/json
{
  "ts": 1710940821,
  "symbol": "BTC",
  "direction": "long",
  "composite": 0.74,
  "confidence": "HIGH",
  "action": "CONFIRM",
  "size_mult": 1.5,
  "deriv_score": 0.81,
  "onchain_score": 0.68,
  "whale_score": 0.73,
  "reasons": [
    "Funding rate positive across all venues",
    "LSR favors longs: 1.42",
    "Whales: 67% long consensus",
    "MVRV above 1.0 — on-chain bullish"
  ]
}

composite -1.0(강한 반대)부터 +1.0(강한 확인)까지 범위이며, confidence HIGH 또는 MEDIUM이고, size_mult 0.0–1.5의 제안된 크기 승수입니다. 전체 필드 참조는 API 문서에서 확인하세요..

응답에 따른 행동 방법

확인

시장 상황이 당신의 방향을 지지합니다. 자신의 진입 및 위험 규칙에 따라 진행하되, 크기를 size_mult.

조정할 수 있습니다.

신호가 혼재되어 있습니다. 더 작은 포지션, 더 타이트한 스탑, 또는 더 명확한 설정을 기다리는 것을 고려하세요.

건너뛰기

시장 상황이 이 거래를 지지하지 않습니다. 거래를 중단하고 다음 기회를 기다리세요.

준비되셨나요?

무료 키를 받고 1분 안에 첫 확인 호출을 해보세요.

재무적 조언이 아닙니다. 암호화폐 거래는 위험을 수반합니다.