Multiple simultaneous fills were triggering concurrent report API calls to Tradovate for every account in the firm, causing rate limiting. Added a 1-hour cooldown — the first call always runs (lastDaysFetch=0), subsequent calls within the same hour are no-ops. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>