diff --git a/src/Managing.Application/Scenarios/ScenarioRunnerGrain.cs b/src/Managing.Application/Scenarios/ScenarioRunnerGrain.cs index 904a335e..dde4d6c7 100644 --- a/src/Managing.Application/Scenarios/ScenarioRunnerGrain.cs +++ b/src/Managing.Application/Scenarios/ScenarioRunnerGrain.cs @@ -45,12 +45,12 @@ public class ScenarioRunnerGrain : Grain, IScenarioRunnerGrain return await grain.GetCandlesAsync(); }); - _logger.LogInformation($"Updated {newCandles.Count} candles for {config.Ticker}"); + _logger.LogInformation($"Fetched {newCandles.Count} candles for {config.Ticker} for {config.Name}"); return newCandles; } catch (Exception ex) { - _logger.LogError(ex, "Failed to update candles for {Ticker}", config.Ticker); + _logger.LogError(ex, "Failed to update candles for {Ticker} for {Name}", config.Ticker, config.Name); throw; } } @@ -60,16 +60,15 @@ public class ScenarioRunnerGrain : Grain, IScenarioRunnerGrain { try { - // return new LightSignal(config.Ticker, TradeDirection.Long, Confidence.High, - // candle, candle.Date, TradingExchanges.Evm, IndicatorType.Composite, - // SignalType.Signal, "Generated Signal"); - var candlesHashSet = await GetCandlesAsync(tradingExchanges, config); if (candlesHashSet.LastOrDefault()!.Date <= candle.Date) { + _logger.LogWarning($"No new candles for {config.Ticker} for {config.Name}"); return null; // No new candles, no need to generate a signal } + _logger.LogInformation($"Fetched {candlesHashSet.Count} candles for {config.Ticker} for {config.Name}"); + var signal = TradingBox.GetSignal( candlesHashSet, config.Scenario, @@ -79,7 +78,7 @@ public class ScenarioRunnerGrain : Grain, IScenarioRunnerGrain if (signal != null && signal.Date > candle.Date) { _logger.LogInformation( - $"Generated signal for {config.Ticker}: {signal.Direction} with confidence {signal.Confidence}"); + $"Generated signal for {config.Ticker}: {signal.Direction} with confidence {signal.Confidence} for {config.Name}"); return new LightSignal(signal.Ticker, signal.Direction, Confidence.High, candle, signal.Date, signal.Exchange, signal.IndicatorType, @@ -87,12 +86,13 @@ public class ScenarioRunnerGrain : Grain, IScenarioRunnerGrain } else { + _logger.LogInformation($"No signal generated for {config.Ticker} for {config.Name}"); return null; // No signal generated } } catch (Exception ex) { - _logger.LogError(ex, "Failed to update signals for {Ticker}", config.Ticker); + _logger.LogError(ex, "Failed to update signals for {Ticker} for {Name}", config.Ticker, config.Name); throw; } }