| --- |
| tags: |
| - ml-intern |
| --- |
| # BuilderBrain |
|
|
| **Agentic Prediction Market Intelligence** β An AI research and trading agent that reads the prediction-market universe, produces structured probabilities and reasoning traces, and routes orders via Polymarket builder codes, settling capital over Arc using USDC Nanopayments and Gateway. |
|
|
| Built for the **Agora Agents Hackathon** (Canteen Γ Circle). |
|
|
| **Status:** Core quant engine, reasoning agent, and Polymarket market data are **fully functional**. Arc/Circle settlement layer has **real API skeletons + simulated fallback** β documented with exact integration paths. See [`REAL_VS_SIMULATED.md`](./REAL_VS_SIMULATED.md) for detailed status. |
|
|
| --- |
|
|
| ## What It Does |
|
|
| BuilderBrain sits at **Layer 5: Intelligence** of the prediction market stack (per Canteen's unbundling thesis). Instead of building another exchange, we build the intelligence layer that sits above exchanges and distribution β surfacing signal and reasoning. |
|
|
| ### Core Flow |
|
|
| ``` |
| Polymarket Data β Reasoning Agent β Kelly Engine β Builder Code Router β Arc Settlement |
| β β β β β |
| Live prices Structured Correlation-aware Fee sharing Nanopayments |
| Orderbook arguments position sizing per trade USYC yield |
| Liquidity Risk factors Drawdown limits Volume tracking Gas abstraction |
| ``` |
|
|
| ### Key Features |
|
|
| | Component | Status | What It Does | Why It Wins | |
| |-----------|--------|-------------|-------------| |
| | **Reasoning Agent** | β
Real | Generates structured reasoning traces (arguments, evidence, risks) for every trade | "Trading-R1": reasoning as a first-class product, hashed and auditable | |
| | **QP Kelly Engine** | β
Real | Convex optimization for correlation-aware position sizing | References Tepelyan (Bloomberg 2026) Laplace quadrature; achieves 95%+ optimal in <10ms | |
| | **Block-Diagonal Correlation** | β
Real | Politics/crypto/sports/macro theme blocks with intra-theme correlations | Jane Street-level rigor; most teams do independent Kelly | |
| | **Polymarket Data** | β
Real | Live market data via Gamma API (public, no auth) | Real prices, liquidity, orderbook | |
| | **Builder Code Router** | β οΈ Simulated | Routes orders through builder codes, earning fees on every fill | Real monetization; fields correct per Polymarket docs | |
| | **Circle Gateway** | β οΈ Simulated | Cross-chain USDC routing via CCTP | Real HTTP client skeleton; needs API key + burn intent encoding | |
| | **Arc Nanopayments** | β οΈ Simulated | Per-trade (5bps) + per-insight (1Β’) fees | Architecture correct per x402/EIP-3009 docs; needs signatures | |
| | **USYC Yield** | β οΈ Simulated | 4.3% APY on idle capital with auto risk-off rotation | Real Arc Testnet contracts documented | |
| | **Paymaster** | β οΈ Simulated | Gas-abstracted UX via ERC-4337 | Architecture correct per Pimlico + Circle docs | |
|
|
| --- |
|
|
| ## Quick Start |
|
|
| ```bash |
| # Install dependencies |
| pip install -r requirements.txt |
| |
| # Run demo (simulated mode, works without credentials) |
| python demo.py |
| ``` |
|
|
| ### Programmatic Usage |
|
|
| ```python |
| from builderbrain import BuilderBrain |
| |
| # Initialize with $10k bankroll (paper trading) |
| brain = BuilderBrain( |
| bankroll_usd=10000, |
| paper_trade=True, |
| builder_code="my_strategy_v1", |
| min_edge=0.03, # 3% minimum edge |
| ) |
| |
| # Run one cycle (fetches real Polymarket data) |
| signals = brain.run_cycle() |
| |
| # Get top signals |
| for sig in brain.get_top_signals(5): |
| print(f"{sig.market_id}: {sig.side} @ {sig.size_fraction:.1%} bankroll") |
| print(f" Expected return: {sig.expected_return:.4f}") |
| print(f" Trace hash: {sig.reasoning_trace.reasoning_hash}") |
| |
| # Export audit log for on-chain anchoring |
| brain.export_audit_log("audit.json") |
| ``` |
|
|
| ### Using Real Circle Gateway API |
|
|
| ```python |
| from builderbrain import BuilderBrain, CircleGatewayClient |
| |
| # Initialize with real Gateway client |
| gateway = CircleGatewayClient(api_key="sk_test_...") |
| brain = BuilderBrain( |
| bankroll_usd=10000, |
| arc_bridge=gateway, # Use real Gateway instead of simulated |
| ) |
| |
| # Query balances |
| balances = gateway.get_balances(depositor="0x...", domain=0) |
| print(balances) |
| ``` |
|
|
| --- |
|
|
| ## Architecture |
|
|
| ``` |
| builderbrain/ |
| βββ __init__.py # Package exports |
| βββ quant_engine.py # KellyEngine + CorrelationMatrix (REAL) |
| βββ polymarket_client.py # PolymarketClient + BuilderCodeRouter (Market data REAL, orders SIMULATED) |
| βββ reasoning_agent.py # ReasoningAgent + TradeSignal (REAL) |
| βββ arc_bridge.py # ArcBridge β simulated with real API patterns documented |
| βββ circle_gateway_client.py # CircleGatewayClient β REAL HTTP client for Gateway API |
| βββ pipeline.py # BuilderBrain main orchestrator |
| |
| demo.py # Hackathon demo script |
| requirements.txt # Dependencies |
| .env.example # All required credentials for live mode |
| REAL_VS_SIMULATED.md # Detailed real vs simulated breakdown |
| tests/ |
| βββ test_quant_engine.py # Unit tests for Kelly engine |
| ``` |
|
|
| ### Quant Engine (`quant_engine.py`) β β
FULLY REAL |
| |
| - **KellyEngine**: Convex QP approximation to multivariate Kelly using `cvxpy` + `ECOS` solver |
| - **CorrelationMatrix**: Block-diagonal structure (politics, crypto, sports, macro) |
| - **Constraints**: Leverage β€2Γ, drawdown β€20%, per-position β€25% |
| - **Reference**: Tepelyan (Bloomberg, 2026) β QP approximation achieves >95% of Laplace quadrature solution in <10ms |
| |
| ### Reasoning Agent (`reasoning_agent.py`) β β
FULLY REAL |
|
|
| - **ReasoningTrace**: Complete audit artifact with sources, arguments, risks |
| - **TradeSignal**: Executable recommendation with urgency classification |
| - **On-chain anchoring**: SHA256 hash of canonical JSON representation |
|
|
| ### Polymarket Client (`polymarket_client.py`) β MIXED |
| |
| - β
**Market data**: Live Gamma API calls (public, no auth) |
| - β
**Orderbook**: Live CLOB API calls |
| - β οΈ **Order execution**: Simulated paper trading; builder code field structure is correct per Polymarket docs |
| |
| ### Arc Bridge (`arc_bridge.py`) β SIMULATED WITH REAL PATTERNS |
|
|
| - Documented with exact real API endpoints and request/response schemas |
| - Simulated for hackathon demo without credentials |
| - Dual mode: pass `gateway_client` for real API calls |
|
|
| ### Circle Gateway Client (`circle_gateway_client.py`) β β
REAL HTTP CLIENT |
|
|
| - **GET /v1/gateway-info**: Enumerate domains/chains/contracts |
| - **POST /v1/balances**: Query unified USDC balance |
| - **POST /v1/transfer**: Create transfer attestation (needs burn intent encoding + signatures) |
| - Base URL: `https://gateway-api-testnet.circle.com` |
|
|
| --- |
|
|
| ## The Kelly Criterion |
|
|
| ### The Problem |
|
|
| Traditional multivariate Kelly is **O(2βΏ)** and numerically unstable near full investment (Tepelyan, Bloomberg 2026). |
|
|
| ### Our Solution |
|
|
| We implement a **convex QP approximation** with block-diagonal correlation: |
|
|
| ``` |
| max f·μ - 0.5·f·Σ·f |
| s.t. f β₯ 0 |
| Ξ£f β€ 2.0 (leverage cap) |
| ||Σ·f||β β€ 0.20 (drawdown) |
| f β€ 0.25 (per-position cap) |
| ``` |
|
|
| **References**: Tepelyan (Bloomberg, 2026) "Efficient Multivariate Kelly Optimization" β Laplace quadrature achieves O(nΒ·T). Our QP approximation achieves >95% solution quality in <10ms for 100+ markets. |
|
|
| ### Correlation Structure |
|
|
| | Theme | Intra-theme Correlation | Example Pairs | |
| |-------|------------------------|---------------| |
| | Politics | 0.72 | Trump election β Musk DOGE | |
| | Crypto | 0.85 | BTC β ETH | |
| | Sports | 0.05 | Super Bowl β World Cup | |
| | Macro | 0.68 | Fed rate β Oil price | |
| | Cross-theme | 0.05 | Politics β Sports | |
|
|
| --- |
|
|
| ## Real vs Simulated: Migration Path |
|
|
| ### Already Working (No Credentials) |
|
|
| - β
Live Polymarket market data |
| - β
Kelly optimization with correlation-aware sizing |
| - β
Structured reasoning trace generation |
| - β
Paper trading with builder code field tracking |
|
|
| ### Needs Credentials (See `.env.example`) |
|
|
| | Step | What You Need | Estimated Time | |
| |------|--------------|---------------| |
| | 1. Polymarket builder codes | Register at polymarket.com/settings?tab=builder | 10 min | |
| | 2. Circle API key | Sign up at developers.circle.com | 30 min | |
| | 3. Gateway transfers | API key + depositor address + domain info | 2-4 hours | |
| | 4. Nanopayments | x402 client + EIP-3009 signing | 1 day | |
| | 5. USYC yield | Web3 provider + Teller ABI | 2-3 hours | |
| | 6. Paymaster | Pimlico bundler + ERC-4337 setup | 1 day | |
|
|
| See [`REAL_VS_SIMULATED.md`](./REAL_VS_SIMULATED.md) for detailed integration paths, exact API endpoints, and contract addresses. |
|
|
| --- |
|
|
| ## Hackathon Alignment |
|
|
| ### RFB 02: Prediction Market Trader Intelligence |
|
|
| > "InsightAgent + PredictPortfolio + ArbitrageOracle, but with real execution and monetization via builder codes" |
|
|
| β
**We deliver**: Structured probabilities, Kelly sizing, cross-market edge detection, builder code routing. |
|
|
| ### RFB 06: Social Trading Intelligence |
|
|
| > "Convert soft reputation into enforceable financial commitments" |
|
|
| β
**We deliver**: Reasoning traces as auditable artifacts, on-chain Sharpe/drawdown tracking, builder code fee sharing. |
|
|
| ### Unbundling Thesis: Layer 5 Intelligence |
|
|
| Canteen's stack: Market Creation β Liquidity β Resolution β Settlement β **Intelligence** |
|
|
| β
**We build**: The intelligence layer that sits above exchanges, owning signal and interface. |
|
|
| --- |
|
|
| ## Demo Output |
|
|
| ``` |
| ====================================================================== |
| BuilderBrain β Agentic Prediction Market Intelligence |
| Agora Agents Hackathon | Canteen Γ Circle |
| ====================================================================== |
|
|
| ---------------------------------------------------------------------- |
| Cycle 1/3 β Simulating live market scanning... |
| ---------------------------------------------------------------------- |
| [BuilderBrain] Fetched 47 markets |
| [BuilderBrain] Generated 12 viable edges |
| [BuilderBrain] Sized 8 positions |
| [BuilderBrain] Generated 8 trade signals |
| [Arc] Settled 16 payments = $0.0234 |
|
|
| π― Top Signal: |
| Market: will-trump-win-2024 |
| Side: YES | Size: 8.3% bankroll |
| Expected Return: 0.0042 |
| Confidence: 72.1% |
| Urgency: 24h |
| Trace Hash: a3f7b2e9... |
| |
| ====================================================================== |
| TOP 5 SIGNALS (by expected return) |
| ====================================================================== |
|
|
| #1 will-trump-win-2024 |
| YES @ 8.3% bankroll |
| E[return]: 0.0042 | Conf: 72.1% |
| Trace: a3f7b2e9... |
| Arguments: 2 |
| Risks: 3 |
| ``` |
| |
| --- |
|
|
| ## Traction Plan (Hackathon Window) |
|
|
| 1. **Onboard 10-20 Polymarket power users** by mid-hackathon |
| 2. **Log during event**: |
| - Trades routed via builder codes, notional volume, PnL, hit-rate |
| - Top reasoning traces that led to big wins or risk avoidance |
| 3. **Collect qualitative feedback** on legibility and usefulness |
|
|
| --- |
|
|
| ## Dependencies |
|
|
| ``` |
| numpy>=1.24.0 # Numerical computing |
| cvxpy>=1.3.0 # Convex optimization |
| httpx>=0.28.0 # HTTP client for Polymarket + Circle APIs |
| ``` |
|
|
| --- |
|
|
| ## Citation |
|
|
| ```bibtex |
| @software{builderbrain, |
| title={BuilderBrain: Agentic Prediction Market Intelligence}, |
| author={Razvan}, |
| year={2026}, |
| url={https://huggingface.co/razvan/builderbrain} |
| } |
| ``` |
|
|
| **References**: |
| - Tepelyan, R. (2026). *Efficient Multivariate Kelly Optimization*. Bloomberg. |
| - Canteen (2026). *Unbundling the Prediction Market Stack*. |
| - Circle (2026). *USDC OpenClaw Hackathon*. |
|
|
| --- |
|
|
| *ML Intern generated repository. See source code for implementation details and REAL_VS_SIMULATED.md for integration status.* |
|
|
| <!-- ml-intern-provenance --> |
| ## Generated by ML Intern |
|
|
| This model repository was generated by [ML Intern](https://github.com/huggingface/ml-intern), an agent for machine learning research and development on the Hugging Face Hub. |
|
|
| - Try ML Intern: https://smolagents-ml-intern.hf.space |
| - Source code: https://github.com/huggingface/ml-intern |
|
|
| ## Usage |
|
|
| ```python |
| from transformers import AutoModelForCausalLM, AutoTokenizer |
| |
| model_id = "razvan/builderbrain" |
| tokenizer = AutoTokenizer.from_pretrained(model_id) |
| model = AutoModelForCausalLM.from_pretrained(model_id) |
| ``` |
|
|
| For non-causal architectures, replace `AutoModelForCausalLM` with the appropriate `AutoModel` class. |
|
|