Guia de Integração

Use a Smart Money API junto com o CCXT

Leia dados de mercado em tempo real com o CCXT, consulte a Smart Money API para verificar se o fluxo de baleias e o posicionamento de derivativos confirmam sua direção, então envie a ordem na exchange de sua escolha.

Para quem é isso

Desenvolvedores Python criando bots independentes de exchange no CCXT que desejam uma verificação independente do contexto de mercado antes de cada ordem. A Smart Money API é um suporte à decisão — ela não envia ordens por você; o CCXT mantém o controle da execução.

Pré-requisitos

  • Python 3.9+ com pip install ccxt requests.
  • Chaves de API de exchange configuradas para o CCXT (somente leitura é suficiente para testes).
  • Uma chave de API da Smart Money API (o plano gratuito cobre BTC).

Obtenha sua chave de API

Cada requisição é autenticada com o X-API-Key cabeçalho. Para obter uma chave:

  1. 1Crie uma conta gratuita, depois acesse seu painel.
  2. 2Copie a chave de API exibida em Acesso à API. O plano gratuito cobre BTC com 20 requisições/dia — suficiente para testar este guia de ponta a ponta.
  3. 3Precisa de mais símbolos ou limites maiores? Compare os planos na página de preços.

Mantenha a chave secreta — armazene-a em uma variável de ambiente, nunca a inclua no controle de versão.

Configuração

  1. 1Instale as bibliotecas: pip install ccxt requests.
  2. 2Exporte sua chave: export SMA_API_KEY="sm_your_key_here".
  3. 3Deixe sua estratégia decidir uma direção candidata a partir dos dados de mercado do CCXT, então chame /v1/confirm como um gate de contexto final.
  4. 4Envie a ordem com o CCXT apenas quando a ação for CONFIRM, dimensionando por size_mult.

Exemplo funcional

Este script lê um ticker com o CCXT, deriva uma direção candidata, então chama GET /v1/confirm?symbol=BTC&direction=long antes de decidir se envia a ordem.

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")

Resposta esperada

Uma chamada bem-sucedida para /v1/confirm retorna 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 varia de -1.0 (forte contra) a +1.0 (forte confirmação), confidence é HIGH ou MEDIUM, e size_mult é um multiplicador de tamanho sugerido de 0.0–1.5. Consulte a referência completa de campos na documentação da API.

Como agir com base na resposta

CONFIRMAR

O contexto apoia sua direção. Prossiga com suas próprias regras de entrada e risco, opcionalmente dimensionando o tamanho por size_mult.

REDUZIR

Os sinais estão misturados. Considere uma posição menor, stops mais apertados ou aguardar uma configuração mais clara.

PULAR

O contexto de mercado não apoia esta negociação. Fique de fora e verifique novamente no próximo candidato.

Pronto para construir?

Obtenha uma chave gratuita e faça sua primeira chamada de confirmação em menos de um minuto.

Não é um conselho financeiro. Negociar criptomoedas envolve riscos.