· four exchange APIs · rebuilt daily
แพลตฟอร์ม perpetual swap จะมีข้อมูลราคาที่แตกต่างกันสองแบบสำหรับทุกสัญญา ราคาซื้อขายล่าสุด (last traded price) คือมูลค่าที่แน่นอน ณ จุดที่มีการซื้อขายล่าสุดบน order book ในพื้นที่นั้น หากเทรดเดอร์ส่งคำสั่ง market order ที่เคลียร์ bid ที่มีอยู่ ราคาซื้อขายล่าสุดจะลดลงทันทีเพื่อให้ตรงกับการจับคู่ที่ต่ำที่สุด
การประเมินการชำระบัญชีโดยตรงจากราคาซื้อขายล่าสุดจะทำให้สถานะเสี่ยงต่อการปั่นป่วน order book และการเทขายอย่างรวดเร็วในพื้นที่นั้น คำสั่งขาย market order ขนาดใหญ่เพียงคำสั่งเดียวอาจทำให้ราคาซื้อขายล่าสุดลดลง 8% เป็นเวลาไม่กี่มิลลิวินาทีก่อนที่ market maker จะเติม bid หากการชำระบัญชีอาศัยราคาซื้อขายล่าสุด wick ที่เกิดขึ้นชั่วคราวนี้จะบังคับปิดสถานะที่มี leverage ทั่วทั้ง exchange
Mark price แก้ปัญหานี้โดยแยกการคำนวณ margin ออกจากความลึกของ order book ในพื้นที่นั้น แพลตฟอร์มสร้าง mark price โดยการนำราคา index (ค่าเฉลี่ยถ่วงน้ำหนักของราคา spot จาก major spot exchange) มาบวกกับ funding rate basis ที่ปรับค่าเฉลี่ยแล้ว basis แสดงถึง premium หรือ discount เฉลี่ยของ perpetual contract เมื่อเทียบกับ spot ในช่วงเวลาหนึ่ง
Worth knowing
ราคาซื้อขายล่าสุด (Last traded price) กำหนดการจับคู่คำสั่งซื้อขายของคุณ แต่ mark price กำหนดอัตราส่วน margin ของบัญชีและการตรวจสอบการชำระบัญชีของคุณ
พิจารณาสถานะ long 1 BTC ที่เปิดที่ 60,000 USDT ด้วย leverage 20x Margin เริ่มต้นที่ต้องการคือ 3,000 USDT แพลตฟอร์มกำหนด maintenance margin requirement ที่ 0.5% ซึ่งเท่ากับ 300 USDT สำหรับสถานะ 1 BTC
การชำระบัญชีจะเกิดขึ้นเมื่อ equity ของสถานะลดลงถึงหรือต่ำกว่า maintenance margin equity ของสถานะเท่ากับ initial margin บวกกับกำไรหรือขาดทุนที่ยังไม่เกิดขึ้นจริง โดยอิงจาก mark price
Equity = 3,000 USDT + (Mark Price — 60,000 USDT)
การตั้งค่า equity ให้เท่ากับ maintenance margin 300 USDT จะทำให้ราคา mark price ที่กระตุ้นการชำระบัญชีอยู่ที่ 57,300 USDT
57,300 USDT = 60,000 USDT - (3,000 USDT — 300 USDT)
ในสถานการณ์ A คำสั่งขาย market order ขนาดใหญ่เข้าสู่ perpetual order book ในพื้นที่นั้น ราคาซื้อขายล่าสุดลดลงเหลือ 56,500 USDT สำหรับการจับคู่หนึ่งครั้ง อย่างไรก็ตาม ตลาด spot พื้นฐานยังคงมีเสถียรภาพ ทำให้ spot index อยู่ที่ 59,800 USDT Mark price ยังคงอยู่ที่ 59,800 USDT เนื่องจาก mark price ยังคงสูงกว่า 57,300 USDT จึงไม่มีการชำระบัญชีเกิดขึ้น
ในสถานการณ์ B ตลาด spot ทั่วโลกลดลง Spot index ลดลงเหลือ 57,200 USDT Mark price ปรับลดลงเหลือ 57,200 USDT เครื่องมือชำระบัญชีของ exchange จะปิดสถานะทันที แม้ว่า bid ใน order book ในพื้นที่ของ perpetual contract จะรักษา last traded price ไว้ที่ 57,600 USDT ชั่วคราวก็ตาม
Where this goes wrong
การพึ่งพา stop-loss order ที่อิงตาม last price จะไม่สามารถป้องกันการชำระบัญชีตาม mark price ได้ หากราคา spot ของ index ลดลงเร็วกว่าที่ order book ในพื้นที่นั้นจะจับคู่ได้
เมื่อมีการชำระบัญชีตาม mark price แพลตฟอร์มจะปิดสถานะโดยใช้ market orders หรือรับสินค้าคงคลังผ่าน insurance fund สถานะที่ถูกชำระบัญชีจะเสียค่าธรรมเนียม taker ซึ่งคำนวณจากมูลค่าการซื้อขายที่จับคู่ได้
ค่าธรรมเนียมและต้นทุนการถือครองแตกต่างกันไปในแต่ละแพลตฟอร์มอนุพันธ์ ตารางค่าธรรมเนียม perpetual ปัจจุบันและอัตรา funding 8 ชั่วโมงแบบสดแสดงให้เห็นถึงส่วนต่างของโครงสร้างที่สำคัญระหว่าง exchange ต่างๆ
| Venue | Futures Maker Fee | Futures Taker Fee | BTC 8h Funding Rate | ETH 8h Funding Rate |
|---|---|---|---|---|
| Bybit | 0.020% | 0.055% | +0.0006% | -0.0018% |
| MEXC | 0.000% | 0.020% | +0.0037% | +0.0011% |
| OKX | 0.020% | 0.050% | +0.0030% | +0.0057% |
| Bitget | 0.020% | 0.030% | +0.0025% | +0.0080% |
การถือครองสถานะ long ในช่วงที่มีความผันผวนสูงจำเป็นต้องมีการติดตาม funding yield ควบคู่ไปกับระยะห่างของ mark price สำหรับ BTC การถือครอง long บน Bybit มีค่าใช้จ่าย +0.0006% ต่อ 8 ชั่วโมง เทียบกับ +0.0037% บน MEXC สำหรับ ETH การถือครอง long บน Bybit ให้ผลตอบแทน +0.0018% ต่อ 8 ชั่วโมง เนื่องจาก funding เป็นลบ ในขณะที่ Bitget คิดค่าธรรมเนียม +0.0080% ต่อ 8 ชั่วโมง สำหรับผู้ถือครอง long
What to do instead
ตรวจสอบว่าแพลตฟอร์มของคุณกระตุ้น stop-loss และ take-profit orders ด้วย mark price หรือ last price ในการตั้งค่าสัญญาของบัญชีหรือไม่
Mark price ช่วยปกป้องเทรดเดอร์จากการปั่นป่วนของ order book ในพื้นที่ แต่ก็มีโหมดความล้มเหลวที่แตกต่างกันในช่วงเหตุการณ์ที่ตลาดเคลื่อนไหวอย่างรุนแรง
โหมดความล้มเหลวหลักเกิดขึ้นเมื่อ perpetual contract ซื้อขายที่ premium หรือ discount ที่สูงและต่อเนื่องเมื่อเทียบกับตลาด spot เนื่องจาก exchange ปรับ funding basis ให้เรียบโดยใช้ค่าเฉลี่ยเคลื่อนที่ (มักจะในช่วง 15 นาทีถึง 8 ชั่วโมง) mark price จะล่าช้ากว่าราคาตลาดที่แท้จริงในช่วงที่มีการเปลี่ยนแปลงแนวโน้มอย่างรวดเร็วและต่อเนื่อง หาก perpetual order book ในพื้นที่ลดลง 10% ในขณะที่ spot เคลื่อนไหวช้า mark price จะยังคงสูงกว่าราคาซื้อขายล่าสุด สถานะ short อาจเผชิญกับการชำระบัญชีที่ไม่คาดคิด แม้ว่าสัญญาจะซื้อขายในระดับที่ต่ำกว่าบนแพลตฟอร์มในพื้นที่นั้นก็ตาม
โหมดความล้มเหลวที่สองเกี่ยวข้องกับการปั่นป่วนส่วนประกอบของ index หาก spot exchange ที่อยู่ในรายการคำนวณ index ของแพลตฟอร์มประสบปัญหา liquidity บางเบา การซื้อหรือขายที่กำหนดเป้าหมายบน order book spot เพียงแห่งเดียวจะทำให้ราคา index ทั่วโลกบิดเบือน สิ่งนี้จะทำให้ mark price ของ perpetual contract เคลื่อนไหวอย่างผิดปกติ กระตุ้นการชำระบัญชีบน derivative exchange โดยไม่มีปริมาณการซื้อขายบน derivative contract นั้นเลย
ไม่ แพลตฟอร์ม Perpetual ใช้ mark price เท่านั้นในการประเมิน margin ของสถานะและกระตุ้นการชำระบัญชี Last price กำหนดเฉพาะราคาการจับคู่เมื่อคำสั่งซื้อขายถูกจับคู่บน order book
ชาร์ตของคุณถูกตั้งค่าให้แสดง last traded price แทนที่จะเป็น mark price การเคลื่อนไหวที่รวดเร็วของราคา spot index ทั่วโลกทำให้ mark price ไปถึงเกณฑ์การชำระบัญชีของคุณ ในขณะที่การซื้อขายในพื้นที่ของแพลตฟอร์มนั้นซื้อขายในระดับที่แตกต่างกัน
ได้ Mark price รวมส่วนประกอบของ funding basis ที่ปรับค่าเฉลี่ยแล้วซึ่งบวกเข้ากับ spot index price ในช่วงที่ตลาดมีความผิดปกติอย่างรุนแรง mark price อาจแตกต่างจาก spot index price ได้หลายส่วนของเปอร์เซ็นต์
เปิดแผงคำสั่งซื้อขายบนแพลตฟอร์มการซื้อขายของคุณ และค้นหาส่วน conditional order triggers สลับ dropdown ของ trigger price จาก Last Price เป็น Mark Price ก่อนตั้งค่าขอบเขต stop ของคุณ