Add updates scenario and strategy

This commit is contained in:
2025-02-26 20:37:32 +07:00
parent 4302bb8435
commit 655ebb6df0
7 changed files with 120 additions and 4 deletions

View File

@@ -138,5 +138,53 @@ namespace Managing.Application.Scenarios
return true;
}
public bool UpdateScenario(string name, List<string> strategies, int? loopbackPeriod)
{
try
{
var scenario = _tradingService.GetScenarioByName(name);
scenario.Strategies.Clear();
foreach (var strategy in strategies)
{
scenario.AddStrategy(_tradingService.GetStrategyByName(strategy));
}
scenario.LoopbackPeriod = loopbackPeriod ?? 1;
_tradingService.UpdateScenario(scenario);
return true;
}
catch (Exception e)
{
Console.WriteLine(e);
return false;
}
}
public bool UpdateStrategy(StrategyType strategyType, string name, int? period, int? fastPeriods,
int? slowPeriods,
int? signalPeriods, double? multiplier, int? stochPeriods, int? smoothPeriods, int? cyclePeriods)
{
try
{
var strategy = _tradingService.GetStrategyByName(name);
strategy.Type = strategyType;
strategy.Period = period;
strategy.FastPeriods = fastPeriods;
strategy.SlowPeriods = slowPeriods;
strategy.SignalPeriods = signalPeriods;
strategy.Multiplier = multiplier;
strategy.StochPeriods = stochPeriods;
strategy.SmoothPeriods = smoothPeriods;
strategy.CyclePeriods = cyclePeriods;
_tradingService.UpdateStrategy(strategy);
return true;
}
catch (Exception e)
{
Console.WriteLine(e);
return false;
}
}
}
}