Add indicators to backtest and bot (#14)
* Add indicators to backtest and bot * Remove
This commit is contained in:
@@ -4,6 +4,7 @@ using Managing.Domain.MoneyManagements;
|
||||
using Managing.Domain.Strategies;
|
||||
using Managing.Domain.Trades;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Managing.Domain.Strategies.Base;
|
||||
using static Managing.Common.Enums;
|
||||
|
||||
namespace Managing.Domain.Backtests;
|
||||
@@ -30,45 +31,30 @@ public class Backtest
|
||||
AccountName = accountName;
|
||||
}
|
||||
|
||||
[Required]
|
||||
public string Id { get; set; }
|
||||
[Required]
|
||||
public decimal FinalPnl { get; set; }
|
||||
[Required]
|
||||
public int WinRate { get; set; }
|
||||
[Required]
|
||||
public decimal GrowthPercentage { get; set; }
|
||||
[Required]
|
||||
public decimal HodlPercentage { get; set; }
|
||||
[Required]
|
||||
public Ticker Ticker { get; }
|
||||
[Required]
|
||||
public string Scenario { get; set; }
|
||||
[Required]
|
||||
public List<Position> Positions { get; }
|
||||
[Required]
|
||||
public List<Signal> Signals { get; }
|
||||
[Required]
|
||||
public Timeframe Timeframe { get; }
|
||||
[Required]
|
||||
public BotType BotType { get; }
|
||||
[Required]
|
||||
public string AccountName { get; }
|
||||
[Required]
|
||||
public List<Candle> Candles { get; }
|
||||
[Required]
|
||||
public PerformanceMetrics Statistics { get; set; }
|
||||
[Required]
|
||||
public decimal Fees { get; set; }
|
||||
[Required]
|
||||
public List<KeyValuePair<DateTime, decimal>> WalletBalances { get; set; }
|
||||
[Required]
|
||||
public MoneyManagement OptimizedMoneyManagement { get; set; }
|
||||
[Required]
|
||||
public MoneyManagement MoneyManagement { get; set; }
|
||||
[Required] public string Id { get; set; }
|
||||
[Required] public decimal FinalPnl { get; set; }
|
||||
[Required] public int WinRate { get; set; }
|
||||
[Required] public decimal GrowthPercentage { get; set; }
|
||||
[Required] public decimal HodlPercentage { get; set; }
|
||||
[Required] public Ticker Ticker { get; }
|
||||
[Required] public string Scenario { get; set; }
|
||||
[Required] public List<Position> Positions { get; }
|
||||
[Required] public List<Signal> Signals { get; }
|
||||
[Required] public Timeframe Timeframe { get; }
|
||||
[Required] public BotType BotType { get; }
|
||||
[Required] public string AccountName { get; }
|
||||
[Required] public List<Candle> Candles { get; }
|
||||
[Required] public PerformanceMetrics Statistics { get; set; }
|
||||
[Required] public decimal Fees { get; set; }
|
||||
[Required] public List<KeyValuePair<DateTime, decimal>> WalletBalances { get; set; }
|
||||
[Required] public MoneyManagement OptimizedMoneyManagement { get; set; }
|
||||
[Required] public MoneyManagement MoneyManagement { get; set; }
|
||||
|
||||
public Dictionary<StrategyType, StrategiesResultBase> StrategiesValues { get; set; }
|
||||
|
||||
public string GetStringReport()
|
||||
{
|
||||
return $"{Ticker} | {Timeframe} | Positions: {Positions.Count} | Winrate: {WinRate}% | Pnl: {FinalPnl:#.##}$ | %Pnl: {GrowthPercentage:#.##}% | %Hodl: {HodlPercentage:#.##}%";
|
||||
return
|
||||
$"{Ticker} | {Timeframe} | Positions: {Positions.Count} | Winrate: {WinRate}% | Pnl: {FinalPnl:#.##}$ | %Pnl: {GrowthPercentage:#.##}% | %Hodl: {HodlPercentage:#.##}%";
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user