すべての投稿
ガイド

Solanaのスリッページ設定|数字の決め方

スリッページ設定はプールの深さと注文の大きさで決まります。シナリオ別の目安、経路ごとの数字、複数ウォレットで一つの上限を使うときの考え方。

13 分で読めます J Tools Editorial
スリッページ設定の記事に添えたイラスト。Solanaのスワップで価格の許容幅を決める場面を表している

スリッページ設定を狭くしすぎると、スワップはチェーン上で失敗します。手数料だけ払って、トークンは届きません。

逆に広げすぎると、プールを見張るボットがその余白を取りにきます。Jupiterの「Auto」は直近の値動きを見た推測で、注文の大きさもボットの数も知りません。適切な値は、プールに対する注文の大きさ、最近の値動き、ボットの圧力から決まるので、スリッページ設定は取引のたびに引き直す数字になります。Solanaの複数ウォレット一括スワップのように一つの上限を全ウォレットへ当てる場面では、なおさらです。

スリッページ設定とは何か

スリッページは、スワップが自動で取り消されるまでに許す価格の振れ幅です。絞れば条件は厳しくなり、緩めれば通りやすくなる代わりに、悪い値段で約定しやすくなります。

混同されやすいのが価格インパクトです。こちらは自分の注文がプールに与える動きで、署名の前から画面に出ます。スリッページはその外側、見積もりから約定までの余白です。だからスリッページ設定は「価格インパクト+少しの余裕」で決めます。余裕は厚いSOL/USDCで0.1〜0.2%、新しいミームコインで2〜5%です。

判定が走るのはチェーン上で、ウォレットの画面ではありません。Solana公式のトランザクションの解説のとおり、取引は全体として成功するか取り消されるかで、手数料はどちらでも引かれます。

狭すぎれば失敗し、広すぎればボットが来る

値動きの速いトークンに0.1%を指定したとします。見積もりから実行までの0.5秒で価格が0.12%ずれれば、下限が割れて取り消されます。痛いのは手数料ではなく、逃した値動きです。

反対側も高くつきます。5%まで開けて50 SOL分のUSDC買いを送ると、ボットが先回りして買い、押し上げた価格で約定させ、直後に売り抜けます。上限は越えていないので、チェーン上では成功と記録されます。

サンドイッチのボットは、上限の広い大口を探しています。厚いペアに5%で出すのは、取りに来てくれと知らせるようなものです。50%は「いくらでもいいから約定してくれ」という合図で、どんな場面でも正解にはなりません。

プールの深さが数字を決める

流動性の深さを描いた図。左の広い漏斗は琥珀色の液体をなめらかに通し、右の細い漏斗はあふれていて、厚いプールと薄いプールの違いを表している

「どれだけの損を受け入れるか」ではなく、「注文がこのプールの価格をどれだけ動かすか」が先です。注文がプールの1%なら価格インパクトは小さく、上限も絞れます。10%分を買うなら、注文だけで価格が少なくとも10%上がります。上限がその分を含まなければ取引は失敗するので、深さを読むことがスリッページ設定の出発点です。

大きな注文の前にSolanaのホルダースナップショットで保有の偏りを見て、流動性の追加と引き出しのツールで今の厚みを読みます。詳しい見方は流動性プールの深さとリスクの読み方にまとめました。

シナリオ別のスリッページ設定

下の数字は運用者の目安で、規則ではありません。画面の価格インパクトも一緒に読みます。

場面目安理由
ステーブル同士(USDCとUSDT)0.1%〜0.3%厚く、値動きがほぼない
SOL/USDCの小口から中口0.5%〜1%厚いが、サンドイッチの圧力は無視できない
SOLと中堅トークン(JTOなど)1%〜2%流動性はあるが、価格は動く
SOLと定着したミーム(BONKやWIF)2%〜5%値動きが大きく、厚みは中くらい
SOLとPump.fun卒業直後のミーム5%〜15%薄く、分単位で大きく振れる

同じ日の二つの取引で考えます。一つ目は200ドル分のUSDCをUSDTに替える取引です。プールは巨大で、スリッページ設定を1%にすると素直に通り、実際の価格差は0.05%ほどでした。

二つ目は薄いプールの新しいミームコインに、同じ1%を指定した取引です。見積もりからスワップまでに価格が5%動き、取り消されました。同じ数字で結果は正反対で、このときは10%ほどが必要でした。単独のウォレットなら、Solanaのスワップツールがスリッページの欄を見せるので、Autoに任せず手で入れられます。

経路で変わるスリッページ設定

同じトークンでも、注文がどこで約定するかで数字は変わります。価格の決まり方が違うからです。

経路価格の決まり方最初の目安5 SOLの買いでの動き
RaydiumなどのAMMプール二つの残高の比(x × y = k)厚いプールで0.5%〜1%、薄いプールで3%〜8%SOL側が約500 SOLなら約1%、約60 SOLなら約8%
Jupiterのルーター注文を複数のプールへ分ける中口は0.3%〜1%三つに分かれると合計で約0.5%
Pump.funのボンディングカーブ買うたびに次の価格が上がる5%〜15%新しい曲線では5 SOLで約8%〜12%

5 SOLで同じトークンを買うとします。厚いRaydiumのプールなら見積もりに近い価格で約定して1%で足り、Jupiterを通すと注文が分割されるので0.5%でも通ります。違いはJupiterとRaydiumとOrcaの使い分けで比べました。

ただしルーターは直前に経路を組み替えることがあり、見積もりはずれます。許容値をゼロにしてはいけないのはそのためで、この値の定義はJupiterの開発者向けドキュメントにあります。ボンディングカーブ上のコインなら、5 SOLの買いだけで価格が上がり、同じブロックで先に入った買いがすでに押し上げています。卒業後は通常のプールへ移ります。その取引はPumpSwapでの卒業後の取引にまとめました。

Autoモードと「0.5%で足りる」という話

JupiterのAutoは直近の値動きから数字を選びます。厚いプールでは妥当ですが、移行したばかりのミームコインでは、本当の価格インパクトが2%のときでも5%から15%へ跳ね上がりがちです。広すぎる上限は、サンドイッチの格好の的です。

Discordで回る「0.5%で全部いける」も、似た落とし穴です。成り立つのは、厚いプールでMEV保護のある経路を通る、平均的な額のSOL/USDCだけです。ミームコインでは失敗し、10万USDCの買いでは注文自体の価格インパクトが0.5%を超えているかもしれません。複数ウォレットなら、後半のウォレットの半分が失敗します。

取引の前に三つ自問します。プールのどれだけを取るのか、ボットの圧力はどれくらいか、いくつのウォレットを走らせるのか。スリッページ設定はその答えから出ます。

多数のウォレットに、一つの上限

複数ウォレットの約定を描いた図。手前のウォレットは明るく、後ろへ行くほど暗くなり、その下を左から右へ上がる価格の線が走っている

200個のウォレットが同じトークンを狙うローンチを考えます。複数ウォレットのスワップ実行は、一つのスリッページ設定を全ウォレットに当てます。1番目と200番目の間でプールは動くので、1番目に合わせて絞れば200番目は失敗し、200番目に合わせて広げれば、1番目を狙うボットに機会を渡します。

手は二つです。最後のウォレットに合わせ、前半のウォレットが少し高く買うのを受け入れるか、実行を2〜3回に分け、そのつど今のプールから引き直すかです。同じブロックで買うならまとめて送るバンドル取引が注文を一つのバンドルに詰め、先回りのボットが使える隙間を狭くします。ボットが新しいトークンを狙う仕組みはスナイパーボットの仕組みにまとめました。

「スリッページ許容値を超えました」と出たとき

Phantomがこの警告を出したなら、見積もりと約定のあいだに価格が下限を割っただけです。保護が働いた合図で、不具合ではありません。原因は三つです。

  1. 薄く値動きの速いプール。新しいトークンは1ブロックで数%動きます。
  2. 古い見積もり。確認画面で考えているあいだに、プールは先へ動きます。
  3. 手数料のSOL不足。別の失敗ですが、漠然とした警告に見えることがあります。

直し方は「50%にする」ではありません。上限を一段ずつ上げてプールに合わせ、見積もりを取り直します。一つのブロックで通したい注文なら、アトミックな実行で見積もりと約定の間を詰めます。

スリッページ設定のよくある質問

1%と5%、どちらにすべきですか?

規則ではなくプールで決まります。厚くて出来高のあるペアなら0.5%から1%で通ります。新しい薄いトークンでは1%は失敗を繰り返し、現実的な幅は3%から5%です。5%より上でしか通らないなら、注文を小さくします。

Autoに任せても安全ですか?

厚いプールの普通の取引なら、たいてい妥当な値です。危ないのは値動きの大きいトークンで、本当の価格インパクトよりずっと広い上限が入り、サンドイッチの的になります。

複数ウォレットの実行ではどう決めますか?

上限は全ウォレットに同じものが当たり、順番に約定するあいだ価格はずれるので、最後のウォレットがいちばん悪い価格に当たります。その最後に合わせるか、2〜3回に分けて上限を引き直します。

スリッページと価格インパクトはどう違いますか?

価格インパクトは自分の注文がプールに与える動きで、署名の前に分かります。スリッページは見積もりから約定までの余白です。価格インパクトが2%の注文に0.5%を指定すれば、ボットが関わる前に失敗します。

スワップが何度も失敗するのはなぜですか?

三つのどれかです。プールが薄く値動きが速い、見積もりが古い、手数料のSOLが足りない。最初の二つは上限と見積もりの見直しで直ります。

上げすぎると何が起きますか?

取引は通りますが、通り方が悪くなります。広い上限は、先回りするボットに使える余白をそのまま渡します。50%もの幅は要りません。

スリッページ設定は毎回の判断

スリッページ設定に唯一の正解はなく、取引ごとに決め直します。毎回決める優先手数料はSolanaの優先手数料はいくら払うか、厚みと値動きの見方はDexScreenerの読み方にあります。

J
著者
J Tools Editorial

J Toolsチームからの投稿

J Tools Editorial のすべての投稿を見る →

関連投稿