Grok × Polymarket 4-Step Multi-Agent Trading Desk: SCAN · VERIFY · EXECUTE · EXIT Pipeline That Filters Out 90% of Bad Trades
The best agent on a quantitative trading desk has never placed a trade — its entire job is to say NO. Learn how to replace fragile single-prompt FOMO bots with an institutional 4-Agent Desk (SCAN -> VERIFY -> EXECUTE -> EXIT) for Polymarket CLOB & crypto markets: run free deterministic code filters first, invoke Grok `x_search` only on survivors, size off live cash + pool depth, and enforce 5 pre-written exit rules (`exits.py`) with full `tasks.csv` skip auditing.
lista de verificación de 3 minutos para principiantes
- ✓An xAI Grok API Key from console.x.ai (with
x_searchCopiar enabled for live X sentiment and fake-news verification) - ✓A dedicated Polymarket sub-wallet via https://poly.market/p-day (run
PAPER = TrueCopiar for the first 7 days before touching live funds) - ✓A Linux VPS (e.g., RAKsmart) where API keys are written via
read -rsCopiar into achmod 600 .envCopiar file, never pasted into chat logs
¡Nunca ejecutes un bot de trading en vivo en una laptop doméstica que entre en reposo o pierda Wi-Fi! recomendamos RAKsmart Cloud VPS: (1) Elige Tokio, Singapur o Silicon Valley para una latencia ultra baja en milisegundos con OKX/Binance y RPCs de Polygon; (2) Selecciona Ubuntu 22.04 LTS (2 vCPU / 4GB de RAM) para Docker Compose; (3) Asocia tu dirección IPv4 estática dedicada con la lista blanca de la API de tu bolsa.
¿Acabas de comprar un VPS? Cómo conectar por SSH y ejecutar comandos en Windows / Mac (Guía de 3 minutos)
Muchos usuarios por primera vez se atascan justo después de comprar un servidor en la nube: '¿Dónde escribo estos comandos de terminal?'. Sigue estos 5 pasos simples:
• Dirección IPv4 del servidor (ej.,
198.51.100.88Copiar)• Puerto SSH: Generalmente
22Copiar, o un puerto de seguridad personalizado como 22022Copiar / 62134Copiar mostrado en tu panel• Nombre de usuario: Siempre
rootCopiar en Ubuntu• Contraseña de Root: Tu contraseña inicial del servidor
powershellCopiar y pulsa Enter.• En Mac: Presiona Command ⌘ + Space, escribe
TerminalCopiar y pulsa Enter.ssh -p PORT root@SERVER_IPCopiar (nótese que -pCopiar va en minúscula; si omites un puerto personalizado, recibirás el error Connection refusedCopiar):• Puerto estándar 22:
ssh -p 22 root@198.51.100.88Copiar• Puerto SSH personalizado (p. ej.,
62134Copiar): ssh -p 62134 root@198.51.100.88CopiarAre you sure you want to continue connecting (yes/no)?Copiar, escribe la palabra completa yesCopiar y pulsa Enter.• Pregunta 2 ([!] ¿Por qué el cursor no se mueve cuando escribo mi contraseña?!): Cuando te pida la
password:Copiar, Linux oculta todos los caracteres (ni siquiera aparecen los asteriscos *) por seguridad! Simplemente haz clic derecho en PowerShell (o presiona Cmd + VCopiar en Mac) para pegar tu contraseña de forma invisible y luego pulsa Enter!root@ubuntu:~#Copiar, ¡estás dentro de tu servidor en la nube! Pega estos comandos de configuración una sola vez para instalar Docker, Git y Python:docker compose ...Copiar: Simplemente haz clic derecho para pegar en tu ventana SSH y pulsa Enter.• Para scripts de Python (
.pyCopiar): Escribe nano bot.pyCopiar y pulsa Enter → Haz clic derecho para pegar el código → Presiona Ctrl + O y luego Enter para guardar → Presiona Ctrl + X para salir → Ejecuta nohup python3 bot.py > bot.log 2>&1 &Copiar para que tu bot siga funcionando 24/7 aunque cierres tu laptop!# 1. Update Ubuntu packages and install Git, Curl, and Python3
apt update -y && apt install -y curl git python3-pip python3-venv
# 2. One-line official Docker & Docker Compose installation
curl -fsSL https://get.docker.com | sh && systemctl enable --now docker
# 3. Verify Docker Compose is ready
docker compose version
# ==============================================================================
# poly_grok_desk.py — 4-Agent Quantitative Trading Desk (SCAN·VERIFY·EXECUTE·EXIT)
# Philosophy: "The best agent on a trading desk has never placed a trade.
# Its whole job is to say NO."
# Safe Setup (Never echo API keys into terminal history):
# mkdir -p /workspace/desk && cd /workspace/desk
# read -rs -p "xai key: " K && printf 'XAI_API_KEY=%s\n' "$K" > .env && unset K
# chmod 600 .env
# ==============================================================================
import csv, json, os, time
from collections import Counter
# 1. CONFIG (You edit this file. The bot NEVER edits config constants itself.)
MODEL = "grok-4.7"
PAPER = True # Paper mode first: real orderbooks, real prices, simulated fills
START_BALANCE = 1000.0 # Dedicated sub-wallet bankroll ($1,000 USDC)
SCANNERS = ["SCAN-1", "SCAN-2", "SCAN-3", "SCAN-4"]
LEADS_PER_RUN = 12 # Cap per 5-min run so a busy minute never burns API budget
SKIP_IF = {
"min_liquidity_usd": 50_000, # Pool liquidity < $50k -> instant free SKIP
"max_spread_cents": 2.2, # Bid-Ask spread > 2.2¢ -> instant free SKIP
"min_age_min": 30, # Market too fresh / unindexed -> SKIP
"max_hours_to_resolve": 168, # Capital efficiency: skip dead-money > 7 days out
"max_ticket_share": 0.01, # Your order size is NEVER > 1% of orderbook liquidity
}
MIN_X_CONFIDENCE = 0.72 # Grok x_search confidence below 0.72 -> SKIP
SIZE_PCT = 0.15 # Bet 15% of current available cash (capped at $200 & 1% of pool)
MIN_TICKET, MAX_TICKET = 20.0, 200.0
MAX_OPEN = 5 # Max 5 concurrent slots (5 × $200 = $1,000)
SESSION_LOSS_HALT_PCT = 15.0 # Circuit breaker: down 15% from session start -> halt new entries
EXIT = {
"hard_stop_pct": -18.0, # Price drops 18% -> exit 100% immediately
"ladder": [(15.0, 0.50), (35.0, 0.50)], # Take profit ladder: +15% sells half, +35% sells rest
"trail_pct": 12.0, # After first take: exit if price pulls back 12% from peak
"time_stop_min": 720, # 12h flat (< +2%) -> free the slot ("Dead money is a loss")
"time_stop_min_pct": 2.0,
"liq_drop_pct": 40.0, # Orderbook depth drops 40% since entry -> exit 100% now
}
# 2. VERIFY STEP: Free Deterministic Code Checks FIRST, Paid Grok X-Read LAST
X_READ_PROMPT = """
You are VERIFY, the final gatekeeper on a Polymarket quantitative desk.
This market already passed all hard code checks (liquidity >= $50k, tight spread, valid window).
Search X (Twitter) for the event and audit the UMA Resolution Rules. Judge ONLY what code cannot see:
1. Ambiguous / subjective UMA resolution criteria (wordplay risk or disputed oracle source)
2. Coordinated bot hype on X (dozens of fresh accounts posting identical fake breaking news)
3. Whether the official primary source (Fed / AP / League scoreboard) has actually confirmed
RETURN ONLY JSON: {"verdict": "GO" | "SKIP", "confidence": 0.0-1.0, "why": "one concise line"}
Unsure is SKIP. Anything not valid JSON is SKIP.
"""
def hard_skip(f: dict) -> str | None:
"""Facts are code. A missing field is ALWAYS a skip, never a guess."""
req = ["price", "liq_usd", "spread_cents", "age_min", "hours_to_resolve", "uma_disputed"]
if any(f.get(k) is None for k in req): return "missing_data"
if f["uma_disputed"]: return "uma_dispute_active"
if f["liq_usd"] < SKIP_IF["min_liquidity_usd"]: return "thin_liquidity"
if f["spread_cents"] > SKIP_IF["max_spread_cents"]: return "wide_spread"
if f["age_min"] < SKIP_IF["min_age_min"]: return "too_fresh"
if f["hours_to_resolve"] > SKIP_IF["max_hours_to_resolve"]: return "dead_money_horizon"
return None
def size_order(cash_usdc: float, liq_usd: float) -> float:
"""Sized off the balance you have NOW + capped at 1% of pool depth."""
usd = cash_usdc * SIZE_PCT
usd = min(max(usd, MIN_TICKET), MAX_TICKET, liq_usd * SKIP_IF["max_ticket_share"])
return round(usd, 2)
# 3. EXIT STEP: Written BEFORE Entry (Runs every 5 minutes on all open positions)
def evaluate_exit(pos: dict, cur_price: float, cur_liq: float, now_ts: float) -> tuple[float, str] | None:
if cur_price <= 0:
return (1.0, "market_halted")
peak = max(pos["peak"], cur_price)
pct = (cur_price / pos["entry"] - 1.0) * 100.0
age_min = (now_ts - pos["opened_ts"]) / 60.0
if cur_liq < pos["liq0"] * (1.0 - EXIT["liq_drop_pct"] / 100.0):
return (1.0, "liquidity_pulled_40pct")
if pct <= EXIT["hard_stop_pct"]:
return (1.0, "hard_stop")
if pos["steps"] < len(EXIT["ladder"]):
target_pct, frac = EXIT["ladder"][pos["steps"]]
if pct >= target_pct:
return (frac, f"take_profit_+{target_pct:.0f}pct")
if pos["steps"] > 0 and cur_price <= peak * (1.0 - EXIT["trail_pct"] / 100.0):
return (1.0, "trailing_stop_from_peak")
if pos["steps"] == 0 and age_min >= EXIT["time_stop_min"] and pct < EXIT["time_stop_min_pct"]:
return (1.0, "time_stop_dead_money")
return None
if __name__ == "__main__":
sample_lead = {"slug": "fed-cuts-25bps-nov", "price": 0.984, "liq_usd": 420_000,
"spread_cents": 0.4, "age_min": 1440, "hours_to_resolve": 18, "uma_disputed": False}
skip_reason = hard_skip(sample_lead)
ticket_usdc = size_order(1000.0, sample_lead["liq_usd"]) if not skip_reason else 0.0
print(f"[VERIFY] hard_skip={skip_reason} -> Survivor sent to Grok X-Read | Ticket=${ticket_usdc} USDC")
explicación línea por línea del código y comandos en español sencillo
| Código / Línea de comandos | Explicación en español sencillo (¿Qué hace esto?) |
|---|---|
read -rs -p "xai key: " K && printf 'XAI_API_KEY=%s\n' "$K" > .env && unset K
|
Zero-echo secret injection: writes your xAI key into .envCopiar without echoing to terminal history or AI chat transcripts. |
SKIP_IF = {"min_liquidity_usd": 50_000, "max_spread_cents": 2.2, ...}
|
Hard deterministic filter thresholds that kill 90%+ of low-quality markets for free before calling Grok. |
def hard_skip(f: dict) -> str | None:
|
Enforces 'facts before opinions' — any missing field or thin orderbook returns a final SKIPCopiar. |
usd = min(max(usd, MIN_TICKET), MAX_TICKET, liq_usd * SKIP_IF["max_ticket_share"])
|
Sizes each survivor off current cash while capping exposure at $200 and 1% of orderbook liquidity. |
if cur_liq < pos["liq0"] * (1.0 - EXIT["liq_drop_pct"] / 100.0): return (1.0, "liquidity_pulled_40pct")
|
Pre-written exit trigger: dumps 100% of the position immediately if orderbook depth drops 40% from entry. |
if pos["steps"] == 0 and age_min >= EXIT["time_stop_min"] and pct < EXIT["time_stop_min_pct"]:
|
Time-stop exit: frees the slot if a position stays flat for 12 hours ('Dead money is a loss too'). |
[!] los 3 errores más comunes de principiantes y guía de solución de problemas
✕ Pitfall 1: Sending Every Raw Scanner Lead Directly to Grok x_searchCopiar
The bill must scale with survivors, not with leads. Always run free hard_skip()Copiar checks first so 90% of bad markets die for free.
✕ Pitfall 2: Letting the Bot Edit config.pyCopiar Risk Constants on Its Own
Only humans edit config.pyCopiar. Never let an autonomous routine widen stop-losses or raise MAX_TICKETCopiar.
✕ Pitfall 3: Re-Running a Rejected Market Until the LLM Says GOCopiar
A skip is final. Re-prompting VERIFY to get the answer you want turns your desk back into FOMO with an API key.
Part 1: Why Single-Prompt Bots Fail — Replace FOMO with a 4-Agent Trading Desk
Everyone's first bot is the same: one agent, one prompt ('find a market, check news, buy, sell the top'). That's not a quantitative agent — that's your FOMO with an API key. A real trading desk splits every trade into four strict roles inside one codebase: SCANCopiar (finds leads from Polymarket Gamma / whale wallets without opinions), VERIFYCopiar (whose default answer is SKIPCopiar), EXECUTECopiar (sizes survivors off current cash and pool depth), and EXITCopiar (enforces pre-written stops and ladders).
Part 2: Funnel Economics — Free Deterministic Code Skips First, Paid Grok x_searchCopiar Last
Your AI API bill should scale with survivors, not with leads. In verify.pyCopiar, hard_skip()Copiar runs free deterministic checks first (liquidity < $50k, spread > 2.2¢, missing fields -> instant SKIPCopiar). Only the 5% of leads that survive every hard rule trigger a Grok API call with x_searchCopiar enabled to check for coordinated X bot hype or ambiguous UMA Resolution Rules.
Part 3: Write the Exit Before the Entry (exits.pyCopiar) — Dead Money Is a Loss Too
Most retail traders decide when to sell while staring at a green or red candle. On this desk, five exit triggers exist before entry: 40% liquidity drop pull-out, hard stop, stepped profit ladder, peak trailing stop, and a time stop that frees flat capital slots.
Want built-in trailing stops and automated grid ladders without coding? Use Pionex's 16 Free Cloud AI Trading Bots ↗.
Part 4: Auditing tasks.csvCopiar vs trades.csvCopiar, Zero-Echo Key Setup & Paper-to-Live Fences
Deploy on an isolated RAKsmart Linux VPS ↗, inject keys via read -rsCopiar into a chmod 600 .envCopiar file so secrets never land in chat transcripts, run PAPER = TrueCopiar for 7 days on Polymarket ↗, and verify that tasks.csvCopiar logs 90%+ skips before enabling live execution.
Headline Quant Guides Directory (With Reading Level, Time & Code Stack)
Start from L1 Beginner Essentials and progress to L4 Institutional Tick Backtesting. Every guide includes reading difficulty, estimated reading time, and production-ready code:
Beginner $1,000 Quant Starter Combo Deep-Dive: How Much Can You Earn Monthly Running Polymarket Penny Clipper & LP Bots?
Complete quantitative breakdown for first-time algorithmic traders starting with $1,000 USDC: ranking all 4 Polymarket open-source bot strategies by risk-adjusted edge, modeling 3 realistic monthly profit tiers ($60–$180/mo or 6%–18% monthly ROI) using 5×$200 position splitting, and enforcing the 3 iron survival rules.
Pionex Cloud AI Bots vs. Self-Hosted Polymarket Bots (CloddsBot / Grok Desk): 6 Key Differences & Dual-Engine Allocation Guide
Both are called 'quant trading bots,' yet Pionex's 16 built-in cloud bots and self-hosted open-source Polymarket bots (`CloddsBot`, `polymarket_lp_tool`, `Grok 4-Step Desk`) operate on completely different market mechanics. Pionex harvests crypto volatility and perpetual funding rates with zero code and massive liquidity capacity, while self-hosted Polymarket bots snipe $1.00 deterministic event settlement discounts and Daily LP Rewards with zero correlation to Bitcoin price swings.
Pionex AI Quantitative Trading Complete Guide: 16 Free Built-In Grid Bots, Funding-Rate Arbitrage & Polymarket Delta Hedging
Don't want to maintain a Linux VPS? Master Pionex's 16 free built-in AI trading bots (PionexGPT strategy generator, AI Infinity Grid, Spot-Futures Funding Rate Arbitrage, and 0.05% maker/taker fees) and learn how to pair Pionex BTC/ETH grids with Polymarket event tail-hedges.
CloddsBot & Polymarket LP Bot Complete Guide: Deploy 119-Skill AI Arbitrage, Penny Clipper & Daily Liquidity Rewards Bots
Why pay $5,000+ for black-box bots when the best Polymarket trading engines are MIT open-source on GitHub? Full deployment guide to `alsk1992/CloddsBot` (3.1k⭐, 119+ skills including cross-market arbitrage, Penny Clipper expiry decay, and smart-money copy trading) and `lihanyu81/polymarket_lp_tool` (passive LP market-making for daily USDC rewards).
Grok × Polymarket 4-Step Multi-Agent Trading Desk: SCAN · VERIFY · EXECUTE · EXIT Pipeline That Filters Out 90% of Bad Trades
The best agent on a quantitative trading desk has never placed a trade — its entire job is to say NO. Learn how to replace fragile single-prompt FOMO bots with an institutional 4-Agent Desk (SCAN -> VERIFY -> EXECUTE -> EXIT) for Polymarket CLOB & crypto markets: run free deterministic code filters first, invoke Grok `x_search` only on survivors, size off live cash + pool depth, and enforce 5 pre-written exit rules (`exits.py`) with full `tasks.csv` skip auditing.
Guía Cuant para Polymarket CLOB: Despliega un bot de copia de ballenas y maker con 0% de comisiones usando py-clob-client
Recorrido de ingeniería completo: deriva credenciales L2 de Polygon CLOB, consulta IDs de tokens de condición Gamma, suscríbete a las ejecuciones de ballenas y coloca órdenes límite sin gas con 0% de comisiones EIP-712.
Guía de Seguridad de VPS para Quant, Whitelisting de IP para APIs e Ingeniería de Kill-Switch por Retiro de Capital
Lista de verificación de seguridad en producción para traders cuantitativos: selección de VPS de baja latencia, whitelisting de IP para APIs de exchanges, claves con retiros desactivados y kill-switches automatizados de retiro del 5% diario.
Calibración de Probabilidades con LLMs de IA + Dimensionamiento Half-Kelly: Integración Paso a Paso de las APIs de DeepSeek / OpenAI / Ollama para Órdenes con EV+
Guía completa paso a paso para conectar LLMs de DeepSeek, OpenAI GPT-4o o Ollama locales mediante Python, a fin de analizar noticias de último momento y convertirlas en ratios de verosimilitud bayesiano estructurados y tamaños de posición Half-Kelly.
Tutorial de Freqtrade + FreqAI con Docker: Conecta OKX / Binance, descarga datos históricos y auditá el sesgo de anticipación
Guía paso a paso para desplegar Freqtrade mediante Docker Compose, descargar datos OHLCV de varios años de OKX y Binance, ejecutar pruebas retroactivas (backtests) realistas ajustadas por comisiones y ejecutar `lookahead-analysis`.
Guía de Market Making y Delta-Hedging de Hummingbot: Arbitraje de cuotas de Polymarket frente a Perps de OKX / Binance
Cómo los escritorios institucionales combinan los controladores de market-making de Hummingbot V2 en OKX/Binance con contratos de eventos de Polymarket para construir coberturas de volatilidad macro delta-neutras.
Guía de Backtesting de L2 Orderbook en NautilusTrader: Eliminando ilusiones de slippage y sesgo de posición en cola
Cómo ejecutar backtests de alto nivel de fidelidad del L2 orderbook en NautilusTrader con rellenos realistas de posición en cola, modelado de latencia y validación Walk-Forward.
Poly Day (p.day) — ¿Qué es Polymarket y Cómo Funciona el Mayor Mercado de Predicciones, Apuestas y Cuotas del Mundial?
Guías sobre qué es Polymarket, cómo funciona, cuotas del Mundial, Champions League y depósito USDC sin KYC
Cada vez más traders en España, México, Argentina, Colombia, Perú y Chile buscan «Polymarket qué es», «cómo funciona Polymarket» y cómo participar en el mercado de predicciones descentralizado más líquido del mundo. En Polymarket apuestas sobre eventos reales —desde las elecciones presidenciales y la Reserva Federal hasta la Champions League y la Copa del Mundo (Polymarket World Cup)— comprando acciones «Sí» o «No» entre 0,01 $ y 0,99 $ USDC en la red Polygon.
A través de Poly Day Español (p.day/es/), accedes sin KYC a las cuotas de Polymarket en tiempo real, el rastreador de ballenas (Polymarket Analytics), la guía de la Polymarket App y tutoriales paso a paso para depositar USDC (Polygon) desde Binance P2P, Bitso, Lemon Cash o Belo con comisiones cercanas a cero.