Signalio — 한국 시장 정보 지도와 전략 검증 엔진 2026.09.20

가치 팩터는 진짜였다. 그런데 못 먹는다

롱숏 t≈2로 실재하는데 롱온리로는 지수에 진다. "지수 동률"이라던 포트폴리오를 해부하니 유효종목수 3.8개, 삼성전자 49%였다.

DART 재무 24,963 기업-연도로 가치·퀄리티 팩터를 검증했다. 팩터는 실재한다. 그런데 나는 못 먹는다.

팩터 자체는 진짜다

저PBR영업이익수익률고ROE
롱숏 월평균+1.35%+1.25%+0.77%
롱숏 t2.142.081.87

분위 1→5 계단식 상승도 확인했다. 싼 주식이 비싼 주식보다 낫다는 건 한국에서도 사실이다.

그런데 롱온리로는 진다

형태고영업이익률고ROE저PER저PBR
동일비중−1.58%−1.51%−1.32%−1.43%
시총가중 +상한 5%−1.27%−1.16%−0.87%−0.96%
시총가중 +상한 20%−0.73%−0.70%−0.67%−0.89%
시총가중 (상한 없음)+0.00%+0.03%−0.31%−0.85%

전부 KODEX 200 미달이다.

더 아픈 건 대조군이다. 팩터를 전혀 안 쓴 시총 상위 200종목(상한 5%)이 −1.06%였다. 고영업이익률(−1.27%)과 고ROE(−1.16%)는 그보다도 나쁘다.

우량주를 골라내는 행위 자체가 해가 됐다는 뜻이다.

"지수 동률"의 정체 — 삼성전자 49%

위 표에서 유일하게 지수를 안 진 칸이 있다. 무상한 시총가중 고영업이익률의 +0.00%.

해부해봤다.

  • 유효종목수(1/Σw²) = 3.8 — 명목은 40종목인데 실질은 4종목이 안 된다
  • 최대비중 중앙값 49.2%, 삼성전자가 126개월 중 71개월 1위
  • 최대비중 1종목을 빼자 +0.00%가 −1.36%(t=−3.27)로 붕괴

즉 그 "동률"은 팩터가 만든 게 아니라 삼성전자 한 종목이 만든 것이었다. 상한을 조일수록 성과가 단조롭게 나빠지는 것도 같은 이야기다. 집중을 풀면 팩터의 맨얼굴이 나온다.

못 먹는 이유

롱숏이 +1.35%/월인데 왜 못 먹느냐.

  1. 공매도가 필요하다. 개인은 사실상 불가능하다
  2. 롱숏 비용이 월 0.4%p 이상 든다
  3. 롱만 떼어내면 위의 표로 되돌아간다

팩터의 수익 상당 부분이 숏 쪽(비싼 주식이 더 못 오르는 것)에 있다. 그 절반을 못 쓰면 남는 게 없다.

방법론에서 건진 것

이번에 확립한 두 가지는 앞으로 계속 쓴다.

시점 정합을 접수일로 강제했다. rcept_no 앞 8자리가 실제 접수일이다. merge_asof에 allow_exact_matches=False를 걸어 그 날짜 이후부터만 재무를 쓰게 했다. "3월에 공시된다고 가정"보다 엄격하고, 정정공시는 접수일이 늦어지므로 자동으로 보수적이 된다.

배수(PER) 대신 수익률(E/P)로 계산했다. 적자기업은 PER이 음수라서 정렬하면 "가장 싼 주식"으로 올라온다. 역수로 계산하면 이 함정이 구조적으로 사라진다.

플라시보 테스트(재무를 +6개월, +12개월 더 지연)도 통과했다. look-ahead는 없었다.

결말

한국 아노말리 연구에서 복제된 세 계열을 이걸로 전부 검증했다.

  • momentum — 소형주에선 독, 대형주 시총가중에선 지수 수준
  • trading friction — 유니버스 안에선 유효(+0.45%, t=2.81), 지수는 못 이김
  • value/quality — 롱숏 실재, 롱온리 −0.7~−1.6%

가격 데이터로도, 재무 데이터로도 지수를 이기는 롱온리 규칙을 찾지 못했다.

Signalio — 한국 시장 정보 지도와 전략 검증 엔진 프로젝트로