# ⚡ Apollo Degen Bot - Quick Start

## 🎯 En 3 minutes

### 1. Vérifier que tout fonctionne

```bash
cd /var/www/html/HyperOracle/crypto_trader/apollo_degen_bot
python3 quick_test.py
```

**Résultat attendu:** Tous les tests ✅

### 2. Lancer un backtest rapide (BTC 3 jours)

```bash
python3 run_backtest.py
# Choisir option 1
```

**Durée:** ~5-10 minutes

**Résultat:** JSON avec métriques de performance de chaque stratégie

### 3. Analyser les résultats

Le script génère un fichier `backtest_BTCUSDT_250x_YYYYMMDD_HHMMSS.json`

**Métriques clés à regarder:**
- `total_return_pct`: Performance globale
- `win_rate`: % trades gagnants (>55% = bon)
- `profit_factor`: Gains/Pertes (>1.5 = bon)
- `max_drawdown_pct`: Pire perte (<15% = bon)

## 🚀 Commandes Principales

### Tests

```bash
# Test complet du système
python3 quick_test.py

# Test d'un module spécifique
python3 apollo_client.py              # Client API
python3 signals/short_term_signals.py  # Générateur signaux
python3 strategies/shitcoin_top_detector.py  # Détecteur tops
```

### Backtests

```bash
# Backtest interactif
python3 run_backtest.py

# Backtest rapide BTC
python3 run_backtest.py <<EOF
1
EOF

# Backtest complet majors
python3 run_backtest.py <<EOF
2
EOF
```

### Signaux en temps réel

```bash
# Signaux sur BTC
python3 -c "
from apollo_client import ApolloDegenClient
from signals.short_term_signals import ShortTermSignalGenerator

client = ApolloDegenClient()
generator = ShortTermSignalGenerator()

df = client.get_klines('BTCUSDT', '1m', limit=100)
signals = generator.generate_signals(df, 'BTCUSDT')

for sig in signals:
    print(f'{sig.strategy}: {sig.side} @ \${sig.entry_price:.2f}')
    print(f'  Score: {sig.score:.2%}')
    print(f'  SL: \${sig.stop_loss:.2f} | TP: \${sig.take_profit:.2f}')
"
```

### Scanner de shitcoins

```bash
# Scanner les marchés pour tops
python3 -c "
from apollo_client import ApolloDegenClient
from strategies.shitcoin_top_detector import ShitcoinScanner

client = ApolloDegenClient()
scanner = ShitcoinScanner(client)

print('Scan des marchés pour tops de shitcoins...')
detections = scanner.scan_for_pumps(min_volume_usd=100000)

for det in detections[:5]:
    print(f'\n{det.symbol}:')
    print(f'  Pump: +{det.pump_percent:.1f}%')
    print(f'  Score: {det.confidence_score:.2%}')
    print(f'  Entry: \${det.suggested_entry:.4f}')
"
```

## 📊 Interpréter les Résultats de Backtest

### Exemple de bon résultat

```json
{
  "total_return_pct": 45.2,      // ✅ Profit de 45%
  "total_trades": 127,            // ✅ Assez de trades pour statistiques
  "win_rate": 0.62,               // ✅ 62% win rate (>55%)
  "profit_factor": 2.1,           // ✅ PF > 2 (excellent)
  "avg_win_pct": 1.2,             // ✅ Gains moyens 1.2%
  "avg_loss_pct": -0.4,           // ✅ Pertes moyennes -0.4%
  "max_drawdown_pct": -8.3,       // ✅ Drawdown < 15%
  "sharpe_ratio": 2.4             // ✅ Sharpe > 2 (excellent)
}
```

### Exemple de mauvais résultat

```json
{
  "total_return_pct": -12.5,     // ❌ Perte
  "total_trades": 200,
  "win_rate": 0.45,              // ❌ Win rate < 50%
  "profit_factor": 0.8,          // ❌ PF < 1 (pertes > gains)
  "max_drawdown_pct": -25.0,     // ❌ Drawdown > 20%
  "sharpe_ratio": -0.5           // ❌ Sharpe négatif
}
```

**→ Ne pas trader avec cette configuration!**

## ⚠️ Checklist Avant Trading Live

- [ ] Backtest sur 7+ jours avec **win rate > 55%**
- [ ] Profit factor **> 1.5**
- [ ] Max drawdown **< 15%**
- [ ] Sharpe ratio **> 1.5**
- [ ] Compris les risques du leverage extrême
- [ ] Capital = argent que je peux perdre 100%
- [ ] Clés API configurées avec IP whitelist
- [ ] Commencer avec leverage **conservateur** (50-100x)

## 🎓 Stratégies Optimales (après backtest)

### Pour BTC/ETH (marchés liquides)
- **Leverage**: 100-250x
- **Stratégie**: Tester les 3 et garder la meilleure
- **Timeframe**: 1m
- **Position size**: 1-2% capital

### Pour altcoins (SOL/BNB)
- **Leverage**: 50-100x (plus prudent)
- **Stratégie**: BollingerBounce ou MACD
- **Timeframe**: 1m-5m
- **Position size**: 0.5-1% capital

### Pour shitcoins (shorts de tops)
- **Leverage**: 50-100x (JAMAIS 1001x!)
- **Entry**: Attendre confirmation (rejection wick)
- **SL**: Ultra serré (+1% au-dessus high)
- **Position size**: 0.5% capital MAX

## 🔧 Troubleshooting

### Erreur: "apollox-connector-python non installé"

```bash
pip install apollox-connector-python
```

### Erreur: "No module named 'pandas'"

```bash
pip install pandas numpy
```

### Backtest ne génère aucun trade

**Causes possibles:**
- Score minimum trop élevé → Réduire `MIN_SIGNAL_SCORE_AGGRESSIVE` dans config.py
- Pas assez de confluences → Réduire `MIN_CONFLUENCES_AGGRESSIVE`
- Période trop courte → Tester sur 7+ jours
- Marché en range → Essayer un autre symbole

### API rate limit errors

**Solution:**
- Ajouter des `time.sleep()` entre requêtes
- Utiliser WebSocket au lieu de REST API
- Rate limit ApolloX: 2400 req/min

## 📚 Documentation Complète

**Fichiers à lire:**
- `README.md`: Documentation complète
- `config.py`: Tous les paramètres modifiables
- `signals/short_term_signals.py`: Logique des stratégies
- `strategies/shitcoin_top_detector.py`: Détecteur de tops

## 🎯 Next Steps

1. **Backtester** sur données historiques ✅
2. **Identifier** la meilleure stratégie
3. **Optimiser** les paramètres (via backtest)
4. **Paper trading** 3-7 jours
5. **Live trading** avec petit capital
6. **Scale up** progressivement

## ⚡ One-Liner Recap

```bash
# Installation
pip install apollox-connector-python pandas numpy

# Test
python3 quick_test.py

# Backtest
python3 run_backtest.py

# Analyser résultats
cat backtest_*.json | python3 -m json.tool

# 🚀 Ready to degen!
```

---

**⚠️ RAPPEL FINAL:**

Leverage 1001x = 0.1% de mouvement contre vous = **LIQUIDATION TOTALE**

**Commencez TOUJOURS avec leverage conservateur (50-100x) et capital que vous pouvez perdre!**
