43 lines
1.6 KiB
C#
43 lines
1.6 KiB
C#
using Managing.Domain.Accounts;
|
|
using Orleans;
|
|
using static Managing.Common.Enums;
|
|
|
|
namespace Managing.Domain.Users;
|
|
|
|
[GenerateSerializer]
|
|
public class User
|
|
{
|
|
[Id(0)] public int Id { get; set; }
|
|
|
|
[Id(1)] public string Name { get; set; }
|
|
|
|
[Id(2)] public List<Account> Accounts { get; set; }
|
|
|
|
[Id(3)] public string AgentName { get; set; } = string.Empty;
|
|
|
|
[Id(4)] public string AvatarUrl { get; set; } = string.Empty;
|
|
|
|
[Id(5)] public string TelegramChannel { get; set; } = string.Empty;
|
|
|
|
[Id(6)] public string OwnerWalletAddress { get; set; } = string.Empty;
|
|
|
|
[Id(7)] public bool IsAdmin { get; set; } = false;
|
|
|
|
[Id(8)] public DateTimeOffset? LastConnectionDate { get; set; }
|
|
|
|
// User Settings - Trading Configuration
|
|
[Id(9)] public decimal? LowEthAmountAlert { get; set; }
|
|
[Id(10)] public bool EnableAutoswap { get; set; } = false;
|
|
[Id(11)] public decimal? AutoswapAmount { get; set; }
|
|
[Id(12)] public int? MaxWaitingTimeForPositionToGetFilledSeconds { get; set; }
|
|
[Id(13)] public decimal? MaxTxnGasFeePerPosition { get; set; }
|
|
[Id(14)] public bool IsGmxEnabled { get; set; } = false;
|
|
[Id(20)] public decimal? GmxSlippage { get; set; }
|
|
|
|
// User Settings - Indicator Combo Configuration
|
|
[Id(15)] public Confidence? MinimumConfidence { get; set; }
|
|
[Id(16)] public decimal? TrendStrongAgreementThreshold { get; set; }
|
|
[Id(17)] public decimal? SignalAgreementThreshold { get; set; }
|
|
[Id(18)] public bool? AllowSignalTrendOverride { get; set; }
|
|
[Id(19)] public TradingExchanges? DefaultExchange { get; set; }
|
|
} |