ตั้งค่า slippage บน Solana เลือกตัวเลขให้ถูกกับพูล
ตั้งค่า slippage แคบไปสวอปย้อนกลับ กว้างไปบอทแซนด์วิชเก็บส่วนต่าง วิธีเลือกตัวเลขจากความลึกของพูล เส้นทาง และจำนวนกระเป๋าเงินที่รันพร้อมกัน

เวลาจะกดสวอปบน Solana มีตัวเลขอยู่ตัวเดียวที่ต้องตัดสินใจเอง ถ้าตั้งค่า slippage แคบเกินไป ธุรกรรมจะย้อนกลับบนเชน เสียค่าธรรมเนียมเครือข่ายฟรี ๆ โดยไม่ได้โทเคน ถ้ากว้างเกินไป บอทที่เฝ้าพูลอยู่จะเก็บส่วนต่างไปแทน
ประโยคที่ลอกกันมาจาก Discord ว่า 0.5% ใช้ได้ทุกกรณี เป็นทางเลือกที่มักง่ายทันทีที่ออกนอกคู่ SOL/USDC การตั้งค่า slippage ที่ถูกต้องมาจากสามอย่าง ขนาดคำสั่งเทียบกับพูล ความผันผวนของโทเคนช่วงที่ผ่านมา และแรงกดดันจากบอทบนพูลนั้น
บทความนี้ไล่ตั้งแต่ slippage กันอะไรได้จริง ตัวเลขไหนเหมาะกับโทเคนแบบไหน ไปจนถึงเหตุผลที่เพดานค่าเดียวแทบไม่เคยช่วยทุกใบในเครื่องมือสวอปหลายกระเป๋าเงิน
slippage คืออะไร และต่างจาก price impact ตรงไหน
slippage คือช่วงราคาที่ยอมให้ขยับได้ก่อนที่สวอปจะยกเลิกตัวเองอัตโนมัติ เหมือนบอกไว้ว่าจะซื้อขนมปังที่ 3 ดอลลาร์ แต่ถ้าเกิน 3 ดอลลาร์ 30 เซนต์เมื่อไรให้ยกเลิก ยิ่งแคบยิ่งคุมราคาเข้ม ยิ่งกว้างยิ่งมีโอกาสได้ของ แลกกับความเสี่ยงที่จะจับได้ราคาแย่ลง
ไม่ว่าจะสวอปบน Jupiter, Raydium, Orca หรือ Meteora เพดานนี้แสดงเป็นเปอร์เซ็นต์บนหน้าจอ ถ้าจำนวนโทเคนที่จะได้รับต่ำกว่าพื้นที่ตั้งไว้ ให้ยกเลิกทั้งรายการ เอกสารทางการของ Solana เรื่องธุรกรรม เขียนสองเรื่องนี้ไว้คู่กัน ธุรกรรมสำเร็จหรือย้อนกลับทั้งก้อน และค่าธรรมเนียมถูกหักทั้งสองทาง
คนมักสับสนกับ price impact แต่สองคำนี้ตอบคนละคำถาม price impact คือสิ่งที่คำสั่งของคุณเองทำกับพูล คำนวณล่วงหน้าได้ก่อนเซ็น ส่วน slippage คือกันชนเผื่อทุกอย่างที่อยู่นอกการควบคุม ระหว่างวินาทีที่เห็นราคาเสนอกับวินาทีที่ธุรกรรมลงเชน
สูตรคร่าว ๆ คือ slippage เท่ากับ price impact บวกส่วนเผื่ออีกนิด ขนาดของส่วนเผื่อขึ้นกับสนาม คู่ SOL/USDC ที่ลึกใช้ 0.1% ถึง 0.2% ก็พอ ส่วนมีมคอยน์ที่เพิ่งออกอาจต้องเผื่อถึง 2% ถึง 5%
การตรวจนี้เกิดบนเชน ไม่ใช่บนหน้าจอกระเป๋าเงิน อะไรก็ตามที่ทำให้ราคาขยับระหว่างตอนเห็นราคาเสนอกับตอนที่ธุรกรรมลงเชน ล้วนกินโควตาที่ตั้งไว้
แคบไปคือย้อนกลับ กว้างไปคือบอทแซนด์วิช
สมมติตั้ง slippage ไว้ที่ 0.1% กับโทเคนที่วิ่งเร็ว ครึ่งวินาทีระหว่างราคาเสนอกับการลงเชน ราคาขยับไป 0.12% พื้นที่ตั้งไว้พังและสวอปถูกยกเลิก ต้นทุนจริงไม่ใช่ค่าธรรมเนียม แต่คือจังหวะที่หลุดมือ ถ้าอีกสองนาทีราคาวิ่งขึ้นอีก 8% เวลาที่หมดไปกับการปรับตัวเลขก็คือไม้ที่เสียไปทั้งไม้
อีกด้านก็แพงพอกัน เปิด slippage ไว้ 5% แล้วส่งคำสั่งซื้อด้วย 50 SOL บอทที่เฝ้าพูลจะอ่านคำสั่งของคุณก่อน มันเข้าซื้อดันราคาขึ้นนำหน้า ปล่อยให้สวอปของคุณจับที่ราคาที่ถูกดันแล้ว จากนั้นขายทิ้งทันทีและเก็บส่วนต่างไป บนเชนรายการของคุณขึ้นว่าสำเร็จ เพราะราคาไม่เคยข้ามเพดานที่ตั้งไว้
บอทแซนด์วิชไล่ล่าคำสั่งก้อนใหญ่ที่เปิด slippage กว้างเป็นพิเศษ ส่งคำสั่งใหญ่บนคู่ที่ลึกอย่าง SOL/USDC ด้วยเพดาน 5% เท่ากับประกาศว่ามีกำไรรออยู่ตรงนี้ บนพูลที่ลึกให้คุมเพดานไว้แคบ และอย่าดัน slippage ขึ้นไปที่ 50% ค่านั้นแปลว่าจับที่ราคาไหนก็ได้ และไม่เคยเป็นคำตอบที่ถูกในสถานการณ์จริงสักแบบ
ความลึกของพูลเป็นตัวกำหนดตัวเลข

อย่าอ่าน slippage ว่ายอมขาดทุนได้เท่าไร คำถามจริงคือคำสั่งของคุณจะดันราคาบนพูลนี้ไปเท่าไร ถ้าคำสั่งซื้อคิดเป็น 1% ของเงินในพูล price impact จะเล็กและตั้งเพดานแคบได้ ถ้ากินไป 10% ของพูล เส้นโค้งราคาจะดันขึ้นอย่างน้อย 10% จากคำสั่งของคุณคนเดียว เพดานต้องครอบส่วนนั้นให้ได้
ก่อนคำสั่งก้อนใหญ่ การเปิดดูความลึกและการกระจายผู้ถือเร็วกว่าการเดาตัวเลขเอาเอง เครื่องมือสแนปช็อตผู้ถือโทเคน แสดงการกระจายของผู้ถือ ส่วน เครื่องมือเพิ่มและถอนสภาพคล่อง อ่านความลึกของพูลตามสถานะปัจจุบัน ถ้าคำว่าความลึกยังใหม่อยู่ ลองอ่านวิธีอ่านความลึกของ liquidity pool บน Solanaก่อน
ตั้งค่า slippage ตามสถานการณ์
ตัวเลขข้างล่างเป็นความเห็นจากการใช้งานจริง ไม่ใช่กฎของโปรโตคอล ให้อ่านคู่กับ price impact ที่ขึ้นสดบนหน้าจอเสมอ
| สถานการณ์ | slippage ที่แนะนำ | เหตุผล |
|---|---|---|
| stablecoin ต่อ stablecoin (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% | พูลบางมากและเหวี่ยงแรงในระดับนาที |
ถ้าเข้าด้วยกระเป๋าเงินใบเดียว เครื่องมือสวอปกระเป๋าเงินเดียว เปิดช่อง slippage ให้พิมพ์ตัวเลขเองแทนการปล่อยให้ Auto เลือก และถ้าเส้นทางมีขา wSOL อยู่ด้วย เครื่องมือแปลง wSOL ห่อ SOL ให้ก่อน จะเหลือการตรวจ slippage รอบเดียวแทนสองรอบ
เส้นทางกำหนดตัวเลขมากกว่าตัวโทเคน
โทเคนตัวเดียวกันอาจต้องใช้ตัวเลขต่างกันสามแบบ ขึ้นกับว่าคำสั่งไปจับที่ไหนจริง ๆ แต่ละเส้นทางตั้งราคาด้วยกลไกคนละอย่าง ค่าที่สมเหตุสมผลบนเส้นทางหนึ่งจึงกลายเป็นความประมาทบนอีกเส้นทางหนึ่ง
| เส้นทาง | ราคาถูกกำหนดอย่างไร | slippage เริ่มต้น | ผลกระทบคร่าว ๆ ของคำสั่งซื้อ 5 SOL |
|---|---|---|---|
| พูล AMM อย่าง Raydium | อัตราส่วนของสินทรัพย์สองฝั่ง (x คูณ y เท่ากับ k) | พูลลึก 0.5% ถึง 1% พูลบาง 3% ถึง 8% | ราว 1% ถ้าฝั่ง SOL มีประมาณ 500 SOL และราว 8% ถ้ามีประมาณ 60 SOL |
| เราเตอร์ Jupiter | ซอยคำสั่งกระจายไปหลายพูล | 0.3% ถึง 1% สำหรับคำสั่งขนาดกลางส่วนใหญ่ | ถ้าซอยไปสามพูล ผลกระทบรวมอาจลดเหลือราว 0.5% |
| bonding curve ของ Pump.fun | ทุกคำสั่งซื้อดันราคาถัดไปให้สูงขึ้น | 5% ถึง 15% | บน curve ที่เพิ่งเปิด 5 SOL ดันได้ราว 8% ถึง 12% |
ไล่ตัวอย่างเดียวให้จบ ซื้อด้วย 5 SOL ผ่านพูล Raydium ที่ลึก 1% สบาย ผ่าน Jupiter คำสั่งถูกซอยจนผลกระทบที่แสดงลดลง 0.5% ก็ยังจับได้ แต่ถ้าเส้นทางเปลี่ยนวินาทีสุดท้าย ตัวประมาณจะคลาด จึงอย่าตั้งค่า slippage ไว้ที่ศูนย์
ส่วนเหรียญที่ยังอยู่บน bonding curve 5 SOL ก้อนเดิมดันราคาขึ้นด้วยตัวมันเอง ตั้งแคบกว่าผลกระทบของเส้นโค้งเองมักจบที่การย้อนกลับ ยิ่งคำสั่งที่เข้าก่อนคุณในบล็อกเดียวกันไต่เส้นโค้งขึ้นไปแล้วด้วย พอเหรียญจบ curve มันจะย้ายไปพูลปกติ ซึ่งเหรียญที่จบ curve แล้วไปเทรดบน PumpSwapอธิบายไว้ ส่วนความต่างของแต่ละเส้นทางอยู่ในการเทียบ Jupiter, Raydium และ Orca
โหมด Auto กับกับดัก 0.5% ใช้ได้ทุกที่
โหมด Auto ของ Jupiter อ่านความผันผวนล่าสุดแล้วเลือกค่า slippage ให้ บนพูลลึกและคู่ stablecoin ค่าที่ได้มักสมเหตุสมผล ปัญหาอยู่ที่มีมคอยน์ที่เพิ่งย้ายมา Auto มักกระโดดไปช่วง 5% ถึง 15% ทั้งที่ price impact จริงของคำสั่งอยู่แค่ 2% เพดานกว้างขนาดนั้นทำให้คุณกลายเป็นเป้าแซนด์วิชที่น่าสนใจในเชิงตัวเลข
สิ่งที่ Auto ไม่รู้มีสองอย่าง ขนาดคำสั่งของคุณ และความหนาแน่นของบอทบนพูลนั้น คนที่เทรดเองจึงมักตั้งได้ดีกว่า ส่วนวิธีที่บอทจ้องโทเคนใหม่อธิบายไว้ในsniper bot กับการสไนป์โทเคนใหม่
ประโยคที่ว่า 0.5% ใช้ได้ทุกที่ ก็เข้าข่ายเดียวกัน กรณีเดียวที่มันจริงคือสวอป SOL/USDC ขนาดกลาง บนพูลลึก ผ่านเส้นทางที่ป้องกัน MEV นอกจากนั้นแทบพังทุกที่ บนมีมคอยน์ 0.5% ย้อนกลับ บนคำสั่งซื้อ 100K USDC ลำพัง price impact เองก็อาจเกิน 0.5% ไปแล้ว และบนการรันหลายกระเป๋าเงิน ใบท้าย ๆ ย้อนกลับไปครึ่งหนึ่ง
ก่อนเทรดแต่ละครั้งให้ถามตัวเองสามข้อ คุณกินพูลไปกี่เปอร์เซ็นต์ พูลนี้มีแรงกดดันจากบอทแค่ไหน และคุณรันกระเป๋าเงินกี่ใบ คำตอบสามข้อนี้คือที่มาของการตั้งค่า slippage ที่เหมาะกับไม้นั้น
หลายกระเป๋าเงิน เพดานเดียว

นึกภาพการเปิดตัวที่มีกระเป๋าเงิน 200 ใบพุ่งเข้าหาโทเคนตัวเดียวกัน ตัวจัดคิวสวอปหลายกระเป๋าเงิน รับเพดาน slippage ค่าเดียวแล้วใช้กับทุกใบในรอบนั้น กับดักคือพูลขยับระหว่างใบที่หนึ่งกับใบที่สองร้อย
ตั้งแคบพอให้ใบแรกจับสวย ใบที่สองร้อยจะย้อนกลับ ตั้งกว้างพอให้ใบที่สองร้อยรอด ก็เท่ากับยกโอกาสแซนด์วิชให้บอทที่รออยู่หน้าใบแรก ทางออกมีสองทาง ออกแบบเพดานจากใบท้ายสุดแล้วยอมให้ใบแรก ๆ จ่ายแพงขึ้นนิดหน่อย หรือซอยรอบเป็นสองถึงสามชุด แล้วตั้งค่า slippage ใหม่จากพูลสดทุกชุด
ถ้าต้องซื้อโทเคนเดียวกันจากหลายกระเป๋าเงินภายในบล็อกเดียว เครื่องมือเทรดแบบบันเดิล อัดคำสั่งทั้งหมดเป็นบันเดิลเดียว ช่องเวลาที่บอทฟรอนต์รันใช้ได้จึงหดลง
ทำไมถึงขึ้นว่า slippage tolerance exceeded
เมื่อ Phantom ขึ้นข้อความ slippage tolerance exceeded แปลว่าราคาผ่านพื้นที่ตั้งไว้ไปแล้ว ระหว่างราคาเสนอกับตอนที่ธุรกรรมลงเชน สวอปทำตามที่สั่งไว้เป๊ะ มันยกเลิกเพื่อกันไม่ให้จับในราคาที่แย่กว่านั้น นี่คือกันชนที่ทำงาน ไม่ใช่บั๊ก
สาเหตุที่เจอบ่อยมีสามข้อ
- พูลบางหรือวิ่งเร็ว โทเคนที่เพิ่งเปิดขยับหลายเปอร์เซ็นต์ต่อบล็อก เพดานแบบที่ใช้กับ stablecoin ตามไม่ทัน พื้นจึงพังก่อนธุรกรรมจะจบ
- ราคาเสนอเก่า ถ้านั่งค้างที่หน้ายืนยันไม่กี่วินาที พูลก็เดินหน้าไปโดยไม่รอ ให้กดรีเฟรชราคาแล้วเซ็นทันที
- SOL ไม่พอจ่ายค่าธรรมเนียม อันนี้เป็นคนละเรื่องที่สับสนง่าย ถ้ากระเป๋าเงินจ่ายค่าธรรมเนียมเครือข่ายบวกค่าธรรมเนียมแพลตฟอร์มไม่ไหว ธุรกรรมจะล้มตั้งแต่ขั้นจำลอง และกระเป๋าเงินอาจขึ้นเป็นคำเตือนกว้าง ๆ แทนข้อความเรื่อง slippage
ทางแก้แทบไม่เคยเป็นการดันไปที่ 50% ให้ขยับเพดานทีละขั้นจนเข้ากับพูล กดรีเฟรชราคาเสนอ และถ้าเป็นไม้ที่ต้องจบในบล็อกเดียว ใช้การรันแบบอะตอมมิกเพื่อบีบช่องว่างระหว่างราคาเสนอกับการจับ พารามิเตอร์ตัวนี้นิยามไว้ในเอกสารสำหรับนักพัฒนาของ Jupiter
คำถามที่พบบ่อยเรื่องการตั้งค่า slippage
ควรตั้ง slippage เท่าไร ระหว่าง 1% กับ 5%
พูลเป็นคนตอบ ไม่ใช่กฎตายตัว บนคู่ที่ลึกและวอลุ่มสูง 0.5% ถึง 1% จับได้และยังกันราคาแย่ให้ด้วย ส่วนโทเคนใหม่ พูลบาง หรือยังอยู่บน bonding curve 1% จะย้อนกลับซ้ำ ๆ ช่วงที่ใช้ได้จริงคือ 3% ถึง 5% ถ้าไม้หนึ่งต้องเกิน 5% ถึงจะผ่าน แปลว่าพูลบางมาก ให้ลดขนาดคำสั่งแทนการขยายเพดาน
slippage แบบ Auto ปลอดภัยไหม
สำหรับไม้ธรรมดาบนพูลลึก Auto มักเลือกค่าที่สมเหตุสมผล ความเสี่ยงอยู่บนโทเคนผันผวนหรือพูลบาง ที่ Auto เปิดเพดานกว้างกว่า price impact จริงของคำสั่งมาก แล้วคุณกลายเป็นเป้าแซนด์วิชง่าย ๆ เวลาซื้อโทเคนใหม่หรือเทรดก้อนใหญ่ ให้พิมพ์ตัวเลขเอง
รันหลายกระเป๋าเงินพร้อมกัน ต้องตั้งค่า slippage อย่างไร
เพดานค่าเดียวใช้กับทุกใบ แต่ราคาขยับไปตามลำดับที่แต่ละใบจับ ใบสุดท้ายจึงเจอราคาแย่ที่สุด ให้ออกแบบเพดานจากใบนั้น หรือซอยรอบเป็นสองถึงสามชุดแล้วตั้งใหม่จากพูลสดทุกชุด การอัดคำสั่งเป็นบันเดิลเดียวช่วยบีบระยะที่ราคาไถลได้อีกชั้น
slippage กับ price impact ต่างกันอะไร
price impact คือแรงที่คำสั่งของคุณเองสร้างกับพูล คำนวณได้ก่อนเซ็น ส่วน slippage คือกันชนที่เผื่อไว้ให้แรงจากคนอื่นระหว่างราคาเสนอกับการจับ slippage จึงต้องอยู่สูงกว่า price impact เล็กน้อยเสมอ ถ้าหน้าจอขึ้น impact 2% แล้วตั้งเพดาน 0.5% ธุรกรรมย้อนกลับตั้งแต่ยังไม่ถึงชั้นของบอท
ทำไมสวอปถึงย้อนกลับซ้ำ ๆ
ส่วนใหญ่เป็นหนึ่งในสามข้อ พูลบางหรือวิ่งเร็วจนขยับหลายเปอร์เซ็นต์ต่อบล็อก ราคาเสนอเก่าเพราะนั่งค้างที่หน้ายืนยัน หรือ SOL ไม่พอจ่ายค่าธรรมเนียม ข้อสุดท้ายไม่เกี่ยวกับ slippage แต่กระเป๋าเงินอาจขึ้นเป็นคำเตือนคล้ายกัน ให้ขยับเพดานขึ้นหนึ่งขั้น รีเฟรชราคา แล้วลองใหม่
ตั้ง slippage สูงเกินไปแล้วจะเกิดอะไรขึ้น
สวอปสำเร็จ แต่ราคาที่จับได้แย่ลง เพดานกว้างเท่ากับบอกบอทว่าดันราคาขึ้นได้ถึงตรงไหน ส่วน 50% แปลว่าจับที่ราคาไหนก็ได้ จึงไม่ถูกในทุกสถานการณ์ แม้แต่มีมคอยน์ที่เพิ่งออกก็ไม่ต้องการช่องกว้างขนาดนั้น
ตัวเลขอีกตัวที่ต้องเลือกก่อนกดเซ็น
slippage ไม่มีค่าที่ถูกค่าเดียว มันคือการตัดสินใจที่คำนวณใหม่ทุกไม้ วันที่ผูกตัวเองไว้กับค่าเริ่มต้นเดียว คือวันที่ต้องไปนั่งรอ หรือไปต่อแถวให้บอทเก็บ priority fee บน Solana ควรจ่ายเท่าไร ว่าด้วยตัวเลขอีกตัวที่ต้องเลือกก่อนเซ็น ส่วนแปดข้อที่ต้องตรวจก่อนกดซื้อเหรียญ Solanaช่วยคัดโทเคนหลอกออกไปก่อน


