Um modelo de dados orientado pelas consultas
Seis objetos no ClickHouse Cloud: markets, price_ticks, trades, uma view FINAL sobre eles, a agregação de um minuto e sua materialized view — tipados com IDs de token UInt256, decimais exatos e enums.
ClickHouse Série BUILD
Em duas horas e meia, você transmite dados públicos de mercados de previsão para seu próprio serviço ClickHouse Cloud, mantém uma série de preços médios de um minuto atualizada na inserção e publica um dashboard de pulso do mercado — depois determina se o movimento veio acompanhado de spread maior ou negociações mais rápidas.
Não é um tutorial de negociação. É um problema de dados ao vivo.
Um mercado público de previsões é um dos poucos conjuntos de dados realmente ao vivo, realmente imperfeitos e gratuitos para leitura. Este workshop usa somente as APIs públicas Gamma, CLOB e Data: sem carteira, depósito, ordem ou segredo da Polymarket em nenhum momento.
A parte interessante não é o feed, mas o efeito dele sobre seu design. O WebSocket é rápido, porém não é um log durável; por isso, o coletor detecta um socket silencioso ou paralisado, reconecta e consulta o livro público CLOB enquanto está degradado. Um loop separado reconcilia negociações com uma sobreposição de cinco segundos e IDs determinísticos, de modo que a mesma negociação recebida duas vezes seja armazenada uma só vez.
Cada tabela é organizada para as consultas que você realmente executará — primeiro um bucket de hora, depois o token ou condição usado no agrupamento — e a série de preços médios de um minuto é mantida na inserção, em vez de ser recalculada a cada atualização do dashboard.
O que você leva
No seu próprio serviço ClickHouse Cloud, alimentado por APIs públicas. Um contêiner Docker sem estado é a única coisa executada localmente.
Seis objetos no ClickHouse Cloud: markets, price_ticks, trades, uma view FINAL sobre eles, a agregação de um minuto e sua materialized view — tipados com IDs de token UInt256, decimais exatos e enums.
Heartbeat e detecção de paralisação, reconexão, fallback para o livro via CLOB REST durante a degradação e um endpoint de integridade no qual degraded é um estado honesto, não uma falha.
Um loop de negociações públicas com sobreposição de cinco segundos e IDs determinísticos, além do ReplacingMergeTree como segunda proteção.
Um AggregatingMergeTree com estados de argMin, argMax, min, max e count, finalizados pelas funções Merge correspondentes — e você compara as linhas lidas com a varredura dos dados brutos.
Probabilidade atual, maiores movimentos em cinco minutos, spread e atualização, e velocidade do volume — para que um movimento receba confiança ou dúvida, não apenas uma manchete.
Pulso do mercado Polymarket — cinco consultas salvas, incluindo o gráfico de linha de um minuto, criado inteiramente no console do ClickHouse Cloud. Sem produto de dashboard local.
O percurso · 2h30 práticas
Um único fluxo, do início ao fim: encontre os mercados, modele-os, transmita-os, agregue-os e então explique e publique o movimento.
Prepare macOS ou Ubuntu no WSL 2, instale clickhousectl e o cliente do ClickHouse, crie o serviço Cloud e faça a verificação preliminar exibir READY.
Peça ao Gamma os mercados ativos mais movimentados e entenda por que um ID de condição e um ID de token de resultado são coisas diferentes.
Crie as tabelas tipadas de mercados, ticks e negociações em torno dos filtros que atenderão, além da agregação de preço médio de um minuto e sua materialized view.
Inicie o coletor, leia seu contrato de integridade e comprove que as linhas chegam ao Cloud — com o modo fixture como fallback testado para um feed bloqueado ou silencioso.
Finalize os estados agregados, compare as linhas lidas com o equivalente bruto e confirme que o minuto mais recente avança sem nenhuma tarefa de atualização agendada.
Quatro consultas explícitas: probabilidade atual, qual resultado mais mudou, se o spread está amplo ou a cotação desatualizada e se o volume de negociações acelerou.
Salve as cinco consultas com seus nomes exatos e monte o Pulso do mercado Polymarket com quatro visões atuais e o gráfico de linha de um minuto.
Forneça as tabelas ao vivo a um ClickHouse Agent e faça-o detectar um movimento, investigá-lo considerando spread, atualização e volume; então confira o veredito com SQL determinístico e registre o que o agente errou.
Registre a consulta final de comprovação, pare o coletor e trace o caminho até o ClickPipes para um relay de produção que já publica em um stream.
Autoguiado por padrão. Cada módulo informa seu ponto inicial e termina com uma verificação que você pode executar. live, degraded com timestamps REST recentes e fixture são estados didáticos válidos — a trilha do instrutor informa em qual deles a turma está e nunca chama dados de fixture de dados ao vivo.
Antes de participar
Traga um notebook com Docker e uma organização no ClickHouse Cloud. Saia com um feed ao vivo, uma agregação de um minuto mantida na inserção e um dashboard de pulso do mercado que você pode apontar para qualquer mercado público.