Entregar todo dia às 08:00 BRT uma leitura curta e acionável de BTC com dados reais de APIs públicas. A análise inclui contexto técnico (RSI, suporte, resistência, tendência, volume relativo), contexto macro (Fear & Greed, dominância, notícias) e uma postura final única em formato fixo: E interessante estar Comprado. / Faz sentido manter postura Neutra. / E melhor estar Menos Exposto.
Diego Spanevello
Recebe via Telegram tópico 450 (Trading) no grupo Central ASPIRA. Uso pessoal para orientar decisões de trading e posicionamento.
Comunidade IntusCripto Club
Recebe via WhatsApp grupo Avisos Club (JID: 120363136035311553@g.us). Conteúdo educativo diário para membros do club.
Dados coletados (real-time)
- Preço BTC com variação 24h e 7d
- 20 velas 4h da Binance (klines)
- Funding rate atual (Binance Futures)
- Fear & Greed Index
- Dominância BTC e Market Cap global
- 3 notícias das últimas 24h
Métricas calculadas
- RSI(14) via python3 nas klines
- Suporte = mínima das 20 velas
- Resistência = máxima das 20 velas
- Tendência (close atual vs 20 velas atrás)
- Volume relativo (atual ÷ média 19 anteriores)
Análise gerada
- Forças com argumentos numéricos objetivos
- Riscos com gatilhos e fragilidades do setup
- Classificação do setup: BREAKOUT / RECLAIM / PULLBACK / AUSENTE
- Postura final única em frase exata padronizada
Entrega
- Telegram 08:00 BRT — tópico 450
- WhatsApp 08:05 BRT — Club Avisos
- Formato compacto em 3 blocos: Forças / Riscos / Postura
- ⚠️ Disclaimer "Não é conselho financeiro"
- Análise de altcoins (apenas BTC)
- Sinais de entrada com preço exato
- Gestão de posições ou stop loss
- Dados de corretoras pagas ou APIs com key
- Subagentes — tudo roda na sessão principal
- Histórico acumulado ou backtesting
Execução
OpenClaw cron job (sessionTarget: isolated)
Modelo: openai-codex/gpt-5.4
Timeout: 480s
Coleta
curl direto para APIs públicas
Sem autenticação
python3 para cálculos
Entrega
OpenClaw message tool
channel: telegram + whatsapp
Sem dependências externas
f4348bd7 e 6e6e34b6 rodam em sessão isolada com openai-codex/gpt-5.4 (timeout 480s). Nenhum subagente é spawnado, tudo roda na mesma sessão.•
CoinGecko → preço BTC, var 24h/7d•
Binance klines → 20 candles 4h (OHLCV)•
Binance Futures → funding rate atual•
alternative.me → Fear & Greed Index•
CoinGecko Global → dominância BTC + market cap total
• RSI(14) — ganhos e perdas médias das últimas 14 velas
• Suporte = mínima das 20 velas | Resistência = máxima
• Tendência = close atual vs close 20 velas atrás (ALTA/BAIXA)
• Volume relativo = vol atual ÷ média das 19 velas anteriores
"Bitcoin market today" via web_search, com fallback para tavily_search se necessário. Retorna até 3 headlines relevantes das últimas 24h para contexto macro, regulatório ou de sentimento.• Forças — 2 a 4 bullets curtos com números e contexto
• Riscos — 2 a 4 bullets curtos com gatilhos e fragilidades
• Classificação do setup: BREAKOUT / RECLAIM / PULLBACK / AUSENTE
• Postura final única em uma das 3 frases fixas
f4348bd7 → Telegram tópico 450 (Trading) às 08:00 BRT• Job
6e6e34b6 → WhatsApp grupo Avisos Club às 08:05 BRTMensagem única por destino, com o mesmo framing e *negrito* nos títulos.
Markdown do Telegram/WhatsApp, com asteriscos para negrito. Tamanho médio: ~12 a 16 linhas.
Tamanho
- ~12 a 16 linhas no total
- Forças e Riscos: 2 a 4 bullets curtos cada
- Postura: exatamente 1 frase final
- Contexto: no máximo 3 headlines em 1 linha por item
Estilo
- *negrito* nos títulos de seção
- Números sempre com $, % e contexto
- Postura deve ser 1 das 3 frases exatas, sem inventar variação
- Português brasileiro, horário BRT
Todas públicas, sem autenticação, sem custo.
closes = [float(x[4]) for x in klines] volumes = [float(x[5]) for x in klines] highs = [float(x[2]) for x in klines] lows = [float(x[3]) for x in klines] # RSI(14) gains = [max(closes[i]-closes[i-1], 0) for i in range(1, len(closes))] losses = [max(closes[i-1]-closes[i], 0) for i in range(1, len(closes))] avg_gain = sum(gains[-14:]) / 14 avg_loss = sum(losses[-14:]) / 14 rsi = 100 - (100 / (1 + avg_gain/avg_loss)) if avg_loss > 0 else 100 # Suporte / Resistência / Tendência / Volume suporte = min(lows) resistencia = max(highs) tendencia = "ALTA" if closes[-1] > closes[0] else "BAIXA" avg_vol = sum(volumes[:-1]) / len(volumes[:-1]) vol_ratio = volumes[-1] / avg_vol
| Job ID | Nome | Horário | Destino | Modelo | Status |
|---|---|---|---|---|---|
f4348bd7 |
BTC Analyst — Telegram | 08:00 BRT 0 11 * * * UTC |
Telegram tópico 450 (Trading) |
openai-codex/gpt-5.4 |
🟢 Ativo |
6e6e34b6 |
BTC Analyst — WhatsApp | 08:05 BRT 5 11 * * * UTC |
WhatsApp Grupo Club Avisos |
openai-codex/gpt-5.4 |
🟢 Ativo |
Timeout: 480s · sessionTarget: isolated · Sem subagentes · delivery: none
Passos do agente
- Coletar dados via curl (5 APIs)
- Calcular indicadores via python3
- Buscar contexto via web_search com fallback tavily_search
- Classificar setup e montar relatório em Forças / Riscos / Postura
- Enviar via message tool
Regras fixas
- NÃO spawnar subagentes
- Tudo na mesma sessão isolada
- Horário sempre em BRT (UTC-3)
- Português brasileiro obrigatório
- Disclaimer no final sempre
- Postura final deve ser exatamente 1 das 3 frases fixas
| Data | Versão | Mudança |
|---|---|---|
| 20/04/2026 | v1.3 |
Framing atualizado — saída trocada para Forças / Riscos / Postura, setup classificado em BREAKOUT / RECLAIM / PULLBACK / AUSENTE, fallback explícito de tavily_search e modelo documentado como openai-codex/gpt-5.4 |
| 26/03/2026 | v1.0 |
Lançamento — análise BTC diária, formato compacto com negrito, 2 crons (Telegram + WhatsApp) |
| 26/03/2026 | v0.3 |
Fix: remoção de subagentes — cron executava spawn e saía sem entregar |
| 26/03/2026 | v0.2 |
Formato reduzido 30% + negrito nos títulos a pedido de Diego |
| 26/03/2026 | v0.1 |
Criação inicial com BTC + ETH (descontinuado — simplificado para BTC only) |