Cookbook

API 食譜

實用、可直接複製貼上的程式碼範例,展示如何將 Smart Money 交易確認 API 接入自動交易機器人。每份範例都調用 GET /v1/confirm 並根據 action, confidence執行操作 size_multiplier。請在 X-API-Key 標頭中發送您的金鑰 — 參見 完整文檔.

需要先取得金鑰? 免費註冊,從您的 控制面板複製金鑰,並替換下方範例中的 sm_your_key
策略 1

進場前確認 (Python)

標準流程。在您的策略開倉前,先詢問API市場結構是否同意。僅在符合條件時進場 action == "CONFIRM".

Python
import requests API_KEY = sm_your_key BASE = https://api.smartmoneyapi.com/v1 def confirm(symbol, direction): r = requests.get( f{BASE}/confirmparams={"symbol": symbol, "direction": direction},"X-API-Key": API_KEY}, timeout=5, ) r.raise_for_status() return r.json() sig =(BTC, 做多) 如果 信號[操作] == 確認: 下單(BTC, 做多) # 您的執行 否則: 打印(跳過:, 信號[原因])
Response
{ "symbol": "BTC", "direction": "long", "action": "CONFIRM", "confidence": "HIGH", "composite": 0.74, "size_mult": 1.5, "reasons": ["Funding positive across venues", "Whales 67% long"] }
Recipe 2

Gate a Freqtrade signal

Override confirm_trade_entry so Freqtrade only takes entries the API confirms. Fail open on API errors so a timeout never blocks all trading.

Python — Freqtrade
import requests from freqtrade.strategy import IStrategy class SmartMoneyStrategy(IStrategy): "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 嘗試獲取{self.SM_BASE}/confirm"symbol": symbol, "direction": "long"}, headers={X-API-Key: self.SM_KEY}, timeout=3, ).json() return r.獲取("動作") == "確認" 除了 例外: 返回 True # API 錯誤時保持開放
配方 3

根據 size_multiplier 調整大小

讓信心決定部位大小。將你的基礎大小乘以 size_mult (0.0–1.5),讓高信心的交易獲得更多資金,而較弱的交易則減少。

Python
BASE_SIZE_USD = 1000 sig = 確認("ETH", "long") mult = sig.獲取("size_mult", 0.0) size = BASE_SIZE_USD * mult if 0: size >(place_order, "ETH""long" , size_usd=size) print(f「已輸入 ${size:.0f}(倍數 {mult})」)
A size_mult 0.0 表示不輸入 — 與 SKIP 結果相同。將任何低於自身下限的值視為跳過。
配方 4

遇到 SKIP 時跳過 / 遇到 REDUCE 時減倉

明確處理所有三種操作。CONFIRM 以完整規模進場,REDUCE 以(較小的)倍數進場,SKIP 則保持觀望。

Python
sig = 確認(symbol, direction) action = sig[「action」] action == 「CONFIRM」: place_order(symbol, direction, BASE_SIZE_USD * sig[「size_mult」]) action == 「REDUCE」: # 結構混雜 — 以小規模進場,收緊止損 place_order(symbol, direction, BASE_SIZE_USD * sig[「size_mult」]) 否則: # SKIP log(f「跳過 {symbol} {direction}:{sig['reasons']}」)
策略 5

處理 402 / 429

A 402 表示該交易對或端點需要更高級的方案; 429 表示您觸發了速率限制。將429/5xx視為暫時性錯誤(稍後重試),402/401/403視為終端錯誤(需升級方案或檢查API金鑰)。

Python
import time, requests def confirm_safe(symbol, direction, retries=3): for attempt in range(重试):获取("{BASE}/confirm","symbol": symbol, "direction": direction},"X-API-Key": API_KEY}, timeout=5, ) 如果 r.status_code == 200: 返回 r.json() 如果 r.status_code (401, 402, 403): 抛出 RuntimeError(r.json()) # terminal: 修復金鑰/方案 如果 r.status_code == 429: reset =int(r.headers.(get, 2))時間。(睡眠分鐘 2 (重置, ** 嘗試)) 繼續時間。(2 睡眠 ** 嘗試) # 5xx / 暫時性錯誤
返回 None

配方 6

與編碼代理一起使用 /llms.txt 將機器可讀的參考資料交給 Claude Code、Codex 或 Cursor,讓它來連接整合。指向

提示
# 貼入 Claude Code / Cursor / Codex 閱讀 https://smartmoneyapi.com/llms.txt 及 OpenAPI 規格於 github.com/tashiardit/smartmoneyapi-docs,然後為我的機器人添加交易前 檢查:使用我的 X-API-Key 呼叫 GET /v1/confirm,且僅當 action == "CONFIRM" 時 執行交易。交易規模按 size_multiplier 調整。

資源: /llms.txt · OpenAPI 規格 · Python 客戶端.

準備好進行首次交易驗證了嗎?

獲取免費金鑰並閱讀完整端點參考文件。

決策支援,非執行建議。非財務建議。加密貨幣交易存在重大損失風險。