Initial commit: Predictalytics solution
Clean Architecture .NET 8 solution (Domain/Application/Infrastructure/Api/Worker/WinFormsHost) for analyzing Polymarket traders for copytrading/strategy-replication candidates. Includes EF Core InitialBaseline migration and DB secrets removed from source/config in preparation for version control.
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
using Predictalytics.Domain.Enums;
|
||||
|
||||
namespace Predictalytics.Domain.ValueObjects;
|
||||
|
||||
/// <summary>
|
||||
/// Encapsulates a trader's calculated priority score with all component scores.
|
||||
/// </summary>
|
||||
public record PriorityScore(
|
||||
decimal ActivityScore,
|
||||
decimal QualityScore,
|
||||
decimal VolumeScore,
|
||||
decimal TimingScore,
|
||||
decimal CombinedScore,
|
||||
int? ManualOverride = null
|
||||
)
|
||||
{
|
||||
/// <summary>
|
||||
/// The effective score, considering any manual override.
|
||||
/// </summary>
|
||||
public decimal EffectiveScore => ManualOverride.HasValue
|
||||
? ManualOverride.Value
|
||||
: CombinedScore;
|
||||
|
||||
/// <summary>
|
||||
/// Determine tier based on effective score.
|
||||
/// </summary>
|
||||
public TraderTier DetermineTier() => EffectiveScore switch
|
||||
{
|
||||
>= 90 => TraderTier.Diamond,
|
||||
>= 75 => TraderTier.Platinum,
|
||||
>= 60 => TraderTier.Gold,
|
||||
>= 40 => TraderTier.Silver,
|
||||
>= 20 => TraderTier.Bronze,
|
||||
_ => TraderTier.Unknown
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user