Ranking Calculation¶
This document provides a overview of how the MySquash system calculates player rankings.
Process Overview¶
The ranking calculation system follows a structured workflow from match recording to final ranking publication.
flowchart TD
A[Match Played] --> B{Record Result}
B --> E
subgraph C["Fixtures"]
D[Past Fixtures<br/>Already in Ranking]
E[Temporary Fixtures<br/>Not Yet in Ranking<br/>Grey in Profile]
E -->|Weeky| D
end
E -->|Nightly| F[Point Calculation]
F --> G[Points Earned/Lost<br/>Visible on Profile]
C -->|Weekly| H[Ranking Calculation]
H --> I[Update Current Points]
H --> J[Official Rankings]
subgraph J["Official Rankings"]
K[Local Ranking<br/>Swiss National Players]
L[International Ranking<br/>International Players]
M[National Ranking<br/>Combined Swiss Squash<br/>+ Squash Romandie<br/>Until Summer 2026]
N[Club Ranking<br/>Interclub Team Eligibility]
end
I --> O{Player has<br/>Current Points?}
O -->|Yes| P[Use Current Points<br/>for Competitions]
O -->|No| Q[Use Starting Points<br/>for Competitions]
style F fill:#cce5ff,stroke:#0066cc,stroke-width:2px,color:#000
style H fill:#ffcccc,stroke:#cc0000,stroke-width:2px,color:#000
style J fill:#ccffcc,stroke:#00cc00,stroke-width:2px,color:#000
style I fill:#ffe6cc,stroke:#cc6600,stroke-width:2px,color:#000 Key Concepts¶
1. Fixtures¶
All recorded matches from competitions (Interclub, Tournament, Friendly matches, Miniligues)
- Past Fixtures: Already included in ranking calculations
- Temporary Fixtures: Recent matches not yet in ranking (appear grey in user profile)
2. Point Calculation Process¶
Nightly Calculation¶
- Runs every night at noon
- Calculates points earned/lost for all temporary fixtures
- Example: Match result entered Saturday β points calculated Sunday at noon β visible on profile
Weekly Ranking Update¶
- Runs once per week
- Converts temporary fixtures to past fixtures
- Updates official rankings and current points
3. Types of Rankings¶
| Ranking Type | Description | Purpose |
|---|---|---|
| Local Ranking | Swiss national players only | National competition seeding |
| International Ranking | International players in MySquash | International player tracking |
| National Ranking | Combined Swiss Squash + Squash Romandie | Unified Swiss ranking (until summer 2026) |
| Club Ranking | Club-based player ranking | Interclub team eligibility |
4. Point Types¶
Current Points¶
- Updated weekly by ranking calculation
- Used to determine player position in competitions (tournaments, Interclub teams)
- Reflects actual competitive performance
Starting Points¶
- Initial points allocated when player joins MySquash
- Used only when Current Points are not available (new players)
- Fallback mechanism for competition seeding
Timeline Example¶
gantt
title Ranking Calculation Timeline
dateFormat YYYY-MM-DD
section Match
Match Played :done, match, 2025-01-10, 1d
section Points
Points = 0 :active, wait1, 2025-01-10, 1d
Nightly Calculation :crit, calc1, 2025-01-11, 1h
Points Visible :done, vis1, 2025-01-11, 4d
section Ranking
Still Temporary :active, temp, 2025-01-11, 4d
Weekly Ranking Update :crit, rank, 2025-01-15, 1h
Included in Ranking :done, final, 2025-01-15, 1d Summary¶
- Matches recorded β Stored as temporary fixtures
- Nightly (noon) β Points calculated for temporary fixtures
- Weekly β Ranking updated, temporary fixtures become past fixtures
- Rankings published β Local, International, National, Club rankings
- Competition seeding β Uses Current Points (or Starting Points if unavailable)