📊
BTC Analyst Diário
PRD + Workflow completo · Análise técnica automatizada de BTC
🟢 Ativo em produção ⏰ 08:00 BRT todos os dias 📱 Telegram tópico 450 💬 WhatsApp Club Avisos Atualizado: 20/04/2026
🎯 Objetivo

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.

👥 Destinatários

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.

✅ Funcionalidades

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"
🚫 Fora do escopo
  • 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
⚙️ Stack Técnica

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

🔄 Fluxo Visual
⏰ Cron 08:00 BRT
📡 5 APIs Coleta paralela
🐍 python3 RSI + cálculos
🔍 web_search Notícias 24h
🧠 ASPIRA Forças/Riscos/Postura
📤 Entrega TG + WA
📋 Passos Detalhados
1
Cron dispara 08:00 BRT
Jobs 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.
2
Coleta de dados exec curl
5 chamadas curl sequenciais:
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
3
Cálculo de indicadores python3
Script python3 processa as 20 klines e calcula:
• 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
4
Busca de notícias web_search
Query: "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.
5
Análise e montagem ASPIRA
Com todos os dados consolidados, ASPIRA monta:
• 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
6
Entrega message tool
• Job f4348bd7Telegram tópico 450 (Trading) às 08:00 BRT
• Job 6e6e34b6WhatsApp grupo Avisos Club às 08:05 BRT
Mensagem única por destino, com o mesmo framing e *negrito* nos títulos.
📝 Formato da Mensagem

Markdown do Telegram/WhatsApp, com asteriscos para negrito. Tamanho médio: ~12 a 16 linhas.

*📊 BTC — DD/MM | HH:MM BRT* $X | 24h: X% | 😱 Medo: X/100 — [label] Dom: X% | RSI: X | Funding: X% Tend: X | Suporte: $X | Resist: $X | Vol: Xx média Setup: BREAKOUT | RECLAIM | PULLBACK | AUSENTE *🟢 Forças* • [força 1 com número] • [força 2 com número] *🔴 Riscos* • [risco 1 com número] • [risco 2 com gatilho] *🎯 Postura:* E interessante estar Comprado. OU Faz sentido manter postura Neutra. OU E melhor estar Menos Exposto. ⚠️ Não é conselho financeiro.
💡 Regras do Formato

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
📊 Exemplo Real — 26/03/2026
*📊 BTC — 26/03 | 10:10 BRT* $69.412 | 24h: -2,77% | 😱 Medo: 10/100 — Medo Extremo Dom: 56,5% | RSI: 37,9 | Funding: +0,0014% Tend: BAIXA | Suporte: $67.916 | Resist: $72.026 | Vol: 0,14x média Setup: AUSENTE *🟢 Forças* • RSI em 37,9 já entra em zona de exaustão vendedora e aumenta chance de repique técnico. • Dominância em 56,5% e funding neutro mostram que ainda não há excesso claro de alavancagem comprada. *🔴 Riscos* • Volume em 0,14x da média mostra ausência de comprador de verdade. • Perder $67.900 abre espaço para continuação até a faixa de $65.000 sem muito suporte intermediário. *🎯 Postura:* Faz sentido manter postura Neutra. ⚠️ Não é conselho financeiro.
🔌 APIs Utilizadas

Todas públicas, sem autenticação, sem custo.

CoinGecko — Preço
api.coingecko.com/api/v3/simple/price?ids=bitcoin&vs_currencies=usd&include_24hr_change=true&include_7d_change=true
Preço, var 24h, var 7d
Binance — Klines 4h
api.binance.com/api/v3/klines?symbol=BTCUSDT&interval=4h&limit=20
OHLCV 20 candles → RSI, suporte, resistência, volume
Binance Futures — Funding
fapi.binance.com/fapi/v1/fundingRate?symbol=BTCUSDT&limit=1
Funding rate atual (viés long/short)
Fear & Greed Index
api.alternative.me/fng/?limit=1
Índice 0-100 + classificação textual
CoinGecko — Global
api.coingecko.com/api/v3/global
Dominância BTC %, market cap total, var 24h
web_search
Query: "Bitcoin market today"
Busca principal de notícias e contexto das últimas 24h
tavily_search (fallback)
Mesmo tema, acionado só se faltar contexto no web_search
Fallback de contexto, nunca fonte paralela obrigatória
🐍 Cálculo RSI — Python3
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
⚙️ Jobs Configurados
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

🔧 Configuração do Payload

Passos do agente

  1. Coletar dados via curl (5 APIs)
  2. Calcular indicadores via python3
  3. Buscar contexto via web_search com fallback tavily_search
  4. Classificar setup e montar relatório em Forças / Riscos / Postura
  5. 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
📅 Histórico de Versões
DataVersãoMudanç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)