# ─── AHAD QUANT — Forex Edition — requirements.txt ────────────────────────
# Installation complète :
#   pip install -r requirements.txt
#
# Packages optionnels (activés par phases) :
#   hmmlearn  → Phase 6 (USE_REGIME_FILTER=true)
#   mkdocs-material → Documentation uniquement

# ── Core ML / IA ─────────────────────────────────────────────────────────────
lightgbm>=4.0.0
xgboost>=2.0.0
scikit-learn>=1.3.0
numpy>=1.24.0
pandas>=2.0.0
optuna>=3.3.0
shap>=0.43.0

# ── Data / Forex ──────────────────────────────────────────────────────────────
yfinance>=0.2.28

# ── Brokers optionnels — décommenter selon votre broker ──────────────────────
# OANDA v20 REST API
# oandapyV20>=0.7.2

# Alpaca Markets (paper + live)
# alpaca-py>=0.20.0

# CCXT — 100+ brokers (IG, GAIN Capital, Binance, Bybit, Kraken…)
# ccxt>=4.3.0

# Interactive Brokers (via ib_insync)
# ib_insync>=0.9.86

# MetaTrader 5 Python SDK (Windows uniquement)
# MetaTrader5>=5.0.45

# ── Config / Env ─────────────────────────────────────────────────────────────
python-dotenv>=1.0.0

# ── HTTP ─────────────────────────────────────────────────────────────────────────
requests>=2.31.0

# ── MT5 Bridge ───────────────────────────────────────────────────────────────
watchdog>=3.0.0
filelock>=3.12.0

# ── Interface Web ────────────────────────────────────────────────────────────
fastapi>=0.104.0
uvicorn[standard]>=0.24.0
python-multipart>=0.0.6

# ── Dashboard secondaire (Flask) ─────────────────────────────────────────────
flask>=3.0.0
flask-socketio>=5.3.0

# ── HMM Regime Filter (Phase 6 — décommenter quand prêt) ─────────────────────
# hmmlearn>=0.3.0

# ── RL Agent (PPO via Stable-Baselines3) ─────────────────────────────────────
# Requis car USE_RL_AGENT=true dans .env :
stable-baselines3[extra]>=2.3.0
gymnasium>=0.29.0
shimmy>=1.3.0

# ── Deep Learning (TFT + TransformerGRU — V5) ────────────────────────────────
# Décommenter uniquement si tu as un GPU (entraînement local ou VPS GPU) :
torch>=2.2.0
# torch==2.2.0+cpu  # ← alternative CPU-only pour inférence locale

# ── Ajouts V32 ──────────────────────────────────────────────────────────────
streamlit>=1.30.0       # dashboard.py (vestige crypto, peut être supprimé)
