# ATM — Automated Trading Monitor Personal Faza-1 tool pentru strategia M2D. Python 3.11+. > Acest repo folosește **DOX**: arborele de `AGENTS.md` de mai jos sunt contracte > de lucru pentru subarborii lor. Înainte să editezi un path, coboară din rădăcină > citind fiecare `AGENTS.md` întâlnit. După o schimbare semnificativă, fă un **DOX > pass**: actualizează `AGENTS.md`-ul cel mai apropiat care „deține" zona + indexul > părintelui, șterge ce devine învechit. ## Quick Reference ```bash pip install -e ".[windows]" # Windows: live capture pip install -e ".[dev]" # Linux/macOS: dev + tests (WSL: venv întâi) cp .env.example .env # secretele Discord/Telegram (vezi README §Secrets) atm calibrate # Tk wizard atm debug --delay 5 # one-shot capture + detect atm validate-calibration calibration/calibration_labels.json # color gate offline atm run --start-at 16:30 --stop-at 23:00 # live session atm run --tz America/New_York --oh-start 09:30 --oh-stop 16:00 # NYSE window pytest -q # 230+ teste ``` ## DOX Protocol - **Citire** — traversează root → path-ul țintă, citind fiecare `AGENTS.md`. Dacă un părinte indexează un copil al cărui scope conține path-ul, citește copilul și continuă de acolo. - **Editare** — `AGENTS.md`-ul cel mai apropiat = contract local; părinții = reguli globale. Un copil nu poate slăbi o constrângere impusă de un părinte. - **Update (closeout)** — re-verifică path-urile schimbate față de lanțul DOX; actualizează doc-urile care le dețin + indexurile afectate; șterge textul învechit; rulează verificarea relevantă. ## Durable Rules (repo-wide) - **Pure-logic fără cv2/numpy** în `state_machine.py` și `config.py` (testele rulează headless). cv2/I/O greu mereu în `asyncio.to_thread`. - **Secretele doar din env** (`.env`), niciodată în TOML sau cod. - **Mereu** `atm validate-calibration` după recalibrare (palette gotcha — vezi `calibration/AGENTS.md`). - Modul nou în `src/atm/` ⇒ `test_.py` corespondent. > Skill routing (Claude Code) trăiește în [`CLAUDE.md`](CLAUDE.md) — sursa canonică. ## Child DOX Index - **`src/atm/`** → `src/atm/AGENTS.md` — motorul: capture/detect/FSM/scheduler/ vision/canary/config. (copil: `notifier/`) - **`tests/`** → `tests/AGENTS.md` — suita de teste + regresie FSM. - **`calibration/`** → `calibration/AGENTS.md` — corpus culori + scenarii + palette gotcha. - **`configs/`** → `configs/AGENTS.md` — schema TOML (operating_hours, alerts, canary). - **`scripts/`** → `scripts/AGENTS.md` — diagnostic + note sandbox Windows/venv.