{
  "is_running": true,
  "ai_available": true,
  "total_symbols": 65,
  "analyzed": 65,
  "ready_to_buy": 1,
  "watching": 0,
  "top_opportunities": [
    {
      "symbol": "XAIUSDT",
      "score": 85.0,
      "predicted_gain": 0,
      "confidence": 55.6,
      "status": "watching",
      "reason": "",
      "countdown": 0,
      "last_update": "2026-03-21T11:39:11.095570",
      "features": {
        "price_current": 0.0109,
        "ema_diff": -0.007142788494690664,
        "ema_slope": -0.4271813944691742,
        "ema_slope_long": 0.9459028521935888,
        "ema21_slope": 0.059589279393250774,
        "ema_trend_bullish": 0,
        "ema_trend_bearish": 0,
        "bb_bandwidth": 3.3384613189943875,
        "rsi": 39.024390243902474,
        "momentum_3": -0.36563071297989125,
        "momentum_5": -0.8189262966333013,
        "near_bb_lower": 1,
        "bb_position": 0.19938621754765976,
        "price_change_recent": 0,
        "early_cycle_score": 38.4501053301535,
        "rsi_divergence_bullish": 0,
        "ema_convergence_speed": 0.1556169092248021,
        "momentum_acceleration": 0.26900210660307,
        "volume_precursor": 0,
        "candles_since_bullish_cross": 14
      },
      "smart_criteria": {
        "signal": "ACHAT",
        "score": 100,
        "eligible": true,
        "criteria": {
          "bb_squeeze": true,
          "ema9_under_ema21": false,
          "hausse_confirmee": true,
          "baisse_confirmee": false
        },
        "exclusions": {
          "ema_baisse_permanente": false,
          "peu_variations": false,
          "ema9_above_ema21": true
        }
      },
      "smart_signal": "ACHAT",
      "smart_score": 100,
      "smart_eligible": true,
      "smart_status": "LSTM FORCED REVERSAL (conf=100%)",
      "pattern": "CREUX_REBOUND",
      "detected_at": 1774093146.0249183,
      "is_blacklisted": false,
      "volatility_score": 50,
      "dynamic_sl": 1.65,
      "dynamic_tp": 4.0,
      "dynamic_rr": 2.42
    },
    {
      "symbol": "BANANAS31USDT",
      "score": 78.0,
      "predicted_gain": 0,
      "confidence": 46.375,
      "status": "watching",
      "reason": "",
      "countdown": 0,
      "last_update": "2026-03-21T11:39:21.342884",
      "features": {
        "price_current": 0.009509,
        "ema_diff": 0.014333605874634813,
        "ema_slope": 0.041751381081654035,
        "ema_slope_long": 0.09322016699162002,
        "ema21_slope": -0.006072097576564985,
        "ema_trend_bullish": 1,
        "ema_trend_bearish": 0,
        "bb_bandwidth": 0.6347603700731818,
        "rsi": 51.145038167938786,
        "momentum_3": 0.021037130535397765,
        "momentum_5": -0.08406010297361907,
        "near_bb_lower": 0,
        "bb_position": 0.6301618394646742,
        "price_change_recent": 0,
        "early_cycle_score": 27.102607813940356,
        "rsi_divergence_bullish": 0,
        "ema_convergence_speed": 0.5,
        "momentum_acceleration": 0.042052156278807096,
        "volume_precursor": 0,
        "candles_since_bullish_cross": 4
      },
      "smart_criteria": {
        "signal": "ACHAT",
        "score": 93.0,
        "eligible": true,
        "criteria": {
          "bb_squeeze": true,
          "ema9_under_ema21": false,
          "hausse_confirmee": true,
          "baisse_confirmee": false
        },
        "exclusions": {
          "ema_baisse_permanente": false,
          "peu_variations": false,
          "ema9_above_ema21": true
        }
      },
      "smart_signal": "ACHAT",
      "smart_score": 93.0,
      "smart_eligible": true,
      "smart_status": "SQUEEZE BREAKOUT",
      "pattern": "SQUEEZE_BREAKOUT",
      "pattern_blocked": true,
      "pattern_blocked_reason": "Pattern 'SQUEEZE_BREAKOUT' désactivé",
      "is_blacklisted": false
    },
    {
      "symbol": "WLDUSDT",
      "score": 67.9,
      "predicted_gain": 0,
      "confidence": 69.25,
      "status": "watching",
      "reason": "",
      "countdown": 0,
      "last_update": "2026-03-21T11:39:27.903173",
      "features": {
        "price_current": 0.3144,
        "ema_diff": -0.13984270303899854,
        "ema_slope": -0.13945282597404923,
        "ema_slope_long": -0.04333199413820555,
        "ema21_slope": -0.08455526621068747,
        "ema_trend_bullish": 0,
        "ema_trend_bearish": 1,
        "bb_bandwidth": 1.0168239412306295,
        "rsi": 55.555555555555856,
        "momentum_3": -0.03179650238473418,
        "momentum_5": -0.41178333861259675,
        "near_bb_lower": 0,
        "bb_position": 0.39688305569661203,
        "price_change_recent": 0,
        "early_cycle_score": 41.87258748339967,
        "rsi_divergence_bullish": 1,
        "ema_convergence_speed": 0.06329109479910404,
        "momentum_acceleration": 0.1264814336709798,
        "volume_precursor": 0,
        "candles_since_bullish_cross": 99
      },
      "smart_criteria": {
        "signal": "ACHAT",
        "score": 75.9,
        "eligible": true,
        "criteria": {
          "bb_squeeze": true,
          "ema9_under_ema21": true,
          "hausse_confirmee": true,
          "baisse_confirmee": false
        },
        "exclusions": {
          "ema_baisse_permanente": false,
          "peu_variations": false,
          "ema9_above_ema21": false
        }
      },
      "smart_signal": "ACHAT",
      "smart_score": 75.9,
      "smart_eligible": true,
      "smart_status": "EARLY UPTREND CYCLE",
      "pattern": "CREUX_REBOUND",
      "is_blacklisted": false
    },
    {
      "symbol": "DASHUSDT",
      "score": 67.0,
      "predicted_gain": 0,
      "confidence": 35.0,
      "status": "watching",
      "reason": "",
      "countdown": 0,
      "last_update": "2026-03-21T11:39:19.140026",
      "features": {
        "price_current": 32.66,
        "ema_diff": 0.32122863255556766,
        "ema_slope": 0.49827955778243316,
        "ema_slope_long": 0.8530389564737302,
        "ema21_slope": 0.5093910508068664,
        "ema_trend_bullish": 1,
        "ema_trend_bearish": 0,
        "bb_bandwidth": 1.8835605492293774,
        "rsi": 88.33333333333317,
        "momentum_3": 0.24554941682012982,
        "momentum_5": 0.39963110974483695,
        "near_bb_lower": 0,
        "bb_position": 0.974809691348112,
        "price_change_recent": 0,
        "early_cycle_score": 0.0,
        "rsi_divergence_bullish": 0,
        "ema_convergence_speed": 0,
        "momentum_acceleration": -0.031714908503333805,
        "volume_precursor": 0,
        "candles_since_bullish_cross": 8
      },
      "smart_criteria": {
        "signal": "ACHAT",
        "score": 92.0,
        "eligible": true,
        "criteria": {
          "bb_squeeze": true,
          "ema9_under_ema21": false,
          "hausse_confirmee": true,
          "baisse_confirmee": false
        },
        "exclusions": {
          "ema_baisse_permanente": false,
          "peu_variations": false,
          "ema9_above_ema21": true
        }
      },
      "smart_signal": "ACHAT",
      "smart_score": 92.0,
      "smart_eligible": true,
      "smart_status": "FRESH CROSSOVER",
      "pattern": "PULLBACK",
      "pattern_blocked": true,
      "pattern_blocked_reason": "Pattern 'PULLBACK' blacklisté (performance insuffisante)",
      "is_blacklisted": false
    },
    {
      "symbol": "ETHFIUSDT",
      "score": 62.0,
      "predicted_gain": 0,
      "confidence": 43.05,
      "status": "watching",
      "reason": "",
      "countdown": 0,
      "last_update": "2026-03-21T11:39:22.709776",
      "features": {
        "price_current": 0.605,
        "ema_diff": 0.2024626032689722,
        "ema_slope": 0.39344284296821913,
        "ema_slope_long": 0.8945637464528745,
        "ema21_slope": 0.24371344917388996,
        "ema_trend_bullish": 1,
        "ema_trend_bearish": 0,
        "bb_bandwidth": 1.7821720703667938,
        "rsi": 58.064516129032256,
        "momentum_3": 0.4983388704318942,
        "momentum_5": 0.3316749585406305,
        "near_bb_lower": 0,
        "bb_position": 0.9628796901518555,
        "price_change_recent": 0,
        "early_cycle_score": 49.91694352159471,
        "rsi_divergence_bullish": 0,
        "ema_convergence_speed": 0.5,
        "momentum_acceleration": 0.4983388704318942,
        "volume_precursor": 0,
        "candles_since_bullish_cross": 8
      },
      "smart_criteria": {
        "signal": "ACHAT",
        "score": 87.0,
        "eligible": true,
        "criteria": {
          "bb_squeeze": true,
          "ema9_under_ema21": false,
          "hausse_confirmee": true,
          "baisse_confirmee": false
        },
        "exclusions": {
          "ema_baisse_permanente": false,
          "peu_variations": false,
          "ema9_above_ema21": true
        }
      },
      "smart_signal": "ACHAT",
      "smart_score": 87.0,
      "smart_eligible": true,
      "smart_status": "FRESH CROSSOVER",
      "pattern": "PULLBACK",
      "is_blacklisted": false
    },
    {
      "symbol": "DEGOUSDT",
      "score": 58.0,
      "predicted_gain": 0,
      "confidence": 90,
      "status": "watching",
      "reason": "",
      "countdown": 0,
      "last_update": "2026-03-21T11:39:11.113467",
      "features": {
        "price_current": 0.413,
        "ema_diff": 0.06590397088530725,
        "ema_slope": -0.15127715283368323,
        "ema_slope_long": 1.0391654363414957,
        "ema21_slope": 0.30096565458233127,
        "ema_trend_bullish": 0,
        "ema_trend_bearish": 0,
        "bb_bandwidth": 3.347235698322977,
        "rsi": 58.62068965517242,
        "momentum_3": -0.24154589371980698,
        "momentum_5": -1.1961722488038289,
        "near_bb_lower": 0,
        "bb_position": 0.44584519928906147,
        "price_change_recent": 0,
        "early_cycle_score": 50.0,
        "rsi_divergence_bullish": 1,
        "ema_convergence_speed": 0.5,
        "momentum_acceleration": -0.24154589371980698,
        "volume_precursor": 0,
        "candles_since_bullish_cross": 8
      },
      "smart_criteria": {
        "signal": "ACHAT",
        "score": 77.0,
        "eligible": true,
        "criteria": {
          "bb_squeeze": true,
          "ema9_under_ema21": false,
          "hausse_confirmee": false,
          "baisse_confirmee": true
        },
        "exclusions": {
          "ema_baisse_permanente": false,
          "peu_variations": false,
          "ema9_above_ema21": true
        }
      },
      "smart_signal": "ACHAT",
      "smart_score": 77.0,
      "smart_eligible": true,
      "smart_status": "LSTM FORCED REVERSAL (conf=97%)",
      "pattern": "CREUX_REBOUND",
      "is_blacklisted": false
    },
    {
      "symbol": "ETHUSDT",
      "score": 100,
      "predicted_gain": 0,
      "confidence": 86.75,
      "status": "watching",
      "reason": "",
      "countdown": 0,
      "last_update": "2026-03-21T11:39:26.597440",
      "features": {
        "price_current": 2156.42,
        "ema_diff": -0.0025616547836733823,
        "ema_slope": 0.04292480466649317,
        "ema_slope_long": -0.05319664242431796,
        "ema21_slope": -0.0274086236228147,
        "ema_trend_bullish": 0,
        "ema_trend_bearish": 1,
        "bb_bandwidth": 0.23462599356222977,
        "rsi": 56.55241935483958,
        "momentum_3": 0.0515007121945394,
        "momentum_5": 0.07193009323069056,
        "near_bb_lower": 0,
        "bb_position": 0.7555131873504342,
        "price_change_recent": 0,
        "early_cycle_score": 0.0,
        "rsi_divergence_bullish": 0,
        "ema_convergence_speed": 0,
        "momentum_acceleration": -0.02371902695082928,
        "volume_precursor": 0,
        "candles_since_bullish_cross": 99
      },
      "smart_criteria": {
        "signal": "HOLD",
        "score": 100,
        "eligible": false,
        "criteria": {
          "bb_squeeze": true,
          "ema9_under_ema21": false,
          "hausse_confirmee": true,
          "baisse_confirmee": false
        },
        "exclusions": {
          "ema_baisse_permanente": false,
          "peu_variations": true,
          "ema9_above_ema21": true
        }
      },
      "smart_signal": "HOLD",
      "smart_score": 100,
      "smart_eligible": false,
      "smart_status": "Creux - Attendre rebond (HOLD)",
      "pattern": "NEUTRAL",
      "is_blacklisted": false
    },
    {
      "symbol": "DOTUSDT",
      "score": 95,
      "predicted_gain": 0,
      "confidence": 50.800000000000004,
      "status": "watching",
      "reason": "",
      "countdown": 0,
      "last_update": "2026-03-21T11:39:13.703265",
      "features": {
        "price_current": 1.493,
        "ema_diff": -0.05084000654276464,
        "ema_slope": -0.04374996350317284,
        "ema_slope_long": 0.0636119667165326,
        "ema21_slope": -0.025698654590918395,
        "ema_trend_bullish": 1,
        "ema_trend_bearish": 1,
        "bb_bandwidth": 0.6559053404318183,
        "rsi": 68.75000000000026,
        "momentum_3": 0.06702412868633459,
        "momentum_5": 0.0,
        "near_bb_lower": 0,
        "bb_position": 0.5766264152603915,
        "price_change_recent": 0,
        "early_cycle_score": 4.776306468691399,
        "rsi_divergence_bullish": 0,
        "ema_convergence_speed": 0.008550600206248017,
        "momentum_acceleration": 0.06702412868633459,
        "volume_precursor": 0,
        "candles_since_bullish_cross": 99
      },
      "smart_criteria": {
        "signal": "HOLD",
        "score": 95,
        "eligible": false,
        "criteria": {
          "bb_squeeze": true,
          "ema9_under_ema21": false,
          "hausse_confirmee": true,
          "baisse_confirmee": false
        },
        "exclusions": {
          "ema_baisse_permanente": false,
          "peu_variations": false,
          "ema9_above_ema21": true
        }
      },
      "smart_signal": "HOLD",
      "smart_score": 95,
      "smart_eligible": false,
      "smart_status": "Creux - Attendre rebond (HOLD)",
      "pattern": "NEUTRAL",
      "is_blacklisted": false
    },
    {
      "symbol": "LTCUSDT",
      "score": 94.0,
      "predicted_gain": 0,
      "confidence": 72.0,
      "status": "watching",
      "reason": "",
      "countdown": 0,
      "last_update": "2026-03-21T11:39:15.426574",
      "features": {
        "price_current": 56.03,
        "ema_diff": -0.11169138122970593,
        "ema_slope": -0.07315500458685488,
        "ema_slope_long": -0.2669942644074358,
        "ema21_slope": -0.1933332183775232,
        "ema_trend_bullish": 0,
        "ema_trend_bearish": 1,
        "bb_bandwidth": 0.48584393932629916,
        "rsi": 37.500000000000185,
        "momentum_3": -0.03568242640498844,
        "momentum_5": -0.07133939718209228,
        "near_bb_lower": 0,
        "bb_position": 0.22119054633024354,
        "price_change_recent": 0,
        "early_cycle_score": 12.52987624432206,
        "rsi_divergence_bullish": 0.5,
        "ema_convergence_speed": 0.00017925746593235037,
        "momentum_acceleration": -0.05352045708639766,
        "volume_precursor": 0,
        "candles_since_bullish_cross": 99
      },
      "smart_criteria": {
        "signal": "HOLD",
        "score": 94,
        "eligible": false,
        "criteria": {
          "bb_squeeze": true,
          "ema9_under_ema21": true,
          "hausse_confirmee": true,
          "baisse_confirmee": false
        },
        "exclusions": {
          "ema_baisse_permanente": false,
          "peu_variations": true,
          "ema9_above_ema21": false
        }
      },
      "smart_signal": "HOLD",
      "smart_score": 94,
      "smart_eligible": false,
      "smart_status": "En attente",
      "pattern": "NEUTRAL",
      "is_blacklisted": false
    },
    {
      "symbol": "SHIBUSDT",
      "score": 90,
      "predicted_gain": 0,
      "confidence": 85.75,
      "status": "watching",
      "reason": "",
      "countdown": 0,
      "last_update": "2026-03-21T11:39:20.588997",
      "features": {
        "price_current": 6e-06,
        "ema_diff": -0.07881297529880765,
        "ema_slope": -0.08790006154633277,
        "ema_slope_long": -0.20109184082161582,
        "ema21_slope": -0.14088430775801541,
        "ema_trend_bullish": 0,
        "ema_trend_bearish": 1,
        "bb_bandwidth": 0.600300150075026,
        "rsi": 55.55555555555556,
        "momentum_3": 0.1669449081802989,
        "momentum_5": 0.1669449081802989,
        "near_bb_lower": 0,
        "bb_position": 0.5833333333333294,
        "price_change_recent": 0,
        "early_cycle_score": 48.333562605627165,
        "rsi_divergence_bullish": 0,
        "ema_convergence_speed": 0,
        "momentum_acceleration": 0.5002782415136291,
        "volume_precursor": 1.9333425042250865,
        "candles_since_bullish_cross": 99
      },
      "smart_criteria": {
        "signal": "NO_BUY",
        "score": 90,
        "eligible": false,
        "criteria": {
          "bb_squeeze": true,
          "ema9_under_ema21": false,
          "hausse_confirmee": true,
          "baisse_confirmee": false
        },
        "exclusions": {
          "ema_baisse_permanente": false,
          "peu_variations": false,
          "ema9_above_ema21": true
        }
      },
      "smart_signal": "NO_BUY",
      "smart_score": 90,
      "smart_eligible": false,
      "smart_status": "Coin plat structurel (range48h=1.0%)",
      "pattern": "NEUTRAL",
      "is_blacklisted": false
    }
  ],
  "ready_signals": [
    {
      "symbol": "XAIUSDT",
      "score": 85.0,
      "predicted_gain": 0,
      "confidence": 55.6,
      "status": "watching",
      "reason": "",
      "countdown": 0,
      "last_update": "2026-03-21T11:39:11.095570",
      "features": {
        "price_current": 0.0109,
        "ema_diff": -0.007142788494690664,
        "ema_slope": -0.4271813944691742,
        "ema_slope_long": 0.9459028521935888,
        "ema21_slope": 0.059589279393250774,
        "ema_trend_bullish": 0,
        "ema_trend_bearish": 0,
        "bb_bandwidth": 3.3384613189943875,
        "rsi": 39.024390243902474,
        "momentum_3": -0.36563071297989125,
        "momentum_5": -0.8189262966333013,
        "near_bb_lower": 1,
        "bb_position": 0.19938621754765976,
        "price_change_recent": 0,
        "early_cycle_score": 38.4501053301535,
        "rsi_divergence_bullish": 0,
        "ema_convergence_speed": 0.1556169092248021,
        "momentum_acceleration": 0.26900210660307,
        "volume_precursor": 0,
        "candles_since_bullish_cross": 14
      },
      "smart_criteria": {
        "signal": "ACHAT",
        "score": 100,
        "eligible": true,
        "criteria": {
          "bb_squeeze": true,
          "ema9_under_ema21": false,
          "hausse_confirmee": true,
          "baisse_confirmee": false
        },
        "exclusions": {
          "ema_baisse_permanente": false,
          "peu_variations": false,
          "ema9_above_ema21": true
        }
      },
      "smart_signal": "ACHAT",
      "smart_score": 100,
      "smart_eligible": true,
      "smart_status": "LSTM FORCED REVERSAL (conf=100%)",
      "pattern": "CREUX_REBOUND",
      "detected_at": 1774093146.0249183,
      "is_blacklisted": false,
      "volatility_score": 50,
      "dynamic_sl": 1.65,
      "dynamic_tp": 4.0,
      "dynamic_rr": 2.42
    }
  ],
  "rotation_opportunities": [],
  "rotation_status": {
    "enabled": false,
    "rotations_this_hour": 0,
    "max_per_hour": 4,
    "remaining_this_hour": 4,
    "hour_reset_in": 3183.61817,
    "total_rotations": 0,
    "last_rotation": null,
    "config": {
      "min_cycle_end_score": 10,
      "min_opportunity_score": 50,
      "min_score_advantage": 5,
      "min_profit_for_rotation": -0.5,
      "min_hold_time_minutes": 10,
      "rotation_cooldown_minutes": 30,
      "max_rotations_per_hour": 4,
      "enabled": false
    }
  },
  "blacklist": {
    "count": 21,
    "symbols": [
      "USDCUSDT",
      "BUSDUSDT",
      "DAIUSDT",
      "TUSDUSDT",
      "USDPUSDT",
      "FDUSDUSDT",
      "PYUSDUSDT",
      "FRAXUSDT",
      "LUSDUSDT",
      "USTCUSDT",
      "EURUSDT",
      "GBPUSDT",
      "PAXGUSDT",
      "XAUTUSDT",
      "WBTCUSDT",
      "WBETHUSDT",
      "STETHUSDT",
      "CBETHUSDT",
      "RETHUSDT",
      "BETHUSDT",
      "LUNCUSDT"
    ],
    "details": {
      "USDCUSDT": {
        "reason": "Stablecoin - USD Coin",
        "expires_in": 0
      },
      "BUSDUSDT": {
        "reason": "Stablecoin - Binance USD",
        "expires_in": 0
      },
      "DAIUSDT": {
        "reason": "Stablecoin - DAI",
        "expires_in": 0
      },
      "TUSDUSDT": {
        "reason": "Stablecoin - TrueUSD",
        "expires_in": 0
      },
      "USDPUSDT": {
        "reason": "Stablecoin - Pax Dollar",
        "expires_in": 0
      },
      "FDUSDUSDT": {
        "reason": "Stablecoin - First Digital USD",
        "expires_in": 0
      },
      "PYUSDUSDT": {
        "reason": "Stablecoin - PayPal USD",
        "expires_in": 0
      },
      "FRAXUSDT": {
        "reason": "Stablecoin - Frax",
        "expires_in": 0
      },
      "LUSDUSDT": {
        "reason": "Stablecoin - Liquity USD",
        "expires_in": 0
      },
      "USTCUSDT": {
        "reason": "Stablecoin - TerraClassicUSD",
        "expires_in": 0
      },
      "EURUSDT": {
        "reason": "Devise fiat - Euro",
        "expires_in": 0
      },
      "GBPUSDT": {
        "reason": "Devise fiat - Livre sterling",
        "expires_in": 0
      },
      "PAXGUSDT": {
        "reason": "Or tokenisé - volatilité trop faible",
        "expires_in": 0
      },
      "XAUTUSDT": {
        "reason": "Or tokenisé Tether Gold",
        "expires_in": 0
      },
      "WBTCUSDT": {
        "reason": "Wrapped Bitcoin - préférer BTCUSDT",
        "expires_in": 0
      },
      "WBETHUSDT": {
        "reason": "Wrapped Beacon ETH",
        "expires_in": 0
      },
      "STETHUSDT": {
        "reason": "Staked ETH - préférer ETHUSDT",
        "expires_in": 0
      },
      "CBETHUSDT": {
        "reason": "Coinbase Wrapped Staked ETH",
        "expires_in": 0
      },
      "RETHUSDT": {
        "reason": "Rocket Pool ETH - préférer ETHUSDT",
        "expires_in": 0
      },
      "BETHUSDT": {
        "reason": "Binance Staked ETH",
        "expires_in": 0
      },
      "LUNCUSDT": {
        "reason": "Luna Classic - balance insuffisante",
        "expires_in": 0
      }
    }
  },
  "blacklisted_symbols": [
    "RETHUSDT",
    "GBPUSDT",
    "STETHUSDT",
    "FRAXUSDT",
    "PAXGUSDT",
    "USDCUSDT",
    "TUSDUSDT",
    "BETHUSDT",
    "LUNCUSDT",
    "USTCUSDT",
    "XAUTUSDT",
    "WBTCUSDT",
    "USDPUSDT",
    "WBETHUSDT",
    "BUSDUSDT",
    "LUSDUSDT",
    "FDUSDUSDT",
    "DAIUSDT",
    "PYUSDUSDT",
    "CBETHUSDT",
    "EURUSDT"
  ],
  "ai_opportunities": [
    {
      "symbol": "ETHFIUSDT",
      "timestamp": "2026-03-21T11:39:30.026888",
      "predictions": {
        "volatility_6h": 5.066,
        "volatility_24h": 7.695,
        "move_6h": 3.546,
        "move_24h": 4.617,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.7,
        "momentum": 99.8,
        "pattern": 20.0,
        "trend": 60.0,
        "entry_timing": 60.0,
        "risk_reward": 79.2
      },
      "opportunity_score": 68.0,
      "gain_potential": 3.04,
      "confidence": 40.0,
      "rank": 1,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.1% (6h)",
        "Momentum fort et cohérent"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "VANRYUSDT",
      "timestamp": "2026-03-21T11:39:30.026906",
      "predictions": {
        "volatility_6h": 5.046,
        "volatility_24h": 7.674,
        "move_6h": 3.532,
        "move_24h": 4.605,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 9.2,
        "pattern": 80.0,
        "trend": 60.0,
        "entry_timing": 90.0,
        "risk_reward": 79.2
      },
      "opportunity_score": 64.9,
      "gain_potential": 3.03,
      "confidence": 60.0,
      "rank": 2,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.0% (6h)",
        "Pattern favorable détecté"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru"
      ]
    },
    {
      "symbol": "SHIBUSDT",
      "timestamp": "2026-03-21T11:39:30.026915",
      "predictions": {
        "volatility_6h": 5.045,
        "volatility_24h": 7.67,
        "move_6h": 3.531,
        "move_24h": 4.602,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 53.4,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 79.2
      },
      "opportunity_score": 64.8,
      "gain_potential": 3.03,
      "confidence": 40.0,
      "rank": 3,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.0% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "AVAXUSDT",
      "timestamp": "2026-03-21T11:39:30.026921",
      "predictions": {
        "volatility_6h": 5.043,
        "volatility_24h": 7.673,
        "move_6h": 3.53,
        "move_24h": 4.604,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 35.0,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 19.9
      },
      "opportunity_score": 58.1,
      "gain_potential": 3.03,
      "confidence": 40.0,
      "rank": 4,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.0% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "POLUSDT",
      "timestamp": "2026-03-21T11:39:30.026927",
      "predictions": {
        "volatility_6h": 5.048,
        "volatility_24h": 7.677,
        "move_6h": 3.534,
        "move_24h": 4.606,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 35.0,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 19.9
      },
      "opportunity_score": 58.1,
      "gain_potential": 3.03,
      "confidence": 40.0,
      "rank": 5,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.0% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "TONUSDT",
      "timestamp": "2026-03-21T11:39:30.026933",
      "predictions": {
        "volatility_6h": 5.051,
        "volatility_24h": 7.668,
        "move_6h": 3.536,
        "move_24h": 4.601,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 35.0,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 19.9
      },
      "opportunity_score": 58.1,
      "gain_potential": 3.03,
      "confidence": 40.0,
      "rank": 6,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.1% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "WIFUSDT",
      "timestamp": "2026-03-21T11:39:30.026939",
      "predictions": {
        "volatility_6h": 5.052,
        "volatility_24h": 7.67,
        "move_6h": 3.537,
        "move_24h": 4.602,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 35.0,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 19.9
      },
      "opportunity_score": 58.1,
      "gain_potential": 3.03,
      "confidence": 40.0,
      "rank": 7,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.1% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "UUSDT",
      "timestamp": "2026-03-21T11:39:30.026945",
      "predictions": {
        "volatility_6h": 5.054,
        "volatility_24h": 7.667,
        "move_6h": 3.538,
        "move_24h": 4.6,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 35.0,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 19.9
      },
      "opportunity_score": 58.1,
      "gain_potential": 3.03,
      "confidence": 40.0,
      "rank": 8,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.1% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "RLUSDUSDT",
      "timestamp": "2026-03-21T11:39:30.026952",
      "predictions": {
        "volatility_6h": 5.07,
        "volatility_24h": 7.678,
        "move_6h": 3.549,
        "move_24h": 4.607,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.7,
        "momentum": 35.0,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 19.9
      },
      "opportunity_score": 58.1,
      "gain_potential": 3.04,
      "confidence": 40.0,
      "rank": 9,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.1% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "BTCUSDT",
      "timestamp": "2026-03-21T11:39:30.026958",
      "predictions": {
        "volatility_6h": 5.042,
        "volatility_24h": 7.683,
        "move_6h": 3.529,
        "move_24h": 4.61,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 30.0,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 19.9
      },
      "opportunity_score": 57.1,
      "gain_potential": 3.02,
      "confidence": 40.0,
      "rank": 10,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.0% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "WLDUSDT",
      "timestamp": "2026-03-21T11:39:30.026965",
      "predictions": {
        "volatility_6h": 5.042,
        "volatility_24h": 7.678,
        "move_6h": 3.529,
        "move_24h": 4.607,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 32.8,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 8.5
      },
      "opportunity_score": 57.1,
      "gain_potential": 3.02,
      "confidence": 40.0,
      "rank": 11,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.0% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "BANANAS31USDT",
      "timestamp": "2026-03-21T11:39:30.026971",
      "predictions": {
        "volatility_6h": 5.04,
        "volatility_24h": 7.681,
        "move_6h": 3.528,
        "move_24h": 4.608,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 32.1,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 8.5
      },
      "opportunity_score": 57.0,
      "gain_potential": 3.02,
      "confidence": 40.0,
      "rank": 12,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.0% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "DASHUSDT",
      "timestamp": "2026-03-21T11:39:30.026977",
      "predictions": {
        "volatility_6h": 5.066,
        "volatility_24h": 7.715,
        "move_6h": 3.547,
        "move_24h": 4.629,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.7,
        "momentum": 64.4,
        "pattern": 20.0,
        "trend": 60.0,
        "entry_timing": 20.0,
        "risk_reward": 79.2
      },
      "opportunity_score": 57.0,
      "gain_potential": 3.04,
      "confidence": 40.0,
      "rank": 13,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.1% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "HBARUSDT",
      "timestamp": "2026-03-21T11:39:30.026982",
      "predictions": {
        "volatility_6h": 5.051,
        "volatility_24h": 7.682,
        "move_6h": 3.536,
        "move_24h": 4.609,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 31.2,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 8.5
      },
      "opportunity_score": 56.8,
      "gain_potential": 3.03,
      "confidence": 40.0,
      "rank": 14,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.1% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "BARDUSDT",
      "timestamp": "2026-03-21T11:39:30.026988",
      "predictions": {
        "volatility_6h": 5.041,
        "volatility_24h": 7.683,
        "move_6h": 3.529,
        "move_24h": 4.61,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 13.1,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 79.2
      },
      "opportunity_score": 56.7,
      "gain_potential": 3.02,
      "confidence": 40.0,
      "rank": 15,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.0% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "ICPUSDT",
      "timestamp": "2026-03-21T11:39:30.026994",
      "predictions": {
        "volatility_6h": 5.049,
        "volatility_24h": 7.687,
        "move_6h": 3.535,
        "move_24h": 4.612,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 41.2,
        "pattern": 20.0,
        "trend": 60.0,
        "entry_timing": 60.0,
        "risk_reward": 79.2
      },
      "opportunity_score": 56.3,
      "gain_potential": 3.03,
      "confidence": 20.0,
      "rank": 16,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.0% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "ENAUSDT",
      "timestamp": "2026-03-21T11:39:30.027000",
      "predictions": {
        "volatility_6h": 5.048,
        "volatility_24h": 7.681,
        "move_6h": 3.534,
        "move_24h": 4.609,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 28.1,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 8.5
      },
      "opportunity_score": 56.2,
      "gain_potential": 3.03,
      "confidence": 40.0,
      "rank": 17,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.0% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "LINKUSDT",
      "timestamp": "2026-03-21T11:39:30.027005",
      "predictions": {
        "volatility_6h": 5.049,
        "volatility_24h": 7.672,
        "move_6h": 3.534,
        "move_24h": 4.603,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 27.3,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 8.5
      },
      "opportunity_score": 56.0,
      "gain_potential": 3.03,
      "confidence": 40.0,
      "rank": 18,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.0% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "UNIUSDT",
      "timestamp": "2026-03-21T11:39:30.027011",
      "predictions": {
        "volatility_6h": 5.05,
        "volatility_24h": 7.672,
        "move_6h": 3.535,
        "move_24h": 4.603,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 27.2,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 8.5
      },
      "opportunity_score": 56.0,
      "gain_potential": 3.03,
      "confidence": 40.0,
      "rank": 19,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.0% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    },
    {
      "symbol": "DOTUSDT",
      "timestamp": "2026-03-21T11:39:30.027018",
      "predictions": {
        "volatility_6h": 5.047,
        "volatility_24h": 7.679,
        "move_6h": 3.533,
        "move_24h": 4.607,
        "direction": "DOWN"
      },
      "scores": {
        "volatility": 83.8,
        "momentum": 9.4,
        "pattern": 30.0,
        "trend": 60.0,
        "entry_timing": 100.0,
        "risk_reward": 79.2
      },
      "opportunity_score": 56.0,
      "gain_potential": 3.03,
      "confidence": 40.0,
      "rank": 20,
      "selected": true,
      "reasons": [
        "Excellente volatilité prédite: 5.0% (6h)"
      ],
      "warnings": [
        "Volatilité très élevée - Risque accru",
        "Confiance faible - Signaux contradictoires"
      ]
    }
  ],
  "ai_selected_symbols": [
    "ETHFIUSDT",
    "VANRYUSDT",
    "SHIBUSDT",
    "AVAXUSDT",
    "POLUSDT",
    "TONUSDT",
    "WIFUSDT",
    "UUSDT",
    "RLUSDUSDT",
    "BTCUSDT",
    "WLDUSDT",
    "BANANAS31USDT",
    "DASHUSDT",
    "HBARUSDT",
    "BARDUSDT",
    "ICPUSDT",
    "ENAUSDT",
    "LINKUSDT",
    "UNIUSDT",
    "DOTUSDT"
  ],
  "ai_opportunity_count": 20,
  "dynamic_sltp_enabled": true,
  "smart_summary": {
    "achat": 1,
    "possible": 2,
    "vente": 0,
    "abandonnee": 0,
    "eligible": 1,
    "analyzed": 65
  },
  "by_status": {
    "achat": [
      {
        "symbol": "XAIUSDT",
        "score": 85.0,
        "predicted_gain": 0,
        "confidence": 55.6,
        "status": "watching",
        "reason": "",
        "countdown": 0,
        "last_update": "2026-03-21T11:39:11.095570",
        "features": {
          "price_current": 0.0109,
          "ema_diff": -0.007142788494690664,
          "ema_slope": -0.4271813944691742,
          "ema_slope_long": 0.9459028521935888,
          "ema21_slope": 0.059589279393250774,
          "ema_trend_bullish": 0,
          "ema_trend_bearish": 0,
          "bb_bandwidth": 3.3384613189943875,
          "rsi": 39.024390243902474,
          "momentum_3": -0.36563071297989125,
          "momentum_5": -0.8189262966333013,
          "near_bb_lower": 1,
          "bb_position": 0.19938621754765976,
          "price_change_recent": 0,
          "early_cycle_score": 38.4501053301535,
          "rsi_divergence_bullish": 0,
          "ema_convergence_speed": 0.1556169092248021,
          "momentum_acceleration": 0.26900210660307,
          "volume_precursor": 0,
          "candles_since_bullish_cross": 14
        },
        "smart_criteria": {
          "signal": "ACHAT",
          "score": 100,
          "eligible": true,
          "criteria": {
            "bb_squeeze": true,
            "ema9_under_ema21": false,
            "hausse_confirmee": true,
            "baisse_confirmee": false
          },
          "exclusions": {
            "ema_baisse_permanente": false,
            "peu_variations": false,
            "ema9_above_ema21": true
          }
        },
        "smart_signal": "ACHAT",
        "smart_score": 100,
        "smart_eligible": true,
        "smart_status": "LSTM FORCED REVERSAL (conf=100%)",
        "pattern": "CREUX_REBOUND",
        "detected_at": 1774093146.0249183,
        "is_blacklisted": false,
        "volatility_score": 50,
        "dynamic_sl": 1.65,
        "dynamic_tp": 4.0,
        "dynamic_rr": 2.42
      }
    ],
    "en_surveillance": [
      {
        "symbol": "BANANAS31USDT",
        "score": 78.0,
        "predicted_gain": 0,
        "confidence": 46.375,
        "status": "watching",
        "reason": "",
        "countdown": 0,
        "last_update": "2026-03-21T11:39:21.342884",
        "features": {
          "price_current": 0.009509,
          "ema_diff": 0.014333605874634813,
          "ema_slope": 0.041751381081654035,
          "ema_slope_long": 0.09322016699162002,
          "ema21_slope": -0.006072097576564985,
          "ema_trend_bullish": 1,
          "ema_trend_bearish": 0,
          "bb_bandwidth": 0.6347603700731818,
          "rsi": 51.145038167938786,
          "momentum_3": 0.021037130535397765,
          "momentum_5": -0.08406010297361907,
          "near_bb_lower": 0,
          "bb_position": 0.6301618394646742,
          "price_change_recent": 0,
          "early_cycle_score": 27.102607813940356,
          "rsi_divergence_bullish": 0,
          "ema_convergence_speed": 0.5,
          "momentum_acceleration": 0.042052156278807096,
          "volume_precursor": 0,
          "candles_since_bullish_cross": 4
        },
        "smart_criteria": {
          "signal": "ACHAT",
          "score": 93.0,
          "eligible": true,
          "criteria": {
            "bb_squeeze": true,
            "ema9_under_ema21": false,
            "hausse_confirmee": true,
            "baisse_confirmee": false
          },
          "exclusions": {
            "ema_baisse_permanente": false,
            "peu_variations": false,
            "ema9_above_ema21": true
          }
        },
        "smart_signal": "ACHAT",
        "smart_score": 93.0,
        "smart_eligible": true,
        "smart_status": "SQUEEZE BREAKOUT",
        "pattern": "SQUEEZE_BREAKOUT",
        "pattern_blocked": true,
        "pattern_blocked_reason": "Pattern 'SQUEEZE_BREAKOUT' désactivé",
        "is_blacklisted": false
      },
      {
        "symbol": "DASHUSDT",
        "score": 67.0,
        "predicted_gain": 0,
        "confidence": 35.0,
        "status": "watching",
        "reason": "",
        "countdown": 0,
        "last_update": "2026-03-21T11:39:19.140026",
        "features": {
          "price_current": 32.66,
          "ema_diff": 0.32122863255556766,
          "ema_slope": 0.49827955778243316,
          "ema_slope_long": 0.8530389564737302,
          "ema21_slope": 0.5093910508068664,
          "ema_trend_bullish": 1,
          "ema_trend_bearish": 0,
          "bb_bandwidth": 1.8835605492293774,
          "rsi": 88.33333333333317,
          "momentum_3": 0.24554941682012982,
          "momentum_5": 0.39963110974483695,
          "near_bb_lower": 0,
          "bb_position": 0.974809691348112,
          "price_change_recent": 0,
          "early_cycle_score": 0.0,
          "rsi_divergence_bullish": 0,
          "ema_convergence_speed": 0,
          "momentum_acceleration": -0.031714908503333805,
          "volume_precursor": 0,
          "candles_since_bullish_cross": 8
        },
        "smart_criteria": {
          "signal": "ACHAT",
          "score": 92.0,
          "eligible": true,
          "criteria": {
            "bb_squeeze": true,
            "ema9_under_ema21": false,
            "hausse_confirmee": true,
            "baisse_confirmee": false
          },
          "exclusions": {
            "ema_baisse_permanente": false,
            "peu_variations": false,
            "ema9_above_ema21": true
          }
        },
        "smart_signal": "ACHAT",
        "smart_score": 92.0,
        "smart_eligible": true,
        "smart_status": "FRESH CROSSOVER",
        "pattern": "PULLBACK",
        "pattern_blocked": true,
        "pattern_blocked_reason": "Pattern 'PULLBACK' blacklisté (performance insuffisante)",
        "is_blacklisted": false
      }
    ],
    "vente": [],
    "abandonnee": []
  },
  "recent_logs": [],
  "cycle_duration_seconds": 18.9,
  "analyzed_symbols": 65
}