Monitoramento e Alertas
O que monitorar e quais alertas configurar como market maker.
Health Checks
Saúde da API
Endpoint: GET /health
Resposta: {"status":"ok"}
Prontidão: GET /ready retorna {"status":"ready","components":[...]} com uma flag ready por componente. Use-o para distinguir uma API acessível, mas que ainda não está servindo requisições, de uma API saudável.
Monitoramento: Verifique a cada 30-60 segundos
Alerta: Se o health check falhar, o servidor da API pode estar fora do ar
Conexão WebSocket
Monitoramento: Acompanhe o status da conexão WebSocket
Alerta: Se a conexão cair, reconecte imediatamente
Boa prática: Implemente backoff exponencial na reconexão
Monitoramento de Ordens
Taxa de Rejeição
Métrica: Percentual de ordens rejeitadas
Alerta: Se a taxa de rejeição for > 5%, investigue:
- Problemas de margem
- Restrições de tier
- Instrumentos vencidos
- Sobrecarga do sistema
Taxa de Execução
Métrica: Percentual de ordens executadas
Alerta: Se a taxa de execução cair significativamente, investigue:
- Condições de mercado
- Competitividade das cotações
- Profundidade do livro de ofertas
Latência de Ordens
Métrica: Tempo entre o envio da ordem e a execução/confirmação
Alerta: Se a latência for > 1s, investigue:
- Sobrecarga do sistema
- Problemas de rede
- Atrasos de processamento no engine
Monitoramento do Portfólio
Uso de Margem
Métrica: utilização de margem a partir de margin_summary em GET /portfolio?wallet=.... margin_summary.initial_margin e margin_summary.maintenance_margin são folga (o que sobra depois dos requisitos), não margem em uso. Calcule a utilização sobre a base que de fato sustenta a margem em cada modo:
margin_summary.mode | Base | Folga de margem inicial | Folga de margem de manutenção |
|---|---|---|---|
portfolio | equity | initial_margin | maintenance_margin |
standard | standard_margin.cash_margin | standard_margin.initial_margin_headroom | standard_margin.maintenance_margin_headroom |
im_utilization = (basis - initial_margin_headroom) / basis
mm_utilization = (basis - maintenance_margin_headroom) / basis
Trate uma base igual ou menor que zero como 100% utilizada.
Alerta: Se a utilização da margem inicial for > 80%, novas ordens estão perto de ser rejeitadas. Se a utilização da margem de manutenção se aproximar de 100%, a conta está perto da liquidação. Considere:
- Reduzir o tamanho da posição
- Adicionar colateral
- Encerrar posições
Colateral Livre
Métrica: available_balance de GET /portfolio?wallet=.... É o colateral livre para novas operações, não o saldo em caixa em USDC. Marcações de opções, PnL de perps e requisitos de margem o alteram sem movimentação de caixa. Para o valor que pode ser sacado, use withdrawable_usdc.
Alerta: Se o colateral livre estiver abaixo do limite definido, reduza o risco ou deposite fundos
Monitoramento de MMP
Acionamentos de MMP
Métrica: Número de acionamentos de MMP por hora
Alerta: Se o MMP for acionado com frequência, considere:
- Aumentar os limites de MMP
- Reduzir a frequência de cotação
- Revisar os padrões de execução
Taxa de Cancelamento por MMP
Métrica: Percentual de ordens canceladas pelo MMP
Alerta: Se a taxa de cancelamento por MMP for > 10%, revise a configuração de MMP
Monitoramento do Sistema
Tempos de Resposta da API
Métrica: Tempos de resposta P50, P95 e P99
Alerta: Se o P95 for > 500ms, investigue a carga do sistema
Taxa de Mensagens WebSocket
Métrica: Mensagens por segundo no WebSocket
Alerta: Se a taxa de mensagens disparar, investigue:
- Volatilidade do mercado
- Sobrecarga do sistema
- Atrasos no processamento de mensagens
Alertas Recomendados
- Falha no health check: servidor da API fora do ar
- Taxa de rejeição alta: > 5% das ordens rejeitadas
- Taxa de execução baixa: < 50% das ordens executadas (depende do contexto)
- Uso de margem alto: > 80% da margem utilizada
- Acionamentos de MMP: > 5 acionamentos por hora
- Desconexão do WebSocket: conexão perdida
- Latência alta: P95 > 500ms
Ferramentas de Monitoramento
Recomendado:
- Endpoint de health check para monitoramento de disponibilidade
- Acompanhamento do status da conexão WebSocket
- Reconciliação de ordens/execuções para garantir precisão
- Acompanhamento da margem do portfólio
Atualmente: Não há painel de monitoramento integrado. Use ferramentas externas (por exemplo, Prometheus, Grafana).