Intent Economy 與 Solver Network 原創學術分析:2026 年以太坊意圖驅動範式的深度理論建構
本文從學術角度深度分析 Intent Economy 的理論基礎與實際運作機制。涵蓋意圖的形式化定義、命令式到宣告式範式轉變的哲學意涵、Solver Network 的微觀經濟學、ERC-7683 標準的技術架構、以及去中心化與中心化的張力分析。同時提供完整的博弈論模型、拍賣機制設計、以及 2026 年第一季度最新市場數據。是理解意圖驅動 DeFi 未來發展的必讀學術論文。
title: 以太坊意圖經濟與求解器網路深度原創分析:當自然語言遇上去中心化金融
summary: 本文從學術與工程雙重視角深入分析 Intent(意圖)經濟範式與 Solver(求解器)網路的運作原理。我們涵蓋 ERC-7683 標準、荷蘭拍賣機制、CoW Protocol 架構、Anoma 哲學設計、以及即將爆發的 Intent-based 應用生態。我們提供完整的技術架構分析、經濟模型推導、實際案例數據、以及對未來發展的前瞻性預測。這是一篇融合密碼學、拍賣理論、機制設計與區塊鏈工程的跨學科原創論文。
tags:
- ecosystem
- intent
- solver
- defi
- erc-7683
- cow-protocol
- anoma
- mechanism-design
- auction-theory
- user-experience
- abstraction
-MEV
difficulty: advanced
date: "2026-03-29"
parent: null
status: published
references:
- title: ERC-7683 ISPV Specification
url: https://eips.ethereum.org/EIPS/eip-7683
desc: Intent 標準化提案
- title: CoW Protocol
url: https://docs.cow.fi
desc: CoW Protocol 官方文檔
- title: Anoma Protocol
url: https://anoma.net
desc: Anoma 分布式節點架構
- title: Flashbots SUAVE
url: https://writings.flashbots.net/the-future-of-mev-is-suave
desc: SUAVE 計畫白皮書
- title: 0x Protocol Intent API
url: https://0x.org/docs/intents
desc: 0x Intent API 文檔
disclaimer: 本網站內容僅供教育與資訊目的,不構成任何投資建議。MEV 和 Intent 交易涉及高度複雜的金融機制,投資者應充分了解相關風險後自行決策。
datacutoffdate: 2026-03-28
以太坊意圖經濟與求解器網路深度原創分析:當自然語言遇上去中心化金融
我必須承認,每次向新手解釋 DeFi 的複雜性時,我都想找個地洞鑽進去。「你要先去 Uniswap 授權代幣,然後選擇交易對,設定滑點,接受報價,等待區塊確認⋯⋯」這些步驟說完,對方早就跑了。
但如果我說:「我想把 1 個 ETH 換成 USDC,要最劃算的價格」,這聽起來就直觀多了,對吧?
這就是 Intent(意圖)經濟正在解決的問題。
從「如何做」到「要做什麼」的範式轉移
傳統 DeFi 的使用者旅程
在 2020-2024 年的 DeFi 世界裡,「交易」這件事是這樣運作的:
用戶意圖:「我想用 1 ETH 換成最多 USDC」
傳統流程(10+ 步驟):
┌─────────────────────────────────────────────────────────────────────┐
│ 1. 打開錢包 [ ] │
│ 2. 連接到 DEX(如 Uniswap) [ ] │
│ 3. 授權 DEX 使用你的 ERC-20 代幣 [ ] │
│ 4. 選擇輸入代幣(ETH) [ ] │
│ 5. 選擇輸出代幣(USDC) [ ] │
│ 6. 輸入數量(1 ETH) [ ] │
│ 7. 設定滑點容忍度(0.5%) [ ] │
│ 8. 等待報價出爐 [ ] │
│ 9. 確認交易 [ ] │
│ 10. 等待區塊確認 [ ] │
│ 11. (可選)如果失敗,重來 [ ] │
└─────────────────────────────────────────────────────────────────────┘
問題在哪裡?
- 用戶被迫成為交易專家
- 用戶要理解 Gas、滑點、流動性等概念
- 用戶要自己比較不同 DEX 的價格
- 用戶要承擔 MEV 風險
- 任何一步都可能出錯
這整套流程的設計假設用戶是「了解區塊鏈如何運作的工程師」。但現實中,99% 的用戶只是想「換個錢」而已。
Intent 範式的破局
Intent 的核心思想是:用戶只描述「想要的結果」,而不是「如何實現」。
意圖驅動流程(3 步驟):
┌─────────────────────────────────────────────────────────────────────┐
│ 1. 用戶聲明意圖: [ ] │
│ 「我想用 1 ETH 換至少 3500 USDC,願意支付最多 0.01 ETH 手續費」 [ ] │
│ │
│ 2. 求解器(Solver)競爭滿足這個意圖: [ ] │
│ - Solver A 報價:1 ETH → 3520 USDC,收 0.005 ETH [ ] │
│ - Solver B 報價:1 ETH → 3515 USDC,收 0.003 ETH [ ] │
│ - Solver C 報價:1 ETH → 3505 USDC,收 0.002 ETH [ ] │
│ │
│ 3. 系統自動選擇最優解,用戶坐等結果: [ ] │
│ 最佳選擇:Solver C(凈得 3503 USDC,扣除手續費後) [✓] │
└─────────────────────────────────────────────────────────────────────┘
優勢:
- 用戶只需要理解「我想要什麼」
- 專業的 Solver 幫用戶處理「如何實現」
- 競爭機制自動優化執行價格
- 用戶無需理解 MEV、Gas、DEX 選擇等複雜概念
這個模式有個更學術的名稱:用戶端聲明式偏好(Declarative Preferences)。
從經濟學角度看,這相當於把「執行細節」的決策權外包給了專業的中間人(Solver)。用戶只保留「底線」——也就是願意接受的最低回報。
學術理論支撐:拍賣理論與機制設計
為什麼 Intent 模式能運作?從經濟學說起
Intent 模式的底層邏輯,可以用拍賣理論(Auction Theory)來解釋。
經典拍賣模型回顧
"""
拍賣理論與 Intent 市場的類比分析
"""
class AuctionTheory:
"""
拍賣理論基礎模型
四種經典拍賣類型:
1. 英式拍賣(English Auction):價格從低往上升
2. 荷式拍賣(Dutch Auction):價格從高往下降
3. 密封競標第一價格(First-price Sealed-bid)
4. Vickrey 拍賣(第二價格密封競標)
Intent 市場最類似的是「荷式拍賣 + Vickrey 機制」的混合
"""
@staticmethod
def english_auction_reserve_price(
num_bidders: int,
valuations: list,
reserve_price: float
) -> dict:
"""
英式拍賣(含底價)
理論:當投標人數 > 1,競標會推動價格上升直到倒數第二高估值的投標人放棄
均衡價格:max(倒數第二高估值, 底價)
"""
sorted_vals = sorted(valuations, reverse=True)
# 均衡價格
if len(sorted_vals) < 2:
equilibrium_price = max(reserve_price, sorted_vals[0])
else:
equilibrium_price = max(sorted_vals[1], reserve_price)
# 效率分析:物品會分配給估值最高的投標人
efficiency = sorted_vals[0] >= equilibrium_price
return {
"equilibrium_price": equilibrium_price,
"winner": "最高估值投標人",
"social_surplus": sorted_vals[0] - equilibrium_price,
"efficient": efficiency
}
@staticmethod
def dutch_auction_first_price(
num_bidders: int,
valuations: list,
starting_price: float,
decrement: float
) -> dict:
"""
荷式拍賣(第一價格)
理論:價格從高往下降,第一個「接受」的投標人獲得物品
問題:投標人面臨「贏者的詛咒」(Winner's Curse)
即:投標人知道自己是估值最高的,但不知道別人的估值
"""
current_price = starting_price
# 模擬拍賣過程
# 投標人的策略:當 current_price <= 自己的估值時接受
for bidder_idx, valuation in enumerate(sorted(valuations, reverse=True)):
if current_price <= valuation:
return {
"winner": f"投標人 {bidder_idx}",
"winning_price": current_price,
"winner_valuation": valuation,
"surplus": valuation - current_price,
"winners_curse_risk": "高(因為投標人知道自己是最高估值者)"
}
current_price -= decrement
return {"winner": None, "reason": "沒有投標人接受"}
@staticmethod
def vickrey_second_price(
num_bidders: int,
valuations: list
) -> dict:
"""
Vickrey 拍賣(第二價格密封競標)
理論(Vickrey, 1961):
- 每個投標人報告自己的估值
- 最高估值者獲得物品
- 支付第二高估值的價格
核心結論:在 Vickrey 拍賣中,
「如實報告估值」是弱優勢策略(Weakly Dominant Strategy)
也就是說,說真話永遠不會吃虧
"""
sorted_vals = sorted(enumerate(valuations), key=lambda x: x[1], reverse=True)
winner_idx = sorted_vals[0][0]
winner_val = sorted_vals[0][1]
second_price = sorted_vals[1][1]
return {
"winner": f"投標人 {winner_idx}",
"winning_price": second_price,
"winner_valuation": winner_val,
"surplus": winner_val - second_price,
"dominant_strategy": "如實報告估值",
"incentive_compatible": True, # 激勵相容
"efficiency": True # 物品分配給最高估值者
}
# Intent 市場的類比分析
print("=== 拍賣理論應用於 Intent 市場 ===\n")
auction = AuctionTheory()
# 場景:3 個 Solver 競爭滿足用戶的 Intent
valuations = [3520, 3515, 3505] # 各 Solver 能給出的最大 USDC 輸出
# 英式拍賣模型(類比 Solver 競爭)
english_result = auction.english_auction_reserve_price(
num_bidders=3,
valuations=valuations,
reserve_price=3500 # 用戶的底價
)
print("英式拍賣(Solver 競爭)模型:")
print(f" 均衡價格:{english_result['equilibrium_price']} USDC")
print(f" 社會剩餘:{english_result['social_surplus']} USDC")
print(f" 效率性:{'是' if english_result['efficient'] else '否'}\n")
# Vickrey 模型(類比用戶選擇 Solver)
vickrey_result = auction.vickrey_second_price(
num_bidders=3,
valuations=valuations
)
print("Vickrey 拍賣(用戶選擇 Solver)模型:")
print(f" 贏家:{vickrey_result['winner']}")
print(f" 支付價格(第二高):{vickrey_result['winning_price']} USDC")
print(f" 激勵相容:{'是' if vickrey_result['incentive_compatible'] else '否'}\n")
Intent 市場的獨特挑戰
標準拍賣理論直接套用到 Intent 市場會遇到幾個問題:
Intent 市場的特殊性:
1. 私人信息不對稱
標準假設:拍賣者不知道投標人的估值
Intent 現實:用戶不知道 Solver 的執行成本和能力
2. 多物品拍賣
標準假設:拍賣一個物品
Intent 現實:同時處理多個用戶的 Intent,可能有套利機會
3. 時間敏感性
標準假設:拍賣結果是靜態的
Intent 現實:市場價格每秒都在變
4. 欺詐風險
標準假設:投標人是誠實的
Intent 現實:Solver 可能會作弊(如 sandwich attack)
這些特殊性讓 Intent 市場的機制設計更加困難
荷蘭拍賣機制在 Intent 市場的應用
CoW Protocol 採用的「報價 + 按需拍賣」機制,本質上是一種荷蘭拍賣的變體。
"""
CoW Protocol 的荷蘭拍賣機制分析
"""
class COWProtocolMechanism:
"""
CoW Protocol 的交易機制分析
核心概念:
- 用戶提交 Intent(想要的結果)
- Solver 競爭提供最優執行
- 荷蘭拍賣機制決定結算價格
關鍵創新:
1. 批量拍賣(Batch Auction)
2. 離線結算(Off-chain Settlement)
3. 需求匹配(CoW = Coincidence of Wants)
"""
def __init__(self):
self.pending_intents = [] # 等待滿足的 Intent
self.solver_bids = [] # Solver 的報價
self.batch_id = 0
def submit_intent(
self,
user: str,
sell_token: str,
sell_amount: float,
buy_token: str,
min_amount: float,
deadline: int
) -> dict:
"""
用戶提交 Intent
數學表示:
Intent = (user, sell_token, sell_amount, buy_token, min_amount, deadline)
約束條件:
- min_amount:用戶願意接受的最低輸出
- deadline:超時則交易取消
"""
intent = {
"id": f"intent_{self.batch_id}_{len(self.pending_intents)}",
"user": user,
"sell_token": sell_token,
"sell_amount": sell_amount,
"buy_token": buy_token,
"min_amount": min_amount,
"deadline": deadline,
"timestamp": self._current_time()
}
self.pending_intents.append(intent)
return intent
def solver_quote(
self,
solver_id: str,
intent_id: str,
execution_price: float,
fee: float,
routing_path: list
) -> dict:
"""
Solver 提供報價
Solver 的策略問題:
给定 Intent (sell_amount, min_amount),Solver 要決定:
1. 從哪裡獲取流動性?
2. 收取多少費用?
3. 如何執行交易?
收益模型:
Revenue = 執行價格 × sell_amount - 成本
成本包括:
- Gas 成本
- 滑點損失
- MEV 風險
"""
quote = {
"solver_id": solver_id,
"intent_id": intent_id,
"execution_price": execution_price, # 能給出的輸出價格
"fee": fee,
"routing_path": routing_path,
"net_output": execution_price - fee,
"timestamp": self._current_time()
}
self.solver_bids.append(quote)
return quote
def dutch_auction_settlement(
self,
intent_id: str,
initial_price: float,
price_decrement_per_second: float
) -> dict:
"""
荷蘭拍賣結算(概念模型)
實際 CoW Protocol 不使用嚴格的荷蘭拍賣,
但這個模型有助於理解價格發現機制
價格公式:
P(t) = max(min_price, initial_price - δ × t)
其中:
- P(t):時間 t 的當前價格
- min_price:最低價(用戶的 min_amount)
- initial_price:初始報價
- δ:每秒降價幅度
"""
t = 0
current_price = initial_price
while current_price > self._get_breakeven_price(intent_id):
current_price -= price_decrement_per_second
t += 1
# 檢查是否有 Solver 接受當前價格
for quote in self.solver_bids:
if quote["intent_id"] == intent_id and quote["net_output"] >= current_price:
return {
"settled": True,
"price": current_price,
"winner": quote["solver_id"],
"time_elapsed": t,
"user_surplus": current_price - self._get_min_amount(intent_id)
}
return {
"settled": False,
"reason": "價格降到 min_amount 以下,無 Solver 願意執行"
}
def match_cow(self, intents: list) -> list:
"""
需求匹配(CoW = Coincidence of Wants)
這是 CoW Protocol 最創新的部分:
如果用戶 A 想用 ETH 換 USDC,
而用戶 B 剛好用 USDC 換 ETH,
那麼兩者可以直接匹配,不需要外部流動性
數學表示:
∃(i, j) 使得:
Intent_i: sell_token = ETH, buy_token = USDC
Intent_j: sell_token = USDC, buy_token = ETH
交換:C_i_ETH = C_j_USDC, C_i_USDC = C_j_ETH
好處:
- 零滑點
- 零費用(理論上)
- 抗 MEV(無需外部套利者)
"""
matches = []
for i, intent_i in enumerate(intents):
for j, intent_j in enumerate(intents[i+1:], start=i+1):
if (intent_i["sell_token"] == intent_j["buy_token"] and
intent_i["buy_token"] == intent_j["sell_token"] and
intent_i["sell_amount"] >= intent_j["buy_amount"] and
intent_j["sell_amount"] >= intent_i["buy_amount"]):
# 找到匹配!直接點對點交換
actual_amount = min(intent_i["sell_amount"], intent_j["buy_amount"])
matches.append({
"type": "cow",
"intents": [intent_i["id"], intent_j["id"]],
"token": intent_i["sell_token"],
"amount": actual_amount,
"fee": 0,
"slippage": 0,
"solver": "cow_matching"
})
return matches
def _current_time(self) -> int:
return 1700000000
def _get_min_amount(self, intent_id: str) -> float:
for intent in self.pending_intents:
if intent["id"] == intent_id:
return intent["min_amount"]
return 0
def _get_breakeven_price(self, intent_id: str) -> float:
return self._get_min_amount(intent_id)
# 實例分析
cow = COWProtocolMechanism()
# 場景:用戶 A 想用 1 ETH 換 USDC
intent_a = cow.submit_intent(
user="0xAlice...",
sell_token="ETH",
sell_amount=1.0,
buy_token="USDC",
min_amount=3500, # 最低接受 3500 USDC
deadline=1700003600
)
# 場景:用戶 B 想用 5000 USDC 換 ETH
intent_b = cow.submit_intent(
user="0xBob...",
sell_token="USDC",
sell_amount=5000,
buy_token="ETH",
min_amount=0.48, # 最低接受 0.48 ETH
deadline=1700003600
)
# 嘗試 CoW 匹配
matches = cow.match_cow([intent_a, intent_b])
print("=== CoW 需求匹配結果 ===")
print(f"找到匹配:{len(matches)} 對")
for match in matches:
print(f" 類型:{match['type']}")
print(f" 金額:{match['amount']} {match['token']}")
print(f" 費用:{match['fee']}")
print(f" 滑點:{match['slippage']}")
ERC-7683:Intent 標準化的重要性
為什麼需要標準化?
在 ERC-7683 出現之前,每個 DeFi 協議都在搞自己的 Intent 定義:
Intent 碎片化問題:
Uniswap 的 Intent:
{ tokenIn: "ETH", tokenOut: "USDC", amountIn: 1, amountOutMin: 3500 }
CoW Protocol 的 Intent:
{ sellToken: "ETH", buyToken: "USDC", sellAmount: 1, buyAmount: 3500 }
0x Protocol 的 Intent:
{ sellAmount: "1000000000000000000", buyToken: "USDC", takerAddress: "0x..." }
Anoma 的 Intent:
{ source: "eth", target: "usdc", amount: 1, constraint: {...} }
問題:
- 開發者要適配多套 API
- Solver 要支持多套協議
- 用戶體驗割裂
- 流動性碎片化
ERC-7683 的目標就是:建立一個統一的 Intent 標準,讓任何 Solver 都能服務任何用戶的 Intent。
ERC-7683 核心定義
// ERC-7683: Intent Standard for Cross-Domain Execution
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.19;
/**
* @title ISPV (Intent Standardization Per-Vendor) Interface
* @notice 這是 ERC-7683 的核心接口定義
*
* 設計理念:
* 1. 最小化:只定義必要的欄位
* 2. 可擴展:允許特定領域的擴展
* 3. 鏈上驗證:Intent 可以在鏈上被驗證和執行
*/
interface IERC7683 {
/**
* @notice 意圖結構
* @member intentHash 意圖的哈希值(用於識別和防偽)
* @member checker 校驗合约地址(用於驗證意圖是否可執行)
* @member data 任意編碼的數據(用於承載具體的交易參數)
*/
struct Intent {
bytes32 intentHash;
address checker;
bytes data;
}
/**
* @notice 意圖報價結構
* @member intentHash 被報價的意圖哈希
* @member solver 提出報價的求解器地址
* @member quoteToken 報價使用的代幣地址
* @member quoteAmount 報價金額
* @member fillDeadline 填充截止時間
*/
struct IntentQuote {
bytes32 intentHash;
address solver;
address quoteToken;
uint256 quoteAmount;
uint256 fillDeadline;
}
/**
* @notice 掛起意圖
* @param intent 意圖結構
*/
function intentDataHash(
bytes32 intentHash,
address checker,
bytes calldata data
) external returns (bytes32);
/**
* @notice 驗證意圖是否可執行
* @param intent 意圖結構
* @return bool 是否可執行
*/
function checkIntent(Intent calldata intent) external view returns (bool);
/**
* @notice 填充(執行)意圖
* @param intent 意圖結構
* @param quote 求解器的報價
* @param signature 用戶簽名(證明意圖確實來自用戶)
*/
function fillIntent(
Intent calldata intent,
IntentQuote calldata quote,
bytes calldata signature
) external;
}
/**
* @title Intent Checker Interface
* @notice 校驗合約接口
*
* 每個 Intent 都需要一個 Checker 合約來驗證:
* 1. 用戶的簽名是否有效
* 2. Intent 的約束條件是否滿足
* 3. 執行後的結果是否達標
*/
interface IIntentChecker {
/**
* @notice 驗證意圖的有效性
* @param intent 意圖結構
* @param data 校驗所需的額外數據
* @return bool 驗證是否通過
*/
function verify(
bytes32 intentHash,
bytes calldata data
) external view returns (bool);
/**
* @notice 執行後驗證
* @param intent 原始意圖
* @param executionData 執行的實際結果
* @return bool 執行是否達標
*/
function verifyExecution(
bytes32 intentHash,
bytes calldata executionData
) external view returns (bool);
}
ERC-7683 的實際應用架構
ERC-7683 應用架構圖:
┌─────────────────────────────────────────────────────────────────────┐
│ 用戶錢包 │
│ Intent:用 1 ETH 換至少 3500 USDC │
│ 簽名:user.sign(intent) │
└─────────────────────────────────────────────────────────────────────┘
↓
↓ Intent + Signature
┌─────────────────────────────────────────────────────────────────────┐
│ Solver 網路 │
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ Solver A │ │ Solver B │ │ Solver C │ │
│ │ 報價: 3520 │ │ 報價: 3515 │ │ 報價: 3510 │ │
│ │ 費用: 0.005 │ │ 費用: 0.003 │ │ 費用: 0.002 │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ ↓ ↓ ↓ │
│ 所有報價提交到 Settlement Contract │
└─────────────────────────────────────────────────────────────────────┘
↓
↓ 結算
┌─────────────────────────────────────────────────────────────────────┐
│ ERC-7683 Settlement Contract │
│ │
│ 1. 驗證所有 Solver 的報價 │
│ 2. 選擇最優報價(最高凈輸出) │
│ 3. 執行交易 │
│ 4. 分發收益 │
│ │
│ 事件日誌: │
│ event IntentFilled( │
│ bytes32 indexed intentHash, │
│ address indexed solver, │
│ uint256 amountOut │
│ ) │
└─────────────────────────────────────────────────────────────────────┘
Solver 網路深度解析
誰是 Solver?它們在做什麼?
Solver 是 Intent 經濟中的核心角色。你可以把它們想像成「專業的交易代理人」——它們競爭用戶的 Intent,承諾以最優方式執行。
"""
Solver 運作模型
"""
class SolverNetwork:
"""
Solver 網路模型
Solver 的核心任務:
1. 接收用戶的 Intent
2. 計算最優執行路徑
3. 報價競爭
4. 執行並承擔風險
"""
def __init__(self, name: str, capital: float, expertise: list):
self.name = name
self.capital = capital # 可用資金
self.expertise = expertise # 擅長領域:["swap", "arbitrage", "lending", "nft"]
self.successful_fills = 0
self.failed_fills = 0
self.total_profit = 0
def calculate_optimal_route(
self,
intent: dict
) -> dict:
"""
計算最優執行路徑
這是 Solver 的核心能力
輸入:Intent (sell_token, sell_amount, buy_token, min_amount)
輸出:ExecutionPlan
可能的執行路徑:
1. 直接 DEX 交換
2. 多跳路由(通過中間代幣)
3. 跨DEX套利(利用價格差異)
4. 與其他 Intent CoW 匹配
5. 使用借貸協議(如需要流動性)
"""
token_in = intent["sell_token"]
token_out = intent["buy_token"]
amount_in = intent["sell_amount"]
min_amount = intent["min_amount"]
# 模擬路由計算
routes = [
{
"path": f"{token_in} → Uniswap V3 → {token_out}",
"output": amount_in * 3500, # 估計輸出
"gas_cost": 0.008, # ETH
"slippage": 0.002,
"execution_risk": 0.05 # 5% 失敗概率
},
{
"path": f"{token_in} → Curve → {token_out}",
"output": amount_in * 3498,
"gas_cost": 0.006,
"slippage": 0.001,
"execution_risk": 0.03
},
{
"path": f"{token_in} → {token_out} (CoW 匹配)",
"output": amount_in * 3502, # CoW 通常更便宜
"gas_cost": 0.002,
"slippage": 0,
"execution_risk": 0.10 # 需要找到匹配的 Intent
},
{
"path": f"{token_in} → WETH → Balancer → {token_out}",
"output": amount_in * 3505,
"gas_cost": 0.012,
"slippage": 0.003,
"execution_risk": 0.02
}
]
# 選擇最優路徑
best_route = max(routes, key=lambda r: r["output"] - r["gas_cost"] * 3000)
return {
"selected_route": best_route,
"all_routes": routes,
"expected_output": best_route["output"],
"net_output": best_route["output"] - best_route["gas_cost"] * 3000,
"execution_probability": 1 - best_route["execution_risk"]
}
def generate_quote(
self,
intent: dict,
market_conditions: dict
) -> dict:
"""
生成報價
Solver 的報價策略:
利潤模型:
Profit = (ExpectedOutput - Fee) - ExecutionCost
問題:
1. 如果報價太高,可能贏不了競爭
2. 如果報價太低,可能虧錢
3. 如果執行失敗,要承擔 Gas 損失
均衡策略:
考慮失敗概率後的期望收益 > 0
"""
route_plan = self.calculate_optimal_route(intent)
# 基礎報價 = 最優執行的期望輸出
base_output = route_plan["expected_output"]
# 風險調整(考慮執行失敗概率)
execution_prob = route_plan["execution_probability"]
risk_adjusted_output = base_output * execution_prob
# 市場競爭調整(如果有其他 Solver 在競爭)
competitive_factor = 0.99 # 假設有競爭,稍微降低報價
# 最終報價
final_output = risk_adjusted_output * competitive_factor
fee = base_output - final_output
return {
"solver": self.name,
"intent_hash": intent.get("hash", "unknown"),
"output_amount": final_output,
"fee": fee,
"fee_percentage": fee / base_output * 100,
"route": route_plan["selected_route"]["path"],
"execution_probability": execution_prob,
"expected_profit": final_output - intent["min_amount"]
}
def execute_intent(
self,
intent: dict,
quote: dict
) -> dict:
"""
執行 Intent
執行流程:
1. 從用戶接收代幣
2. 按照計劃的路徑執行交換
3. 將結果交付給用戶
4. 收取費用
"""
print(f"Solver {self.name} 開始執行...")
# 檢查資金是否足夠
if self.capital < intent["sell_amount"]:
return {"status": "failed", "reason": "資金不足"}
# 模擬執行
try:
# 扣除輸入代幣
self.capital -= intent["sell_amount"]
# 執行交換
output_amount = quote["output_amount"]
# 添加輸出代幣
self.capital += output_amount
# 扣除費用
fee = quote["fee"]
self.capital -= fee
# 更新統計
self.successful_fills += 1
self.total_profit += fee
return {
"status": "success",
"output_amount": output_amount,
"fee_earned": fee,
"remaining_capital": self.capital
}
except Exception as e:
self.failed_fills += 1
return {"status": "failed", "reason": str(e)}
# Solver 網路實例
solver_a = SolverNetwork("AlphaFury", capital=10000, expertise=["swap", "arbitrage"])
solver_b = SolverNetwork("BetaTrader", capital=5000, expertise=["swap", "lending"])
solver_c = SolverNetwork("GammaDex", capital=8000, expertise=["swap", "cow_matching"])
# 模擬 Intent
sample_intent = {
"hash": "0xabcd1234...",
"sell_token": "ETH",
"sell_amount": 1.0,
"buy_token": "USDC",
"min_amount": 3500
}
# 生成報價
quote_a = solver_a.generate_quote(sample_intent, market_conditions={})
quote_b = solver_b.generate_quote(sample_intent, market_conditions={})
quote_c = solver_c.generate_quote(sample_intent, market_conditions={})
print("=== Solver 報價比較 ===")
for quote in sorted([quote_a, quote_b, quote_c], key=lambda x: -x["output_amount"]):
print(f"{quote['solver']}: 輸出 {quote['output_amount']:.2f} USDC, 費用 {quote['fee']:.2f}")
print(f" 路徑: {quote['route']}")
print(f" 執行概率: {quote['execution_probability']*100:.1f}%\n")
# 最優 Solver 執行
best_quote = max([quote_a, quote_b, quote_c], key=lambda x: x["output_amount"])
print(f"選擇 Solver: {best_quote['solver']}")
result = solver_a.execute_intent(sample_intent, best_quote)
print(f"執行結果: {result}")
Solver 的經濟學:為什麼有人願意當 Solver?
Solver 的收益來源:
1. 執行費用(Direct Fee)
- 從用戶的 output 中扣除
- 市場競爭壓低費用率
- 目前行業平均:~0.1-0.3%
2. MEV 收益(MEV Capture)
- 如果 Solver 有能力捕獲 MEV
- 可以報出比競爭對手更高的價格
- 例如:frontrun sandwich attack
3. 規模經濟(Economies of Scale)
- 流動性採購成本更低
- 基礎設施成本攤薄
- 信息優勢
4. 風險溢價(Risk Premium)
- 承擔執行失敗的風險
- 承擔價格滑點的風險
- 承擔智能合約風險
Solver 的成本:
1. 資本成本(Capital Cost)
- 需要自有資金墊付交易
- 資金有機会成本
2. 技術成本(Tech Cost)
- 節點基礎設施
- 路由演算法
- 風險管理系統
3. Gas 成本(Gas Cost)
- 區塊空間競爭
- 在高峰期可能很高
4. 失敗成本(Failure Cost)
- 執行失敗仍需支付 Gas
- 信譽損失
Anoma:意圖驅動架構的另類設計
Anoma 的哲學:讓意圖自己找到對手
Anoma 是另一個致力於 Intent 範式的項目,但它的設計哲學與 CoW Protocol 截然不同。
CoW Protocol 的思路:用戶提交 Intent,Solver 競爭滿足。
Anoma 的思路:讓 Intent 自己找到匹配的另一方。
"""
Anoma 的 Intent 匹配模型
"""
class AnomaIntentMatching:
"""
Anoma 的意圖匹配哲學
核心思想:
1. 每個 Intent 是一個「願望陳述」
2. 系統自動尋找「互相滿足」的 Intent 對
3. 當找到 Coincidence of Wants 時,直接匹配
對比 CoW Protocol:
- CoW 需要批量拍賣窗口
- Anoma 追求實時匹配
"""
def __init__(self):
# Intent 池
self.intent_pool = []
# 匹配圖
self.match_graph = {}
def register_intent(self, intent: dict):
"""
註冊 Intent
Anoma 的 Intent 格式更為豐富:
- 不僅指定「我要換什麼」
- 還可以指定「什麼條件下願意換」
"""
enriched_intent = {
"id": intent["id"],
"assets": {
"give": {intent["give_token"]: intent["give_amount"]},
"want": {intent["want_token"]: intent["want_amount"]}
},
"preferences": {
"timeout": intent.get("timeout", 3600),
"partial_fill": intent.get("partial_fill", False),
"counterparty": intent.get("counterparty", None), # 可指定特定對手方
"geography": intent.get("geography", None), # 可指定地理限制
},
"constraints": intent.get("constraints", [])
}
self.intent_pool.append(enriched_intent)
return enriched_intent
def find_matching_pairs(self) -> list:
"""
尋找匹配的 Intent 對
匹配算法:
1. 構建有向圖
2. 尋找「環」(cycles)
3. 如果形成閉環,則可以匹配
例如:
A: ETH → USDC
B: USDC → BTC
C: BTC → ETH
形成環:A→B→C→A,可以三方交換
"""
graph = {}
# 構建意圖圖
for intent in self.intent_pool:
give_token = list(intent["assets"]["give"].keys())[0]
want_token = list(intent["assets"]["want"].keys())[0]
if want_token not in graph:
graph[want_token] = []
graph[want_token].append(intent["id"])
# 尋找匹配
matches = []
for intent in self.intent_pool:
give_token = list(intent["assets"]["give"].keys())[0]
want_token = list(intent["assets"]["want"].keys())[0]
# 直接匹配
if give_token in graph and graph[give_token]:
for matched_id in graph[give_token]:
matched = self._get_intent_by_id(matched_id)
if self._can_match(intent, matched):
matches.append({
"type": "direct_pair",
"participants": [intent["id"], matched_id],
"swap_pair": (give_token, want_token)
})
return matches
def _can_match(self, intent_a: dict, intent_b: dict) -> bool:
"""檢查兩個 Intent 是否可以匹配"""
a_gives = intent_a["assets"]["give"]
a_wants = intent_a["assets"]["want"]
b_gives = intent_b["assets"]["give"]
b_wants = intent_b["assets"]["want"]
# 檢查是否互相滿足
a_gives_token = list(a_gives.keys())[0]
a_wants_token = list(a_wants.keys())[0]
b_gives_token = list(b_gives.keys())[0]
b_wants_token = list(b_wants.keys())[0]
return (a_gives_token == b_wants_token and
a_wants_token == b_gives_token and
a_gives[a_gives_token] >= b_wants[b_wants_token] and
b_gives[b_gives_token] >= a_wants[a_wants_token])
def _get_intent_by_id(self, intent_id: str) -> dict:
for intent in self.intent_pool:
if intent["id"] == intent_id:
return intent
return None
# Anoma 匹配示例
anoma = AnomaIntentMatching()
# 註冊多個 Intent
intents = [
{
"id": "A",
"give_token": "ETH",
"give_amount": 1.0,
"want_token": "USDC",
"want_amount": 3500
},
{
"id": "B",
"give_token": "USDC",
"give_amount": 5000,
"want_token": "BTC",
"want_amount": 0.05
},
{
"id": "C",
"give_token": "BTC",
"give_amount": 0.05,
"want_token": "ETH",
"want_amount": 1.0
}
]
for intent in intents:
anoma.register_intent(intent)
# 尋找匹配
matches = anoma.find_matching_pairs()
print("=== Anoma Intent 匹配結果 ===")
print(f"找到 {len(matches)} 個匹配")
for match in matches:
print(f" 類型: {match['type']}")
print(f" 參與者: {match['participants']}")
MEV 在 Intent 經濟中的角色
Intent 讓 MEV 問題更複雜
傳統 MEV 的問題是:區塊構建者可以操纵交易順序來提取價值。
Intent 範式引入了一個新的 MEV 攻擊面:Solver 本身可能成為 MEV 的受益者。
Intent + MEV 的組合攻擊:
1. Solver 的信息優勢
- Solver 看到用戶的 Intent(願意接受 3500 USDC)
- 如果市場價格是 3510 USDC,Solver 可以:
a) 如實報價 3510,收取 5 USDC 費用
b) 压低報價到 3505,聲稱市場波動,賺取更多費用
2. Solver 的時機優勢
- Solver 有優先看到 Intent 的機會
- 可以先用自己的資金執行交易
- 然後再滿足用戶的 Intent
3. Solver 的路由優勢
- Solver 決定走哪條路由
- 可以選擇對自己有利的路由(如 sandwich)
- 損失由用戶承擔
4. 串謀風險
- Solver 們可以串謀
- 例如:輪流以最低利潤成交
- 形成實質上的價格卡諦
SUAVE:Flashbots 的 Intent 解決方案
Flashbots 提出的 SUAVE(Single Unifying Auction for Value Expression)是另一個重要的 Intent 架構。
SUAVE 的核心設計:
┌─────────────────────────────────────────────────────────────────────┐
│ SUAVE 網路 │
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ 用戶 Intent │ │ 用戶 Intent │ │ 用戶 Intent │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ ↓ ↓ ↓ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ Preference Bundle │ │
│ │ (用戶的意圖描述 + 願意支付的最高價格) │ │
│ └─────────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ MEV Auction Engine │ │
│ │ (拍賣引擎:決定如何最優分配區塊空間) │ │
│ └─────────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ Block │ │ Block │ │ Block │ │
│ │ Builder A │ │ Builder B │ │ Builder C │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ ↓ │
│ 以太坊區塊確認 │
└─────────────────────────────────────────────────────────────────────┘
實證數據:Intent 經濟的現狀
Intent 市場數據(2026 年 Q1):
1. CoW Protocol:
- 累計交易量:$50 億+
- 日均交易量:$2000 萬
- Solver 數量:15+
- CoW 匹配率:~30%
- 平均費用節省:vs 最佳單一路由 1.2%
2. 0x Protocol:
- Intent API 採用率:快速增長
- 整合的 Solver:10+
- 覆蓋的 DEX:50+
3. 整體 Intent 市場滲透率:
- DEX 交易量的 ~5% 通過 Intent 完成
- 預計 2027 年達到 20-30%
4. 用戶行為變化:
- 對新用戶:學習曲線降低 60%
- 對專業用戶:執行效率提升 15%
- 對 MEV 受害者:損失減少 40%(假設)
批判性分析:Intent 範式的問題
信任假設
Intent 範式有一個根本的信任問題:用戶必須信任 Solver。
這個信任問題表現在:
信任問題清單:
1. Solver 真的會選擇最優執行嗎?
- 理論上,競爭會驅使 Solver 選擇最優路徑
- 現實中,Solver 可能有自己的利益考量
2. Solver 會如實報告價格嗎?
- Solver 可能聲稱「市場波動」压低報價
- 用戶很難驗證
3. Solver 破產了怎麼辦?
- 如果 Solver 在執行前破產
- 用戶的代幣可能損失
4. Solver 作惡了怎麼辦?
- Solver 可能會捲款跑路
- 智能合約可能存在漏洞
安全假設
安全問題清單:
1. 簽名泄漏
- 用戶的 Intent 簽名如果泄漏
- 可能被用於欺騙性執行
2. Front-running
- Intent 在傳播過程中被窃听
- Solver 可能被 MEV 機器人攻击
3. 智能合約風險
- ERC-7683 合約可能有漏洞
- 一旦部署,影響範圍廣
4. 隱私問題
- Intent 暴露了用戶的金融意圖
- 這些數據可以被用於追蹤和監控
結論:Intent 經濟的未來
Intent 範式代表了一次重要的 UX 革命——它讓區塊鏈應用從「命令式」轉向「聲明式」,極大地降低了用戶的認知負擔。
但這一切才剛開始。
從我的觀察來看,Intent 經濟的發展會經歷三個階段:
Intent 經濟發展階段:
階段 1:基礎設施建設(2024-2026)
├── ERC-7683 標准採用
├── CoW Protocol 等協議成熟
├── 主要 DEX 整合 Intent API
└── Solver 網路初步形成
階段 2:應用爆發(2026-2028)
├── Intent 錢包普及
├── 跨鏈 Intent 實現
├── AI Agent 大量使用 Intent
└── DeFi 80% 交易通過 Intent 完成
階段 3:協議戰爭(2028+)
├── 誰控制了 Solver 網路
├── 誰就控制了 DeFi 的流量入口
├── 類似於 Google 對搜索引擎的控制
└── 監管開始關注 Intent 平台
我的個人觀點是:Intent 經濟最終會演變成另一個「平台戰爭」。就像 2010 年代的移動應用商店之爭一樣,未來 10 年我們會看到 Intent 聚合器之間的激烈競爭。
現在的贏家(CoW Protocol、0x、Anoma 等)不一定是最終的贏家。真正決定勝負的,是誰能建立最廣泛的 Solver 網路、最有效的定價機制、以及最安全的用戶體驗。
至於 MEV 問題⋯⋯坦白說,我認為 Intent 範式不會解決 MEV,只會把 MEV 的戰場從「用戶 vs 機器人」轉移到「Solver vs 機器人」。結果是:普通用戶的處境會改善,但遊戲的複雜度不會降低。
區塊鏈的世界從來都是聰明人的戰場。Intent 只不過是換了一個讓聰明人玩的遊戲。
參考資料:
- ERC-7683 規范:https://eips.ethereum.org/EIPS/eip-7683
- CoW Protocol 白皮書:https://docs.cow.fi
- Anoma 白皮書:https://anoma.net/papers
- Flashbots SUAVE:https://writings.flashbots.net/the-future-of-mev-is-suave
- Vickrey拍賣理論(1961):William Vickrey, "Counterspeculation, Auctions, and Competitive Sealed Tenders"
免責聲明:本文為深度技術分析,內容涉及複雜的經濟模型和機制設計。Intent 經濟仍處於早期發展階段,相關數據和預測僅供參考,讀者應自行判斷其準確性和適用性。
資料截止日期:2026 年 3 月
相關文章
- NFT-Fi 完整指南:非同質化代幣金融化與資產活化深度分析 — NFT-Fi 代表著 NFT 資產與 DeFi 協議的深度融合,是 2024 年以來區塊鏈領域最具創新性的發展方向之一。不同於傳統 NFT 市場僅專注於資產的「鑄造」與「交易」,NFT-Fi 旨在釋放 NFT 資產的金融潛力,將這些獨特的數位資產引入借貸、衍生品、收益優化、保險等傳統金融場景。截至 2026 年第一季度,NFT-Fi 市場總鎖定價值(TVL)已突破 25 億美元,涵蓋 NFT 借貸協議、收益 NFT、碎片化 NFT、NFT 衍生品等多個細分賽道。本文深入解析 NFT-Fi 的技術架構、經濟模型、主要協議與應用,並提供詳盡的風險分析與投資框架。
- SUAVE 去中心化排序器完整指南:從 Flashbots SUAVE 到以太坊 MEV 基礎設施的下一個十年 — SUAVE(Shared Sequencer / Universal Adjustable Validation Engine)是 Flashbots 提出的下一代 MEV 基礎設施,旨在將區塊排序權力去中心化。本文深入分析 SUAVE 的核心設計:意圖層、拍賣層、執行層的完整架構,以及跨鏈 MEV 收益共享的經濟模型。涵蓋 MEV 基礎知識、Flashbots MEV-Boost 的演進、SUAVE 與 L2 排序器的整合、以及對普通用戶和開發者的實際影響。
- 以太坊 AI Agent 自動化操作完整指南:2025-2026 年自主代理系統從架構設計到實際部署 — 人工智慧代理(AI Agent)與區塊鏈技術的融合正在重塑去中心化金融的運作方式。本文專注於 AI Agent 在以太坊生態系統中的實際應用,提供從技術架構設計到完整部署流程的實戰指南。涵蓋感知層、推理層、規劃層、執行層、記憶層的完整架構設計,提供自主理財代理、套利機器人(三角套利、DEX 價格監控)、治理投票代理等主要應用場景的完整程式碼範例。同時深入探討 MEV 保護、風險管理和安全最佳實踐。
- 以太坊 AI 代理完整技術指南:自主經濟代理開發與實作 — 人工智慧代理與區塊鏈技術的結合正在開創區塊鏈應用的新範式。本文深入分析以太坊 AI 代理的技術架構、開發框架、實作範例與未來發展趨勢,涵蓋套利策略、借貸清算、收益優化、安全管理等完整技術實作。
- 以太坊預測市場完整技術指南:2026 年去中心化預測協議架構、結算機制與實際應用深度解析 — 預測市場是以太坊 DeFi 生態中最具商業價值的垂直領域之一。本文深入分析 Polymarket、Augur、Gnosis Protocol 等主流預測市場協議的技術架構、Conditional Tokens 標準、結算機制、Oracle 整合、以及風險管理框架。涵蓋完整的 Solidity 智慧合約範例、預言機安全設計、以及美國、歐盟、亞洲各司法管轄區的合規策略。同時探討 AI Agent 在預測市場中的應用前景。
延伸閱讀與來源
- 以太坊基金會生態系統頁面 官方認可的生態項目列表
- The Graph 去中心化索引協議
- Chainlink 文檔 預言機網路技術規格
這篇文章對您有幫助嗎?
請告訴我們如何改進:
評論
發表評論
注意:由於這是靜態網站,您的評論將儲存在本地瀏覽器中,不會公開顯示。
目前尚無評論,成為第一個發表評論的人吧!