대시보드 수정및 전략수정중
This commit is contained in:
@@ -18,6 +18,9 @@ logger = logging.getLogger(__name__)
|
||||
# 가격 필터 (CLAUDE.md 섹션 6.4)
|
||||
MIN_PRICE_KRW = 5_000
|
||||
|
||||
# 전일 거래량 최솟값: 100만주 미만 종목 제외 (유동성 부족)
|
||||
MIN_DAILY_VOLUME = 1_000_000
|
||||
|
||||
# 거래대금 상위 20% 임계값 (하위 80% 제외)
|
||||
LIQUIDITY_PERCENTILE = 0.80
|
||||
|
||||
@@ -90,6 +93,8 @@ class KosdaqScanner:
|
||||
for td in tickers_data:
|
||||
if not self._price_filter(td.close):
|
||||
continue
|
||||
if not self._volume_filter(td.volume):
|
||||
continue
|
||||
if not self._liquidity_filter(td.turnover, liquidity_threshold):
|
||||
continue
|
||||
result = self._score(td)
|
||||
@@ -108,6 +113,10 @@ class KosdaqScanner:
|
||||
"""CLAUDE.md 섹션 6.4: 국내 5,000원 이하 매수 금지"""
|
||||
return close >= self.min_price
|
||||
|
||||
def _volume_filter(self, volume: int) -> bool:
|
||||
"""전일 거래량 100만주 미만 종목 제외 (유동성 부족)"""
|
||||
return volume >= MIN_DAILY_VOLUME
|
||||
|
||||
def _liquidity_filter(self, turnover: float, threshold: float) -> bool:
|
||||
"""거래대금 상위 20% 이내 필터"""
|
||||
return turnover >= threshold
|
||||
|
||||
Reference in New Issue
Block a user