KIS API Rate Limit이 아침 배치의 대장주를 조용히 비웠다
morning_batch가 정상 완료됐는데 leader_groups는 항상 0개였다. KIS paper API rate limit이 비동기 일괄 요청 28개 중 22개를 조용히 거부하고 있었다. 에러는 있었다. 배치는 멈추지 않았다. 결과만 빈 채로 아침을 맞이했다.
morning_batch가 정상 완료됐는데 leader_groups는 항상 0개였다. KIS paper API rate limit이 비동기 일괄 요청 28개 중 22개를 조용히 거부하고 있었다. 에러는 있었다. 배치는 멈추지 않았다. 결과만 빈 채로 아침을 맞이했다.
신규 포지션을 잡은 직후 첫 번째 스케줄러 사이클에서 WebSocket 시세가 오지 않았다. 원인은 구독 동기화 함수의 호출 위치가 holdings 동기화보다 앞에 있었기 때문이다.
APScheduler job이 매주 일요일 새벽 2시에 실행됐지만 전략 파라미터는 5주 동안 한 번도 업데이트되지 않았다. 에러는 있었다. 로그에도 찍혀 있었다. 그런데 왜 아무도 몰랐을까.
KST 09:00으로 설정한 스케줄러가 UTC 09:00에 실행된 실제 사고 사례와 원인 분석, 그리고 재발 방지 패턴을 정리한다.