整合指南
使用 Smart Money API 確認 Bybit 永續合約進場
透過 CCXT 讀取 Bybit 永續合約即時市場數據,詢問 Smart Money API 大額資金流向與衍生品持倉是否支持您的交易方向,再根據建議倍數調整進場規模。
適用對象
在 CCXT 上運行 Bybit USDT 永續合約機器人的 Python 開發者 CCXT 希望在每次進場前獲得獨立市場情境驗證者。Smart Money API 僅提供決策支援,不會代為下單;您的 CCXT 代碼仍完全掌控執行與風險。
必要條件
- Python 3.9+ 環境
pip install ccxt requests. - 已為 CCXT 配置 Bybit API 金鑰(測試時唯讀權限即可)。
- 一組 Smart Money API 金鑰(免費方案支援 BTC)。
取得您的 API 金鑰
設定
- 1安裝函式庫:
pip install ccxt requests. - 2導出您的金鑰:
export SMA_API_KEY="sm_your_key_here". - 3使用CCXT開啟Bybit合約交易(
ccxt.bybit({"options":{"defaultType":"swap"}})),讓您的策略選擇一個候選方向,然後調用/v1/confirm作為最終的上下文閘門。 - 4僅當行動是時,使用CCXT放置永續合約入場
CONFIRM,根據規模調整size_mult.
實際運作範例
此腳本透過CCXT讀取Bybit永續合約標的,推導潛在方向後調用 GET /v1/confirm?symbol=BTC&direction=long 再決定是否執行進場。
bybit_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.bybit({"options": {"defaultType": "swap"}}) # Bybit perpetuals
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": "bybit-bot"},
headers={"X-API-Key": API_KEY},
timeout=10,
)
r.raise_for_status()
return r.json()
# 1. Read Bybit swap market data with CCXT and pick a candidate direction
ticker = exchange.fetch_ticker("BTC/USDT: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:USDT", "market", direction, qty)
print(f"Would place {direction} {qty} BTC/USDT:USDT perp")
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")
預期回應
成功調用 /v1/confirm 將返回如下JSON:
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 範圍從-1.0(強烈反向)至+1.0(強烈確認), confidence 為HIGH或MEDIUM,且 size_mult 為0.0–1.5的建議倉位乘數。完整字段說明請參閱 API文檔.
如何根據回應執行
確認
市場情境支持您的方向。請依自身進場與風險規則執行,可選擇按 size_mult.
縮減
信號混雜。建議縮小倉位、緊縮停損,或等待更明確的時機。
跳過
市場情境不支持此交易。請保持觀望並於下次機會重新確認。
準備開始建構?
取得免費金鑰,一分鐘內完成首次確認調用。
非財務建議。加密貨幣交易存在風險。