Alpha Scanner é um crawler assíncrono de alta performance escrito em Rust que varre os mercados de predição do Polymarket em busca de ineficiências de preço (spread alpha) no livro de ordens CLOB.
O scanner opera em duas fases:
Faz paginação massiva na Gamma API do Polymarket buscando até 500 mercados ativos (acceptingOrders=true, closed=false). Para cada mercado válido, coleta a pergunta e o clobTokenId do lado YES.
Para cada mercado mapeado, consulta a API CLOB do Polymarket para obter o melhor BID e ASK. O scanner então calcula o spread bruto e filtra apenas os mercados com spread entre $0.01 e $0.40 — a janela de alpha considerada operacional.
Um Semáforo Tokio limita a 20 conexões TCP simultâneas para evitar rate-limiting e bans, mantendo o throughput alto sem travar a CPU principal.
| Tecnologia | Uso |
|---|---|
| Rust | Linguagem principal |
| Tokio | Runtime async |
| reqwest | Cliente HTTP com connection pooling (Keep-Alive) |
| serde_json | Deserialização do JSON das APIs |
| futures | Stream concorrente (buffer_unordered) |
Pré-requisito: Rust instalado.
# Clone o repositório
git clone https://github.com/Vinisilva0010/alpha_acanner.git
cd alpha_acanner
# Compile e execute
cargo run --release [SISTEMA] Iniciando Alpha Scanner V4 (Crawler Concorrente de Escala Industrial)...
FASE 1: Varrendo a Gamma API em busca de mercados vivos...
FASE 1 Concluída. 423 mercados em potencial mapeados em 1.2s.
FASE 2: Ataque Assíncrono ao Livro de Ofertas (CLOB) com Rate Limiting...
MERCADO (LADO SIM) | BID ($) | ASK ($) | SPREAD RAW ($)
----------------------------------------------------------------------------------------------------
Will X candidate win the election?... | $0.4800 | $0.5200 | $0.0400
...
FASE 2 Concluída em 8.7s. Oportunidades Reais encontradas: 17
Os parâmetros principais estão diretamente no src/main.rs:
| Parâmetro | Valor padrão | Descrição |
|---|---|---|
total_paginas |
5 |
Quantidade de páginas na Gamma API (100 mercados/página) |
concurrency_limit |
20 |
Máx. de conexões TCP simultâneas |
| Spread mínimo | 0.01 |
Limiar inferior de alpha ($) |
| Spread máximo | 0.40 |
Limiar superior de alpha ($) |
MIT