Cookbook
API Cookbook
Praktische, kopierfertige Anleitungen für die gängigsten Methoden, um die Smart Money Trade-Confirmation-API in einen Bot einzubinden. Jede Anleitung ruft GET /v1/confirm auf und reagiert auf action, confidenceund size_multiplier. Senden Sie Ihren Schlüssel im X-API-Key Header — siehe die vollständige Dokumentation.
Rezept 1
Vor dem Einstieg bestätigen (Python)
Die klassische Schleife. Bevor Ihre Strategie eine Position eröffnet, fragen Sie die API, ob die Marktstruktur zustimmt. Steigen Sie nur ein, wenn action == "CONFIRM".
import requests
API_KEY = sm_your_key
BASE = https://api.smartmoneyapi.com/v1
def bestätigen(symbol, direction):
r = requests.get({BASE}/confirm,
params={"symbol": symbol, "direction": direction},
headers={"X-API-Key": API_KEY},
timeout=5,
)
r.raise_for_status()
return r.json()
sig = bestätigen(BTC, Long)
if sig["Aktion"] == "BESTÄTIGEN":
place_order(BTC, Long)
else:
print("Überspringen:", sig["Gründe"])
{
"symbol": "BTC",
"direction": "long",
"action": "CONFIRM",
"confidence": "HIGH",
"composite": 0.74,
"size_mult": 1.5,
"reasons": ["Funding positiv über alle Handelsplätze", "Wale 67% long"]
}
Rezept 2
Gate ein Freqtrade-Signal
Überschreiben confirm_trade_entry damit Freqtrade nur Einstiege bestätigt, die die API bestätigt. Fehlschlag offen bei API-Fehlern, damit ein Timeout nicht den gesamten Handel blockiert.
import requests
from freqtrade.strategy import IStrategy
class SmartMoneyStrategy(IStrategy):
SM_KEY = "sm_your_key"
SM_BASE = "https://api.smartmoneyapi.com/v1"
def confirm_trade_entry(self, pair, order_type, amount, rate,
time_in_force, current_time, entry_tag, **kwargs):
symbol = pair.split("/")[0]
if symbol not in ("BTC", "ETH", "SOL"):
return True
versuche: r = requests.("{self.SM_BASE}/confirm","symbol": symbol, "Richtung": "long"},
headers={X-API-Key: self.SM_KEY},
timeout=3,
).json()
return r.erhalten("Aktion") == "BESTÄTIGEN"
außer Exception:
return True
Rezept 3
Größe nach size_multiplier
Lassen Sie die Überzeugung die Positionsgröße bestimmen. Multiplizieren Sie Ihre Basisgröße mit size_mult (0.0–1.5), damit hochvertrauenswürdige Trades mehr Kapital erhalten und schwächere weniger.
BASE_SIZE_USD = 1000
sig = bestätigen("ETH", long) mult = sig.get("size_mult", 0.0Größe = BASE_SIZE_USD * mult
wenn Größe > 0:
Order platzieren(ETH, long, size_usd=size)
print(f"entered ${size:.0f} (mult {mult})")
A size_mult von 0.0 bedeutet nicht einsteigen – gleiches Ergebnis wie ein SKIP. Behandle alles unter deinem eigenen Minimum als Skip.
Rezept 4
Überspringen bei SKIP / reduzieren bei REDUCE
Behandle alle drei Aktionen explizit. CONFIRM steigt mit voller Größe ein, REDUCE mit dem (kleineren) Multiplikator, SKIP bleibt außen vor.
sig = bestätigen(symbol, direction)
action = sig["action"]
wenn action == "CONFIRM":
place_order(symbol, direction, BASE_SIZE_USD * sig["size_mult"])
elif action == "REDUCE":
place_order(symbol, direction, BASE_SIZE_USD * sig["size_mult"])
else:
log(f"skip {symbol} {direction}: {sig['reasons']}")
Rezept 5
Behandle 402 / 429
A 402 bedeutet, dass das Symbol oder der Endpunkt einen höheren Plan benötigt; ein 429 bedeutet, dass Sie ein Rate-Limit erreicht haben. Behandeln Sie 429/5xx als vorübergehend (Backoff), 402/401/403 als endgültig (Plan oder Schlüssel korrigieren).
import time, requests
def confirm_safe(symbol, direction, retries=3):
for attempt in range(Wiederholungen):get("{BASE}/confirm","symbol": symbol, "direction": direction},"X-API-Key": API_KEY}, timeout=5,
)
if r.status_code == 200:
return r.json()
wenn r.status_code in (401, 402, 403):
erhöhen RuntimeError(r.json())
if r.status_code == 429: reset =int(r.headers.(get, 2)) Zeit.Schlaf(min(zurücksetzen, 2 ** Versuch))
fortfahren
Zeit.schlafen(2 ** Versuch)
return None
Rezept 6
Mit einem Coding-Agenten verwenden
Übergeben Sie Claude Code, Codex oder Cursor die maschinenlesbaren Referenzen und lassen Sie die Integration erstellen. Verweisen Sie auf /llms.txt für die Übersicht und die OpenAPI-Spezifikation für genaue Strukturen.
Lies https://smartmoneyapi.com/llms.txt und die OpenAPI-Spezifikation unter github.com/tashiardit/smartmoneyapi-docs, dann füge meinem Bot eine Pre-Trade-Prüfung hinzu: rufe GET /v1/confirm mit meinem X-API-Key auf und überspringe jeden Eintrag, außer wenn action == "CONFIRM". Skaliere die Größe mit size_multiplier.
Ressourcen: /llms.txt · OpenAPI-Spezifikation · Python-Client.
Bereit für deinen ersten Trade?
Hol dir einen kostenlosen Key und lies die vollständige Endpunkt-Referenz.
Entscheidungshilfe, keine Ausführungsberatung. Keine Finanzberatung. Der Handel mit Kryptowährungen birgt ein hohes Verlustrisiko.