Skip to main content
Trading ELO is Legend’s general trader-performance rating. The displayed score ranges from 200 to 2,400 and appears on trader profiles and rankings. ELO uses a trader’s all-time performance window. It does not reset when a trading season begins or ends.

Raw performance score

Legend first calculates a raw score from three factors: raw ELO=2400×riskFactor×growthFactor×capitalFactor\text{raw ELO} = 2400 \times \text{riskFactor} \times \text{growthFactor} \times \text{capitalFactor} Each factor is bounded between 0 and 1. Together they measure risk-adjusted performance, realized return, and peak capital.

Risk factor

The risk factor uses a Sortino ratio calculated from cashflow-adjusted daily equity returns. Deposits and withdrawals are removed from the return calculation so moving funds does not look like trading profit or loss. Days that begin with very little equity are excluded to reduce noise. Legend requires at least five valid daily returns before calculating the Sortino ratio and annualizes the result using 365 days. riskFactor=min(Sortino,5)1+min(Sortino,5)\text{riskFactor} = \frac{\min(\text{Sortino}, 5)}{1 + \min(\text{Sortino}, 5)}
  • Positive Sortino values are capped at 5
  • The maximum risk factor is approximately 0.833
  • A missing, zero, or negative Sortino uses a 0.2 risk-factor floor

Growth factor

The growth factor measures realized return relative to peak capital: ROI=realized PnLpeak capital\text{ROI} = \frac{\text{realized PnL}}{\text{peak capital}} growthFactor=sigmoid(sign(ROI)×ln(1+ROI))\text{growthFactor} = \text{sigmoid}(\text{sign}(\text{ROI}) \times \ln(1 + |\text{ROI}|)) Positive ROI pushes the factor above 0.5 and negative ROI pushes it below 0.5. The logarithmic transform reduces the effect of extreme values and remains defined for leveraged losses below -100%.

Capital factor

The capital factor rewards performance achieved with more capital, with diminishing returns: capitalFactor=sigmoid(ln(1+peakCapital/1000))\text{capitalFactor} = \text{sigmoid}(\ln(1 + \text{peakCapital} / 1000))
  • $1,000 of peak capital produces a factor of approximately 0.67
  • $10,000 produces approximately 0.92
  • $100,000 produces approximately 0.99
  • Zero or negative peak capital produces 0

Closed-position confidence

The raw performance score is adjusted when a trader has only a few closed positions. The score moves from the 200 baseline toward the raw result as the closed-position count approaches five: confidence-adjusted ELO=200+(raw ELO200)×min(closed positions5,1)\text{confidence-adjusted ELO} = 200 + (\text{raw ELO} - 200) \times \min\left(\frac{\text{closed positions}}{5}, 1\right) At five or more closed positions, the raw result receives full weight. The confidence-adjusted score never falls below 200.

Displayed ELO

The confidence-adjusted raw score is then mapped against the current rated-trader population. Legend converts each rated trader’s percentile into a bell curve centered at 1,200 with a standard deviation of 330, bounded between 200 and 2,400. This population adjustment keeps the displayed rankings useful as the mix of active traders changes. Scores at the 200 baseline are not included in the rated distribution.

Updates

Trading ELO is recalculated every five minutes. It includes performance from primary and copy-trading wallets and uses:
  • Cashflow-adjusted daily equity returns for risk adjustment
  • Realized PnL for growth
  • Peak account value, with cost basis as a fallback, for capital
  • Closed positions for the confidence adjustment