Kokbok
API Kokbok
Praktiska, kopieringsklara recept för de vanligaste sätten att integrera Smart Money:s handelsbekräftelse-API i en bot. Varje recept anropar GET /v1/confirm och agerar på action, confidence, och size_multiplier. Skicka din nyckel i X-API-Key header — se de fullständiga dokumenten.
Recept 1
Bekräfta före inträde (Python)
Den kanoniska loopen. Innan din strategi öppnar en position, fråga API:et om marknadsstrukturen är överens. Gå bara in när action == "CONFIRM".
import requests
API_KEY = sm_din_nyckel
BAS = https://api.smartmoneyapi.com/v1
def bekräfta(symbol, riktning):hämta({BASE}/confirm,
params={"symbol": symbol, "direction": direction},"X-API-Key": API_KEY},5timeout=raise_for_status()
return r.json() sig =(BTC, lång)
om sig[åtgärd] == CONFIRM:
place_order(BTC, lång)
annars:
skriv ut(hoppa över:, sig[skäl])
{
"symbol": "BTC",
"direction": "long",
"action": "CONFIRM",
"confidence": "HIGH",
"composite": 0.74,
"size_mult": 1.5,
"reasons": ["Funding positiv över alla platser", "Valar 67% long"]
}
Recept 2
Skicka en Freqtrade-signal
Åsidosätt confirm_trade_entry så Freqtrade endast tar entries som API:et bekräftar. Misslyckas öppen vid API-fel så att en timeout aldrig blockerar all handel.
import requests
from freqtrade.strategy import IStrategy
class SmartMoneyStrategy(IStrategy): SM_KEY =
"sm_your_key" SM_BASE =
"https://api.smartmoneyapi.com/v1" defconfirm_trade_entry(self, pair, order_type, amount, rate,
time_in_force, current_time, entry_tag, **kwargs):
symbol = pair.("/")[0]
split if symbol (not in, "BTC", "ETH"):
"SOL"
return True
försök:hämta("f""{self.SM_BASE}/confirm""symbol": symbol, "riktning": "lång"},"X-API-Key": self.SM_KEY},3,
).timeout=()
return r.hämta("action") == "CONFIRM"
undantag Exception:
return True
Recept 3
Storlek efter size_multiplier
Låt övertygelsen bestämma positionsstorleken. Multiplicera din grundstorlek med size_mult (0.0–1.5) så att HANDLINGAR med HÖG tilltro får mer kapital och svaga får mindre.
BASE_SIZE_USD = 1000
sig = bekräfta("ETH", "long")
mult = sig.hämta("size_mult", 0.0storlek = BASE_SIZE_USD * mult
om storlek > 0:
placera_order(ETH, lång, size_usd=size)
print(f"gick in med ${size:.0f} (mult {mult})")
A size_mult av 0.0 betyder att inte gå in — samma resultat som en SKIP. Behandla allt under din egen tröskel som en skip.
Recept 4
Skipa vid SKIP / minska vid REDUCE
Hantera alla tre åtgärder explicit. CONFIRM går in med full storlek, REDUCE går in med den (mindre) multiplikatorn, SKIP står vid sidan av.
sig = bekräfta(symbol, riktning)
action = sig["action"]
om action == "CONFIRM":
place_order(symbol, riktning, BASE_SIZE_USD * sig["size_mult"])
elif action == "REDUCE":
place_order(symbol, riktning, BASE_SIZE_USD * sig["size_mult"])
annars:
log(f"skip {symbol} {riktning}: {sig['reasons']}")
Recept 5
Hantera 402 / 429
A 402 betyder att symbolen eller slutpunkten kräver en högre plan; en 429 betyder att du har träffat en gräns för begäranden. Behandla 429/5xx som tillfälliga (backa av), 402/401/403 som permanenta (fixa planen eller nyckeln).
importera time, requests
def confirm_safe(symbol, direction, retries=3):
för försök i range(försök):hämta("{BASE}/confirm","symbol": symbol, "direction": direction},"X-API-Key": API_KEY}, timeout=5,
)
om r.status_code == 200:
returnera r.json()
om r.status_code i (401, 402, 403):
skapa RuntimeError(r.json())
om r.status_code == 429: återställ =int(r.headers.(hämta, 2))tid.(sömnmin 2 (återställ,
** försök))
fortsätttid.(2 sömn
# 5xx / tillfälligt
returnera None
Recept 6
Använd med en kodningsagent /llms.txt Ge Claude Code, Codex eller Cursor de maskinläsbara referenserna och låt den koppla samman integrationen. Peka den mot översikten och OpenAPI-specifikationen för exakta strukturer.
Läs https://smartmoneyapi.com/llms.txt och OpenAPI-specifikationen på github.com/tashiardit/smartmoneyapi-docs, lägg sedan till en förhandskontroll i min bot: anropa GET /v1/confirm med min X-API-Key och hoppa över alla poster om inte action == "CONFIRM". Skala storleken med size_multiplier.
Resurser: /llms.txt · OpenAPI-specifikation · Python-klient.
Redo att sätta igång din första handel?
Hämta en gratis nyckel och läs hela endpoint-referensen.
Beslutsstöd, inte exekveringsråd. Inget finansiellt råd. Handel med kryptovaluta innebär betydande risk för förlust.