diff --git a/src/Managing.Application/Backtests/BacktestExecutor.cs b/src/Managing.Application/Backtests/BacktestExecutor.cs
index 6ff5de5a..8534e05d 100644
--- a/src/Managing.Application/Backtests/BacktestExecutor.cs
+++ b/src/Managing.Application/Backtests/BacktestExecutor.cs
@@ -483,34 +483,12 @@ public class BacktestExecutor
string.Join(", ", bottlenecks));
}
- _logger.LogInformation("🎯 Backtest completed successfully - RequestId: {RequestId}", finalRequestId);
+ _logger.LogInformation("🎯 Backtest completed successfully - RequestId: {RequestId} - Score: {Score} - Realized PnL: {RealizedPnl} - Net PnL: {NetPnl}", finalRequestId, result.Score, result.FinalPnl, result.NetPnl);
// Convert Backtest to LightBacktest
return ConvertToLightBacktest(result);
}
- ///
- /// Advanced signal caching based on indicator update frequency
- /// Instead of hashing candles, we cache signals based on how often indicators need updates
- ///
- private bool ShouldSkipSignalUpdate(int currentCandleIndex, int totalCandles)
- {
- // RSI and similar indicators don't need to be recalculated every candle
- // For 15-minute candles, we can update signals every 3-5 candles without significant accuracy loss
- const int signalUpdateFrequency = 3; // Update signals every N candles
-
- // Always update signals for the first few candles to establish baseline
- if (currentCandleIndex < 10)
- return false;
-
- // Always update signals near the end to ensure final trades are calculated
- if (currentCandleIndex > totalCandles - 10)
- return false;
-
- // Skip signal updates based on frequency
- return (currentCandleIndex % signalUpdateFrequency) != 0;
- }
-
///
/// Pre-calculates all signals for the entire backtest period
/// This eliminates repeated GetSignal() calls during the backtest loop