# 🎲 Martingale Degen - 1000x Leverage Trading Bot

Bot de trading martingale **ULTRA DEGEN** pour ApolloX avec leverage jusqu'à **1000x**.

⚠️ **AVERTISSEMENT IMPORTANT** ⚠️
```
SYSTÈME EXTRÊMEMENT RISQUÉ!
- La martingale double la mise après chaque perte
- Avec 1000x leverage, le risque de liquidation est ÉNORME
- Vous pouvez perdre 100% de votre capital en quelques trades
- UTILISEZ UNIQUEMENT avec du capital que vous êtes prêt à perdre
- Ceci est un outil éducatif/expérimental
```

## 📊 Principe de la Martingale

La martingale est une stratégie de money management où:
1. **Départ**: Vous tradez avec une mise de base (ex: $10)
2. **Si PERTE**: Vous doublez la mise au prochain trade ($20, $40, $80...)
3. **Si GAIN**: Vous retournez à la mise de base
4. **Objectif**: Récupérer toutes les pertes + profit quand vous gagnez

### Leverage Adaptatif

Le bot ajuste automatiquement le leverage selon le niveau de martingale:
- **Level 0** (base): 100x leverage
- **Level 1** (x2): 280x leverage
- **Level 2** (x4): 460x leverage
- **Level 3** (x8): 640x leverage
- **Level 4** (x16): 820x leverage
- **Level 5** (x32): 1000x leverage

## 🚀 Installation

```bash
cd /var/www/html/HyperOracle/crypto_trader/martingale_degen

# Installer dépendances (si nécessaire)
pip3 install pandas numpy requests web3
```

## 🧪 Modes de Trading

### 1. Backtest (Données Historiques)

Teste la stratégie sur données Binance passées:

```bash
python3 martingale_backtester.py
```

**Paramètres configurables** (dans le code):
```python
backtester = MartingaleBacktester(
    initial_capital=1000.0,      # Capital initial
    trading_fee_pct=0.0005,      # 0.05% frais
    timeout_minutes=60           # Timeout position après 60min
)

strategy = MartingaleStrategy(
    base_position_size=10.0,     # Taille position de base
    max_martingale_level=5,      # Max level (x32)
    base_leverage=100,           # Leverage minimum
    max_leverage=1000,           # Leverage maximum
    stop_loss_pct=0.003,         # 0.3% SL
    take_profit_ratio=3.0        # TP = 3x SL
)
```

**Résultats sauvegardés** dans `martingale_results.json`

### 2. Paper Trading (Temps Réel)

Trade en simulation avec prix Pyth/Binance live:

```bash
python3 paper_trading_bot.py
```

Le bot va:
- ✅ Récupérer les prix en temps réel depuis Pyth Network
- ✅ Générer des signaux basés sur RSI, EMA, MACD
- ✅ Ouvrir/fermer des positions virtuelles
- ✅ Tracker le capital et PnL
- ✅ Sauvegarder l'état dans `paper_bot_state.json`

**Arrêt**: `Ctrl+C` pour stopper proprement

**Paramètres configurables**:
```python
bot = MartingalePaperBot(
    symbol='BTCUSDT',            # Paire à trader
    initial_capital=1000.0,      # Capital initial
    base_position_size=10.0,     # Position de base
    max_martingale_level=5,      # Max 5 niveaux (x32)
    base_leverage=100,           # Leverage min
    max_leverage=1000,           # Leverage max
    interval_seconds=60          # Vérifier toutes les 60s
)
```

### 3. Live Trading (À VOS RISQUES!)

Pour trader en VRAI sur ApolloX:

```bash
# 1. Configurer les clés API dans .env (voir dossier parent apollo_degen_bot)
# 2. Modifier paper_trading_bot.py pour utiliser ApolloXV2Client
# 3. TESTER D'ABORD EN PAPER!
```

**NE PAS TRADER EN LIVE SANS:**
- ✅ Avoir testé en backtest pendant plusieurs jours
- ✅ Avoir vérifié les résultats en paper trading
- ✅ Comprendre les risques de liquidation à 1000x
- ✅ Utiliser uniquement du capital que vous pouvez perdre

## 📈 Signaux de Trading

Le bot génère des signaux basés sur:

1. **RSI** (7 périodes)
   - Oversold: < 30 → Signal LONG
   - Overbought: > 70 → Signal SHORT

2. **EMA Cross**
   - EMA 8 cross above EMA 21 → Signal LONG
   - EMA 8 cross below EMA 21 → Signal SHORT

3. **MACD**
   - MACD cross above signal → Signal LONG
   - MACD cross below signal → Signal SHORT

4. **MACD Histogram Momentum**
   - Histogram croissant → Confirme LONG
   - Histogram décroissant → Confirme SHORT

5. **Volume Spike**
   - Volume > 1.5x moyenne → Renforce signal dominant

**Score minimum**: 0.6 (60% de confiance) requis pour trader

## 📊 Résultats de Backtest

Exemple de résultats:

```
📊 RÉSULTATS BACKTEST MARTINGALE
================================================================================

💰 PERFORMANCE:
   Capital initial:      $1,000.00
   Capital final:        $1,150.00
   Retour total:         +15.00%
   Frais totaux:         $5.00

📈 TRADES:
   Total:                25
   Gagnants:             15 (60.0%)
   Perdants:             10

💵 PNL:
   Gain moyen:           +12.50%
   Perte moyenne:        -8.20%
   Plus gros gain:       +45.00%
   Plus grosse perte:    -35.00%
   Profit factor:        1.52

⚠️  RISQUE:
   Max drawdown:         -25.00%
   Max pertes consec.:   3
   Max martingale level: 3
```

## ⚠️ Risques et Limitations

### Risques Majeurs

1. **Liquidation Ultra Rapide**
   - À 1000x leverage, une variation de 0.1% contre vous = liquidation
   - Le slippage peut causer une liquidation même avec SL

2. **Spirale de Martingale**
   - 5 pertes consécutives = position x32 de la base
   - Peut épuiser le capital très rapidement
   - Exemple: $10 → $20 → $40 → $80 → $160 → $320

3. **Fees Élevés**
   - Avec martingale, vous tradez souvent
   - Les fees s'accumulent rapidement

4. **Market Conditions**
   - La martingale fonctionne mal en trend fort
   - Besoin de mean reversion pour être profitable

### Limitations Techniques

- **Pas de trailing stop** (pour l'instant)
- **Timeout fixe** à 60min (peut rater des grands mouvements)
- **Signaux simples** (RSI/EMA/MACD basique)
- **Pas d'analyse de volatilité** adaptative

## 🛠️ Architecture

```
martingale_degen/
├── README.md                    # Ce fichier
├── martingale_strategy.py       # Stratégie martingale + signaux
├── martingale_backtester.py     # Backtest avec données historiques
├── paper_trading_bot.py         # Paper trading temps réel
├── martingale_results.json      # Résultats backtest
└── paper_bot_state.json         # État du bot paper
```

### Dépendances

- **Pyth Network**: Oracle de prix on-chain (via `pyth_price_feed.py`)
- **Binance API**: Données OHLCV historiques
- **ApolloX V2**: Trading on-chain BSC (via `apollox_v2_client.py`)

## 🎯 Stratégies d'Optimisation

Pour améliorer les résultats:

1. **Ajuster le SL/TP**
   ```python
   stop_loss_pct=0.002,      # SL plus serré (0.2%)
   take_profit_ratio=4.0     # TP plus large (4:1)
   ```

2. **Limiter les niveaux de martingale**
   ```python
   max_martingale_level=3    # Max x8 au lieu de x32
   ```

3. **Augmenter le score minimum**
   ```python
   min_signal_score=0.8      # Signaux plus sélectifs
   ```

4. **Ajouter des filtres**
   - Ne trader que certaines heures (volatilité élevée)
   - Éviter les news économiques
   - Filter par volatility (ATR)

## 📚 Ressources

- **Pyth Network**: https://pyth.network/
- **ApolloX DEX**: https://www.apollox.finance/
- **Binance API**: https://binance-docs.github.io/apidocs/

## ⚖️ Disclaimer

Ce bot est fourni à des fins **éducatives et expérimentales** uniquement.

- ❌ Pas de garantie de profits
- ❌ Risque de perte totale du capital
- ❌ Les performances passées ne garantissent pas les résultats futurs
- ❌ L'auteur n'est pas responsable de vos pertes

**Trade at your own risk!** 🎲

---

*Built with 🔥 for degens by degens*
