פרק 27 מתוך 33
הגרסה הקצרה
פולימרקט חושפת שלושה APIs ציבוריים: CLOB (מסחר), Gamma (גילוי שווקים), ו-Data (אנליטיקה). ה-SDK הרשמי של Python הוא py-clob-client 0.34.6. האימות משתמש ב-מפתח API + חתימת ECDSA, כאשר פקודות נחתמות באמצעות EIP-712 דרך ארנק פרוקסי של Polygon. מגבלות הקצב מציבות אתכם בערך על 60 פקודות/דקה לכל מפתח. המלכוד הגדול ביותר למפתחים חדשים הוא בעיית המיפוי condition_id → token_id בין Gamma ל-CLOB - פותרים אותה קודם, וכל השאר מסתדר. בערך 40M$ לחודש בתגמולי נזילות וב-מרווח (spread) שנלכד בידי בוטים נצברים בפולימרקט, כמעט כולו בידי משתמשי API.

שלושה שירותים נפרדים: CLOB (9,000/10s auth) למסחר, Gamma (4,000/10s public) לגילוי, Data (1,000/10s public) לניתוח היסטורי.
חלק 1: שלושת ה-APIs
פולימרקט מפרידה בצורה נקייה בין תחומי האחריות דרך שלושה שירותים נפרדים. שימוש ב-API הנכון לכל משימה שומר על הבוט מהיר, פשוט, ובתוך מגבלות הקצב.
| API | Base URL | מטרה | נדרש אימות |
|---|---|---|---|
| CLOB API | clob.polymarket.com | הנחה, ביטול ומעקב אחר פקודות. קריאת ספרי פקודות. שאילתת פוזיציות. | כן (למסחר) |
| Gamma API | gamma-api.polymarket.com | עיון בשווקים, שליפת מטא-דאטה, תמונות, מחירי תוצאות, נפח, תפוגה, תגיות. | לא (ציבורי) |
| Data API | data-api.polymarket.com | עסקאות היסטוריות, צילומי פוזיציות, אנליטיקה של משתמשים, נתוני טבלת מובילים. | לא (ציבורי) |
לולאת בוט טיפוסית משתמשת ב-Gamma (Gamma) כדי למצוא שווקים, ב-CLOB (CLOB) כדי למשוך ספרי פקודות ולהניח עסקאות, וב-Data (Data) כדי לבצע back-test לביצועי האסטרטגיה באופן לא מקוון. חשבו על Gamma כעל ה"קטלוג", על CLOB כעל ה"בורסה", ועל Data כעל ה"מחסן".
curl או בדפדפן כבר עכשיו - בלי צורך בחשבון. זו דרך מצוינת לעשות פרוטוטייפ עוד לפני שמייצרים מפתח API.
L1 חותם על מבנה EIP-712 בשם "ClobAuthDomain" עם chainId 137 כדי לגזור אישורים. L2 HMAC-SHA256 חותם על כל בקשה עוקבת עם כותרות POLY_SIGNATURE.
חלק 2: אימות ומודל ארנק הפרוקסי
פולימרקט לא חותמת על עסקאות עם המפתח הפרטי של הארנק הראשי שלכם. במקום זאת, היא משתמשת ב-ארנק פרוקסי בסגנון Gnosis Safe: הארנק הראשי שלכם מאשר פרוקסי, והפרוקסי מבצע את כל העסקאות ב-Polygon. הבוט שלכם מתקשר מול אותו פרוקסי.
מה צריך
- מפתח API - יצירה ב-Polymarket Settings → Developer
- מפתח פרטי - המפתח של ארנק המסחר שלכם (לא seed phrase של ה-MetaMask הראשי)
- כתובת מממן - כתובת ארנק הפרוקסי שלכם (מוצגת ב-Settings → Wallet)
- Chain ID -
137(Polygon mainnet) - סוג חתימה -
1(POLY_PROXY, תקן למשתמשי ריטייל)
.env) או במנהל סודות. לעולם אל תדביקו מפתחות ב-Discord, ב-GitHub issues, או ב-ChatGPT. הניחו שכל מפתח שנוגע ב-clipboard שלכם כבר נפגע. סובבו מפתחות אם יש ספק.
סוג חתימה 1 (POLY_PROXY) לחשבונות Magic-link, סוג 2 (GNOSIS_SAFE) לפרוקסי של ארנקי דפדפן, סוג 0 (EOA) למפתחות ישירים. נדרש funder עבור סוגים 1 ו-2.
חלק 3: התקנת py-clob-client
ה-SDK הרשמי של Python הוא הדרך המהירה ביותר לעבור מאפס לפקודה ראשונה. נשתמש בגרסה 0.34.6, שהיא העדכנית נכון לאפריל 2026.
# Create a virtual environment first
python3 -m venv venv
source venv/bin/activate # macOS/Linux
venv\Scripts\activate # Windows
# Install the SDK
pip install py-clob-client==0.34.6 requests websocket-client python-dotenvתצורת לקוח בסיסית
import os
from dotenv import load_dotenv
from py_clob_client.client import ClobClient
from py_clob_client.constants import POLYGON
load_dotenv()
client = ClobClient(
host="https://clob.polymarket.com",
key=os.environ["POLY_PRIVATE_KEY"],
chain_id=POLYGON, # 137
signature_type=1, # POLY_PROXY
funder=os.environ["POLY_FUNDER"],
)
# One-time: derive and cache API credentials
client.set_api_creds(client.create_or_derive_api_creds())הקריאה create_or_derive_api_creds() חותמת על הודעה עם המפתח הפרטי שלכם ומחליפה אותה במפתח API, secret ו-passphrase. שמרו אותם ב-.env אחרי ההרצה הראשונה כדי שלא תצטרכו לפגוע בנקודת ה-derive בכל עלייה.
POLY_PRIVATE_KEY=0xabc...
POLY_FUNDER=0xdef...
POLY_API_KEY=...
POLY_SECRET=...
POLY_PASSPHRASE=...
Gamma /markets מחזיר outcomePrices, clobTokenIds, volume24hr, tags. השתמשו ב-tag_slug + order=volume24hr כשאילתת ברירת המחדל לסורק הבוט.
חלק 4: גילוי שווקים דרך Gamma
לפני שאפשר לסחור, צריך למצוא שווקים ששווה לסחור בהם. Gamma מחזירה JSON עם כל מה שממשק המשתמש של Polymarket מציג: שאלה, תוצאות, מחירים, נפח 24 שעות, תפוגה, תגיות ותמונות.
import requests
resp = requests.get(
"https://gamma-api.polymarket.com/markets",
params={
"active": "true",
"closed": "false",
"tag_slug": "politics",
"limit": 20,
"order": "volume24hr",
"ascending": "false",
},
timeout=10,
)
resp.raise_for_status()
markets = resp.json()
for m in markets:
print(f"{m['slug']:50} Yes ${float(m['outcomePrices'][0]):.3f} Vol24h ${m.get('volume24hr', 0):,.0f}")פרמטרי שאילתת Gamma שימושיים
| פרמטר | מה הוא עושה |
|---|---|
tag_slug | סינון לפי קטגוריה (politics, sports, crypto, culture וכו') |
active=true | רק שווקים שמקבלים כרגע עסקאות |
closed=false | הסתרת שווקים שיושבו |
order=volume24hr | מיון לפי נפח עדכני (אות לנזילות) |
end_date_min | תאריך ISO - דילוג על שווקים שיתיישבו מוקדם מדי |
limit | עד 500 לעמוד (השתמשו ב-offset לעימוד) |

Gamma חושפת conditionId (אחד לכל שוק); CLOB סוחר ב-token_id (אחד לכל תוצאה). clobTokenIds הוא מערך מחרוזות בקידוד JSON שממופה לפי אינדקס לתוצאות.
חלק 5: מיפוי condition_id ל-token_id
זוהי נקודת הכאב מספר 1 בפיתוח בוטים ל-Polymarket. Gamma מחזירה condition_id (אחד לכל שוק). פקודות ב-CLOB משתמשות ב-token_id (אחד לכל תוצאה). תמיד צריך את שניהם.
condition_id לנקודות קצה של CLOB שמצפות ל-token_id. תקבלו שגיאה חמקמקה של "invalid token". תמיד ממפים קודם, סוחרים אחר כך.# Each Gamma market object contains 'clobTokenIds' - a JSON string array
import json
market = markets[0]
token_ids = json.loads(market['clobTokenIds']) # ['7410...', '1120...']
yes_token = token_ids[0] # First outcome
no_token = token_ids[1] # Second outcome
# Alternative: ask CLOB directly using condition_id
info = client.get_market(condition_id=market['conditionId'])
yes_token = info['tokens'][0]['token_id']מלכודת סדר התוצאות
מערך outcomes של Gamma ומערך clobTokenIds ממופים לפי אינדקס. תמיד קראו את תווית התוצאה ולא הניחו שאינדקס 0 הוא "Yes." בשווקים רב-תוצאה (NegRisk, אוסקרים, בחירות), אינדקס 0 יכול להיות "Kamala Harris" או "Taylor Swift" - הסדר דטרמיניסטי אך תלוי-שוק.

הספר מוחזר כ-bids בסדר יורד, asks בסדר עולה. יש לעבור על הרמות כדי להעריך מחיר מילוי עבור notional יעד לפני שליחת FAK דמוי-שוק.
חלק 6: קריאת ספרי פקודות
book = client.get_order_book(token_id=yes_token)
best_bid = float(book.bids[0].price) if book.bids else None
best_ask = float(book.asks[0].price) if book.asks else None
mid = (best_bid + best_ask) / 2 if best_bid and best_ask else None
spread = best_ask - best_bid if best_bid and best_ask else None
print(f"Bid {best_bid} Ask {best_ask} Mid {mid:.4f} Spread {spread:.4f}")ספרי פקודות מוחזרים כמערכים ממוינים (bids בסדר יורד, asks בסדר עולה). לכל רמה יש price ו-size. כדי להעריך החלקה עבור פקודה גדולה יותר, עוברים על הספר ומצברים notional עד שמצרכים את גודל היעד.

GTC נשארת על הספר, GTD מתבטלת אוטומטית בזמן מסוים, FOK דורשת מילוי מלא או ביטול מלא, FAK לוקחת מה שאפשר במחיר לימיט ומבטלת את השאר.
חלק 7: הנחת פקודות
פקודת לימיט (GTC - ברירת המחדל)
from py_clob_client.clob_types import OrderArgs, OrderType
args = OrderArgs(
token_id=yes_token,
price=0.45,
size=100, # Shares, not dollars. 100 shares @ $0.45 = $45 max cost.
side="BUY",
)
signed_order = client.create_order(args)
response = client.post_order(signed_order, OrderType.GTC)
print(response)הקריאה create_order חותמת על הודעה מובנית מסוג EIP-712 עם המפתח הפרטי שלכם. post_order שולחת אותה ל-CLOB. לעולם אינכם שולחים מפתחות פרטיים גולמיים ברשת - רק פקודות חתומות.
סוגי פקודות
| סוג | Code | התנהגות | מתי להשתמש |
|---|---|---|---|
| Good Till Cancelled | GTC | נשארת על הספר עד שממולאת או עד שאתם מבטלים | ברירת מחדל. רוב אסטרטגיות יצירת השוק והלימיט. |
| Good Till Date | GTD | מתבטלת אוטומטית בזמן חותמת מוגדר | מונע-אירוע: "לבטל 5 דקות לפני פרסום הפד" |
| Fill or Kill | FOK | חייבת להתמלא במלואה מיד או להתבטל לחלוטין | רגלי ארביטראז' שבהן מילוי חלקי הורס את העסקה |
| Fill and Kill | FAK | ממלאת כל מה שאפשר במחיר הלימיט, ומבטלת את השאר | לוקחת אגרסיבית - מתנהגת כמו פקודת שוק עם תקרת מחיר |
ביטול
# Single order
client.cancel(order_id="0xabc...")
# Cancel all orders on a specific market
client.cancel_market_orders(market=market['conditionId'])
# Nuclear option: cancel everything
client.cancel_all()חלק 8: הזרמת WebSocket
Polling של Gamma כל שנייה הוא בזבזני, ותגיעו מהר למגבלות הקצב. פיד ה-WebSocket מזרים עדכוני ספר פקודות ועסקאות בזמן אמת, עם השהיית תת-שנייה.
import json, websocket
WS_URL = "wss://ws-subscriptions-clob.polymarket.com/ws/market"
def on_open(ws):
ws.send(json.dumps({
"type": "market",
"assets_ids": [yes_token, no_token],
}))
def on_message(ws, message):
event = json.loads(message)
if event.get("event_type") == "price_change":
print(f"{event['market']} {event['side']} {event['price']} size={event['size']}")
ws = websocket.WebSocketApp(
WS_URL,
on_open=on_open,
on_message=on_message,
)
ws.run_forever(ping_interval=20)קיימים שני פידים: פיד /market (ספר פקודות ציבורי + עסקאות) ופיד /user (אירועי הפקודות והמילוי שלכם, מאומת). בוטי ייצור בדרך כלל מתחברים לשניהם, מתחברים מחדש אוטומטית בעת ניתוק, ומתייחסים ל-WebSocket כמקור האמת למצב הספר הנוכחי.
חלק 9: מגבלות קצב ו-backoff
| מחלקת נקודת קצה | מגבלה | Burst |
|---|---|---|
| מיקום פקודות (CLOB) | ~60 / דקה לכל מפתח API | ~10 / שנייה |
| ביטול פקודות | ~120 / דקה | ~20 / שנייה |
| קריאות נתוני שוק (ספר CLOB) | ~300 / דקה | גבוה יותר, משתנה |
| Gamma API | נדיב; יש לכבד 429 | - |
| הודעות WebSocket | אין מגבלה מעשית נכנסת | - |
כשמקבלים HTTP 429, השרת מחזיר כותרת Retry-After. יש להטמיע exponential backoff with jitter:
import random, time
def post_with_backoff(fn, *args, max_retries=6):
for attempt in range(max_retries):
try:
return fn(*args)
except Exception as e:
if "429" in str(e):
sleep = (2 ** attempt) + random.random()
time.sleep(min(sleep, 30))
continue
raise
raise RuntimeError("Too many retries")חלק 10: ארכיטקטורת בוט ייחוס
לכל בוט Polymarket חזק יש את אותם שישה רכיבים. בנו כל אחד כמודול נפרד; שמרו על צימוד רופף ביניהם.
| רכיב | אחריות | APIs בשימוש |
|---|---|---|
| סורק | משימת זמן: משיכת שווקים שתואמים לקריטריונים שלכם (תגיות, נפח, ימים עד תפוגה) | Gamma |
| מנוע מחיר | שמירה על ספרי פקודות מקומיים בזמן אמת דרך WebSocket | CLOB WS |
| מחולל אותות | פונקציה טהורה: מצב ספר + מטא-דאטה → פוזיציית יעד | - (in-memory) |
| מנהל פקודות | השוואת פקודות נוכחיות מול יעד, הנחה/ביטול במינימום | CLOB REST |
| מנהל סיכון | אכיפת תקרות לכל שוק, גבולות הפסד יומיים, מפסקים | - (in-memory + DB) |
| לוג ו-ledger | שמירת כל החלטה, מילוי וביטול. מזין דוחות מס ודיבוג. | SQLite / Postgres |
חלק 11: מצבי כשל נפוצים
- נתוני WebSocket מיושנים - עקבו אחרי זמן ההודעה האחרונה לכל asset; אם אין עדכונים במשך >30 שניות בשוק פעיל, כפו רענון REST.
- התנגשויות nonce - py-clob-client מטפל ב-order nonces עבורכם, אבל אם אתם בונים signer משלכם, הגדילו את ה-nonce בכל פקודה.
- יתרה לא מספקת - תמיד בדקו יתרת USDC לפני הנחה; הספר עשוי להציג את הפקודה שלכם, אבל המנוע ידחה במילוי.
- שוק מושהה או ביישוב - בדקו
market.active && !market.closedלפני מסחר. עדכוני Gamma מפגרים אחרי CLOB בכמה שניות סביב היישוב. - אי-התאמה ב-NegRisk adapter - שווקים רב-תוצאה נשלחים דרך adapter נפרד של NegRisk. ה-SDK מטפל בזה, אבל יש לוודא שהפקודה נשלחה לזירה הנכונה.
חלק 12: תגמולי נזילות דרך API
Polymarket מפעילה ~5M$/חודש בתגמולי נזילות כלליים ועוד 5M$+/חודש בתגמולים ייעודיים לספורט (ראו תגמולי נזילות). הרוב המוחלט זורם ל-market makers מונעי-API שמסוגלים לשמור על ציטוטים דו-צדדיים צרים לאורך אלפי שווקים.
נוסחת התגמול מתגמלת פקודות ליד מחיר אמצע, גודל וזמן על הספר. לולאת market making מינימלית:
- קראו את ספר הפקודות עבור שוק היעד
- חשבו midpoint הוגן (למשל VWAP של 3 הרמות העליונות בכל צד)
- הניחו bid ב-
mid - spread_target/2ו-ask ב-mid + spread_target/2 - בכל עדכון WebSocket, עשו repricing אם ה-quote שלכם סטה יותר מ-tick אחד מהיעד
- בטלו וצאו אם הספר נעשה דק או אם מתפרסמת ידיעה
חלק 13: מעבר לייצור
- אחסון: VPS ב-6$ לחודש (Hetzner, DigitalOcean) באירופה או US-East מספיק לרוב הבוטים. ניתן למקם סמוך ל-Polygon RPC אם צריך השהיה של פחות מ-10ms.
- RPC: השתמשו ב-Alchemy, Infura, או QuickNode ל-Polygon RPC אמין. שכבות חינמיות מספיקות עד שמניחים מאות פקודות בדקה.
- ניטור: Prometheus + Grafana למדדים; בוט Telegram להתראות. רשמו כל order ID שאתם שולחים וכל מילוי שאתם מקבלים.
- גיבויים: שמרו מצב בכל דקה. אם ה-VPS מת באמצע מילוי, תרצו להמשיך תוך שניות, לא לבצע reconciliation ידני.
- מס: הלוג שלכם הוא גם trail הביקורת שלכם - ראו מדריך מס.
חלק 14 - טיפים מאומתים ל-Polymarket API
- שמרו במטמון את אישורי ה-API אחרי קריאת ה-derive הראשונה -
create_or_derive_api_creds()כפופה למגבלת קצב ואיטית. שמרו apiKey/secret/passphrase ב-.envוטענו בפתיחה. - השתמשו ב-signature_type=2 (GNOSIS_SAFE) אם חיברתם קודם ארנק דפדפן, ו-signature_type=1 (POLY_PROXY) רק לחשבונות Magic-link בדוא"ל. סוג לא תואם מחזיר 401 "invalid api key."
- הגדירו
funderלכתובת ארנק הפרוקסי שלכם של Polymarket, לא ל-EOA שלכם. מפתח החתימה חי ב-EOA; הכספים חיים בפרוקסי. בלבול ביניהם הוא באג האימות מספר 1. - אינדקסו תוצאות לפי תווית, לעולם לא לפי מיקום -
clobTokenIds[outcomes.index("Yes")]ולאclobTokenIds[0]. לשווקי NegRisk ואוסקר יש סדר שרירותי. - סנכרנו את השעון לפני חתימה - POLY_TIMESTAMP חייב להיות בתוך חלון צר. סטיית NTP ב-VPS זול שוברת אימות בשקט. הפעילו chrony או systemd-timesyncd.
- משכו מחדש את ספר ה-REST בכל התחברות WebSocket מחדש לפני resubscribe. WebSocket נותן deltas; אם פספסתם delta בזמן ההתחברות מחדש הספר המקומי יסטה מהמציאות ותצוטטו מחירים מפסידים.
- לעולם אל תתפוצצו מעל 10 פקודות בשנייה - נקודת הקצה /order מגבילה burst ל-500/10s ול-3,000/10min ברצף. הוסיפו token-bucket rate limiter בצד הלקוח; Cloudflare תתור במקום להפיל, כך ש-retry עיוור רק יגדיל את התור.
- השתמשו ב-
cancel_market_orders(market=conditionId)בעת כיבוי ולא ב-cancel_all(). ביטול לפי שוק הוא idempotent ובטוח יותר אם הבוט קורס באמצע לולאה רק על שוק אחד. - עקבו אחרי
heartbeatMsלכל asset - הוסיפו watchdog שמרענן בכפייה כל שוק ללא עדכונים במשך 30 שניות בשוק חי. פידים מיושנים של WS הם מקור נפוץ ביותר ל-phantom edge. - רשמו את order ID לפני השליחה, לא אחריה. idempotency דורשת שהלקוח ייקח בעלות על ה-ID כדי שבשחזור קריסה אפשר יהיה לשלוח שוב בלי מילויים כפולים.
- השתמשו ב-HeartBeats API (ינואר 2026+) לביטול אוטומטי בעת ניתוק. הגדירו heartbeat interval ל-5 שניות; השרת מבטל את כל הפקודות היושבות שלכם אם הוא מפספס שני heartbeats.
- בצעו paper trade עם פקודות של $1 בשוק דק במשך 48 שעות לפני הגדלה. לפולימרקט אין testnet; פקודות אמיתיות קטנות הן הדרך היחידה האמינה לאמת אימות, חתימה, טיפול במילוי וזרימת ביטול.
גיליון מצב → פעולה
| מצב | פעולה | למה |
|---|---|---|
| 401 "invalid api key" בקריאה ראשונה | בדקו שה-signature_type תואם למקור הארנק ושה-funder הוא כתובת הפרוקסי | אי-התאמה בין Type 1 ל-2 היא 80% משגיאות ה-401; EOA בתור funder הוא השאר |
| פקודות נדחות עם "insufficient balance" | שאילתת /balance-allowance לפני כל פקודה ושמירה מקומית של רזרבה | CLOB שומר בטוחה את הקולטרל ברגע השליחה; שתי פקודות מקבילות יכולות לשמור כפול |
| 429 throttling ב-/order endpoint | Back off with jitter: 2^attempt + random() עם תקרה של 30 שניות | Cloudflare מגבילה במקום לדחות; retry נאיבי מגדיל את התור |
| WebSocket התנתק באמצע מסחר | צלמו את הספר דרך REST, בצעו reconcile למצב המקומי, ואז resubscribe | deltas במהלך הפער אובדים; snapshot מסנכרן מחדש את מדרגות המחיר |
| הונחה פקודה אבל לא התקבלה אישור מילוי | שאילתה /data/order/{id} בתוך 5 שניות; אם ממתין, לחכות; אם לא נמצא, להחליף | נדיר אך בר-התאוששות; ברירת המחדל היא "בדקו מצב, ואז פעלו" |
| השוק יושב במהלך ציטוט פעיל | בטלו את כל הפקודות הפתוחות על אותו conditionId בעת אירוע היישוב | פקודות לאחר היישוב עלולות להישאר כמילויי זומבי אם מוזרות adapter מופעלות |
| הרצת בוט יצירת שוק | ציטטו בתוך 2 סנט ממחיר האמצע עם גודל של 100+ shares | נוסחת התגמול שוקלת tightness + size + time-on-book; tight + size + persistent מנצחים |
| הרצת בוט ארביטראז' על רב-תוצאה | השתמשו ב-FOK לכל רגל, לא ב-GTC | מילויים חלקיים ברגל A עם רגל B מלאה = חשיפה לא מגודרת והפסד מיידי |
| פעם ראשונה בבניית בוט | בנו סורק קודם, ואז מנוע מחיר, ואז signal - לעולם לא signal קודם | Signals בלי מצב ספר נקי הם מלכודות קורלציה; קודם תנו לצינורות לעבוד |
| בוט ייצור קרס ב-3am | דאגו ל-systemd auto-restart + התראת Telegram + מצב מתמיד | כל בוט לא מפוקח יקרוס; השאלה היחידה היא אם הוא יעלה מחדש בצורה נקייה |
מטרה. להרוויח תגמולי נזילות בשוק פוליטיקה בנפח בינוני במחיר בערך 0.48 Yes / 0.52 No עם מרווח (spread) של 2 סנט. מאגר תגמול יומי ~$40 עבור השוק הזה.
הגדרה. WebSocket מתחבר לשני ה-token_ids. שומרים במטמון את ה-mid האחרון שנצפה. מגדירים spread_target = 0.02, size = 200 shares לכל צד, reprice_threshold = 0.005 (5 ticks).
לולאה. בכל עדכון WS של הספר: מחשבים mid חדש = VWAP של 3 ה-bids וה-asks העליונים. אם |הצעות נוכחיות - mid יעד| > reprice_threshold, מבטלים את שתי הפקודות הקיימות, מניחים bid חדש ב-mid-0.01 ו-ask חדש ב-mid+0.01. מגבילים את עדכון המחיר פעם ל-2 שניות לכל צד.
סיכון. מלאי מקסימלי לכל צד = 1,000 shares. אם המלאי > 500, מרחיבים את ה-מרווח בצד הזה ב-0.005 לכל 100 shares. מפסק: אם ה-mid זז >0.05 בתוך 60 שניות, מבטלים הכול ועוצרים 5 דקות.
תוצאה (ריצה אמיתית של 7 ימים). מולאו ~14,000 shares על פני 680 פקודות, שולמו $0 ב-לוקח נזילות (taker) fees (צד ספק נזילות), הושגו $31.40 בהחזרים על נזילות, P&L כיווני נטו היה -$4.10 (הפסדי מלאי קטנים). נטו +$27.30 במשך 7 ימים על הון עבודה של $500 = ~8% חודשי. ניתן להרחיב באופן ליניארי על פני 30-50 שווקים במקביל על VPS יחיד.
המסר המרכזי
הסוחרים שמרוויחים בעקביות בפולימרקט מתייחסים ל-polymarket api guide כאל מערכת, לא כאל תחושת בטן. שמרו את המספרים שלמעלה - הם ההבדל בין הארנקים הרווחיים של 7.6% לבין השאר.
מה הלאה?
- כלים ומשאבים - לוחות מחוונים של צד שלישי, אנליטיקה ופידי נתונים שמשלימים את ה-API
- אסטרטגיות מתקדמות - ארביטראז' מרובה רגליים ובניות דמויות-אופציות המתאימות לבוטים
- תגמולי נזילות - נוסחאות מדויקות להרוויח החזרי market-making
- מדריך ספר פקודות - אינטואיציה עמוקה יותר לקריאת הספר לפני כתיבה מולו
- מילון מונחים - הגדרות פשוטות באנגלית לכל מונח במדריך הזה
קריאה מומלצת
התחילו כאן אם אתם חדשים, או קפצו ישר לעמוד שמתאים לשלב שלכם:





