Monitors and controls the AutoSignals autonomous research loop.
AutoSignals is an adaptation of Karpathy's autoresearch pattern for trading signal optimization. An autonomous loop runs continuously, spawning sub-agents to modify signals.py, backtesting changes, and keeping improvements.
Architecture:
signals.py — The ONE file agents can modify (factor weights, thresholds, indicators, scoring)backtest.py — Fixed evaluation engine (5-year backtest, composite score metric)prepare.py — Data download (S&P 500 + held tickers)program.md — Instructions for research agentsrun.py — Autonomous loop controllerexperiments.jsonl — Full experiment logLocation: /Users/clawdiri/Projects/autosignals/
bash /Users/clawdiri/Projects/autosignals/status.sh
Shows:
bash /Users/clawdiri/Projects/autosignals/start.sh
Starts the autonomous loop in the background. Runs forever until stopped.
kill $(cat /Users/clawdiri/Projects/autosignals/autosignals.pid)
tail -f /Users/clawdiri/Projects/autosignals/logs/autosignals.log
cat /Users/clawdiri/Projects/autosignals/best_score.json
Then read the corresponding commit:
cd /Users/clawdiri/Projects/autosignals
git show <commit_hash>:signals.py
bash /Users/clawdiri/Projects/autosignals/monitor.sh
Returns JSON with:
running: boolexperiment_count: intbest_score: floatbest_commit: strtrend: "improving" | "declining" | "flat"errors: list of recent errorscomposite_score = (0.35 * sharpe_normalized) +
(0.25 * (1 - max_drawdown)) +
(0.20 * win_rate) +
(0.20 * profit_factor_normalized)
All components normalized to [0, 1].
Baseline targets:
Good: Beat baseline
Great: Sharpe > 2.0, drawdown < 15%
Exceptional: Sharpe > 2.5, drawdown < 10%
/Users/clawdiri/Projects/autosignals/data/prices.parquetRefresh data:
cd /Users/clawdiri/Projects/autosignals
source .venv/bin/activate
python prepare.py
signals.pybacktest.py is immutable truthHands-off:
Check it out:
Celebrate:
共 1 个版本