diff --git a/src/Managing.Application/Bots/Models/AgentGrainState.cs b/src/Managing.Application/Bots/Models/AgentGrainState.cs index 75c12188..cd5041db 100644 --- a/src/Managing.Application/Bots/Models/AgentGrainState.cs +++ b/src/Managing.Application/Bots/Models/AgentGrainState.cs @@ -1,4 +1,6 @@ #nullable enable +using Managing.Common; + namespace Managing.Application.Bots.Models { [GenerateSerializer] @@ -84,7 +86,7 @@ namespace Managing.Application.Bots.Models /// The reason for failure if not successful /// [Id(1)] - public BalanceCheckFailureReason FailureReason { get; set; } + public Enums.BalanceCheckFailureReason FailureReason { get; set; } /// /// Additional details about the result @@ -98,20 +100,4 @@ namespace Managing.Application.Bots.Models [Id(3)] public bool ShouldStopBot { get; set; } } - - /// - /// Reasons why a balance check might fail - /// - public enum BalanceCheckFailureReason - { - None, - InsufficientUsdcBelowMinimum, - InsufficientUsdcForSwap, - SwapInProgress, - SwapCooldownActive, - BalanceFetchError, - SwapExecutionError, - InsufficientEthBelowMinimum, - BotsHaveOpenPositions - } } \ No newline at end of file diff --git a/src/Managing.Common/Enums.cs b/src/Managing.Common/Enums.cs index da127dad..63f2204e 100644 --- a/src/Managing.Common/Enums.cs +++ b/src/Managing.Common/Enums.cs @@ -498,4 +498,20 @@ public static class Enums PositionClosed, PositionUpdated } + + /// + /// Reasons why a balance check might fail + /// + public enum BalanceCheckFailureReason + { + None, + InsufficientUsdcBelowMinimum, + InsufficientUsdcForSwap, + SwapInProgress, + SwapCooldownActive, + BalanceFetchError, + SwapExecutionError, + InsufficientEthBelowMinimum, + BotsHaveOpenPositions + } } \ No newline at end of file diff --git a/src/Managing.Infrastructure.Database/PostgreSql/PostgreSqlTradingRepository.cs b/src/Managing.Infrastructure.Database/PostgreSql/PostgreSqlTradingRepository.cs index 3fa6d37e..065ad7e7 100644 --- a/src/Managing.Infrastructure.Database/PostgreSql/PostgreSqlTradingRepository.cs +++ b/src/Managing.Infrastructure.Database/PostgreSql/PostgreSqlTradingRepository.cs @@ -395,7 +395,9 @@ public class PostgreSqlTradingRepository : ITradingRepository { entity.Date = position.Date; entity.ProfitAndLoss = position.ProfitAndLoss?.Realized ?? 0; + entity.NetPnL = position.ProfitAndLoss?.Net ?? 0; entity.UiFees = position.UiFees; + entity.OriginDirection = position.OriginDirection; entity.GasFees = position.GasFees; entity.Status = position.Status; entity.SignalIdentifier = position.SignalIdentifier;