Polymarket Bot Tutorial · فصل 19 از 32
برنامه rewards نقدینگی Polymarket را بهصورت programmatic farm کنید: اینکه برنامه rebate چگونه کار میکند، آستانههای qualifying spread، محاسبات ROI، رتبهبندی بازارهای سودآور، و اینکه چه زمانی farming از سایر strategies بهتر است.
این فصل چه چیزهایی را پوشش میدهد
Polymarket از طریق یک maker-rewards program در بازارهای eligible به liquidity providers پرداخت میکند. استراتژی farming این rewards کاملاً مشخص است، اما حاشیه سودها thin هستند و inventory risk واقعی است. این فصل qualifying spread thresholds، محاسبات ROI، و اینکه farming کجا جواب میدهد و کجا ضرر میدهد را پوشش میدهد.
- How Polymarkets liquidity reward program works
- Spread thresholds to qualify
- ROI math: rebate + fee saving + spread
- Best markets for farming
- Risk: inventory blowup
- Code: minimal LP-farming MM
How Polymarkets liquidity reward program works
Polymarket یک liquidity rewards program اجرا میکند که به traderهایی که resting limit order در بازارهای eligible ارائه میدهند maker rebate پرداخت میکند. صرافی quoteهای eligible را بهصورت روزانه aggregate میکند و rewards را متناسب با time-weighted spread-improving order share توزیع میکند.
بازارهای eligible هر هفته تغییر میکنند - معمولاً رویدادهای high-priority (سالهای انتخابات، تورنمنتهای بزرگ ورزشی) که Polymarket میخواهد books عمیقتری داشته باشد. فهرست eligible در صفحه rewards Polymarket منتشر میشود؛ قبل از اینکه برای یک market استراتژی farming بچینید، آن را بررسی کنید.
Rewards به pUSD پرداخت میشوند و بهصورت دورهای (معمولاً روزانه یا هفتگی) واریز میشوند. اینها جدا از trade PnL هستند - ممکن است در همان market و همان بازه زمانی هم inventory شما net-down باشد و هم rewards شما net-up.
Spread thresholds to qualify
Eligibility برای rewards نیاز دارد quote شما داخل یک "qualifying spread" نسبت به midpoint باشد، که فعلاً برای binary markets حدود ±3-5% از mid است. Quoteهایی که بیرون از این band هستند همچنان روی book میمانند اما هیچ rewardی نمیگیرند.
هرچه tighter quote کنید، سهم رقابتیتری از per-block reward میگیرید، اما بیشتر در معرض adverse selection قرار میگیرید. هرچه wider quote کنید، امنتر است اما سهم reward شما کوچکتر میشود. نقطه بهینه برای بیشتر بازارها حدود 1-2c دورتر از mid در هر سمت است.
Eligibility همچنین یک minimum order size دارد (معمولاً 5+ shares؛ همخوان با حداقل GTC). سفارشهای پایینتر از حداقل روی book میمانند اما برای rewards حساب نمیشوند.
ROI math: rebate + fee saving + spread
ROI کامل reward-farming سه مؤلفه دارد.
- Rebate income: rebate بهازای هر share × fills، پرداختشده به pUSD. اعداد متغیرند؛ بازه فعلی 0.1-0.5c بهازای هر filled share است.
- Spread captured: اگر 1c بالاتر و پایینتر از mid quote کنید و هر دو سمت fill شوند، در هر round trip، 2c بهدست میآورید. نرخ واقعی capture به عدمتعادل fillها بستگی دارد.
- Inventory PnL: موقعیتی که جمع میکنید exposure به mark-to-market دارد. میتواند مثبت یا منفی باشد؛ معمولاً اگر strategy خوب طراحی شده باشد کوچک است.
نمونه محاسبه: در بازاری با 100 share در هر سمت، 60% fill rate برای هر سمت طی 24 ساعت، و rebate برابر با $0.30/sh. Reward: 100 × 0.60 × $0.30 = $18/day. Spread capture: با همان fills، اسپرد 1c × 60 round trips = $0.60. در بازارهای کمحجم، rebate بر spread غالب است؛ در بازارهای پُرحجم، spread غالب میشود.
Best markets for farming
پروفایل اقتصادیای که farming را ترجیح میدهد:
- High eligible reward rate - برای rebate فعلی هر market به صفحه rewards نگاه کنید.
- Moderate volume - آنقدر fill وجود داشته باشد که reward معنادار بگیرید، اما نه آنقدر زیاد که makers رقابتی سهم شما را بخورند.
- Stable mid - بازارهایی را ترجیح دهید که implied probability در یک news event بهاندازه 10c جابهجا نشود. بازارهای election قبل از خبر خوباند؛ بازارهای نزدیک به resolution خوب نیستند.
- Narrow natural spread - بازارهایی که book موجودشان از قبل tight است یعنی شما بر سر توزیع rebate رقابت میکنید، نه بر سر باز کردن بازار.
از این موارد دوری کنید: بازارهای 24 ساعت آخر قبل از resolution (جهش قیمت inventory را نابود میکند)، بازارهایی با flow دائماً یکطرفه (exposure جهتدار عظیم جمع میکنید).
Risk: inventory blowup
ریسک اصلی farming این است که هنگام حرکت قیمت، exposure جهتدار جمع کنید. اگر mid در طول یک ساعت از 0.55 به 0.42 سقوط کند، bid شما بارها fill میشود در حالی که ask شما بدون fill میماند؛ در نتیجه در نهایت long N share با average cost بالاتر از current mid میشوید.
راهحلها:
- Inventory cap: وقتی در سمتی که از قبل خیلی long هستید quote نکنید.
- Skew: وقتی long هستید، bid را wider و ask را tighter کنید. وقتی short هستید، برعکس.
- Kill switch: وقتی inventory از 2x range معمول فراتر رفت یا mid بیش از X% نسبت به زمان شروع شما جابهجا شد، halt کنید و flatten شوید.
PnL farming برابر است با مجموع rewards + spread − inventory MTM. blowupها به این دلیل رخ میدهند که مؤلفه سوم در یک حرکت خبری mid بهشدت منفی میشود.
Code: minimal LP-farming MM
Reference: سادهترین maker قابلاجرا برای liquidity-rewards-farming.
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
افزودنیهای production: skew بر اساس inventory، pause هنگام news event، و daily PnL reconciliation شامل جریان rebate.





