mirror of
https://github.com/Alkatrazz24/Funk-lab.git
synced 2026-07-08 21:44:42 +02:00
* feat(finlab): console Claude Code finance in-cluster + toolkit d'analyse Intègre finlab (ex-projet Projets/Finance) au lab comme une console Claude Code web spécialisée finance — l'esprit OpenAlice, mais c'est le vrai Claude Code sur l'abonnement (login persisté, pas d'API facturée), agentique, avec la boîte à outils finlab (Yahoo Finance) branchée en MCP. - tools/finlab/ : source finlab rapatriée + Dockerfile (Python 3.12 + Node + claude-code + ttyd) + persona workspace/CLAUDE.md + branchement MCP + entrypoint (seed du workspace no-clobber sur le PVC) - .github/workflows/build-finlab.yml : build GHCR funk-finlab + bump manifest (main) - k8s/apps/finlab/ : Deployment/Service/PVC/IngressRoute (finance.lab.local) + Middleware basicAuth (shell web protégé) ; PVC = HOME (login) + workspace - k8s/apps-of-apps/apps/finlab.yaml : Application ArgoCD - .mcp.json (racine) : outils finlab dans les sessions Claude Code du lab - admin/ia/finlab.md + READMEs + CLAUDE.md : doc + enregistrement Analyse/aide à la décision uniquement — aucun ordre réel (paper trading Alpaca fictif seul exécutable). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * fix(finlab): ttyd absent des dépôts bookworm → binaire statique GitHub Le build amont échouait (`E: Package 'ttyd' has no installation candidate`) : ttyd n'est pas packagé dans Debian bookworm. On récupère le binaire statique (musl, pin TTYD_VERSION=1.7.7) depuis les releases GitHub. Build complet validé en local (podman) : ttyd 1.7.7, claude-code 2.1.195, import finlab + seed OK. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
35 lines
1 KiB
YAML
35 lines
1 KiB
YAML
# Règles d'alerte — ne se déclenchent que sur ÉVÉNEMENT (transition), pas sur état.
|
|
# Évalué par finlab/alerts.py sur la watchlist choisie.
|
|
#
|
|
# Types de condition disponibles :
|
|
# rsi_below / rsi_above -> seuil (value)
|
|
# macd_cross_up / macd_cross_down -> croisement du jour
|
|
# cross_above_mm50 / cross_below_mm50 -> cassure de la MM50 du jour
|
|
# golden_cross / death_cross -> MM50 croise MM200
|
|
|
|
rules:
|
|
- name: "🟢 Survente (rebond possible)"
|
|
when: rsi_below
|
|
value: 30
|
|
|
|
- name: "🔴 Surachat (essoufflement)"
|
|
when: rsi_above
|
|
value: 72
|
|
|
|
- name: "🟢 MACD croise à la hausse"
|
|
when: macd_cross_up
|
|
|
|
- name: "🔴 MACD croise à la baisse"
|
|
when: macd_cross_down
|
|
|
|
- name: "🟢 Cassure MM50 à la hausse"
|
|
when: cross_above_mm50
|
|
|
|
- name: "🔴 Perte de la MM50"
|
|
when: cross_below_mm50
|
|
|
|
- name: "🟢 Golden cross (MM50 > MM200)"
|
|
when: golden_cross
|
|
|
|
# Watchlist par défaut surveillée par le digest (thème de watchlists.yaml, ou 'portfolio', ou 'all')
|
|
watch: all
|