Funk-lab/tools/finlab/price_alerts.yaml
alkatrazz a1abd36bf7 feat(finlab): alertes de prix par email (watcher sidecar, boucle 5 min)
Permet de configurer des alertes « préviens-moi par mail quand NVDA atteint 200$ »
depuis la Console IA. Un sidecar surveille les cours en continu.

- finlab/watcher.py : boucle toutes les 5 min, lit price_alerts.yaml (workspace),
  évalue les seuils above/below, envoie un email au franchissement. Anti-spam
  (1 mail/seuil, état .watcher-state.json, ré-armé en ré-éditant). Modes --once / --test
- Email via le relais postfix du lab (storage-01:25, SMTP_HOST) qui réécrit
  l'expéditeur en Gmail — AUCUN secret (pods k8s dans mynetworks)
- price_alerts.yaml : config seedée dans le workspace (email_to + rules), éditée
  par la Console IA sur demande
- deployment : conteneur sidecar `watcher` (boucle 5 min, ressources minimes)
- Dockerfile : seed price_alerts.yaml ; persona console + admin/ia/finlab.md documentés

Logique testée en local (SMTP mocké) : franchissement → envoi, anti-spam au 2e run,
seuil non atteint → rien.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 15:27:01 +02:00

15 lines
737 B
YAML

# Alertes de prix par email — évaluées toutes les 5 min par le watcher finlab.
# Édité par la Console IA sur demande (« mets un mail quand NVDA atteint 200$ »).
#
# email_to : destinataire des alertes.
# rules : liste de règles. Chacune :
# ticker : symbole Yahoo Finance
# above : déclenche quand le cours est >= cette valeur (devise native du titre)
# below : déclenche quand le cours est <= cette valeur
# note : texte libre ajouté au mail (optionnel)
# Un seuil franchi n'envoie qu'UN mail (anti-spam). Ré-éditer une règle la ré-arme.
email_to: aliyesilkaya93@gmail.com
rules: []
# - { ticker: NVDA, above: 200, note: "objectif de vente" }
# - { ticker: MU, below: 100, note: "zone d'achat" }