什麼是 DEX?
去中心化交易所(decentralized exchange,DEX)是一類讓使用者透過區塊鏈協議或智能合約交換數位資產的交易系統。智能合約是部署在區塊鏈上、按程式碼檢查並執行操作的程式。使用者通常從自己的錢包發出操作,交易由這類鏈上程式按規則結算,不必先把資產記入同一家交易平台控制的內部帳戶。
DEX 不是一種固定的軟體結構,也不等於「每一步都在鏈上」或「沒有任何營運者」。有的 DEX 用資金池自動報價,有的使用買賣訂單;報價、訂單傳播和交易路徑計算也可能在鏈下完成,也就是由不直接寫入區塊鏈的服務處理,最後再由區塊鏈合約結算。網頁介面、管理員權限、外部資料和底層網路仍可能形成集中依賴。
DEX 由交易規則、可用資產和使用入口組成
一般讀者看到的 DEX 往往是一個網頁,但完成交換通常需要多種元件:
- 交易協議:規定訂單或資金池怎樣被呼叫、資產怎樣轉移;
- 智能合約:部署在區塊鏈上並按程式碼檢查與執行操作的程式;
- 流動性來源:可供交易的資金池資產、掛單或造市商報價;
- 錢包:保存或呼叫使用者的簽署能力,讓使用者確認授權和交易;
- 應用介面:展示資產、報價、費用和交易狀態;
- 區塊鏈網路:驗證交易並把執行結果寫入共同狀態。
協議和網頁不是同一個東西。同一交易協議可以有多個介面,某個介面也可以接入多個協議。官網暫時無法存取,不一定表示底層合約已經停止;反過來,網頁可以正常開啟,也不能證明它顯示的是正確合約或真實報價。
一次兌換從報價走到鏈上結算
使用者選擇要交出的資產、希望收到的資產和數量後,介面會查詢資金池、訂單或其他流動性來源,給出預估結果。報價通常只反映查詢時的狀態,並可能帶有有效期。
如果合約需要從使用者地址轉走某種代幣,使用者可能要先提交一筆授權交易。授權是允許指定的支出者地址,也就是被允許代為轉移資產的地址,在額度範圍內從使用者地址轉移某種代幣;這個地址常是兌換合約,但也可以是其他地址。授權不是兌換本身;授權額度過大或授權給錯誤地址,會留下後續資產被轉走的風險。有些代幣標準和錢包支援用簽章授予這類額度,實際效果仍取決於標準與合約。
隨後,介面會產生包含目標網路、合約地址、資產數量和允許的最差結果等條件的交易請求;錢包會展示它能夠解析的請求內容和預計網路費用。使用者確認並簽章後,交易被發送到區塊鏈網路。節點在處理候選區塊時按協議驗證並執行目標合約;交易執行成功且被納入有效區塊後,資產餘額才會按執行結果更新。何時可視為最終確定,仍取決於具體網路的確認或最終性機制。
交易提交後仍可能失敗。例如,報價已經過期、池中餘額變化、允許的價格偏差過小、授權或餘額不足,都會使合約拒絕執行。介面顯示「已提交」只說明請求已經發出,不代表兌換完成。
自動造市商用資金池給出兌換結果
自動造市商(automated market maker,AMM)是一類讓智能合約根據資金池餘額和計算規則給出兌換結果的機制。交易者與資金池互動,不必等待某個指定賣方在同一時刻接單。
流動性提供者把資產放入資金池,為其他使用者的兌換提供可用數量,並可能按規則獲得部分費用。兌換者從池中取出一種資產、放入另一種資產後,池中比例會變化,後續報價也隨之改變。
交易量相對於資金池越大,交易本身對池中比例的改變通常越明顯。預估成交價與操作前池內價格之間由這筆交易造成的差異,常稱為價格影響。
不同 AMM 可以使用不同計算公式、資產範圍和流動性分佈方式。Uniswap v2 的技術說明展示了用兩種代幣儲備和固定乘積規則管理資金池的一種實作,但這不是所有 DEX 的統一結構。
訂單簿把買賣意向進行比對
訂單簿記錄參與者願意按什麼價格和數量交易。掛出訂單的一方通常稱為掛單方,接受既有訂單的一方稱為吃單方。系統找到條件相容的訂單後,再按規則完成結算。
訂單和撮合可以採用不同安排。某些系統把訂單和撮合都寫入區塊鏈;另一些系統讓使用者先簽署訂單,在鏈下傳播或撮合,成交時再把已簽章訂單交給合約驗證和結算。鏈下訂單簿能減少每次掛單都寫入鏈上的開銷,但訂單服務是否可用、是否隱藏部分訂單,以及誰能提交成交,仍需分別檢查。
簽章訂單的欄位和撮合方式並不統一。0x 的訂單文件展示了一種限價訂單:訂單包含交換資產、數量、簽署者、有效期等條件,最終由鏈上合約檢查並執行。
聚合器尋找交易路徑,但不一定提供流動性
DEX 聚合器會查詢多個資金池、訂單或報價來源,再為一筆兌換計算一條或多條交易路徑。它可能把交易拆到不同來源,或先換成中間資產再換成目標資產。
聚合器不一定自己持有資金或營運底層交易協議。它提供的主要能力可能是取得報價、估算網路成本並產生呼叫其他合約的交易請求。0x 的核心概念說明展示了聚合 AMM、訂單和造市商報價的一種路由方式。
聚合不保證任何時候都得到全市場最優結果。可查詢的來源範圍、報價更新時間、路由演算法、協議費、介面費、網路費和交易能否成功,都會影響實際收到的數量。
價格影響和滑點不是同一個概念
價格影響來自交易本身改變可用流動性或吃掉訂單。滑點則是預期成交結果與實際執行結果之間的差異,可能來自等待期間其他交易、價格變化、訂單被填充或交易排序。
介面常讓使用者設定滑點容忍度,並把它轉換成「最少收到多少」或「最多付出多少」的鏈上條件。如果執行時結果超出這個範圍,交易通常會回退;容忍範圍過寬,則可能在價格明顯變化時仍然成交。
報價、價格影響、滑點設定和最終成交結果需要分開查看。低價格影響不代表等待期間不會發生滑點,設定滑點上限也不能讓市場價格保持不變。
費用可能支付給不同參與者
DEX 兌換可能同時出現多類費用:
- 網路費用:支付給處理區塊鏈交易的網路參與者;
- 兌換費用:由資金池或交易合約按規則收取,其中一部分可能分給流動性提供者,也可能流向協議金庫;
- 介面或聚合服務費用:由應用入口或路由服務另行收取;
- 跨鏈相關費用:只有交易路徑涉及跨鏈訊息或資產轉移時才可能出現。
不同費用可能包含在報價中,也可能單獨顯示。只比較表面兌換比例可能忽略網路費、路由費或代幣本身的轉移規則;最終應以錢包請求和鏈上執行結果為準。
非託管不表示資產從未進入合約
DEX 常被稱為非託管交易系統。這裡的非託管通常指平台營運方不能憑自己的帳戶單方面替使用者劃轉資產;使用者從錢包發起交易,並由合約按規則執行。
這不表示資產在整個過程中始終停留在使用者地址。加入資金池時,資產會進入資金池合約;掛單或交易也可能涉及合約託管、代幣授權或專用帳戶。應查看誰能呼叫這些資產、合約是否可升級,以及是否存在暫停或緊急提領權限。
中斷錢包與網頁的連線只會結束目前的互動,不會自動撤銷已經寫入鏈上的代幣授權,也不會退出資金池或取消所有已簽章訂單。
DEX 和中心化交易所的區別在託管、撮合與結算
中心化交易所(centralized exchange,CEX)和 DEX 都可以展示市場、接收交易請求和回傳成交結果,但關鍵環節由不同系統承擔。
| 比較項 | DEX 的常見安排 | CEX 的常見安排 |
|---|---|---|
| 資產紀錄 | 使用者錢包和鏈上合約記錄餘額或部位 | 營運方內部帳本記錄使用者餘額 |
| 交易前託管 | 常由錢包授權合約或把資產放入池中 | 通常先把資產存入營運方控制的帳戶 |
| 報價與撮合 | 資金池公式、鏈上訂單或鏈下簽章訂單 | 營運方維護的訂單簿和撮合系統 |
| 結算 | 區塊鏈交易更新資產狀態 | 先更新內部帳本,提領時再發生鏈上轉移 |
| 規則修改 | 取決於合約、治理和管理員權限 | 由營運方按其系統和服務規則管理 |
| 操作復原 | 錯誤鏈上交易通常不能由客服直接撤銷 | 營運方可能在內部系統中暫停或處理部分操作 |
這些是常見模式,不是所有產品的統一規則。DEX 可以保留管理員權限,CEX 也可以公開部分鏈上儲備資訊。比較時應檢查具體的託管和執行結構,而不是只憑名稱判斷。
同鏈兌換不等於跨鏈交換
一般 DEX 兌換通常只處理同一條區塊鏈上的資產。即使某個代幣名稱代表另一條鏈的資產,交易的也可能是目前網路上的對應或包裝版本,也就是為在該網路中使用而形成的對應代幣,而不是原網路中的資產本身。
在不同區塊鏈之間移動價值,通常還需要跨鏈橋、訊息協議、託管發行方或其他跨鏈機制。聚合器把跨鏈步驟包裝成一次介面操作,也不會消除底層橋接、最終確認和目標網路的風險。
因此,核對資產時要同時確認代幣合約地址和所屬網路。名稱、圖示或交易代碼相同,不足以證明兩個代幣是同一份鏈上資產。
去中心化程度需要逐層檢查
判斷 DEX 時,可以分別檢查:
- 誰能部署、升級、暫停或更換交易合約;
- 誰控制官網、網域、預設代幣清單和路由服務;
- 流動性來自獨立資金池、少數造市商還是單一服務商;
- 訂單是否公開傳播,撮合服務能否選擇性展示或延遲訂單;
- 使用者能否透過其他介面或直接呼叫合約;
- 底層區塊鏈的交易排序、驗證和最終確認由誰參與;
- 治理投票與實際管理員權限怎樣連接。
合約公開、使用者自己簽章或網頁不託管資產,都只回答其中一部分問題。「DEX」標籤本身不能證明系統完全無需信任、無法暫停或不會審查交易。
DEX 的主要風險
DEX 風險可能來自交易機制、程式碼和使用入口:
- 智能合約存在缺陷,或升級、暫停權限超出使用者預期;
- 代幣授權範圍過大,錯誤或惡意合約可以轉走資產;
- 資金池較淺或訂單不足,實際成交結果明顯偏離預估;
- 交易等待期間價格變化,最終回退或在允許範圍內以較差結果成交;
- 公開待處理交易被他人觀察並利用排序,在使用者交易前後插入交易;
- 代幣合約含有轉移限制、額外收費或可隨時增發等特殊規則;
- 假網站、錯誤合約地址或偽造代幣誘導使用者簽署;
- 聚合器、路由、跨鏈橋或底層協議故障,把風險傳遞到整條交易路徑;
- 底層區塊鏈壅塞、重組或故障導致交易延遲或狀態變化。
公開程式碼、稽核報告和較長營運歷史可以提供參考,但不能證明合約沒有未知缺陷。鏈上成功也只說明交易符合當時規則,不表示成交結果符合使用者原本預期。
常見問題
DEX 一定使用 AMM 嗎?
不一定。DEX 可以使用 AMM 資金池、鏈上訂單簿、鏈下簽章訂單、造市商報價或多種方式的組合。
連接錢包後 DEX 能直接轉走資產嗎?
連接錢包通常只建立互動通道,不等於批准轉帳。後續的代幣授權、簽章訂單或交易確認才可能產生資產權限;每次請求需要分別查看。
DEX 上的交易一定立即完成嗎?
不一定。交易要等待網路處理,也可能因報價過期、餘額、授權、滑點條件或合約錯誤而失敗。介面給出的時間只是預估。
DEX 一定比 CEX 費用低嗎?
不一定。實際成本取決於網路費、協議費、介面費、交易規模、流動性和成交價格,不能只比較某一個費率欄位。
在 DEX 買到的同名代幣都一樣嗎?
不一定。任何人可能部署同名或同交易代碼的代幣。識別鏈上資產時需要核對網路和合約地址,不能只看名稱或圖示。
相關詞條
繼續了解DeFi、DApp、智能合約、非託管錢包和加密代幣,或返回加密貨幣術語表。
參考來源
- Uniswap v2 Core 白皮書——自動造市資金池、儲備和固定乘積兌換規則的一種實作。
- 0x Protocol Docs:Orders——鏈下傳播、簽章並由合約結算的限價訂單實作。
- 0x Docs:Core concepts glossary——聚合資金池、訂單和造市商報價的路由概念。
- Ethereum.org:Token swap guide——錢包發起代幣兌換、確認交易與鏈上處理的基礎流程。



