using System; using MongoDB.Driver; using PolyTraderSharp.Extensions; using System.ComponentModel; using System.Collections.Generic; namespace PolyTraderSharp.Models { public class TrackedTrader { [Browsable(false)] [MongoDB.Bson.Serialization.Attributes.BsonId] public int Id { get; set; } [Category("01. Identification")] public string WalletAddress { get; set; } = string.Empty; [Category("01. Identification")] public string DisplayName { get; set; } = string.Empty; [Category("02. Categorization")] public string Category { get; set; } = "NEW_BIG_BET"; [Category("02. Categorization")] public string Description { get; set; } = string.Empty; [Category("02. Categorization")] public string Reasoning { get; set; } = string.Empty; [Category("03. General")] public bool IsActive { get; set; } = true; [Category("03. General")] public bool IsHidden { get; set; } = false; // Stats [Category("04. Statistics")] [ReadOnly(true)] public int TotalTrades { get; set; } = 0; [Category("04. Statistics")] [ReadOnly(true)] public int WinningTrades { get; set; } = 0; [Category("04. Statistics")] [ReadOnly(true)] public double Winrate30t { get; set; } = 0.0; [Category("04. Statistics")] [ReadOnly(true)] public double TotalPnl { get; set; } = 0.0; [Browsable(false)] public HashSet AssignedAccountIds { get; set; } = new(); } }