Analyse quotidienne des actions avec Gemini AI : un outil open source gratuit

Analyse quotidienne des actions alimentée par Gemini AI

Bienvenue dans le projet daily_stock_analysis – une solution open source complète pour l'analyse automatisée des actions A‑Share qui fonctionne gratuitement sur GitHub Actions ou Docker. Construit avec Python 3.10+, il intègre plusieurs fournisseurs de données, Gemini (Google AI Studio) pour des insights de marché en langage naturel, et des canaux de notification polyvalents.


Ce que cet outil propose

Fonctionnalité Description
Tableau de bord décisionnel IA Conclusions en une phrase, points précis d'achat/départ, et une liste de contrôle des conditions évaluées par Gemini.
Analyse multidimensionnelle Combinaison d'indicateurs techniques, de distribution de volume, de sentiment issu des nouvelles et de cotations de marché en temps réel.
Revue du marché Instantané quotidien des principaux indices, de la performance sectorielle et des flux de capitaux transfrontaliers.
Canaux multiples Enterprise WeChat, Feishu, Telegram, courriel, et tout webhook personnalisé (par ex., Discord, Slack, DingTalk).
Déploiement gratuit Fonctionnement sur GitHub Actions gratuit sans frais de serveur.
Architecture extensible Intégrez n'importe quelle API compatible OpenAI, ajoutez de nouveaux fournisseurs de données ou modifiez la logique de notification avec peu de changement de code.

Aperçu de la pile technique

  • Python 3.10+ avec pyproject.toml / requirements.txt.
  • Sources de données : AkShare (gratuit), Tushare, Baostock, YFinance.
  • Recherche de nouvelles : Tavily (clé gratuite) ou SerpAPI comme solution de secours.
  • Backend IA : Google Gemini (par défaut), avec des API OpenAI compatibles facultatives comme DeepSeek, Claude, ou des modèles hébergés localement.
  • Déploiement : GitHub Actions (.github/workflows/daily_analysis.yml) ou Docker Compose avec une simple commande docker-compose up -d.
  • Planificateur : Logique cron simple déclenchant l'analyse chaque jour de semaine à 18h00, heure de Beijing.

Démarrage rapide – GitHub Actions (Déploiement gratuit)

  1. Fork du dépôt – Cliquez sur Fork dans le coin supérieur droit.
  2. Création des secrets requis – Accédez à Paramètres → Secrets → Actions et ajoutez :
    GEMINI_API_KEY          # (obligatoire) Clé Gemini de Google AI Studio
    # OU
    OPENAI_API_KEY          # facultatif, si vous préférez un point de terminaison compatible OpenAI
    OPENAI_BASE_URL         # facultatif – par ex., https://api.deepseek.com/v1
    OPENAI_MODEL            # facultatif – par ex., deepseek-chat
    WECHAT_WEBHOOK_URL      # facultatif – Enterprise WeChat
    FEISHU_WEBHOOK_URL      # facultatif – Feishu
    TELEGRAM_BOT_TOKEN      # facultatif – token bot Telegram
    TELEGRAM_CHAT_ID        # facultatif – identifiant de chat Telegram
    EMAIL_SENDER            # facultatif – courriel expéditeur
    EMAIL_PASSWORD          # facultatif – mot de passe d'application
    EMAIL_RECEIVERS         # facultatif – liste séparée par des virgules
    CUSTOM_WEBHOOK_URLS     # facultatif – tout webhook POST JSON
    FEISHU_APP_ID           # facultatif – ID d'app Feishu
    FEISHU_APP_SECRET       # facultatif
    FEISHU_FOLDER_TOKEN     # facultatif – clé de dossier Feishu
    STOCK_LIST              # (obligatoire) liste de tickers, ex., 600519,300750,002594
    TAVILY_API_KEYS         # (recommandé) pour la recherche de nouvelles
    SERPAPI_API_KEYS        # facultatif 
    TUSHARE_TOKEN           # facultatif
    
  3. Activer le workflow – Allez dans l'onglet Actions et cliquez sur "Je comprends mes workflows, je les active".
  4. Tester immédiatement – Sélectionnez le workflow “每日股票分析” et cliquez sur Run workflow.
  5. Célébrer – Le workflow construira une image Docker, récupérera les données, exécutera l'analyse et publiera les résultats sur vos canaux spécifiés.

Démarrage rapide – Déploiement local ou Docker

Utilisez cette méthode si vous préférez un environnement local ou souhaitez ajuster le code.

# Clone & installation
git clone https://github.com/ZhuLinsen/daily_stock_analysis.git
cd daily_stock_analysis
pip install -r requirements.txt

# Copie de l'exemple d'environnement
cp .env.example .env
nano .env   # remplissez les valeurs

# Analyse complète
python main.py

# Seule revue de marché
python main.py --market-review

# Exécuter tâche planifiée (cron dans le conteneur)
python main.py --schedule

Pour Docker :

# Créer le fichier de configuration
cp .env.example .env
nano .env

# Lancer les services
docker-compose up -d

# Suivre les logs
docker-compose logs -f


Comment fonctionne l'analyse

  1. Récupération des données – Prix, volume, MA5/MA10/MA20, distribution de volume et titres d'actualités proviennent des fournisseurs configurés.
  2. Inférence IA – Le module analyzer.py alimente Gemini (ou le modèle OpenAI choisi) avec les indicateurs nettoyés et les nouvelles, et reçoit un résumé décisionnel concis, les prix cibles et stop‑loss, ainsi qu'une liste de conformité.
  3. Revue de marchémarket_analyzer.py agrège les mouvements quotidiens des indices, la performance sectorielle et les flux de capitaux.
  4. Notificationnotification.py formate le tableau de bord et la revue de marché en Markdown ou cartes interactives et les publie sur chaque canal activé.
  5. Planificationscheduler.py et le workflow GitHub Actions garantissent que le travail s'exécute une fois par jour ouvré à 18h00 local.

Idées de personnalisation

Domaine Extension
Ajouter une nouvelle source de données Implémentez un nouveau récupérateur dans data_provider/ et mettez à jour config.py.
Utiliser un autre modèle IA Passez OPENAI_API_KEY/BASE_URL/MODEL et sautez les variables GEMINI_*.
Changer le format de notification Modifiez notification.py pour produire une carte personnalisée ou intégrer des graphiques.
Automatiser les mises à jour de portefeuille Créez un fichier STOCK_LIST que le script surveille pour les changements.
Déployer une interface Web Ajoutez une interface FastAPI ou Flask servant le tableau de bord.

Points forts de la feuille de route

  • Webhooks personnalisés & services de push – Prise en charge de Pushover, Discord, Slack et API propriétaires.
  • Expansion croisée de marché – Inclusion des données marchés HK, US et EU.
  • Backtesting historique – Exécuter des simulations contre des données passées.
  • Tableau de bord Web – Analyses en temps réel avec graphiques en direct.
  • Améliorations communautaires – Contributions pour de nouvelles sources de données et modèles sont les bienvenues.

Comment contribuer

  • Fork et créez une branche de fonctionnalité/bug‑fix.
  • Exécutez les tests (pytest) et lint (ruff).
  • Soumettez une PR avec une description claire et un lien vers la question pertinente.
  • Les réviseurs vérifieront les mises à jour de documentation et la cohérence avec le code.

Pensées finales

daily_stock_analysis est un kit moderne à friction réduite pour tout le monde désireux d'ajouter des insights de marché pilotés par l'IA à son flux de travail quotidien. Avec aucun coût d'hébergement et une architecture plug‑and‑play, vous pouvez commencer à recevoir des tableaux de bord de marché dans votre chat corporatif ou votre boîte de réception en quelques minutes. Prenez le repo, configurez vos secrets, et observez l'outil s'exécuter automatiquement chaque jour de semaine.

Bonne analyse !

Original Article: Voir l’original

Partager cet article