# CRYPTO TRADER - Documentation Claude

## 🚀 Architecture du Système

### Service Principal
- **Service**: `crypto-trader.service`
- **Script principal**: `unified_trading_server.py`
- **Moteur**: `SimpleTradingEngine` (UNIQUE - autres moteurs supprimés)
- **Port**: 8888
- **Authentification**: `admin:trading2024`

## 📊 API Endpoints

### Trading
```bash
# Signaux actifs avec PnL
GET /api/trading/active-signals
curl -u admin:trading2024 http://localhost:8888/api/trading/active-signals

# Signaux de trading (en réparation)
GET /api/trading/signals
curl -u admin:trading2024 http://localhost:8888/api/trading/signals
```

### Portfolio
```bash
# Status de trading live
GET /api/trading/live
curl -u admin:trading2024 http://localhost:8888/api/trading/live

# Métriques du portefeuille
GET /api/portfolio/metrics
curl -u admin:trading2024 http://localhost:8888/api/portfolio/metrics
```

## 🔧 Scripts de Monitoring

### Monitoring en Temps Réel
```bash
# Dashboard complet avec rafraîchissement auto
python3 monitor_signals.py

# Affichage unique
python3 monitor_signals.py --once

# Aide
python3 monitor_signals.py --help
```

### Logs Système
```bash
# Logs en temps réel
journalctl -u crypto-trader.service -f

# Logs filtrés signaux
journalctl -u crypto-trader.service -f | grep -E "signal|Signal|pragmatique|leverage"

# Logs récents
journalctl -u crypto-trader.service -n 50

# Logs positions/PnL
journalctl -u crypto-trader.service -f | grep -E "positions actives|PnL"
```

## 🎯 Système de Trading

### Configuration Actuelle
- **Mode**: `LIVE_AUTO` (trading automatique)
- **Max positions**: 10 simultanées
- **Position sizing**: Intelligent - `$25` minimum par position
- **Calcul position**: `balance_totale / max_positions`
- **Leverage**: 8x minimum, jusqu'à 40x max
- **Confiance**: 75% minimum pour ouverture

### Gestion des Leverages
- **Leverage minimum**: 8x (pas de petits leverages)
- **Safety factor**: 98% du maximum Hyperliquid
- **Mode margin**: ISOLATED uniquement
- **Classification**: Dynamique selon volume et liquidité

### Qualité des Tokens
- **Strategy**: `EXCLUDE` - Aucun shitcoin autorisé
- **Classification dynamique**: 213 tokens analysés
- **High quality**: 29 tokens détectés
- **Medium quality**: 17 tokens (20% max des positions)
- **Shitcoins**: WIF, POPCAT, memecoins exclus

### Corrélation BTC
- Système automatique de pondération selon corrélation BTC
- Réduction des positions pour assets fortement corrélés
- Cache des corrélations mis à jour toutes les 5min

## 🛠️ Scripts de Test

### Test Leverages (Archivés)
```bash
# Scripts de test archivés dans archive_tests/
ls archive_tests/test_*.py
```

### Test Corrélation
```bash
python3 simple_trading_system/test_correlation.py
```

### Classification Dynamique
```bash
python3 dynamic_market_classifier.py    # Test classification tokens
```

## 📁 Structure des Fichiers

### Moteur de Trading (ACTIF)
- `simple_trading_system/simple_trading_engine.py` - Moteur principal UNIQUE
- `simple_trading_system/pragmatic_signals.py` - Générateur de signaux
- `simple_trading_system/correlation_manager.py` - Gestion corrélation BTC
- `simple_trading_system/profit_taker.py` - Stop-loss et take-profit

### Configuration
- `trading_config.py` - Configuration principale (nettoyée)
- `hyperliquid_client.py` - Client API Hyperliquid
- `dynamic_market_classifier.py` - Classification dynamique des tokens
- `market_classification_cache.json` - Cache des classifications

### Oracles (crypto_trader/)
- `oracles/technical_indicators_oracle.py` - Indicateurs techniques
- `oracles/sentiment_oracle.py` - Sentiment de marché
- `oracles/tradfi_oracle.py` - Données TradFi
- `services/position_persistence.py` - Persistance positions

### Logs
- `/var/log/journal/` - Logs système (journalctl)
- `logs/` - Logs applicatifs

### Archives
- `archive_tests/` - Scripts de test archivés
- ~~`real_time_trading_engine.py`~~ - SUPPRIMÉ (obsolète)
- ~~`clean_trading_engine.py`~~ - SUPPRIMÉ (obsolète)

## 🔄 Commandes de Gestion

### Service
```bash
# Redémarrer
systemctl restart crypto-trader.service

# Status
systemctl status crypto-trader.service

# Logs live
journalctl -u crypto-trader.service -f
```

### Timezone
```bash
# Vérifier timezone (Paris configuré)
timedatectl status
```

## 🔄 Système Stop-Loss & Take-Profit

### TREND REVERSAL (Nouveau)
- **Détection**: Basée sur signaux contraires (80%+ confiance)
- **Condition**: Signal opposé fort ou signal modéré (60%+) avec perte -3%+
- **Action**: Fermeture complète position si vrai retournement

### STOP-LOSS (Nouveau)
- **Leverage 8x+**: Stop-loss à -4%
- **Leverage 5-7x**: Stop-loss à -5%
- **Leverage 3-4x**: Stop-loss à -6%
- **Leverage <3x**: Stop-loss à -8%

### TAKE-PROFIT (Existant)
- **Target**: 2x le stop-loss
- **Trailing stop**: 15% de distance

## 🧹 Nettoyage Système (29/09/2025)

### Code Mort Supprimé
- ✅ `real_time_trading_engine.py` (3095 lignes)
- ✅ `clean_trading_engine.py`
- ✅ Fichiers `test_*.py` → archivés
- ✅ Variables obsolètes (`POSITION_SIZE_PERCENT`)

### Optimisations
- ✅ **Moteur unique**: SimpleTradingEngine seul
- ✅ **Imports nettoyés**: Classes Position locales
- ✅ **Configuration cohérente**: Paramètres unifiés
- ✅ **Service stable**: Plus de redémarrages en boucle

## 📈 État Actuel
- **Service**: ✅ Stable (crypto-trader.service)
- **Processus**: 1 seul (SimpleTradingEngine)
- **Mémoire**: ~100MB
- **Shitcoins**: WIF, POPCAT exclus
- **Classification**: 213 tokens analysés dynamiquement

---

*Dernière mise à jour: 29/09/2025 15:25 (Paris)*