Skip to main content

O que é um orderbook

Um orderbook (livro de ordens) é um registro em tempo real de todas as ordens de compra e venda ativas em um mercado. Em vez de um criador de mercado central definir os preços, os próprios participantes formam a liquidez — assim como na bolsa de valores. No Oraculo, cada mercado tem um orderbook independente para os tokens SIM e NÃO.

Estrutura do orderbook

  • Bids (compras): ordens de quem quer comprar, ordenadas do maior ao menor preço
  • Asks (vendas): ordens de quem quer vender, ordenadas do menor ao maior preço
  • Spread: diferença entre o menor ask e o maior bid — menor spread = mais liquidez

Como o matching funciona

Quando uma nova ordem chega, o matching engine verifica se existe uma contraparte compatível:
1

Ordem recebida

Usuário coloca ordem de compra de 200 tokens SIM a 0,79 USDC.
2

Verificação do orderbook

O engine verifica os asks disponíveis. Existe um ask de 400 tokens a 0,79 — preços se cruzam!
3

Match executado

Os 200 tokens são transferidos do vendedor para o comprador a 0,79 USDC cada.
4

Ordens atualizadas

O ask de 400 tokens passa a ter 200 tokens restantes. A ordem de compra é marcada como executada.
5

Liquidação on-chain

O trade é enviado para a fila de liquidação e registrado na Solana em ~3 segundos.

Profundidade de mercado

A profundidade do orderbook indica quanta liquidez existe em cada nível de preço. Mercados com alta profundidade permitem que ordens grandes sejam executadas sem mover muito o preço. Um trade grande pode “consumir” várias ordens em sequência, executando a preços progressivamente menos favoráveis (chamado de slippage).
Para ordens grandes, use ordens limitadas para controlar o preço máximo de execução e evitar slippage excessivo.

Atualizações em tempo real

O orderbook é atualizado em tempo real via WebSocket. Você vê as mudanças instantaneamente:
  • Novas ordens adicionadas
  • Ordens executadas ou canceladas
  • Atualização do preço após cada trade
  • Profundidade (volume em cada nível de preço)

Histórico de trades

Cada trade executado é registrado publicamente com:
  • Horário da execução
  • Preço de execução
  • Quantidade negociada
  • Lado (compra/venda)
Isso forma o histórico de preços do mercado, visível no gráfico de cada mercado.

Estado das ordens

Ordens expiradas

Ordens podem ter uma data de expiração. Se não executadas até o prazo, são automaticamente canceladas e o USDC bloqueado é liberado para o saldo disponível.