Documentation Index
Fetch the complete documentation index at: https://docs.raydium.io/llms.txt
Use this file to discover all available pages before exploring further.
本頁內容由 AI 自動翻譯,所有內容以英文版本為準。查看英文版 →
兩個不同的概念
在使用者介面中,價格衝擊和滑點經常被混淆,但它們指的是不同的東西。-
價格衝擊是對特定流動性池狀態進行交易時具有確定性的屬性。給定
(Δin, reserves),價格衝擊在提交交易之前是完全可計算的。 - 滑點是你在報價時預期的價格與在執行時實際獲得的價格之間的差異。它是延遲、並發交易和區塊包含順序的函數——而不是流動性池數學的函數。
正式定義
價格衝擊
impact ≈ 2 · Δin / reserve_in(小額交易)。對於 CLMM:取決於交易穿過多少個 tick;通常在當前 tick 範圍內保持平穩,在每個 tick 跨越時跳躍。
實現的滑點
設定 minAmountOut 和 maxAmountIn
每次 Raydium 交換都需要一個滑點保護邊界:
SwapBaseInput(amount_in, min_amount_out)— 精確輸入,下限輸出。SwapBaseOutput(max_amount_in, amount_out)— 精確輸出,上限輸入。
minAmountOut 是低於交易前現貨價格 2.5%——基本上是衝擊和容限的總和。
推薦的滑點容限
沒有單一正確的數字;正確的邊界取決於:- 交易對穩定性。 穩定幣對穩定幣流動性池可以安全地使用 0.1%。波動的迷因代幣對通常需要 3–5% 才能可靠地確認。
- 交易大小。 較大的交易有較大的價格衝擊,所以容限需要隨之擴大以避免交易回退。SDK 的自動滑點預設值大約是
max(0.5%, 2 × price_impact)基於這個原因。 - 區塊包含延遲。 在記憶池中停留多個區塊的交易面臨更多並發交易。Jito 套件和優先費用可以減少這個問題。
| 交易對類型 | 預設容限 |
|---|---|
| 穩定幣-穩定幣(USDC-USDT、USDC-USDS) | 0.1% |
| 穩定幣-主流(USDC-SOL、USDC-BTC) | 0.5% |
| 主流-主流(SOL-BTC、SOL-ETH) | 1% |
| 波動性(迷因代幣、流動性不足的長尾) | 3–5% |
不同 AMM 類型的差異
CPMM
價格衝擊是平滑且連續的(閉式2 · Δin / reserve_in)。滑點容限隨著交易大小線性縮放。
AMM v4
與 CPMM 相同的曲線數學,但「有效準備金」包括流動性池的 OpenBook 掛單。實際上這意味著:- 根據原始金庫餘額進行報價低估了準備金,因此高估了衝擊。
- SDK 取得
AmmInfo並彙總vault + on_book.free + on_book.locked以獲得正確的數字。 - 過時的 OpenBook 狀態(crank 被阻擋)可能導致報價衝擊與鏈上現實發生分歧。聚合器通常在大型 AMM-v4 交易前進行 pre-crank(無權限
MonitorStep)。
CLMM
價格衝擊是分段的。在當前 tick 範圍內,衝擊大約與Δin / L 成線性關係。穿過 tick 邊界可以離散地改變 L,導致邊際價格突然跳躍。穿過多個稀疏分佈 tick 的交易可能有遠高於 2 · Δin / reserve 經驗法則所建議的衝擊。
SDK 的 CLMM 報價確定性地迭代交換步驟以返回精確的預期 amountOut,所以 minAmountOut = amountOut · (1 − slippage) 是正確的。但priceImpact 返回值應被解釋為「交易前現貨與交易後現貨之間的價差」,在 CLMM 上可能遠大於交換對只關心 amount_out 的使用者的有效滑點。
LaunchLab 曲線
類似於 CPMM,但具有非對稱曲線(二次或虛擬準備金)。隨著曲線在畢業時變陡,後期買家的衝擊增長更快。購買者 UI 應在一筆交易預期將曲線推動超過約 5%quote_reserve_target 時警告。
MEV 考慮
在 Solana 上,對交換的 MEV 提取主要以三明治攻擊的形式出現:機器人在你的交易後放置後置交易,在同一槽位還放置前置交易。你的交易以比沒有三明治更差的價格填充;後置交易捕獲差額。 緩解措施:- 緊密的
minAmountOut。 激進的滑點邊界導致受害交易在受到重度三明治攻擊時回退,保護資金(但浪費 gas)。在 Solana 上這是標準做法——拒絕很便宜。 - Jito 套件。 通過 Jito 以捆綁費用提交排除中間人重新排序你的交易。套件作為原子區塊著陸。
- 優先費用。 高優先費用增加你的交易在當前領導者區塊中著陸的機率,在三明治製造者反應之前。不如套件強大,更標準。
- 私有 RPC。 通過私有 RPC(或透過驗證人的直接端點)提交減少記憶池三明治製造者觀察你的交易的時間視窗。
integration-guides/routing-and-mev。
多跳路由的滑點
當交換透過多個流動性池路由時(例如USDC → SOL → RAY),滑點容限應按每跳應用,而不是僅在端到端應用:
raydium.trade.swap 時自動應用每跳邊界。對於自訂路由器,複製該模式。
向使用者報告
良好交換 UI 的經驗法則:- 分別顯示預期價格衝擊和滑點容限。
- 當價格衝擊超過約 2% 時高亮——「高衝擊」警告。
- 當價格衝擊超過容限時高亮——交易幾乎肯定會回退。
- 對於波動對,提供「高滑點模式」來放鬆邊界並顯示更強的警告。
指針
products/cpmm/math、products/amm-v4/math、products/clmm/math— 每種流動性池類型的衝擊推導。integration-guides/routing-and-mev— 多跳路由 + MEV 防禦。integration-guides/priority-fee-tuning— 調整優先費用以減少滑點。
- Raydium SDK v2 滑點/衝擊實現。
- Flashbots / Jito on Solana MEV。


