2.8 KiB
strategy_pythagoras
Strategia di trading basata sul framework Pythagoras-Malanga
(candle-pattern + geometria frattale), evoluta via GA sul core
multi_swarm_core. Workspace member del monorepo multi_swarm_coevolutive.
Scope
Pipeline coevolutiva su candele OHLC: il GA del core esplora combinazioni di indicatori candle-pattern, geometria pitagorica e ratio frattali, e produce strategie JSON freezate. Questo member le esegue in paper-trading forward-test ed espone una dashboard NiceGUI per analisi invarianza scala/tick e candle.
Layout
strategy_pythagoras/
├── backend/ paper trading runner (PaperExecutor, Portfolio, PaperRepository)
│ └── schema.py tabelle paper_trading_* (DB locale dedicato)
├── frontend/ NiceGUI dashboard (tab invariance, candle, equity, ticks)
├── strategies/ JSON freezate input al runner
│ (pythagoras_*.json)
└── prompts.json 7 stili di prompt LLM (candle-pattern, frattale, ratio,
pivot, kagi, renko, hybrid)
Run paper-trading smoke
uv run python scripts/run_pythagoras_smoke.py \
--name pythagoras-smoke-001 \
--initial-capital 1000 \
--poll-seconds 300
Il default --strategies-dir punta ai JSON shippati col package via
importlib.resources.files("strategy_pythagoras") / "strategies".
Dashboard
uv run python -m strategy_pythagoras.frontend.nicegui_app
In produzione: https://swarm.tielogic.xyz/strategy_pythagoras_gui/
(root_path configurato via DASHBOARD_ROOT_PATH=/strategy_pythagoras_gui).
DB schema
Schema isolato dal core e dalle altre strategie. Due DB distinti:
state/strategy_pythagoras.db— GA + analisi invarianza (envSTRATEGY_PYTHAGORAS_DB_PATH)state/strategy_pythagoras_paper.db— paper-trading runs (envSTRATEGY_PYTHAGORAS_PAPER_DB_PATH)
Tabelle paper-trading:
paper_trading_runs— metadata run (id, name, capital, status)paper_trading_positions— posizioni aperte (long/short)paper_trading_trades— trade realized (entry/exit, pnl, fees)paper_trading_equity— equity curve snapshotpaper_trading_ticks— log signal/action per ogni bar
DDL gestito da strategy_pythagoras.backend.schema.init_schema().
La dashboard legge anche il runs.db del core GA (env GA_DB_PATH)
per correlare paper performance con i genomi di provenienza e con i
risultati di fitness invariance.
References
- Spec:
docs/superpowers/specs/2026-05-19-strategy-pythagoras-design.md - Plan:
docs/superpowers/plans/2026-05-19-strategy-pythagoras.md - Summary paper:
Pythagoras/Pythagoras_Trading_Prediction.summary.md - Summary frattali:
Pythagoras/Libro_frattali.summary.md - Pattern member: vedi
src/strategy_crypto/README.md