Polymarket Bot Tutorial · บทที่ 19 จาก 32
ฟาร์มรางวัลสภาพคล่องของ Polymarket แบบเป็นโปรแกรม: โปรแกรม rebate ทำงานอย่างไร, เกณฑ์สเปรดที่ต้องผ่าน, คณิตศาสตร์ ROI, การจัดอันดับตลาดที่ทำกำไรได้, และเมื่อการฟาร์มเอาชนะกลยุทธ์อื่น
บทนี้ครอบคลุมอะไรบ้าง
Polymarket จ่ายให้ผู้ให้สภาพคล่องผ่านโปรแกรม maker-rewards ในตลาดที่เข้าเงื่อนไข กลยุทธ์การฟาร์มรางวัลเหล่านี้มีรูปแบบชัดเจน แต่ margin บาง และความเสี่ยงจาก inventory เป็นเรื่องจริง บทนี้จะครอบคลุมเกณฑ์สเปรดที่ต้องผ่าน คณิตศาสตร์ ROI และสถานการณ์ที่การฟาร์มได้ผลเทียบกับจุดที่มันขาดทุน
- โปรแกรมรางวัลสภาพคล่องของ Polymarket ทำงานอย่างไร
- เกณฑ์สเปรดที่ต้องผ่าน
- คณิตศาสตร์ ROI: rebate + การประหยัด fee + สเปรด
- ตลาดที่ดีที่สุดสำหรับการฟาร์ม
- ความเสี่ยง: inventory ระเบิด
- โค้ด: MM สำหรับ LP-farming แบบขั้นต่ำ
โปรแกรมรางวัลสภาพคล่องของ Polymarket ทำงานอย่างไร
Polymarket มีโปรแกรม liquidity rewards ที่จ่าย maker rebate ให้กับเทรดเดอร์ที่วาง limit order ค้างไว้ในตลาดที่เข้าเงื่อนไข ระบบจะรวม quote ที่เข้าเกณฑ์รายวัน และแจกจ่ายรางวัลตามสัดส่วนของ order share ที่ช่วยปรับปรุงสเปรดแบบถ่วงน้ำหนักตามเวลา
ตลาดที่เข้าเกณฑ์จะเปลี่ยนทุกสัปดาห์-โดยปกติจะเป็นอีเวนต์สำคัญที่ต้องการ order book ลึกขึ้น เช่น ปีเลือกตั้ง หรือทัวร์นาเมนต์กีฬาขนาดใหญ่ รายการตลาดที่เข้าเกณฑ์จะถูกเผยแพร่บนหน้า rewards ของ Polymarket; ควรตรวจสอบก่อนจะวางกลยุทธ์ฟาร์มบนตลาดใดตลาดหนึ่ง
รางวัลจะจ่ายเป็น pUSD และโอนเข้าบัญชีเป็นระยะ (โดยทั่วไปคือรายวันหรือรายสัปดาห์) ซึ่งแยกจาก trade PnL-คุณอาจติดลบจาก inventory แต่ได้รางวัลเป็นบวกในตลาดเดียวกันและช่วงเวลาเดียวกัน
เกณฑ์สเปรดที่ต้องผ่าน
การมีสิทธิ์รับรางวัลต้องให้ quote อยู่ภายใน "qualifying spread" จาก midpoint ซึ่งปัจจุบันอยู่ราว ±3-5% ของ mid สำหรับ binary market ใบเสนอราคาที่อยู่นอกช่วงนี้ยังคงค้างใน book ได้ แต่จะไม่ได้รับ reward
ยิ่งคุณ quote แคบเท่าไร สัดส่วนรางวัลต่อบล็อกก็ยิ่งแข่งขันมากขึ้น แต่ก็จะถูก adverse selection บ่อยขึ้นตามไปด้วย ยิ่ง quote กว้างก็ยิ่งปลอดภัย แต่ส่วนแบ่ง reward จะเล็กลง จุดที่เหมาะที่สุดสำหรับตลาดส่วนใหญ่คือประมาณ 1-2c จาก mid ในแต่ละฝั่ง
การมีสิทธิ์ยังมีขนาดออเดอร์ขั้นต่ำด้วย (โดยทั่วไป 5+ shares; ตรงกับขั้นต่ำของ GTC) ออเดอร์ที่ต่ำกว่าขั้นต่ำยังพักอยู่ใน book ได้ แต่จะไม่นับรวมใน reward
คณิตศาสตร์ ROI: rebate + การประหยัด fee + สเปรด
ROI แบบเต็มของการฟาร์มรางวัลมี 3 ส่วน
- รายได้จาก rebate: rebate ต่อหุ้น × fills จ่ายเป็น pUSD ตัวเลขแตกต่างกันไป; ช่วงปัจจุบันอยู่ราว 0.1-0.5c ต่อหุ้นที่ถูก fill
- สเปรดที่เก็บได้: ถ้าคุณ quote สูงกว่าและต่ำกว่า mid ข้างละ 1c และทั้งสองฝั่งถูก fill คุณจะได้ 2c ต่อ round trip อัตราการเก็บจริงขึ้นอยู่กับความไม่สมดุลของ fill
- Inventory PnL: ตำแหน่งที่คุณสะสมจะมีความเสี่ยง mark-to-market อาจเป็นบวกหรือลบ; โดยมากจะเล็กถ้ากลยุทธ์ออกแบบมาดี
ตัวอย่างคำนวณ: ในตลาดที่ quote ข้างละ 100 shares, มี fill rate 60% ต่อฝั่งในช่วง 24 ชั่วโมง, rebate $0.30/sh รางวัล: 100 × 0.60 × $0.30 = $18/วัน สเปรดที่เก็บได้: fill เท่าเดิม, สเปรด 1c × 60 round trips = $0.60 rebate จะเหนือกว่าสเปรดในตลาดที่ volume บาง; สเปรดจะเหนือกว่าในตลาดที่ volume หนา
ตลาดที่ดีที่สุดสำหรับการฟาร์ม
โปรไฟล์เศรษฐศาสตร์ที่เอื้อต่อการฟาร์ม:
- อัตรารางวัลที่เข้าเกณฑ์สูง-ตรวจหน้า rewards เพื่อดู rebate ต่อหุ้นล่าสุดตามตลาด
- ปริมาณปานกลาง-มี fills มากพอให้ได้รางวัลที่มีนัยสำคัญ แต่ไม่มากจน maker คู่แข่งกินส่วนแบ่งของคุณหมด
- mid ที่นิ่ง-เลือกตลาดที่ความน่าจะเป็นโดยนัยไม่แกว่ง 10c ในข่าวครั้งเดียว ตลาดเลือกตั้งก่อนมีข่าวเป็นตัวอย่างที่ดี; ตลาดใกล้ปิดผลไม่ดี
- สเปรดตามธรรมชาติที่แคบ-ตลาดที่ book เดิมแคบอยู่แล้วหมายความว่าคุณแข่งกันที่การกระจาย rebate ไม่ใช่การเปิดตลาด
หลีกเลี่ยง: ตลาดใน 24 ชั่วโมงสุดท้ายก่อนปิดผล (ราคาเหวี่ยงทำลาย inventory), ตลาดที่มี flow ไปด้านเดียวต่อเนื่อง (คุณจะสะสม directional exposure จำนวนมาก)
ความเสี่ยง: inventory ระเบิด
ความเสี่ยงหลักของการฟาร์มคือการสะสม directional exposure ระหว่างที่ราคาเคลื่อน ถ้า mid ร่วงจาก 0.55 ไป 0.42 ในหนึ่งชั่วโมง bid ของคุณจะถูก fill ซ้ำ ๆ ในขณะที่ ask ยังไม่ถูก fill; สุดท้ายคุณจะ long N shares ด้วยต้นทุนเฉลี่ยสูงกว่า mid ปัจจุบัน
วิธีแก้:
- กำหนด inventory cap: หยุด quote ฝั่งที่คุณ long เกินไปแล้ว
- skew: เมื่อ long ให้ดัน bid ให้กว้างขึ้นและดัน ask ให้แคบลง เมื่อ short ให้ทำตรงข้าม
- kill switch: เมื่อ inventory เกิน 2 เท่าของช่วงปกติ หรือ mid เคลื่อนเกิน >X% จากตอนเริ่ม ให้หยุดและ flatten
PnL ของการฟาร์มคือผลรวมของ rewards + spread − inventory MTM การพังหนักเกิดขึ้นเพราะพจน์ที่สามติดลบอย่างรุนแรงจาก mid move ที่ขับเคลื่อนด้วยข่าวเพียงครั้งเดียว
โค้ด: MM สำหรับ LP-farming แบบขั้นต่ำ
อ้างอิง: maker ที่ใช้งานได้ขั้นต่ำสำหรับการฟาร์ม liquidity-rewards
QUOTE_OFFSET = 0.01 # 1c off mid each side
INV_CAP = 50 # max long or short
SIZE = 5 # GTC minimum
def farm_loop(token_id):
while True:
book = fetch_book(token_id)
mid = (book.best_bid + book.best_ask) / 2
inv = chain_balance(token_id)
cancel_my_quotes(token_id)
if inv < INV_CAP:
post_gtc(token_id, "BUY", mid - QUOTE_OFFSET, SIZE)
if inv > -INV_CAP:
post_gtc(token_id, "SELL", mid + QUOTE_OFFSET, min(SIZE, abs(inv)))
time.sleep(30) # re-quote every 30s
ส่วนเพิ่มเติมสำหรับใช้งานจริง: ใส่ skew ตาม inventory, pause เมื่อมีข่าวสำคัญ, กระทบยอด PnL รายวันรวมถึงสตรีม rebate ด้วย





