Tika
ff8d58e1aa
Phase 4c-bis/4d : CNN Image vectorisé + Agent RL PPO + HMM persistence + scripts
...
CNN Image (Phase 4c-bis) :
- chart_renderer.py : renderer numpy vectorisé (boucle 64 bougies, pas 12 000 fenêtres)
→ 1 068 img/s, GIL libéré entre itérations, API réactive pendant l'entraînement
- cnn_image_strategy_model.py : torch.set_num_threads(4) pour préserver l'event loop
- trading.py : asyncio.create_task() au lieu de background_tasks → hot-reloads non-bloquants
Agent RL PPO (Phase 4d) :
- src/ml/rl/ : TradingEnv (gymnasium), PPOModel (Actor-Critic MLP, GAE), RLStrategyModel
- src/strategies/rl_driven/ : RLDrivenStrategy (interface BaseStrategy complète)
- Routes API : POST /train-rl, GET /train-rl/{job_id}, GET /rl-models
- docs/RL_STRATEGY_GUIDE.md : documentation complète
HMM Persistence :
- regime_detector.py : save()/load()/needs_retrain()/is_trained (joblib + JSON meta)
- trading.py /ml/status : charge depuis disque si < 24h, re-entraîne + sauvegarde sinon
→ premier appel ~2s, appels suivants < 100ms
Scripts utilitaires :
- scripts/compare_strategies.py : backtest comparatif toutes stratégies (tabulate/JSON)
- scripts/quick_benchmark.py : comparaison wf_accuracy/precision des modèles ML sauvegardés
- reports/ : répertoire pour les rapports JSON générés
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-10 22:40:52 +00:00
Tika
80e1308a1e
feat: Phase 4c-bis — CNN image-based (analyse visuelle graphiques chandeliers)
...
## Nouveaux modules
### src/ml/cnn_image/
- chart_renderer.py : CandlestickImageRenderer — OHLCV → images 128×128 RGB (mplfinance)
Fond #0d1117, bougies vertes/rouges, volume, sans axes, rendu en mémoire
Fallback 2D si mplfinance absent
- cnn_image_model.py : CandlestickCNN — Conv2D 4-blocs (3→32→64→128→256) + AvgPool + Dense(3)
- cnn_image_strategy_model.py : CNNImageStrategyModel — même interface que MLStrategyModel
### src/strategies/cnn_image_driven/
- cnn_image_strategy.py : CNNImageDrivenStrategy(BaseStrategy), SL/TP ATR, seq_len=64
## Modifications
- ensemble_model.py : attach_cnn_image(), poids XGB=0.30/CNN1D=0.30/CNNImage=0.40
- trading.py : POST /train-cnn-image, GET /train-cnn-image/{id}, GET /cnn-image-models
- docker/requirements/api.txt : mplfinance>=0.12.10b0, Pillow>=10.0.0
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-10 20:22:41 +00:00
Tika
e9d4c440d9
docs: plan Phase 4c-bis — CNN image-based (analyse visuelle graphiques chandeliers)
...
Architecture Conv2D 4-blocs sur images 128×128 RGB rendues par mplfinance.
Apprend les patterns visuels sans qu'on les programme (marteaux, double top, etc.)
Intégration Ensemble 3 composants : XGB(0.30) + CNN1D(0.30) + CNNImage(0.40)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-10 20:18:12 +00:00
Tika
6fd68af47a
docs: Phase 4c terminée — résultats XGBoost (wf_prec=21.7%) et CNN (wf_prec=32.7%)
...
CNN > XGBoost sur précision directionnelle. Labels équilibrés (32%/32%/35%).
Mise à jour table comparatif + statut Phase 4c → 100%.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-10 19:50:20 +00:00
Tika
7af7248b4d
fix: MLStrategyModel — encodage labels [-1,0,1] → [0,1,2] pour XGBoost ≥ 2.x
...
XGBoost v2+ exige des classes dans [0, n_classes-1].
- train() : y_enc = y + 1 avant fit()
- predict() : décodage pred_enc - 1, prob_map ajusté (0=SHORT, 1=NEUTRAL, 2=LONG)
- _walk_forward_eval() : mask NEUTRAL corrigé (1 au lieu de 0 en espace encodé)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-10 19:47:00 +00:00
Tika
d245d7d8f4
docs: mise à jour PROJECT_STATUS Phase 4c — code complet, training en attente PyTorch
...
- Phase 4c : 80% (tous les fichiers créés, rebuild Docker en cours)
- Ajout tableau des bugs corrigés par la session agents (trading.py, strategy_engine.py, requirements)
- Version 0.6.0-beta
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-10 19:40:52 +00:00
Tika
acc3338213
feat: Phase 4c — CNN + Ensemble architecture (multi-signal trading)
...
## Nouveaux modules
### src/ml/cnn/
- candlestick_encoder.py : CandlestickEncoder, fenêtres OHLCV z-score (N, 64, 5)
- cnn_model.py : TradingCNN — 3 blocs Conv1D(5→32→64→128) + BN + ReLU + GlobalAvgPool
- cnn_strategy_model.py : CNNStrategyModel, API identique à MLStrategyModel (train/predict/save/load)
### src/ml/ensemble/
- ensemble_model.py : EnsembleModel, poids {xgboost:0.40, cnn:0.60}, accord requis entre modèles
### src/strategies/cnn_driven/
- cnn_strategy.py : CNNDrivenStrategy(BaseStrategy), SL/TP ATR-based, fallback CNN_AVAILABLE=False
### src/strategies/ensemble/
- ensemble_strategy.py : EnsembleStrategy(BaseStrategy), auto-load XGBoost + CNN au démarrage
## Modifications
- trading.py : routes POST /train-cnn, GET /train-cnn/{job_id}, GET /cnn-models,
POST /ensemble/configure, GET /ensemble/status + fix bugs (logging, _get_data_service, period_map)
- strategy_engine.py : support 'ml_driven' dans load_strategy()
- docker/requirements/api.txt : ajout torch>=2.0.0 + dépendances ML (scikit-learn, xgboost, lightgbm)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-10 19:34:41 +00:00
Tika
8732acf3d0
docs: plan Phase 4c CNN+Ensemble + mise à jour PROJECT_STATUS
...
- Nouveau : docs/CNN_ENSEMBLE_PLAN.md — architecture complète CNN 1D + Ensemble pondéré + RL (Phase 4d)
- PROJECT_STATUS : Phase 4b marquée avec fix bug SHORT LabelGenerator
- PROJECT_STATUS : Phase 4c CNN+Ensemble et Phase 4d RL ajoutées
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-08 22:24:16 +00:00
Tika
daea333555
fix: LabelGenerator _classify_bar — simulation LONG/SHORT indépendante
...
Bug : quand le SL LONG était touché, la fonction retournait 0 (NEUTRAL)
immédiatement sans évaluer les conditions SHORT. Résultat : 0 labels SHORT
sur 12230 barres, modèle inutilisable pour signaux SHORT.
Fix : deux boucles indépendantes (LONG et SHORT) qui évaluent chacune
leur propre TP/SL. Si les deux gagnent, priorité au premier résolu.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-08 22:22:27 +00:00
Tika
8f3b026f82
docs: mise à jour TP scalping 3×ATR → 4×ATR dans la documentation
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-08 21:45:47 +00:00
Tika
b3983d9ef8
fix: scalping TP 3×ATR → 4×ATR pour R:R=2:1 (breakeven ~34%)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-08 21:44:42 +00:00
Tika
bf530215e0
docs: mise à jour complète de la documentation (état réel 2026-03-08)
...
- PROJECT_STATUS.md : réécriture complète — phases 1-4b terminées à 100%,
routes API exhaustives, fixes critiques documentés, à-faire priorisé
- STRATEGY_GUIDE.md : ajout section ML-Driven Strategy avec features,
labels, usage API et paramètres de configuration
- AI_FRAMEWORK.md : ajout section ML-Driven + tableau statut implémentation,
différenciation HMM/Optuna/MLStrategy
- ARCHITECTURE.md : ajout structure réelle du code avec les nouveaux fichiers
ml_strategy_model.py, features/, ml_driven/ annotés [NOUVEAU]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-08 21:13:01 +00:00
Tika
cc05ddb7c4
feat: ML-Driven Strategy — apprentissage des patterns TA humains
...
Nouveau module complet pour entraîner un modèle XGBoost/LightGBM
qui apprend à détecter des opportunités depuis des indicateurs classiques :
RSI (divergences), MACD (crossovers), Bollinger (squeeze/rebond),
Supports/Résistances (pivots locaux), Points Pivots (classiques + Fibonacci),
patterns chandeliers (marteau, engulfing), alignement EMAs, volume.
Fichiers créés :
- src/ml/features/technical_features.py (~50 features TA)
- src/ml/features/label_generator.py (labels LONG/SHORT/NEUTRAL par forward simulation ATR)
- src/ml/ml_strategy_model.py (entraînement + walk-forward + sauvegarde joblib)
- src/strategies/ml_driven/ml_strategy.py (stratégie compatible StrategyEngine)
Routes API ajoutées :
- POST /trading/train (entraînement async)
- GET /trading/train/{job_id} (état du job)
- GET /trading/ml-models (liste modèles disponibles)
- GET /trading/ml-models/{symbol}/{tf}/importance (feature importance)
Documentation : docs/ML_STRATEGY_GUIDE.md
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-08 17:45:39 +00:00
Tika
da30ef19ed
Initial commit — Trading AI Secure project complet
...
Architecture Docker (8 services), FastAPI, TimescaleDB, Redis, Streamlit.
Stratégies : scalping, intraday, swing. MLEngine + RegimeDetector (HMM).
BacktestEngine + WalkForwardAnalyzer + Optuna optimizer.
Routes API complètes dont /optimize async.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-08 17:38:09 +00:00