import pandas as pd import matplotlib.pyplot as plt # Charger les fichiers signals = pd.read_pickle('backtest-result-2025-04-06_21-30-24_signals.pkl') exited = pd.read_pickle('backtest-result-2025-04-06_21-30-24_exited.pkl') rejected = pd.read_pickle('backtest-result-2025-04-06_21-30-24_rejected.pkl') # facultatif # Choisir un marché pour le graphique (ex : BTC/USDT) pair = 'BTC/USDT' df_signals = signals[signals['pair'] == pair] df_exited = exited[exited['pair'] == pair] # Charger les données de prix si besoin (par ex. OHLCV depuis Freqtrade) # Ici on suppose que vous avez une DataFrame de prix : price_df avec ['date', 'close'] price_df = df_signals[['date', 'price']].rename(columns={'price': 'close'}).copy() price_df.set_index('date', inplace=True) # Affichage plt.figure(figsize=(14, 6)) plt.plot(price_df.index, price_df['close'], label='Prix', color='gray') # Ajouter les points d'entrée plt.scatter(df_signals['date'], df_signals['price'], color='green', label='Signal', marker='^') # Ajouter les points de sortie plt.scatter(df_exited['exit_date'], df_exited['exit_price'], color='red', label='Sortie', marker='v') plt.title(f"Graphique avec signaux pour {pair}") plt.xlabel("Date") plt.ylabel("Prix") plt.legend() plt.grid(True) plt.tight_layout() plt.show()