Files
Tradarr/README.md

4.7 KiB

Tradarr

Agrégateur d'actualités financières avec résumés IA personnalisés par utilisateur.

Tradarr scrape des sources d'information (Bloomberg, StockTwits, Reuters, WatcherGuru), croise les articles avec la watchlist de chaque trader, puis génère via IA un résumé structuré orienté trading. L'utilisateur peut ensuite sélectionner des extraits du résumé et poser des questions à l'IA pour approfondir une analyse.

Fonctionnalités

  • Scraping automatique de plusieurs sources financières (planifiable)
  • Résumés IA personnalisés selon la watchlist de chaque utilisateur
  • Filtrage intelligent des articles par pertinence (passe 1) avant résumé (passe 2)
  • Questions/réponses IA sur des extraits de résumés (rapports)
  • Support de plusieurs fournisseurs IA : OpenAI, Anthropic, Gemini, Ollama, Claude Code CLI
  • Interface PWA (installable sur mobile)
  • Panel d'administration complet

Installation (production)

Prérequis

  • Docker et Docker Compose installés sur le serveur
  • Si tu utilises Claude Code comme fournisseur IA : Claude Code CLI installé et authentifié sur la machine hôte (claude login)

1. Créer le fichier .env

cp .env.example .env

Édite .env avec tes valeurs :

# PostgreSQL
POSTGRES_DB=tradarr
POSTGRES_USER=tradarr
POSTGRES_PASSWORD=<mot_de_passe_fort>

# Secret JWT pour les tokens de session
JWT_SECRET=<chaîne_aléatoire_longue>

# Clé de chiffrement AES-256 pour les clés API et credentials (32 bytes en hex)
# Générer avec : openssl rand -hex 32
ENCRYPTION_KEY=<32_bytes_en_hex>

# Compte administrateur créé automatiquement au premier démarrage
ADMIN_EMAIL=admin@example.com
ADMIN_PASSWORD=<mot_de_passe_fort>

# Port exposé sur le serveur (défaut : 80)
FRONTEND_PORT=80

2. Ajuster docker-compose.prod.yml si nécessaire

Fournisseur Claude Code CLI (optionnel)

Si tu veux utiliser Claude Code comme fournisseur IA, le backend doit accéder aux credentials de ta session Claude. La configuration par défaut monte /home/anthony/.claude — adapte ce chemin à l'utilisateur qui exécute Docker sur ton serveur :

# dans docker-compose.prod.yml, section backend > volumes
volumes:
  - /home/<ton_user>/.claude:/root/.claude

Images Docker

Les images sont référencées par tag dans docker-compose.prod.yml. Mets à jour les tags selon la version à déployer :

backend:
  image: gitea.anthonybouteiller.ovh/blomios/tradarr-backend:v1.0.0
frontend:
  image: gitea.anthonybouteiller.ovh/blomios/tradarr-frontend:v1.0.0
scraper:
  image: gitea.anthonybouteiller.ovh/blomios/tradarr-scraper:v1.0.0

3. Démarrer

docker compose -f docker-compose.prod.yml up -d

L'interface est accessible sur http://<serveur>:<FRONTEND_PORT>.


Configuration post-démarrage (panel admin)

Connecte-toi avec le compte admin défini dans .env, puis accède à Admin pour configurer :

Fournisseurs IA

Ajoute au moins un fournisseur IA et assigne-le aux trois rôles disponibles :

Rôle Description
Résumés Génération du résumé quotidien (passe 2)
Rapports Réponses aux questions sur les résumés
Filtre articles Sélection des articles pertinents (passe 1)

Fournisseurs supportés :

Nom Clé API requise Endpoint
openai Oui
anthropic Oui
gemini Oui
ollama Non http://ollama:11434 (par défaut)
claudecode Non — (utilise le CLI local)

Paramètres

Clé Description Défaut
articles_lookback_hours Fenêtre de temps pour récupérer les articles 24
summary_max_articles Nombre max d'articles envoyés au modèle pour le résumé 50
filter_batch_size Taille des lots pour la passe de filtrage IA 20
timezone Fuseau horaire affiché dans les résumés UTC
ai_system_prompt Prompt système pour la génération des résumés prompt par défaut

Planning

Configure les créneaux de génération automatique des résumés (jours et heures).

Sources

Active ou désactive les sources de scraping :

  • Bloomberg — nécessite des credentials (onglet Credentials)
  • StockTwits — public, aucune configuration requise
  • Reuters — public
  • WatcherGuru — public

Credentials Bloomberg

Renseigne ton login/mot de passe Bloomberg pour activer le scraping de cette source.


Développement local

# Démarrer tous les services
docker compose up -d

# Rebuild après modification du code
docker compose build backend frontend && docker compose up -d backend frontend

Logs :

docker compose logs -f backend
docker compose logs -f frontend