# WERKZEUGE fuer Entwicklung, Messung und Pruefung — NICHT fuer den Live-Betrieb. # # ⚠ Bewusst getrennt von `requirements.txt`: der Bot soll sich auf einer frischen # Maschine mit einer moeglichst kleinen Oberflaeche wiederherstellen lassen. scipy # und scikit-learn haben nichts im Handelspfad zu suchen, auch wenn Backtests sie # nutzen. # # Installation: python -m pip install -r requirements-dev.txt -r requirements.txt # ── Pruefung (laeuft im pre-commit-Hook) ───────────────────────────────── pytest==9.1.1 ruff==0.16.1 # ersetzt pyflakes: gleiche Befunde, deutlich schneller pyflakes==3.4.0 # Rueckfall in `tools/check_nfalle.py`, falls ruff fehlt # Eigenschafts-Tests auf den REINEN Funktionen (tests/test_invarianten.py). # ⚠ Aufgenommen NACH einer Gegenprobe, nicht auf Verdacht: hypothesis findet den # real am 10.08. gefundenen Rundungsfehler (`frei` auf gerundetem Abstand -> # 0,59765625 rutscht durchs 0,6-Gate) in Sekunden. Die Suite prueft sonst nur # BEISPIELE, und die waehle ich selbst aus - genau dort sitzt der blinde Fleck. # ⚠ Optional: `tests/test_invarianten.py` ueberspringt sich per `importorskip`, # die Suite laeuft also auch ohne. hypothesis==6.165.10 # ── Messung / Backtests ────────────────────────────────────────────────── numpy==2.2.6 scipy==1.18.0 # `backtest_cost_gate.ci95` (Bootstrap-Konfidenzintervalle) scikit-learn==1.9.0 # bislang ungenutzt; Kandidat fuer P(break)-Nachbau pandas==3.0.2 # bislang ungenutzt # Typpruefung (Aritaet) — Stufe A3 in tools/check_nfalle.py, seit 2026-08-19 ty==0.0.73