📡 Open source · MPL 2.0

Um agente de trading cripto open source, self-hosted, BYO chaves

A Farol cruza 11 indicadores técnicos com 14 fontes de notícias, Smart Money Concepts (Order Blocks, FVG, BOS), contexto macro (DXY, SPX, Fear & Greed) e dados de derivados. O agente corre a cada hora, persiste sinais estruturados em SQLite, e tu decides se queres negociar. Clona, configura a tua chave API Binance, corre docker compose up.

Licença MPL 2.0 · Construído na UE · 8 tokens cobertos · Self-hosted Docker · Sem telemetria, sem SaaS, ninguém terceiro toca nas tuas chaves.

Corre localmente em 3 passos

Sem registo SaaS, sem chave API para ninguém exceto a Binance, sem terceiros a ler os teus trades. O agente corre na tua máquina (ou no teu VPS) e não reporta a ninguém.

1

Clona o repo

git clone do repositório, cp .env.example .env, cola a tua chave API Binance (spot trading apenas, sem permissões de levantamento) e uma chave LLM (Anthropic, Google AI, OpenRouter — à tua escolha).

2

Corre docker compose up

Um único docker compose up -d levanta o container do agente + volume SQLite. O cron corre a cada hora. Os logs aparecem localmente. Podes verificar com curl no endpoint /api/health local.

3

Lê, decide, age

O agente persiste sinais estruturados (viés de direção, voto dos indicadores, sentimento de notícias, padrões SMC, racional do LLM). Lês via API local, dashboard ou consultando o SQLite. A execução de trades é opt-in e sob o teu controlo.

Architecture

Dentro do agente

Quatro camadas de análise correm a cada hora, em paralelo quando possível, e alimentam uma decisão final do LLM. Cada output é JSON estruturado, persistido em SQLite. Lê o código-fonte — está aberto.

Análise técnica (TA)

11 indicadores votam em cada token: RSI, MACD, cruzamentos EMA, Bollinger Bands, Stoch RSI, ADX, MFI, CCI, VWAP, direção ATR, padrão de candle. Mais um score Ensemble e uma previsão Holt-Winters (ETS). Determinístico, sem LLM aqui.

sample response
{
  "tendance": "BAISSIER",
  "haussiers": 3, "baissiers": 8, "neutres": 0,
  "rsi": 28.4,
  "macd_cross": "bearish",
  "adx_force": "FORT",
  "ensemble_score": -0.62
}

Sentimento de notícias

14 feeds RSS consultados a cada ciclo, deduplicados por hash de URL. Um LLM lê apenas os artigos novos e devolve um score de sentimento por token. Se não houver novos artigos, zero chamadas LLM.

sample response
{
  "sentiment": "NEGATIF",
  "score": -0.42,
  "nb_articles_new": 7,
  "summary": "ETF outflows
   accelerating, regulatory
   pressure rising"
}

Smart Money Concepts

Deteta Break of Structure (BOS), Order Blocks, Fair Value Gaps a partir dos swings OHLCV. Outputs um score de viés [-100, +100] e uma string de resumo injetada diretamente no prompt do trader — tornando os movimentos das baleias visíveis ao modelo.

sample response
{
  "bias": -65,
  "bos": "BEAR",
  "order_blocks": 2,
  "fvg_count": 1,
  "summary": "Recent BOS
   bearish, institutional
   sell zone 67200-68100"
}

Decisão LLM trader

Síntese final: um prompt multi-fonte é enviado a um LLM (Workers AI Llama, Claude Haiku, Gemini Flash — à tua escolha) com contexto de regime, posições abertas, últimas 3 decisões, e padrões SMC. Output é JSON tipado: BUY / SELL / HOLD com score de confiança [20-99].

sample response
{
  "token": "BTC",
  "direction": "SELL",
  "score_confiance": 75,
  "raison": "BOS bearish
   + 8/11 indicators bearish
   + funding > 0.06%",
  "model": "llama-3.3-70b"
}
Quick start
terminal · 3 commands
# 1. Clone the repo
git clone https://github.com/FredericoRB/farol  # TBD
cd farol

# 2. Configure your keys
cp .env.example .env
# edit .env — add BINANCE_API_KEY (spot only),
#             ANTHROPIC_API_KEY (or OPENROUTER_API_KEY)

# 3. Run the agent
docker compose up -d
docker compose logs -f agent

Porquê open source

Os SaaS de trading cripto na UE são um campo minado regulatório (MiCA, PSAN, MiFID II). Em vez de jogar o jogo do compliance, a Farol publica a lógica do agente — corres a tua própria cópia, com as tuas próprias chaves, na tua jurisdição. Sem operador central significa sem risco central.

Síntese multi-fonte

11 indicadores técnicos × 14 feeds de notícias × Smart Money Concepts × derivados (funding, OI) × macro (DXY, SPX, F&G). Tudo cruzado para que uma fonte ruidosa não enviese a leitura.

Hora a hora, nunca dorme

O cron corre a cada hora no teu container. Sem cache velha, sem rate limits de um SaaS, sem partilhar pool de rate-limit com milhares de utilizadores.

Estruturado, não prosa

Cada output é JSON tipado: viés de direção, score de confiança, voto dos indicadores, viés SMC. Persistido em SQLite. Liga ao teu próprio dashboard, alertas, ou bot de trading.

Tu mantens o controlo

A tua chave API Binance nunca sai da tua máquina. O agente pode correr em modo paper apenas ou cablar execução de trades sob salvaguardas estritas (rate limits, hard caps, circuit breaker de perda diária). Sem copy trading, sem serviço, sem conta central.

FICA NO LOOP

Segue o projeto no GitHub

Faz star no repo para acompanhar atualizações, abre issues para bugs ou pedidos de funcionalidade, contribui com PRs. O repo será ligado ao CTA acima quando o release público sair (Fase 4 do roadmap).

Ver no GitHub

Repo público brevemente — o URL aparecerá aqui.

FAQ

Preciso de uma conta de exchange? +
Sim — usas a tua própria chave API Binance (spot trading apenas, levantamento desativado). O agente lê dados de mercado via endpoints públicos da Binance (sem chave necessária para leituras) e só usa a tua chave se ativares execução de trades em live. Em modo paper, não é precisa nenhuma chave.
A minha chave API Binance está segura? +
A tua chave nunca sai do teu container. É carregada do .env para o processo do agente e usada apenas para chamar a Binance. Não há servidor central, sem telemetria, sem terceiros no caminho. Usa whitelist de IP do lado da Binance se correres num VPS de IP fixo para defesa extra.
Posso correr múltiplos tokens? +
Sim — por defeito o agente corre 8 tokens (BTC, ETH, SOL, APT, ARB, AVAX, OP, DOGE). Podes editar a lista de tokens em src/config.ts. Cada token é processado em paralelo dentro do run do cron.
Que LLM usa o agente? +
Configurável: Claude (Anthropic), Gemini (Google AI Studio), Llama (Workers AI ou OpenRouter), ou qualquer fornecedor com API compatível OpenAI. A config padrão usa um modelo free-tier. Muda via .env. O prompt está estruturado para funcionar com a maioria dos modelos modernos instruction-tuned.
Como atualizo o agente? +
git pull && docker compose up -d --build. As migrações da base de dados correm no arranque. As mudanças breaking estão documentadas no CHANGELOG.md.
Paper trading ou live é o default? +
Paper trading é o default. Execução live requer opt-in explícito (LIVE_TRADING_ENABLED=true no .env) mais a tua chave API Binance. Várias salvaguardas estão cabladas: hard caps por token, circuit breaker de perda diária, auto-disable em burst de erros. Lê src/analysis/risk-manager.ts antes de mexer na flag.
Posso contribuir? +
Sim, por favor. Issues, PRs e discussões estão abertos. A licença é MPL 2.0 (copyleft ao nível do ficheiro) — as tuas modificações aos ficheiros existentes têm de ficar abertas, mas podes combinar o agente com código proprietário livremente. Vê CONTRIBUTING.md.
Porquê open source em vez de um SaaS? +
Os serviços de trading cripto na UE caem sob as regulações MiCA / MiFID II / PSAN. Como solo dev, o custo de compliance (advogado, registo, reporting) é proibitivo. Publicar o código sob MPL 2.0 permite ao projeto existir legalmente enquanto deixa os utilizadores self-host nas regras da sua própria jurisdição.