GBT
한국외국어대학교Global Business & Technology
금융 AI · 모듈 5 — LightGBM 팩터 랭킹 — 순위만 맞히면 된다
목차 강의 홈 ↗
금융 AI 강의 · 모듈 5

LightGBM 팩터 랭킹
— 순위만 맞히면 된다

"내일 오를까"라는 못 맞히는 질문을 버리고 "오늘 누가 상대적으로 나을까"라는 맞힐 만한 질문으로 갈아탄다. 재료는 수십 년 검증된 고전 팩터, 모델은 부스팅 트리. 그리고 이 강의에서 가장 중요한 표 — 인샘플 샤프 +5.59가 아웃오브샘플 −0.55로 무너지는 장면 — 를 만난다. 폭락 날에도 순위가 보존되는 이유를 직접 조작해 보는 실습이 들어 있다.

금융 AI · 머신러닝 첫 모듈4개 절 + 실습 1개해설 · 퀴즈 포함원문 출처 링크
0
1993년, 학술지에 실린 이상한 논문

시장을 이긴 것은 예언이 아니라 순위표였다

미래 가격을 맞힌 사람은 없었다. 그런데 "지난 승자를 사고 패자를 파는" 단순한 순위 전략이 초과수익을 냈다는 보고가 학계를 뒤흔들었다.

도입 · 한 장면

"어느 종목이 오를까"가 아니라 "어느 종목이 남보다 나을까"

1993년, 재무학 최상위 학술지에 논문 한 편이 실렸다. 제가디시와 티트만이 미국 주식으로 확인한 내용은 이상할 만큼 단순했다 — 지난 몇 달 성과가 좋았던 종목을 사고 나빴던 종목을 팔기만 해도, 이후 수개월간 유의한 초과수익이 났다는 것이다. 시장은 효율적이어서 이길 수 없다고 배우던 시절이었다.

주목할 점은 이 전략이 아무것도 예언하지 않는다는 것이다. 시장이 오를지 내릴지는 전혀 맞히려 하지 않는다. 종목들을 한 줄로 세워 순위만 매길 뿐이다. 이 발견 이후 30년간 비슷한 "순위 매기는 규칙"(팩터)이 수백 개 보고되었고, 그중 상당수는 우연의 산물로 의심받으며 걸러졌다. 살아남은 것은 소수의 고전들이다.

이 모듈에서 드디어 머신러닝 모델이 등장한다. 그러나 진짜 주인공은 모델이 아니라 두 가지 사고방식이다. 첫째, 문제를 바꾸면 쉬워진다 — 맞히기 불가능한 질문을 맞힐 만한 질문으로 바꾸는 기술. 둘째, 화려한 성과일수록 의심하라 — 인샘플 샤프 +5.59가 아웃오브샘플 −0.55로 무너지는 것을 눈으로 확인하는 훈련. 모델 이름은 잊어도 이 둘은 남아야 한다.

순위 예측을 다룬 4컷 만화
여는 만화. 이 모듈의 핵심 질문을 압축한 예고편이다 — "내일 오를까"는 왜 못 맞히고, "누가 상대적으로 나을까"는 왜 맞힐 만한가. 폭락하는 날에도 종목 간 순위가 그대로인 이유가 만화의 답이고, 이 모듈에서 그 답을 손계산과 실습으로 확인한다.
질문을 바꾼다시계열 예측("오를까") 대신 횡단면 예측("누가 나을까"). 공통 충격은 순위 비교에서 소거된다
재료는 고전 팩터모멘텀 · 단기 반전 · 저변동. 수십 년, 여러 시장에서 반복 확인된 것만 쓴다
화려하면 의심한다인샘플 +5.59 → OOS −0.55. 인샘플 성과는 실력의 증거가 아니다
더 읽기

1993년 논문이 충격이었던 배경에는 효율적 시장 가설이 있다. 가격에 모든 정보가 이미 반영되어 있다면 과거 수익률만으로 미래를 이길 수 없어야 한다. 그런데 "지난 승자를 사라"는 규칙이 통했다는 것은, 정보가 가격에 천천히 스며드는 구간이 존재한다는 뜻이 된다. 이후 이 현상은 미국만이 아니라 여러 나라 주식·채권·원자재·통화에서 반복 확인되었고, 모멘텀은 아마도 가장 유명한 시장 이례현상이 되었다.

생각해 볼 질문

"내일 코스피가 오를까"와 "오늘 30개 종목 중 다음 주에 상대적으로 잘 갈 종목은?"이라는 두 질문은 무엇이 다른가. 이 모듈이 끝나면 "공통 충격의 소거"라는 한 구절로 답할 수 있어야 한다.

출처 Jegadeesh & Titman, "Returns to Buying Winners and Selling Losers", Journal of Finance 48(1), 1993. doi:10.1111/j.1540-6261.1993.tb04702.x

1
문제를 바꾸면 쉬워진다

질문을 바꾸는 기술 — 횡단면 예측

"오를까"는 못 맞혀도 "누가 나을까"는 맞힐 만하다. 시장 전체가 함께 움직이는 부분(베타)이 순위 비교에서 소거되기 때문이다.

왜 방향 예측은 실패하는가

없는 정보를 모델이 만들어 낼 수는 없다

"내일 코스피가 오를까?"에 꾸준히 정답을 맞히는 사람은 사실상 없다. 일간 수익률은 신호 대 잡음비가 극도로 낮아, 지수의 하루 방향은 동전 던지기에서 아주 조금 벗어난 수준이기 때문이다.

더 근본적인 이유가 있다. 내일의 방향을 좌우하는 것은 오늘 밤의 미국 시장, 새벽의 돌발 뉴스, 외국인 수급처럼 오늘 데이터에 아예 들어 있지 않은 정보다. 없는 정보를 모델이 만들어 낼 수는 없다. 그래서 노련한 퀀트는 "시장이 오를까"라는 질문 자체를 포기하고, 답할 수 있는 질문으로 갈아탄다.

시계열 예측한 대상(예: 코스피)의 미래 값을 시간 축으로 맞히는 문제. "내일 오를까?" — 절반을 살짝 넘는 적중률조차 장기간 유지하기 어렵다
횡단면 예측 (cross-sectional)같은 시점의 여러 대상을 비교해 순위를 매기는 문제. "오늘 누가 상대적으로 나을까?" — 이 모듈의 접근법
더 읽기 · 랭킹 실력은 어떻게 재나 — 정보계수(IC)

실무에서 횡단면 예측의 실력은 적중률이 아니라 정보계수(IC)로 잰다. IC는 "모델이 매긴 예측 순위"와 "실제로 실현된 수익률 순위" 사이의 상관계수다(순위 기반이면 스피어만 상관). 완벽한 예언자는 +1, 동전 던지기는 0이다. 실무 기준은 매우 겸손해서, 월간 IC가 0.05 안팎이면 쓸 만하고 0.1이면 우수하다고 평가된다.

"5%짜리 상관으로 무슨 돈을 버나" 싶지만, 30~200개 종목에 매달 반복 적용하면 작은 우위가 대수의 법칙으로 누적된다 — 카지노가 몇 퍼센트의 하우스 에지로 돈을 버는 것과 같은 구조다. 거꾸로 말하면, 누군가 "적중률 90%"를 자랑한다면 그것은 랭킹 실력의 언어가 아니므로 일단 의심하는 것이 옳다.

베타는 소거된다

폭락은 순위를 바꾸지 못한다

내일 시장 전체가 −3% 폭락하면 "오를까?" 예측은 모두 틀린다. 하지만 폭락은 거의 모든 종목에 공통으로 작용하므로, 종목 간 순위는 거의 변하지 않는다.

손계산으로 확인하자. 종목 A·B·C의 고유 실력(알파)이 하루 기준 각각 +1%, 0%, −1%라 하자. 평온한 날(시장 0%) 수익률은 A +1%, B 0%, C −1%로 순위는 A>B>C. 시장이 −3% 폭락하면 세 종목 모두 3%p씩 끌려 내려간다.

종목알파 (고유 실력)시장 −3% 날의 수익률순위
A+1%−2%1위 (불변)
B0%−3%2위 (불변)
C−1%−4%3위 (불변)

"오를까?"라는 질문에는 셋 다 "아니오"로 전부 틀렸지만, 순위는 여전히 A>B>C로 하나도 바뀌지 않았다. 시장 전체가 같이 움직이는 부분(베타)이 순위 비교에서 정확히 상쇄되고, 종목 고유의 좋고 나쁨(알파)만 남는다. "몇 점 받을까"를 맞히는 시험보다 "누가 1등 할까"를 맞히는 시험이 쉬운 이유와 같다.

더 읽기

비유를 하나 더. 파도가 치는 바다에서 배 세 척의 "내일 높이"를 맞히는 것은 파도를 맞히는 문제라 거의 불가능하다. 그러나 "어느 배가 가장 높이 떠 있을까"는 파도와 무관하게 배 자체의 부력 차이만 보면 되므로 훨씬 쉽다. 시장이라는 파도(베타)는 세 배를 똑같이 들어 올렸다 내리고, 배 사이의 상대적 차이(알파)만이 순위를 결정한다. 횡단면 예측은 파도를 무시하고 배만 비교하는 기술이다.

"30개 종목"이라는 설정에도 이유가 있다. 비교 대상이 두세 개뿐이면 순위 우연이 커서 실력을 가리기 어렵고, 수천 개면 데이터 관리와 거래 비용이 부담스럽다. 대형주 30개 수준이면 순위 비교가 의미를 갖기 시작하면서도 개인이 따라 해 볼 수 있는 규모다. 실무 펀드는 보통 수백~수천 종목에서 같은 아이디어를 돌리는데, 종목 수가 늘수록 개별 종목의 우연이 서로 상쇄되어 순위 실력이 더 안정적으로 드러난다 — 동전을 10번 던질 때보다 1,000번 던질 때 치우침이 더 정확히 보이는 것과 같다.

널리 퍼진 오해

"순위만 맞히면 폭락장에서도 돈을 버는가"

아니다. 횡단면 예측이 쉬워지는 대가로, 시장 방향의 위험은 그대로 남는다. 이 구분을 놓치면 폭락장에서 크게 실망하게 된다.

오해

"순위를 완벽히 맞히면 시장이 어떻든 이긴다."

상위 종목을 사기만 하는 롱온리 전략이라면, 시장이 −30% 빠질 때 순위를 완벽히 맞혀도 −25%쯤 잃는다. 남보다 덜 잃었을 뿐이다. 순위 실력은 상대 평가의 실력이지 절대 수익의 보증이 아니다.

순위 실력을 시장 방향과 완전히 분리해 현금화하려면, 순위 상위를 매수(롱)하고 하위를 공매도(숏)하는 롱숏 구성이 필요하다. 시장 전체의 등락(베타)이 롱과 숏에서 상쇄되어 순위 실력(알파)만 남는 구조다. 이 강의의 실험은 이해하기 쉬운 롱온리(예측 상위 3종목 매수)로 진행하지만, "쉬워진 것은 예측이지 위험이 아니다"라는 구분은 기억해 두어야 한다.

2
재료는 발명하지 않는다

재료: 고전 팩터

모델에 넣는 재료는 새로 발명하지 않는다. 수십 년, 여러 시장에서 살아남은 고전 — 모멘텀·단기 반전·저변동 — 만 쓴다.

세 가지 고전

모멘텀 · 단기 반전 · 저변동

모델에 넣는 입력 변수(피처)는 아무거나 넣지 않는다. 수십 년간 학계·실무에서 "미래 수익률과 관련이 있다"고 반복 확인된 이례현상들 — 팩터 — 를 쓴다.

팩터경향시간 척도한 줄 직관
모멘텀최근 성과가 좋았던 종목이 당분간 더 좋다1~6개월달리는 말이 계속 달린다
단기 반전최근 급락한 종목이 과매도로 되튄다며칠당겨진 고무줄은 돌아온다
저변동조용한 종목이 위험 대비 수익이 오히려 좋다수개월~수년복권형 주식에는 웃돈이 붙어 있다

모멘텀과 단기 반전은 방향이 정반대라 처음엔 모순처럼 보이지만, 시간 척도가 다르다. 몇 달에 걸친 추세는 이어지는 경향이 있고, 며칠 사이의 급락은 유동성 공급자들이 받아 주며 일부 되돌아오는 경향이 있다. 저변동은 "위험이 크면 기대수익도 커야 한다"는 CAPM의 예측과 정면으로 어긋나 "저변동 퍼즐"이라고도 불린다 — 변동성이 가장 높은 종목군이 장기적으로 위험 대비 성과가 가장 나쁜 축이라는 연구 보고가 있다.

더 읽기

모멘텀은 1993년 미국 주식에서 체계적으로 보고된 이래 전 세계 주식·채권·원자재·통화에서 반복 확인된, 아마도 가장 유명한 이례현상이다. 저변동 퍼즐의 유력한 해석은 복권 선호다 — 소수의 대박 가능성이 있는 변동 큰 주식을 사람들이 비싸게 사 주기 때문에, 그 웃돈만큼 장기 성과가 나빠진다는 것이다.

함정도 알아 두자. 팩터는 평균적으로 통하는 경향이지 매달 통하는 법칙이 아니다. 모멘텀조차 수년씩 부진한 구간이 있고, 2009년 금융위기 반등기처럼 폭락했던 종목들이 일제히 급반등하면 모멘텀 전략이 단기간에 큰 손실을 보는 "모멘텀 크래시"도 실제로 일어났다.

출처 Jegadeesh & Titman, Journal of Finance 48(1), 1993. doi:10.1111/j.1540-6261.1993.tb04702.x · 저변동: Ang, Hodrick, Xing & Zhang, "The Cross-Section of Volatility and Expected Returns", Journal of Finance 61(1), 2006 · 모멘텀 크래시: Daniel & Moskowitz, "Momentum Crashes", Journal of Financial Economics 122(2), 2016.

손계산

모멘텀 팩터를 직접 계산해 보면

6개월 전 가격과 오늘 가격만 있으면 모멘텀 팩터는 나눗셈 한 번이다. 미래 정보는 단 하나도 들어가지 않는다.

종목6개월 전오늘6개월 수익률모멘텀 순위
A50,000원65,000원+30%1등
B100,000원105,000원+5%2등
C80,000원72,000원−10%3등

65,000 ÷ 50,000 − 1 = +30%. 모멘텀 팩터는 "다음 몇 달간도 A가 상대적으로 낫다"에 베팅한다. 여기에 추세 이격(장기 이동평균 대비 몇 % 위/아래인가 — 현재가 66,000원, 200일 이동평균 60,000원이면 +10%)과 거래량 급증(평소보다 얼마나 많은 손이 이 종목을 거쳐 갔나)을 더해 다섯 가지 재료를 만든다.

다섯 재료 모두 가격·거래량이라는 공개 데이터만으로 계산된다는 공통점이 있다. 구하기 쉽고, 계산이 재현 가능하고, 룩어헤드가 끼어들 틈이 좁다. 추세 이격은 이동평균 모듈에서 만든 기준선의 사촌이다.

왜 사라지지 않는가

팩터의 뿌리는 사람의 심리다

팩터는 왜 존재하고, 왜 논문으로 알려진 뒤에도 완전히 사라지지 않았을까. 유력한 설명은 행동재무학 — 투자자의 심리적 편향이다.

과소반응 → 모멘텀좋은 소식은 가격에 한 번에 반영되지 않고 서서히 스며든다
과잉반응 → 단기 반전급락에는 공포가 과하게 실려, 일부가 되튄다
복권 선호 → 저변동"한 방" 있는 변동 큰 주식을 비싸게 사 준다 — 조용한 주식의 상대 우위

팩터의 뿌리가 심리라면 쉽게 사라지지 않는 이유도 설명된다 — 인간의 본성은 잘 변하지 않는다. 다만 반대 힘도 실재한다. 팩터가 논문으로 공개되면 너도나도 쓰면서 수익성이 눈에 띄게 약해진다는 실증 보고가 있다. 팩터는 자연법칙이 아니라 경쟁 속의 생태계다.

더 읽기 · 팩터 동물원과 데이터 스누핑

학술지에 보고된 팩터는 누적 수백 개에 이르러 "팩터 동물원(factor zoo)"이라는 자조적 별명이 붙었다. 그중 상당수는 다른 팩터의 변형이거나, 같은 데이터를 수없이 재활용하며 우연을 발굴한 결과(데이터 스누핑)로 의심된다. 논문 한 편의 t-통계량이 2를 넘는다는 고전적 기준은 "가설을 한 번만 시험했을 때"의 기준인데, 전 세계 연구자들이 같은 미국 주식 데이터로 수만 번의 가설을 시험해 왔기 때문이다. 그래서 다중 검정을 보정해 훨씬 높은 문턱(t > 3 수준)을 요구하자는 제안이 나왔다.

실무의 방어법은 단순하다. 여러 시장·여러 기간·다른 자산군에서 독립적으로 재현되는지, 그리고 심리든 제도든 "왜 존재하는지"에 대한 이야기가 있는지 따지는 것이다. 스무 개의 무작위 팩터를 시험하면 우연만으로도 한두 개는 유의해 보인다 — 그래서 이 강의는 새 팩터를 발명하는 대신, 이 두 관문을 모두 통과한 고전만 재료로 쓴다.

출처 McLean & Pontiff, "Does Academic Research Destroy Stock Return Predictability?", Journal of Finance 71(1), 2016. doi:10.1111/jofi.12365 · Harvey, Liu & Zhu, "… and the Cross-Section of Expected Returns", Review of Financial Studies 29(1), 2016. doi:10.1093/rfs/hhv059

3
약한 트리 수백 개의 오답 노트

모델: LightGBM

천재 한 명 대신, 저마다 앞사람의 실수를 고치는 수백 명의 평범한 채점자를 줄 세운다. 표 데이터에서는 지금도 이 방식이 실무 표준이다.

결정트리에서 부스팅으로

부스팅의 직관은 오답 노트다

첫 번째 트리가 대충 답을 내면, 두 번째 트리는 첫 트리가 틀린 사례에 집중해 오차를 줄이고, 세 번째 트리는 남은 오차를 또 줄인다. 이렇게 수백 개를 차례로 쌓는 것이 부스팅이다.

결정트리 (decision tree)"최근 한 달 수익률이 5%보다 큰가? → 예/아니오"처럼 스무고개식 질문을 이어 가며 답을 내는 모델. 사람이 읽기 쉽다
부스팅 / LightGBM약한 트리 수백 개를 "앞 트리가 틀린 부분을 다음 트리가 보정"하도록 쌓는 학습법. LightGBM은 그것을 빠르게 구현한 라이브러리다

각 트리의 발언권을 조금씩만 인정하는 학습률을 곱해 천천히 쌓기 때문에, 개별 트리는 약해도 전체 앙상블은 강해진다. LightGBM이 팩터 랭킹에 잘 맞는 이유도 분명하다. 팩터 데이터는 이미지·문장이 아니라 행(종목×날짜)과 열(팩터)로 이루어진 이고, 표 데이터에서는 부스팅 트리 계열이 여전히 최상급 성능과 빠른 속도를 함께 준다. 게다가 트리는 "모멘텀이 높고 동시에 변동성이 낮으면"처럼 팩터 간 상호작용을 자동으로 발견한다.

출처 Ke et al., "LightGBM: A Highly Efficient Gradient Boosting Decision Tree", NeurIPS 2017. papers.nips.cc

출력 규칙

점수의 크기는 버리고, 순위만 쓴다

전략의 마지막 규칙은 "예측 상위 3종목을 동일가중으로 산다"이다. 모델의 예측 점수는 순위 정보로만 쓰고, 점수의 크기는 믿지 않는다.

잡음 많은 데이터에서 "얼마나 좋은가"라는 정밀한 수치는 신뢰하기 어렵지만, "누가 더 나은가"라는 순서는 그보다 견고하다. 이것이 이 모듈 제목 "순위만 맞히면 된다"의 실천적 의미다. 동일가중은 같은 논리의 연장이다 — 1등에게 몰아 주는 대신 상위권에 고르게 나눠 담아, 개별 예측 하나가 틀렸을 때의 피해를 줄인다.

예측이 불확실할수록 배분은 단순하고 겸손하게. 퀀트 실무에서 반복해서 확인되는 원칙이다. 최종 출력은 다른 모든 전략과 같은 형식 — 종목별 목표비중 표 하나 — 이므로, 이 전략도 모듈 1의 같은 시험지 원칙 위에서 룰베이스 전략들과 같은 링에 오른다.

더 읽기

"점수는 버리고 순위만 쓴다"는 선택은 통계적으로도 방어된다. 점수의 절대 크기를 그대로 쓰는 배분(예: 점수 비례 가중)은 점수의 잡음을 배분에까지 증폭시킨다. 순위로 눌러 버리면 극단적 점수 하나가 포트폴리오를 지배하는 사고를 구조적으로 막을 수 있다. 스무 개의 무작위 팩터 중 한두 개가 우연히 유의해 보이는 것과 같은 이치로, 극단적으로 높은 예측 점수 역시 실력보다 우연일 가능성이 크기 때문이다.

L
직접 확인한다

폭락 날의 순위 보존

공통충격 슬라이더를 어디에 두어도 절대수익은 전부 바뀌지만 순위는 한 번도 바뀌지 않는다. 횡단면 예측의 수학적 요체를 눈으로 본다.

실습 · 조작형

공통충격은 순위 비교에서 소거된다

LAB · 폭락 날의 순위 보존

알파 고정, 시장만 움직여 보기

목표 — 종목 A·B·C의 고유 실력(알파 +1% / 0% / −1%)을 고정한 채 시장 공통충격만 −5%~+5%로 움직여, 절대수익은 다 바뀌어도 순위는 불변임을 확인한다.

수익 (양수) 손실 (음수) 알파만 있는 날 (시장 0%)

조작 안내 — 슬라이더를 −5%(폭락)에서 +5%(급등)까지 끝에서 끝까지 움직여 본다. 관찰 포인트 — ① 막대 세 개가 통째로 오르내리지만 순위 표시(1·2·3위)는 한 번도 바뀌지 않는다. ② 충격이 −1%보다 아래로 내려가는 순간 셋 다 손실(브릭)로 변한다 — "오를까?" 예측은 전멸하는데 순위는 멀쩡하다. ③ readout의 이웃 간 격차가 항상 정확히 1.0%p다. (A−B) = (1%+충격) − (0%+충격)에서 충격이 소거되기 때문이다 — 이것이 횡단면 예측의 수학적 요체다.

더 읽기

이 실습의 세계는 일부러 단순화되어 있다. 현실에서는 폭락 날 모든 종목이 정확히 같은 폭으로 빠지지 않는다 — 종목마다 시장에 대한 민감도(베타)가 달라, 베타가 큰 종목이 더 크게 빠진다. 그래도 요점은 유지된다. 공통 성분이 수익률의 대부분을 차지하는 날일수록, 그 성분은 순위 비교에서 대부분 상쇄되고 알파의 차이가 순위를 결정한다. 완전한 소거가 아니라 "대부분 소거"라는 점만 정확히 기억해 두면 된다.

생각해 볼 질문

알파 격차가 1%p가 아니라 0.1%p라면 어떻게 될까. 순위 보존의 수학은 그대로지만, 현실 데이터에서는 잡음이 0.1%p를 쉽게 삼킨다 — §1의 IC 0.05가 왜 "쓸 만한" 수준인지와 연결해 생각해 보자.

4
인샘플 +5.59 → OOS −0.55

이 모듈에서 가장 중요한 표

같은 전략, 같은 데이터, 같은 코드. 다른 것은 성적을 잰 구간이 모델이 공부한 구간인가, 처음 보는 구간인가뿐이다.

성적표

맞힐 것이 없는 시험에서 만점이 나왔다

아래 표는 강의용 플랫폼에서 수행한 합성 랜덤워크 실험의 결과다. 일부러 아무 규칙성 없는 가짜 데이터(랜덤워크)로 시험을 쳤다 — 즉, 맞힐 것이 아예 없는 시험이다.

모드샤프지수MDD (최대 낙폭)
인샘플 (학습 구간)+5.59−5.2%
워크포워드 OOS (미학습 구간)−0.55−31%

인샘플 샤프가 +5.59다. 맞힐 것이 없는데도. 모델이 잡음을 통째로 외운 것이다. 학습에 쓰지 않은 구간에서는 −0.55로 무너진다. 중요한 것은 이 붕괴가 정상이며 올바른 동작이라는 점이다 — 맞힐 것이 없는데 계속 잘 맞히는 것처럼 보였다면 오히려 부정행위(룩어헤드)를 의심해야 한다. MDD도 같은 이야기를 다른 각도에서 들려준다. 인샘플에서는 최악의 순간에도 −5.2%밖에 안 빠지는 꿈의 곡선이었지만, OOS에서는 계좌의 3분의 1이 사라지는 −31%다. 실전 투자자가 실제로 겪는 것은 아랫줄의 숫자다.

샤프지수 (Sharpe ratio)평균 수익률 ÷ 표준편차(위험). "위험 1단위당 얼마나 벌었나". 실데이터에서 1을 넘으면 준수, 2를 넘으면 매우 우수. 엄밀히는 무위험수익률을 뺀 초과수익 기준이지만 이 강의에서는 0으로 단순화한다
인샘플 / OOS모델을 학습(튜닝)할 때 쓴 데이터 구간 / 전혀 쓰지 않은 구간. 진짜 실력은 OOS 성과로만 판단한다
더 읽기 · 샤프지수 손계산

전략 A는 연 수익률 10%, 연 변동성 20% → 샤프 = 10 ÷ 20 = 0.5. 전략 B는 연 6%, 변동성 5% → 샤프 = 6 ÷ 5 = 1.2. 수익률은 A가 높지만 위험 1단위당 효율은 B가 두 배 이상이다. B에 적당한 레버리지를 쓰면 같은 위험으로 A보다 높은 수익을 만들 수 있다. 이제 +5.59가 얼마나 비현실적인지 감이 올 것이다 — 세계 최정상급 헤지펀드가 장기간 유지하는 샤프가 대략 1~2 수준으로 알려져 있는데, 아무 정보 없는 가짜 데이터에서 5.59가 나왔다면 그 숫자는 실력일 수가 없다.

성과 지표 하나(샤프)와 고통 지표 하나(MDD)를 항상 쌍으로 보는 습관을 이 표에서 들이자.

평가 방법

워크포워드 — "미래를 모르는 채"를 흉내 내다

워크포워드는 과거 구간으로 학습 → 바로 다음 구간에서 검증 → 창을 앞으로 밀며 반복하는 평가법이다. "미래를 모르는 채"라는 조건을 과거 데이터 안에서 최대한 흉내 낸다.

  1. 1~24개월 데이터로 학습해 25~27개월 구간에서 성과를 잰다
  2. 창을 밀어 4~27개월로 학습, 28~30개월에서 잰다 — 끝까지 반복
  3. 검증 구간들만 이어 붙인 성적을 OOS 성과로 삼는다. 모델은 매 시점 "그 시점까지의 과거"만 안다

단 한 번의 학습/시험 분할보다 나은 점은 두 가지다. 검증 구간이 여러 개라 우연히 좋은(나쁜) 한 구간에 속을 위험이 줄고, 시장 국면이 바뀔 때 모델을 다시 학습시키는 실무 절차까지 평가에 포함된다. 세부 방법론은 부록 B — 검증 방법론에서 다룬다.

더 읽기

흔한 오해 하나 — "OOS에서 한 번 좋았으면 검증 끝 아닌가?" 아니다. OOS 성과도 확률변수라서 우연히 좋을 수 있고, 특히 "OOS가 좋게 나올 때까지" 모델을 이리저리 고쳐 다시 돌리는 순간 그 OOS는 사실상 인샘플로 오염된다. 시험지를 여러 번 미리 풀어 본 학생의 점수가 실력이 아니듯이. 그래서 실무에서는 최종 판정용 구간을 금고에 넣어 두고 마지막에 단 한 번만 여는 규율을 쓴다.

왜 일부러 가짜 데이터로 시험하는가? 저울에 아무것도 올리지 않고 0이 나오는지 확인하는 영점 조정과 같다. 빈 저울이 3kg을 가리키면 그 저울로 잰 모든 무게를 믿을 수 없다. "정답이 없는 데이터"에서 파이프라인이 그럴듯한 성과를 낸다면, 진짜 데이터의 성과도 정보 누출 버그일 가능성을 배제할 수 없다. 랜덤워크 시험은 모델 실력 시험이 아니라 실험 장치의 결백 시험이다. 진짜 규칙성이 있는 데이터에서는 OOS에서도 성과가 유지된다 — 페어트레이딩 모듈에서 그 대조를 직접 본다.

붕괴의 이름

편향-분산 트레이드오프 — 분산이 폭발한 교과서적 장면

모델이 너무 단순하면 진짜 구조도 담지 못하고(편향의 오차), 너무 유연하면 우연한 잡음까지 담는다(분산의 오차). +5.59 → −0.55는 분산이 폭발한 교과서적 장면이다.

LightGBM처럼 유연한 모델은 분산 쪽 위험이 크고, 금융처럼 잡음이 지배하는 데이터에서는 그 위험이 극대화된다. 처방은 근본적으로 둘뿐이다 — 모델을 단순하게 묶는 것(정규화)과 데이터를 늘리는 것. 과적합은 분산 과다의 다른 이름이다.

룩어헤드 방어도 함께 짚어 두자. 이 플랫폼은 3중으로 막는다 — ① 피처의 계산식 자체가 과거 데이터만 쓰도록 작성하고, ② 채점 엔진이 비중을 하루 지연 적용하며, ③ "미래 데이터를 잘라내도 과거의 비중이 변하지 않는다"를 자동 테스트가 매번 확인한다(부록 B).

  • 오늘 종가로 계산한 시그널로 오늘 종가에 사는 백테스트 — 종가를 안 순간 이미 장이 끝나 있어 불가능한 거래다
  • 연간 실적을 회계연도 말 날짜에 소급해 붙이기 — 실제 공시는 몇 달 뒤였으므로 미래의 재무제표를 훔쳐본 셈이다
  • "지금까지 살아남은 종목"만으로 유니버스 짜기 — 상장폐지 종목을 미리 알고 피한 생존 편향이다
더 읽기 · 정규화 — 모델에 다이어트를 시키는 법

정규화(regularization)는 "잡음까지 외우려는 모델의 식욕"을 인위적으로 줄이는 모든 장치의 총칭이다. LightGBM에서는 트리의 최대 깊이와 잎 개수를 제한하고(외울 수 있는 패턴 수 자체를 줄임), 잎 하나가 만들어지려면 최소한 몇 개의 데이터가 속해야 한다는 조건을 걸고(소수의 우연 사례에 잎을 통째로 내주지 않음), 학습률을 낮춰 트리 하나하나의 발언권을 줄이고, 검증 성과가 나아지지 않으면 트리 추가를 멈추는 조기 종료를 쓴다. 릿지 회귀가 계수 크기에 벌점을 매겨 "확신을 줄이는" 것과 같은 철학이며, 릿지는 CNN 차트패턴 모듈에서 다시 만난다.

공통 원리는 하나다. 데이터가 담고 있는 정보량은 정해져 있으므로, 모델의 표현력이 그 정보량을 넘어서는 순간 초과분은 잡음으로 채워진다. 금융 데이터처럼 신호가 희미한 곳에서는 "생각보다 훨씬 심하게" 묶는 쪽이 거의 항상 옳다.

확인

퀴즈와 정리

답을 보기 전에 먼저 스스로 답해 본다. 전부 이 모듈 안에서 다룬 내용이다.

시장 폭락 날, 횡단면 랭킹 전략의 예측이 상대적으로 덜 틀리는 이유는?
폭락 같은 공통 충격은 거의 모든 종목에 같은 방향으로 작용하므로 순위를 거의 바꾸지 않는다. 순위 비교에서 베타(공통 성분)가 소거되고 알파(고유 실력)의 차이만 남기 때문이다.
종목 A·B·C의 알파가 +1%, 0%, −1%이고 시장이 −3% 움직였다. 세 종목의 수익률과 순위는?
−2%, −3%, −4%. 순위는 A>B>C로 불변이다. "오를까"라는 질문에는 셋 다 틀렸지만, 이웃 간 격차 1%p는 충격과 무관하게 유지된다.
모멘텀과 단기 반전은 방향이 반대처럼 보인다. 어떻게 공존하는가?
시간 척도가 다르다. 몇 달에 걸친 추세는 이어지는 경향(모멘텀)이 있고, 며칠 사이의 급락은 과매도로 일부 되튀는 경향(단기 반전)이 있다.
맞힐 것이 없는 가짜 데이터(랜덤워크)에서 인샘플 샤프 +5.59가 나온 것은 무엇을 의미하나?
모델이 잡음을 통째로 암기했다는 뜻, 곧 과적합이다. 편향-분산 언어로는 유연한 모델이 잡음까지 학습해 분산 오차가 폭발한 것이다. OOS에서 −0.55로 무너지는 것이 오히려 정상 동작이다.
순위를 완벽히 맞혀도 롱온리 전략이 폭락장에서 손실을 보는 이유와 그 해법은?
시장 방향 위험(베타)이 그대로 남기 때문이다. 시장이 −30% 빠지면 순위 1등만 사도 −25%쯤 잃는다. 상위 매수·하위 공매도의 롱숏 구성으로 베타를 상쇄하면 순위 실력(알파)만 남는다.
워크포워드가 단순한 학습/시험 한 번 분할보다 나은 점 두 가지는?
① 검증 구간이 여러 개라 우연히 좋은(나쁜) 한 구간에 속을 위험이 줄고, ② 시장 국면 변화에 따라 모델을 다시 학습시키는 실제 운용 절차까지 평가에 포함된다.
"오늘 종가로 계산한 시그널로 오늘 종가에 매수"하는 백테스트의 문제는?
종가를 아는 시점에는 이미 장이 끝나 있어 그 가격의 거래가 불가능하다 — 룩어헤드다. 그래서 채점 엔진은 목표비중을 하루 지연시켜 적용한다.
핵심 정리

① 절대 예측(시계열) 대신 상대 평가(횡단면)로 문제를 바꾸는 것이 팩터 랭킹의 요체다.

② 공통 충격(베타)은 순위 비교에서 소거된다. 다만 롱온리라면 시장 방향 위험은 그대로 남는다.

③ 재료는 검증된 고전 팩터 — 모멘텀·단기 반전·저변동. 새 팩터의 발명은 데이터 스누핑의 지름길이다.

④ 인샘플 +5.59 → OOS −0.55(합성 랜덤워크 실험): 과적합의 교과서적 숫자다. 인샘플 성과는 아무리 화려해도 실력의 증거가 아니다.

⑤ 랜덤워크 시험은 모델이 아니라 실험 장치(파이프라인)의 결백을 확인하는 영점 조정이다.

원문으로 확인하기

참고문헌

수치와 일화는 아래 원문 기준으로 서술했다. 링크는 공개 원문·공식 등록처가 확실한 것만 달았다.

팩터 · 원전

  1. Jegadeesh, N. & Titman, S. (1993). "Returns to Buying Winners and Selling Losers: Implications for Stock Market Efficiency." Journal of Finance 48(1). doi:10.1111/j.1540-6261.1993.tb04702.x — 모멘텀의 체계적 첫 보고.
  2. Ang, A., Hodrick, R., Xing, Y. & Zhang, X. (2006). "The Cross-Section of Volatility and Expected Returns." Journal of Finance 61(1). — 고변동 종목군의 낮은 위험조정 성과(저변동 퍼즐).
  3. Daniel, K. & Moskowitz, T. (2016). "Momentum Crashes." Journal of Financial Economics 122(2). — 위기 반등기의 모멘텀 급락 실증.

팩터 동물원 · 검증

  1. Harvey, C., Liu, Y. & Zhu, H. (2016). "… and the Cross-Section of Expected Returns." Review of Financial Studies 29(1). doi:10.1093/rfs/hhv059 — 다중 검정 보정과 t > 3 문턱 제안.
  2. McLean, R. D. & Pontiff, J. (2016). "Does Academic Research Destroy Stock Return Predictability?" Journal of Finance 71(1). doi:10.1111/jofi.12365 — 공개 후 팩터 수익성 약화 실증.

모델

  1. Ke, G. et al. (2017). "LightGBM: A Highly Efficient Gradient Boosting Decision Tree." Advances in Neural Information Processing Systems 30 (NeurIPS 2017). papers.nips.cc — LightGBM 원 논문.

이 자료의 백테스트 수치(인샘플 샤프 +5.59, OOS −0.55, MDD −5.2%/−31%)는 강의용 실험 플랫폼에서 수행한 합성 랜덤워크 데이터 실험의 실측이며, 실제 시장 성과나 투자 성과를 시사하지 않는다. IC 실무 기준(0.05 안팎), 헤지펀드 장기 샤프(1~2 수준)는 정밀한 통계가 아니라 업계에서 널리 통용되는 어림 기준으로 서술했다. 인용 원칙: 연도는 학술지 게재 기준, 확신이 없는 서술은 "~로 알려져 있다/~라는 보고가 있다"로 구분했다.