README con gli screenshot e l'avvio rapido Docker; CLAUDE.md, architettura, runbook, problemi noti, glossario, fonti dei dati e apprendimento riscritti per il container e l'interfaccia web; il post-mortem spiega gli accrediti del demo (uno per ordine ridotto, dal ledger ricevuto); le skill seguono la catena nuova. Lo stato dice che il piano 5.0 è completo e che il rilascio 5.0.0 resta una decisione dell'utente. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Encelado
Bot di trading Correlation Baskets su eToro (Public API): cinque basket di due coppie forex correlate, ingresso quando il cross sintetico diverge (z-score), uscita quando converge o al take-profit di basket, stop di basket obbligatorio, cost gate sullo spread reale, ledger completo, calendario e notizie gratuiti, apprendimento in ombra. Dalla 5.0 gira solo in un container e si guarda dal browser.
Il backtest è negativo: la strategia non regge i costi di eToro (
docs/STRATEGY.md). Il bot è uno strumento di forward test in Demo, non un sistema da mettere sul reale.
Avvio rapido (Docker)
docker pull 192.168.30.23:3000/alby96/encelado:latest
docker run -d --name encelado --restart unless-stopped -p 8080:8080 `
-v /mnt/user/appdata/encelado/config:/config -v /mnt/user/appdata/encelado/data:/data `
-e ENCELADO_WEB_TOKEN=<una-stringa-lunga> -e TZ=Europe/Rome `
-e ETORO_API_KEY=<x-api-key> -e ETORO_USER_KEY=<x-user-key> `
192.168.30.23:3000/alby96/encelado:latest
Poi http://<ip>:8080/, token una volta, AVVIA. Su Unraid: template in deploy/unraid/ (icona, porte, volumi e variabili già descritti). Tutto il resto in docs/DOCKER.md.
Senza token il server ascolta solo su localhost del container. La modalità Live richiede run.allowLive = true, ETORO_ENVIRONMENT=real e la frase CONFERMO LIVE in ENCELADO_CONFIRM_LIVE.
Le pagine
Sviluppo
dotnet build Encelado.slnx # compilazione
dotnet test tests/Encelado.Tests --no-restore # test (xunit)
dotnet run --project src/Encelado.Server -- --no-autostart # server locale (Documenti\Encelado), poi http://localhost:8080/
dotnet run --project src/Encelado.Server -- --sample # interfaccia con dati finti, senza chiavi
dotnet msbuild build/Release.proj -t:Verifica # compilazione + test nella cartella di verifica
dotnet msbuild build/Release.proj -t:Docker # l'immagine, con i test dentro la build
In VS Code: F5 (Encelado (server) apre il browser da solo; Encelado (campione) per lavorare sulle pagine), attività verifica, backtest, immagine docker, pacchetto, rilascia su Gitea.
src/Encelado.Core logica pura: basket, cross sintetici, decisore, cost gate, sizing, esecutore, registro ordini, kill-switch, apprendimento, notifiche
src/Encelado.Etoro client HTTP di eToro Public API
src/Encelado.Engine motore, ledger, feed, configurazione, impostazioni, storico, Telegram
src/Encelado.Server l'eseguibile: Kestrel, API JSON, SSE, interfaccia incorporata (Material 3, vanilla)
tools/Encelado.Backtest ticks, baskets, falsify, learn
tests/Encelado.Tests xunit
deploy/ docker (entrypoint), unraid (template), local (ignorato: volumi del compose)
build/ catena di verifica, pacchetto e rilascio (MSBuild)
docs/ STATE, ARCHITECTURE, STRATEGY, RUNBOOK, DOCKER, UI_GUIDELINES, ADR…
Leggi CLAUDE.md per le convenzioni e docs/STATE.md per lo stato del lavoro.
Autore e licenza
Alberto Balbo. Uso personale; nessuna licenza di ridistribuzione. Nessuna garanzia: un bot che opera su un conto reale può perdere denaro.




