如何呼叫加密貨幣交易所 API 且不被封鎖

By: WEEX|2026-08-20 03:15:00

大多數在第一次呼叫交易所 API 時失敗的人,並不是因為交易邏輯有問題。他們失敗的原因通常是:時鐘同步滯後 40 秒、忘記勾選某個權限核取方塊,或者 WebSocket 交握缺少一個請求標頭。呼叫加密貨幣交易所 API 的機制非常簡單,一頁紙就能講清楚——決定呼叫是返回數據還是錯誤代碼的關鍵,在於呼叫周圍的防護措施。

本指南將詳細介紹什麼是交易所 API、請求是如何實際建構的、需要啟用哪些權限,以及 API 金鑰在現實中是如何洩漏的。以下所有平台特定數據均來自 WEEX 的現貨和合約 API 文件(最後更新於 2026 年 4 月 14 日),並反映了截至 2026 年 8 月發布的情況。不同交易所的速率限制和權限模型各不相同,且會隨時間變化——在根據此處任何數字進行開發之前,請務必查看即時文件。

加密貨幣交易所 API 實際上能讓你做什麼

交易所 API 是一組端點,允許軟體執行你通常透過點擊操作完成的任務:獲取價格、讀取餘額、下單和撤單,以及串流傳輸即時市場數據。它取代的是瀏覽器,而不是交易所。

對於第一次呼叫而言,最關鍵的區分是公共端點與私有端點。公共端點向任何人提供市場數據。私有端點涉及你的帳戶,需要經過簽名和身份驗證的請求。

端點類型涵蓋內容是否需要身份驗證
公共價格、K 線、訂單簿深度、交易對配置、伺服器時間
私有餘額、持倉、下單、撤單、交易歷史API 金鑰、簽名、時間戳、密碼短語

交易所 API 通常不具備的兩件事:它不會為你提供交易策略,且在 WEEX 上,它不提供提現開關——文件記錄的 API 金鑰權限類型僅涵蓋讀取和交易。這種區別比聽起來更重要,下文會再次提到。

如何呼叫加密貨幣交易所 API 且不被封鎖

在規劃技術堆疊之前,還有一點值得了解:WEEX 目前不支援 TradingView Webhook 交易或 FIX 協定。如果你的預期工作流依賴於其中任何一個,請現在就做出決定,而不是在寫完整合之後。

分四步呼叫交易所 API

私有 API 呼叫是一個攜帶四項證明的常規 HTTPS 請求。四項全部正確,呼叫即可成功;錯一項,你就會收到明確的錯誤代碼,告訴你錯在哪裡。

第一步 — 建立並儲存憑證。 在 WEEX 上,金鑰透過「帳戶 → API 管理」建立。每個帳戶最多可持有 10 組 API 金鑰。建立時會返回三個值:APIKey(公共識別碼)、SecretKey(用於簽名)以及你自己定義的 Passphrase(密碼短語)。Passphrase 無法恢復或修改——一旦遺失,唯一的選擇就是刪除金鑰並建立一個新的。請保持其為字母數字組合;WEEX 文件特別建議不要使用特殊字元。如何建立 WEEX API Key 並避免被鎖定

第二步 — 建構待簽名字串。 WEEX 按以下順序連接:毫秒時間戳、大寫的 HTTP 方法、請求路徑、查詢字串(如果存在,前面加問號)、請求體(如果存在)。對於深度請求,生成的字串類似於 1591089508404GET/api/v3/market/depth?symbol=BTCUSDT&limit=20。順序不可商量,大小寫也不可商量——交易對符號必須大寫,小寫的 btcusdt 會返回無效符號錯誤,而不是有用的提示。

第三步 — 簽名。 使用你的 SecretKey 透過 HMAC SHA256 對字串進行雜湊處理,然後對結果進行 Base64 編碼。該值與 ACCESS-TIMESTAMP 一起放入 ACCESS-SIGN 請求標頭中。完整的 簽名規範 位於 WEEX 文件中,值得逐行閱讀——簽名建構是大多數首次整合失敗的地方。

第四步 — 發送請求,如果失敗請等待 15 分鐘。 這是沒人會提醒你的一步。新建立或新修改的 API 金鑰大約需要 15 分鐘才能在 WEEX 的系統中生效。開發者經常花一下午時間除錯一個完全正確的簽名,卻不知道金鑰根本還沒生效。

關於時鐘的一點說明,因為這是最常見的自找麻煩的失敗原因:如果時間戳與伺服器時間偏差超過 30 秒,請求將被拒絕。如果你的機器時間漂移——廉價的 VPS 實例經常漂移——請查詢伺服器時間端點並進行同步,而不是信任本地時鐘。

API 金鑰權限:啟用什麼,禁用什麼

核心原則是最小權限。僅讀取餘額的工具絕不應擁有交易權限。WEEX 透過使權限獨立而非累加,以及預設將新金鑰設定為唯讀來強制執行此原則。

權限允許的操作典型用途
唯讀(預設)僅查詢端點——餘額、持倉、交易歷史。無下單權限。投資組合儀表板、稅務和帳本同步、市場分析
現貨下單和撤單、查詢現貨資產現貨機器人、自動再平衡
合約開倉和平倉、設定止盈止損、查詢持倉對沖、高頻合約策略

唯讀是大多數使用者應該止步的設定。如果你正在為投資組合追蹤器、稅務工具或監控儀表板提供數據,唯讀金鑰即可完成任務,且不會導致憑證洩漏引發資產損失。

如果你確實需要交易,請僅啟用一個市場。一個帶有合約權限的現貨機器人承擔著它永遠不會使用的風險。當訂單返回錯誤 -1052(權限不足)時,原因幾乎總是這個核取方塊——金鑰是在選擇交易權限之前建立的,或者為錯誤的交易市場授予了權限。

在建立流程中綁定 IP 白名單。WEEX 在其文件中將不受限制的金鑰標記為安全風險,且強制執行是真實的:來自非白名單位址的請求會返回 -1056(無效 IP),無論簽名是否完美。這就是重點。一個洩漏的白名單金鑰,攻擊者也無法從他們自己的基礎設施中使用。

-- 價格

--
--
--

交易所 API 交易安全嗎?金鑰實際上在哪裡洩漏

API 交易在身份驗證設計合理的情況下是安全的——帶有滾動時間戳的 HMAC 簽名可以防止重放攻擊,權限範圍限制了爆炸半徑。它不安全的地方在於,幾乎所有現實世界的損失都源於金鑰的處理方式,而不是協定本身。

反覆出現的洩漏路徑:

  • 金鑰提交到公共儲存庫。 推送到 GitHub 的設定檔中硬編碼的憑證,會在幾分鐘內被自動化爬蟲抓取。
  • 金鑰貼上到第三方機器人或「訊號」服務中。 將具有交易權限的金鑰交給未經審查的平台,實際上就是交出了你的持倉控制權。如果某項服務要求僅需要數據的功能卻索要交易權限,這就是你是否應該使用它的答案。
  • 在支援聊天中分享金鑰。 沒有合法的交易所支援人員會索要 SecretKey 或 Passphrase。WEEX 在其開發者說明中明確指出了這一點。
  • 一個金鑰包辦所有事。 在開發、測試和生產環境中使用同一個未輪換的金鑰,意味著任何地方的洩漏都是全域洩漏。

經驗豐富的操作員的做法比聽起來更枯燥:每個環境使用獨立的金鑰,在不需要交易的地方使用唯讀權限,每個交易金鑰都配置 IP 白名單,憑證存放在環境變數或金鑰管理器中而不是程式碼裡,並定期輪換。WEEX 還要求在授予 API 存取權限之前綁定手機或 Google Authenticator——錯誤 -1055 是平台在告訴你帳戶本身還不夠安全。

一個被低估的操作風險:你自己的機器人。一個沒有錯誤處理的迴圈如果以全速觸發撤單和下單,將會觸及速率限制,在策略執行中途被限流,並讓你持有一個程式碼認為已經關閉的倉位。WEEX 的開發者指南明確指出,API 交易具有高風險,錯誤處理從第一天起就屬於程式碼的一部分,而不是在第一次事故發生之後。

速率限制與導致首次呼叫失敗的錯誤

速率限制是「測試中執行良好」變成「生產中停止工作」的地方。WEEX 應用了兩個獨立的計量器:針對大多數端點的基於 IP 的權重,以及針對下單的基於帳戶的訂單計數。下單不消耗 IP 權重,因此兩個預算是獨立消耗的。

業務類型操作文件限制
現貨交易下單100 次請求 / 10 秒
現貨交易撤單80 次 / 10 秒,或 200 / 1 分鐘
合約交易下單300 次請求 / 分鐘
網路連接REST IP 權重500 權重 / 10 秒每 IP
WebSocket並發連接20 每 IP

來源:WEEX 現貨和合約 API 常見問題解答,最後更新於 2026 年 4 月 14 日。

超過限制,你將收到 HTTP 429 錯誤外加 10 秒封鎖。你不需要猜測自己離限制有多近——每個回應都帶有報告消耗量的請求標頭:X-USED-WEIGHTX-REMAINING-WEIGHT 用於 IP 權重,X-ORDER-COUNTX-ORDER-REMAINING 用於訂單計數,每個都帶有時間間隔後綴(X-USED-WEIGHT-1M 涵蓋過去一分鐘)。讀取這些請求標頭並在觸及牆壁前退避,是彈性整合與在繁忙時段被封鎖的整合之間的區別。WEEX 在其存取限制規則中發布了每個端點的權重。

當呼叫失敗時,錯誤代碼會準確指出原因。以下是導致大多數首次整合失敗的原因:

代碼含義常見原因
-1046請求時間戳過期本地時鐘與伺服器時間偏差超過 30 秒
-1049API 金鑰或密碼短語錯誤拼字錯誤,或金鑰尚未生效(等待 15 分鐘)
-1052權限不足金鑰未啟用現貨或合約權限
-1055使用者必須綁定手機或 Google Authenticator帳戶未設定 2FA
-1056無效 IP 位址從 IP 白名單之外呼叫
-1121無效交易對交易對小寫,或產品端點未返回該交易對
HTTP 403 (WebSocket)連接被阻止交握中缺少 User-Agent 請求標頭

最後一行是浪費時間最多的地方。WEEX 的防火牆會拒絕沒有 User-Agent 請求標頭的 WebSocket 交握——內容可以是任何東西,但該欄位必須存在。任何通用的 WebSocket 教學都不會告訴你這一點,而 403 錯誤也不會給出任何提示。完整的 錯誤代碼參考 涵蓋了其餘部分。

一個版本說明:WEEX 建議基於 V3 端點進行開發。V1 和 V2 正在被棄用,因此基於舊文件編寫的整合會繼承不必要的遷移工作。

交易前測試:模擬交易端點

正確的順序是:讀取,然後模擬,最後小額交易。直接使用真實餘額進行實盤交易是導致小數點放錯位置變成市價單的原因。

WEEX 在合約端增加了專門的模擬交易端點,針對以 SUSDT 計價的模擬資金執行完整的訂單生命週期。你可以查詢模擬餘額、在對沖模式下查看多頭和空頭持倉、下市價單和限價單,並拉取模擬交易歷史——與實盤交易相同的請求結構和簽名規則,且沒有真實資產風險。對於除錯對沖模式邏輯或驗證簽名和錯誤處理在負載下是否確實有效,這是進行測試的環境。

在此之前,有一個無需成本的健康檢查:呼叫公共端點。在沒有任何身份驗證的情況下獲取伺服器時間或行情數據。如果返回乾淨的 JSON,說明你的網路路徑和請求建構沒問題,任何後續失敗都僅限於身份驗證——這會將除錯範圍從「一切」縮小到「一個請求標頭」。

總結

學習如何呼叫加密貨幣交易所 API,主要是學習其失敗模式。請求本身包含四個組件——金鑰、簽名、時間戳、路徑——而簽名是一個 HMAC SHA256 雜湊,你寫一次之後就不用再想了。將工作整合與損壞整合區分開來的是周圍的紀律:除非確實需要交易,否則金鑰僅限於唯讀;任何可以下單的金鑰都必須配置 IP 白名單;時鐘與伺服器時間同步;以及讀取剩餘權重請求標頭而不是一直請求直到被封鎖的退避邏輯。

如果你從零開始,順序是:建立一個唯讀金鑰,呼叫公共端點,呼叫已驗證的讀取端點,然後模擬,最後以你的策略允許的最小規模進行交易。WEEX API 中心 涵蓋了 100 多種資產的現貨和合約存取,開發者常見問題解答 回答了產生大多數支援工單的權限、速率限制和交易對格式問題。

常見問題解答

1. 使用交易所 API 需要懂程式設計嗎?

對於直接 API 呼叫,是的——你需要具備足夠的程式設計能力來建構已簽名的 HTTP 請求並處理錯誤。非開發者通常透過第三方投資組合追蹤器、稅務工具或交易機器人間接存取交易所 API,你只需貼上金鑰即可。在這種情況下,除非工具確實需要交易,否則請使用唯讀金鑰。

2. 如果我的 API 金鑰洩漏,有人可以提取我的資金嗎?

透過 WEEX 文件記錄的 API 金鑰權限無法做到,這些權限僅涵蓋讀取和交易——截至 2026 年 4 月的文件,提現不屬於列出的 API 權限類型。洩漏的交易金鑰仍然可以透過針對你的帳戶下單或平倉造成損害,因此洩漏無論如何都是嚴重的。請立即刪除受損金鑰。

3. 為什麼我的 API 金鑰在測試中有效,但在生產中失敗?

兩個最常見的原因是 IP 白名單和速率限制。列入開發機器白名單的金鑰在生產伺服器上會返回 -1056,且在測試中通過的流量在實際負載下可能會超過每 10 秒 500 權重的 IP 預算。

4. 新的 API 金鑰需要多長時間才能生效?

在 WEEX 上,新建立或修改的金鑰大約需要 15 分鐘才能在系統中傳播生效。如果建立後立即進行身份驗證失敗,請在重寫簽名程式碼之前等待一段時間。

5. 交易所 API 的 REST 和 WebSocket 有什麼區別?

REST 是請求-回應模式:你請求數據或發送訂單並獲得一個答案。WebSocket 保持持久連接並即時推送更新,這是獲取即時價格、訂單簿深度和成交通知所需要的。大多數整合兩者都會使用——REST 用於訂單和帳戶查詢,WebSocket 用於串流數據。WEEX 將每個 IP 的 WebSocket 連接限制為 20 個。

6. WEEX 支援 TradingView 警報或 FIX API 嗎?

目前均不支援。依賴 TradingView Webhook 執行或 FIX 連接的策略需要不同的執行路徑。

風險提示

加密資產波動劇烈,API 驅動的交易可能會放大損失的速度和規模,最高可達交易帳戶中資金的全部損失。自動化策略會以手動交易不會發生的方式失敗:在執行中途觸及速率限制的機器人可能會留下一個程式碼認為已關閉的倉位,WebSocket 斷開連接可能會在訂單繼續執行時抑制成交通知,邏輯錯誤可能會在發現之前下達數百個意外訂單。合約槓桿會複合上述每一種風險。託管和憑證風險同樣真實——洩漏的 SecretKey 或 Passphrase 可用於交易你的帳戶,且遺失的 Passphrase 無法恢復。在不需要交易的地方使用唯讀權限,啟用 IP 白名單,在投入真實資金前針對模擬交易端點進行測試,且永遠不要以你無法承受的規模進行首次實盤部署。以上內容均不構成投資建議。

本內容僅供參考,不構成任何金融、投資、法律或稅務建議。文中提及的任何活動、獎勵、線上活動或相關資訊,不應被視為對購買、出售或交易任何加密資產的推薦、招攬或邀請。加密資產具有高波動性,存在價值損失風險。WEEX服務、產品及相關活動的可用性可能因地區而異。用戶在參與前有責任確保符合當地適用法律法規。

猜你喜歡

iconiconiconiconiconiconiconiconicon
客戶服務:@weikecs
商務合作:@weikecs
量化做市商合作:bd@weex.com