콘텐츠로 이동
2 posts with the tag “종목 스크리닝”

기본적 분석 10장: 종목 스크리닝은 추천이 아니라 검토 목록이다

재무지표로 후보 종목을 좁히는 장면

스크리너의 역할은 “무엇을 살까?”에 답하는 것이 아니라, 수백 개 종목을 사람이 검토할 수 있는 목록으로 줄이는 것입니다. 스크리닝 결과에는 좋은 기업도, 가치 함정도, 데이터 오류도 함께 들어갑니다.

이번 스냅샷은 2026년 9월 4일 기준 데이터에서 7개 팩터를 순위화했습니다. 낮은 PER·PBR, 높은 ROE·ROA·배당수익률·매출성장률·영업현금흐름을 선호하고 순위를 합산했습니다.

factors = {
"per": "low",
"pbr": "low",
"roe": "high",
"roa": "high",
"div_yield": "high",
"revenue_growth": "high",
"cash_flow": "high",
}
# 핵심: 기준일 이전에 관측 가능한 값만 사용하고, 결측은 별도 상태로 남긴다.
latest = df.loc[df["date"] == "20260904"].copy()

결측치를 중앙값으로 채운 뒤 상위 종목에 포함시키면, 정보가 없는 기업이 평균적인 기업처럼 보이는 문제가 생깁니다. 실전용 스크리너에서는 결측 여부를 감점하거나 제외하는 규칙을 사전에 정해야 합니다.

현재 원자료의 상위 후보에는 한국타이어앤테크놀로지, 기아, 한국전력, 에스엠, KCC 등이 포함되어 있습니다. 이 표는 매수 목록이 아니라 후속 검토 목록입니다. 예를 들어 한국전력은 낮은 PER·PBR과 높은 ROE가 동시에 보이지만 부채비율도 매우 높습니다. 낮은 밸류에이션이 기회인지 위험의 가격인지 추가 확인이 필요합니다.

확인 항목질문
이익최근 이익이 정상 수준인가?
현금영업현금흐름과 FCF가 양호한가?
부채만기·이자비용·산업 특성을 감안했는가?
성장매출 성장에 마진이 따라오는가?
가격복합 점수와 별개로 최근 주가가 이미 급등했는가?
집중도후보가 특정 산업에 몰려 있지 않은가?
  • 기준일 이후의 재무 공시를 섞지 않습니다.
  • 점수 상위 종목을 “추천”이라고 부르지 않습니다.
  • 업종이 다른 기업의 지표를 단순 비교하지 않습니다.
  • 한 번의 스냅샷으로 장기 전략을 판단하지 않습니다.

스크리닝은 분석의 끝이 아니라 기업의 사업, 공시, 현금흐름을 읽기 시작하는 지점입니다. 다음 장에서는 이 규칙을 시간에 따라 반복했을 때의 성과를 백테스트하되, 먼저 백테스트가 믿을 만한지 감사하는 방법부터 설명합니다.

후보 원본은 스크리닝 CSV에서 확인할 수 있습니다.


이 글은 교육 및 연구 목적의 자료이며 특정 종목의 매수·매도를 권유하지 않습니다.

기술적 분석 11장: 오늘의 후보 종목 스크리닝

기술적 분석 종목 스크리닝

앞 장에서는 복합 신호가 산업과 시장 국면에 따라 다른 결과를 보인다는 점을 확인했습니다. 이번에는 그 신호를 2026년 9월 4일 기준 종목 전체에 적용해 실제 후보군을 추출합니다. 여기서 중요한 질문은 “점수가 높은 종목이 곧 매수 종목인가?”가 아니라 “어떤 조건을 통과한 후보를 다음 분석 대상으로 좁힐 수 있는가?”입니다. 이 결과는 매수 추천 목록이 아니라, 동일한 규칙으로 다시 확인할 수 있는 분석 후보 목록입니다.

다섯 조건 중 네 개 이상을 만족하는 종목을 후보로 분류했습니다.

df["score"] = (
(df["close"] > df["ma20"]).astype(int)
+ (df["ma20"] > df["ma60"]).astype(int)
+ df["rsi14"].between(40, 70).astype(int)
+ (df["macd"] > df["macd_signal"]).astype(int)
+ (df["volume_ratio20"] > 1).astype(int)
)
latest = df[df["date"] == "20260904"]
screen = latest[latest["score"] >= 4].sort_values(
["score", "volume_ratio20"], ascending=False
)
종목시장종가RSI거래량 비율점수
카카오페이KOSPI47,30055.41.335
현대약품KOSPI7,95069.02.885
KCCKOSPI482,00054.71.295
디아이KOSPI31,25067.81.835
한화투자증권KOSPI5,10057.23.285
써니전자KOSPI2,18565.01.665
파인엠텍KOSDAQ9,35055.12.175
신스틸KOSDAQ2,10569.13.205

전체 30개 후보는 latest_screen.csv에서 확인할 수 있습니다. 기준일이 바뀌면 후보도 바뀌므로, 이 목록의 종목명을 고정해 추천처럼 사용해서는 안 됩니다.

이번 기준일 후보는 총 30개였고, 모두 5개 조건을 통과했습니다. 시장별로는 KOSPI 15개, KOSDAQ 15개였습니다. 따라서 이 결과에서 점수 5점과 4점의 우열을 비교할 수는 없고, 거래량 비율이나 산업·시장 구성을 추가 기준으로 사용해야 합니다.

스크리닝의 역할은 분석 대상을 줄이는 것입니다. 점수 5점이라고 해서 바로 매수할 수 있는 것은 아닙니다. 후보가 어떤 산업에 몰렸는지, 실적·현금흐름·수급·밸류에이션이 뒷받침되는지, 그리고 기준일 이후에도 조건이 유지되는지를 확인해야 합니다.

다음 장에서는 후보를 고르는 규칙을 실제 포트폴리오 전략으로 바꿀 때 성과와 낙폭이 어떻게 달라지는지 비교합니다.