Rename strategy to indicators

This commit is contained in:
2025-06-16 22:09:23 +07:00
parent e4f4d078b2
commit 0f7df04813
45 changed files with 477 additions and 474 deletions

View File

@@ -30,13 +30,13 @@ public class TradingBot : Bot, ITradingBot
public TradingBotConfig Config { get; set; }
public Account Account { get; set; }
public HashSet<IStrategy> Strategies { get; set; }
public HashSet<IIndicator> Indicators { get; set; }
public FixedSizeQueue<Candle> OptimizedCandles { get; set; }
public HashSet<Candle> Candles { get; set; }
public HashSet<Signal> Signals { get; set; }
public List<Position> Positions { get; set; }
public Dictionary<DateTime, decimal> WalletBalances { get; set; }
public Dictionary<StrategyType, StrategiesResultBase> StrategiesValues { get; set; }
public Dictionary<IndicatorType, IndicatorsResultBase> IndicatorsValues { get; set; }
public DateTime StartupTime { get; set; }
public DateTime PreloadSince { get; set; }
public int PreloadedCandlesCount { get; set; }
@@ -71,13 +71,13 @@ public class TradingBot : Bot, ITradingBot
Config = config;
Strategies = new HashSet<IStrategy>();
Indicators = new HashSet<IIndicator>();
Signals = new HashSet<Signal>();
OptimizedCandles = new FixedSizeQueue<Candle>(600);
Candles = new HashSet<Candle>();
Positions = new List<Position>();
WalletBalances = new Dictionary<DateTime, decimal>();
StrategiesValues = new Dictionary<StrategyType, StrategiesResultBase>();
IndicatorsValues = new Dictionary<IndicatorType, IndicatorsResultBase>();
if (!Config.IsForBacktest)
{
@@ -141,7 +141,7 @@ public class TradingBot : Bot, ITradingBot
else
{
Scenario = scenario;
LoadStrategies(ScenarioHelpers.GetStrategiesFromScenario(scenario));
LoadIndicators(ScenarioHelpers.GetIndicatorsFromScenario(scenario));
}
}
@@ -155,15 +155,15 @@ public class TradingBot : Bot, ITradingBot
else
{
Scenario = scenario;
LoadStrategies(ScenarioHelpers.GetStrategiesFromScenario(scenario));
LoadIndicators(ScenarioHelpers.GetIndicatorsFromScenario(scenario));
}
}
public void LoadStrategies(IEnumerable<IStrategy> strategies)
public void LoadIndicators(IEnumerable<IIndicator> indicators)
{
foreach (var strategy in strategies)
foreach (var strategy in indicators)
{
Strategies.Add(strategy);
Indicators.Add(strategy);
}
}
@@ -205,7 +205,7 @@ public class TradingBot : Bot, ITradingBot
if (!Config.IsForBacktest)
{
SaveBackup();
UpdateStrategiesValues();
UpdateIndicatorsValues();
}
UpdateWalletBalances();
@@ -219,11 +219,11 @@ public class TradingBot : Bot, ITradingBot
}
}
public void UpdateStrategiesValues()
public void UpdateIndicatorsValues()
{
foreach (var strategy in Strategies)
foreach (var strategy in Indicators)
{
StrategiesValues[strategy.Type] = ((Strategy)strategy).GetStrategyValues();
IndicatorsValues[strategy.Type] = ((Indicator)strategy).GetStrategyValues();
}
}
@@ -260,7 +260,7 @@ public class TradingBot : Bot, ITradingBot
private async Task UpdateSignals(FixedSizeQueue<Candle> candles)
{
var signal = TradingBox.GetSignal(candles.ToHashSet(), Strategies, Signals, Scenario.LoopbackPeriod);
var signal = TradingBox.GetSignal(candles.ToHashSet(), Indicators, Signals, Scenario.LoopbackPeriod);
if (signal == null) return;
signal.User = Account.User;
@@ -325,7 +325,7 @@ public class TradingBot : Bot, ITradingBot
candle: positionCandle,
date: position.Open.Date,
exchange: Account.Exchange,
strategyType: StrategyType.Stc, // Use a valid strategy type for recreated signals
indicatorType: IndicatorType.Stc, // Use a valid strategy type for recreated signals
signalType: SignalType.Signal
);
@@ -1311,7 +1311,7 @@ public class TradingBot : Bot, ITradingBot
// Create a fake signal for manual position opening
var signal = new Signal(Config.Ticker, direction, Confidence.Low, lastCandle, lastCandle.Date,
TradingExchanges.GmxV2,
StrategyType.Stc, SignalType.Signal);
IndicatorType.Stc, SignalType.Signal);
signal.Status = SignalStatus.WaitingForPosition; // Ensure status is correct
signal.User = Account.User; // Assign user