Cahier de recettes
Cahier de recettes API
Recettes pratiques et prêtes à l'emploi pour les méthodes les plus courantes d'intégrer l'API de confirmation de trades Smart Money dans un bot. Chaque recette appelle GET /v1/confirm et agit sur action, confidence, et size_multiplier. Envoyez votre clé dans l'en-tête X-API-Key — voir la documentation complète.
Recette 1
Confirmer avant l'entrée (Python)
La boucle canonique. Avant que votre stratégie n'ouvre une position, demandez à l'API si la structure du marché est favorable. N'entrez que lorsque action == "CONFIRM".
import requests "sm_your_key"
"https://api.smartmoneyapi.com/v1" def
confirmer (symbole, direction):get("{BASE}/confirm","symbol": symbole,"direction" : direction},"X-API-Key": API_KEY},timeout=5,raise_for_status()
return r.json() confirmer("BTC", "long")
if sig["action"] == "CONFIRM":
passer_ordre("BTC", "long")
else:
print("ignorer :", sig["reasons"])
{
"symbol": "BTC",
"direction": "long",
"action": "CONFIRM",
"confidence": "HIGH",
"composite": 0.74,
"size_mult": 1.5,
"reasons": ["Financement positif sur toutes les plateformes", "Baleines 67% en long"]
}
Recette 2
Contrôler un signal Freqtrade
Remplacer confirm_trade_entry pour que Freqtrade ne prenne que les entrées confirmées par l'API. Échoue ouvert en cas d'erreurs API pour qu'un timeout ne bloque jamais tout le trading.
import requests
from freqtrade.strategy import IStrategy
class StratégieSmartMoney(IStrategy): "sm_your_key"
"https://api.smartmoneyapi.com/v1" def
confirmer_entrée_trade (self, paire, type_ordre, montant, taux, time_in_force, heure_actuelle, tag_entrée, **kwargs):splitif("/")[0]
symbole not in "BTC" ("ETH", "SOL", return True):
try
:get("{self.SM_BASE}/confirm","symbol": symbole,"direction" "long": },"X-API-Key": self.SM_KEY},timeout=3,
).json()
return r.obtenir("action") == "CONFIRMER"
sauf Exception :
retourner Vrai
Recette 3
Taille par size_multiplier
Laissez la conviction déterminer la taille de la position. Multipliez votre taille de base par size_mult (0.0–1.5) pour que les trades avec une confiance ÉLEVÉE obtiennent plus de capital et les moins convaincants moins.
BASE_SIZE_USD = 1000
sig = confirmer("ETH", "long")
mult = sig.obtenir("size_mult", 0.0taille = BASE_SIZE_USD * mult
si taille > 0:
passer_ordre(ETH, long, size_usd=size)
print(f"entré ${size:.0f} (mult {mult})")
A size_mult de 0.0 signifie ne pas entrer — même résultat qu'un SKIP. Traitez tout ce qui est en dessous de votre propre seuil comme un skip.
Recette 4
Skip sur SKIP / réduire sur REDUCE
Traitez explicitement les trois actions. CONFIRM entre en taille pleine, REDUCE entre avec le (plus petit) multiplicateur, SKIP ne prend pas position.
sig = confirmer(symbole, direction)
action = sig["action"]
si action == "CONFIRM":
place_order(symbole, direction, BASE_SIZE_USD * sig["size_mult"])
elif action == "REDUCE":
place_order(symbole, direction, BASE_SIZE_USD * sig["size_mult"])
else:
log(f"skip {symbole} {direction}: {sig['reasons']}")
Recette 5
Gérer 402 / 429
A 402 signifie que le symbole ou l'endpoint nécessite un plan supérieur ; 429 signifie que vous avez atteint une limite de taux. Traitez 429/5xx comme transitoire (reculer), 402/401/403 comme terminal (corriger le plan ou la clé).
importer time, requests
def confirm_safe(symbol, direction, retries=3):
pour tentative dans range(essais) :
r = requests.get(
f{BASE}/confirm,
params={"symbol": symbol, "direction": direction},"X-API-Key": API_KEY},5,
)
if r.status_code == 200:
return r.json()
si r.status_code dans (401, 402, 403):
lever RuntimeError(r.json())
si r.status_code == 429: reset =int(r.headers.(obtenir, 2))temps.(sommeilmin 2 (réinitialiser,
** tentative))
continuertemps.(2 sommeil
# 5xx / transitoire
retourner Aucun
Recette 6
Utiliser avec un agent de codage /llms.txt Donnez à Claude Code, Codex ou Cursor les références lisibles par machine et laissez-le connecter l'intégration. Pointez-le vers
Lisez https://smartmoneyapi.com/llms.txt et la spécification OpenAPI sur github.com/tashiardit/smartmoneyapi-docs, puis ajoutez une vérification pré-trade à mon bot : appelez GET /v1/confirm avec ma X-API-Key, et ignorez toute entrée sauf si action == "CONFIRM". Ajustez la taille avec size_multiplier.
Ressources : /llms.txt · Spécification OpenAPI · Client Python.
Prêt à sécuriser votre premier trade ?
Obtenez une clé gratuite et consultez la documentation complète des endpoints.
Aide à la décision, pas conseil d'exécution. Pas un conseil financier. Le trading de cryptomonnaies comporte un risque substantiel de perte.