Guía de Integración

Confirma entradas en un bot de Binance Futures

Agrega una puerta final de contexto de mercado a tu bot de futuros USDⓈ-M de Binance: confirma la dirección con el flujo de ballenas y el posicionamiento de derivados, luego dimensiona la orden por el multiplicador sugerido.

Para quién es esto

Desarrolladores que ejecutan un bot de futuros perpetuos USDⓈ-M de Binance y desean una capa de confirmación independiente antes de cada entrada. Smart Money API es soporte para la toma de decisiones — tu bot mantiene el control total de la colocación de órdenes y la gestión de riesgos.

Requisitos previos

  • Python 3.9+ con pip install ccxt requests (CCXT cubre futuros USDⓈ-M de Binance).
  • Claves API de Binance Futures con permiso de trading (prueba primero en testnet).
  • Una clave API de Smart Money API (el nivel gratuito cubre BTC).

Obtén tu clave API

Cada solicitud se autentica con el X-API-Key encabezado. Para obtener una clave:

  1. 1Crea una cuenta gratuita, luego abre tu panel de control.
  2. 2Copia la clave API que se muestra bajo Acceso API. El nivel gratuito cubre BTC con 20 solicitudes/día — suficiente para probar esta guía de principio a fin.
  3. 3¿Necesitas más símbolos o límites más altos? Compara los niveles en la página de precios.

Mantén la clave en secreto — guárdala en una variable de entorno, nunca la comprometas en el control de código fuente.

Configuración

  1. 1Mantén tu lógica de entrada existente que produce una señal candidata de compra/venta.
  2. 2Exporta tu clave: export SMA_API_KEY="sm_your_key_here".
  3. 3Antes de cada entrada, llama a /v1/confirm con el símbolo y la dirección.
  4. 4Abre la posición de futuros solo en CONFIRM, escalando el nominal por size_mult.

Ejemplo práctico

Este bot confirma una compra o venta con GET /v1/confirm?symbol=BTC&direction=long y solo abre una posición de futuros USDⓈ-M de Binance cuando la acción es CONFIRM.

binance_futures_bot.py
import os
import ccxt
import requests

API_KEY = os.environ["SMA_API_KEY"]
SMA_BASE = "https://api.smartmoneyapi.com"

binance = ccxt.binance({
    "apiKey": os.environ["BINANCE_KEY"],
    "secret": os.environ["BINANCE_SECRET"],
    "options": {"defaultType": "future"},   # USDⓈ-M futures
})

def confirm(symbol: str, direction: str) -> dict:
    r = requests.get(
        f"{SMA_BASE}/v1/confirm",
        params={"symbol": symbol, "direction": direction, "source": "binance-fut"},
        headers={"X-API-Key": API_KEY},
        timeout=10,
    )
    r.raise_for_status()
    return r.json()

def maybe_enter(symbol: str, direction: str, base_qty: float):
    sig = confirm(symbol, direction)
    print(sig["symbol"], direction, "->", sig["action"], sig["confidence"])

    if sig["action"] != "CONFIRM":
        print("Not confirmed -> no entry")   # REDUCE or SKIP
        return

    qty = round(base_qty * sig["size_mult"], 3)   # size by multiplier
    side = "buy" if direction == "long" else "sell"
    # binance.create_order("BTC/USDT", "market", side, qty)
    print(f"Would open {direction} {qty} BTC/USDT (futures)")

if __name__ == "__main__":
    # your strategy decided it wants a long here
    maybe_enter("BTC", "long", base_qty=0.02)

Respuesta esperada

Una llamada exitosa a /v1/confirm devuelve un JSON como este:

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 varía de -1.0 (fuerte contra) a +1.0 (fuerte confirmación), confidence es HIGH o MEDIUM, y size_mult es un multiplicador de tamaño sugerido de 0.0–1.5. Consulta la referencia completa de campos en la documentación de la API.

Cómo actuar ante la respuesta

CONFIRMAR

El contexto apoya tu dirección. Abre la posición con tus propias reglas de riesgo, escalando el nominal por size_mult.

REDUCIR

Las señales están mezcladas. Considera una posición más pequeña y un apalancamiento más ajustado, o espera una confirmación.

OMITIR

El contexto del mercado no respalda esta operación. Mantente al margen y vuelve a verificar en la siguiente señal.

¿Listo para construir?

Obtén una clave gratuita y realiza tu primera llamada de confirmación en menos de un minuto.

No es un consejo financiero. El trading de criptomonedas implica riesgos.