8 Commits (343aac090d06d6de7edca946be4f651112e43168)
 

Author SHA1 Message Date
I Luk Kim 343aac090d feat: 세션 풀 다양화 + Adaptive throttling + 모듈 싱글톤
- 브라우저 핑거프린트 풀 (_BROWSER_PROFILES): chrome/edge/safari/firefox 6개 프로파일
- EnhancedTicker별 전용 세션 할당으로 스레드 간 세션 공유 문제 해결
- 모듈 레벨 싱글톤 (_get_global_enhanced_yf): 모든 Ticker() 호출이 하나의
  EnhancedYFinance 인스턴스를 공유 → rate limiter 조율
- 모듈 레벨 공유 rate limiter (_global_rate_limit_delay): 0.3s baseline,
  rate limit 감지 시 자동 증가, 성공 시 점진적 감소 (adaptive throttling)
- rate limit 발생 시 on_rate_limit_cb로 ticker의 세션도 함께 교체

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
5 months ago
I Luk Kim 07f796ac97 fix: period=None 방어 코드 추가, 테스트 파일 제거
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
5 months ago
I Luk Kim 9fae52e7dc fix(cache): period=None 시 AttributeError 수정
start/end 날짜 범위로 history()를 호출할 때 period=None을 전달하면
_normalize_period_to_days()에서 None.lower()가 호출되어
AttributeError: 'NoneType' object has no attribute 'lower' 발생.

- _normalize_period_to_days(): None 가드 추가, str() 래핑으로 안전 처리
- get(): period=None이면 즉시 None 반환
- store(): period=None이면 즉시 반환 (date-range 요청은 피클 캐시 생략)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
5 months ago
I Luk Kim d18976d4aa first commit 1 year ago
I Luk Kim cc43298cbd first commit 1 year ago
I Luk Kim 7d0dd8d284 first commit 1 year ago
I Luk Kim 85855b6ec6 first commit 1 year ago
I Luk Kim 790e6ead0d first commit 1 year ago