راهنمای یکپارچه‌سازی

استفاده از Smart Money API در کنار CCXT

داده‌های زنده بازار را با CCXT بخوانید، از Smart Money API بپرسید که آیا جریان نهنگ‌ها و موقعیت‌های مشتقات جهت شما را تأیید می‌کنند، سپس سفارش را در صرافی مورد نظر خود ثبت کنید.

این برای چه کسانی است

توسعه‌دهندگان پایتون که در حال ساخت ربات‌های مستقل از صرافی هستند روی CCXT که می‌خواهند قبل از هر سفارش یک بررسی مستقل از زمینه بازار داشته باشند. Smart Money API پشتیبانی تصمیم‌گیری است — سفارشات را برای شما ثبت نمی‌کند؛ CCXT کنترل اجرا را در دست دارد.

پیش‌نیازها

  • پایتون 3.9+ با pip install ccxt requests.
  • کلیدهای API صرافی برای CCXT پیکربندی شده‌اند (فقط خواندن برای تست کافی است).
  • یک کلید API Smart Money (سطح رایگان BTC را پوشش می‌دهد).

کلید API خود را دریافت کنید

هر درخواست با X-API-Key هدر احراز هویت می‌شود. برای دریافت کلید:

  1. 1یک حساب کاربری رایگان ایجاد کنید، سپس داشبورد خود را باز کنید.
  2. 2کلید API نمایش داده شده در بخش دسترسی APIرا کپی کنید. سطح رایگان شامل BTC با 100 درخواست/روز می‌شود — کافی برای تست کامل این راهنما.
  3. 3به نمادهای بیشتر یا محدودیت‌های بالاتر نیاز دارید؟ سطوح مختلف را در صفحه قیمت‌گذاری.

مقایسه کنید. کلید را محرمانه نگه دارید — آن را در یک متغیر محیطی ذخیره کنید و هرگز آن را در کنترل منبع commit نکنید.

راه‌اندازی

  1. 1کتابخانه‌ها را نصب کنید: pip install ccxt requests.
  2. 2کلید خود را export کنید: export SMA_API_KEY="sm_your_key_here".
  3. 3اجازه دهید استراتژی شما یک جهت احتمالی از داده‌های بازار CCXT تعیین کند، سپس /v1/confirm را به عنوان دروازه نهایی context فراخوانی کنید.
  4. 4سفارش را فقط زمانی با CCXT ثبت کنید که action برابر باشد با CONFIRM، و اندازه‌گیری بر اساس size_mult.

Working example

این اسکریپت یک تیکر را با 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 docs.

چگونه به پاسخ عمل کنیم

CONFIRM

محیط از جهت شما حمایت می‌کند. با قوانین ورود و ریسک خود ادامه دهید، به طور اختیاری اندازه را با size_mult.

REDUCE

سیگنال‌ها مختلط هستند. یک موقعیت کوچکتر، استاپ‌های تنگ‌تر یا انتظار برای یک تنظیم تمیزتر را در نظر بگیرید.

SKIP

محیط بازار از این معامله حمایت نمی‌کند. کنار بایستید و در مورد نامزد بعدی دوباره بررسی کنید.

آماده ساخت هستید؟

یک کلید رایگان بگیرید و اولین فراخوانی تایید خود را در کمتر از یک دقیقه انجام دهید.

Not financial advice. Crypto trading involves risk.