매 리밸런싱 시점 스코어 상위 20%(Q1) ~ 하위 20%(Q5) 동일가중, 비용 차감 후.
정보계수(IC) 시계열
스코어 순위와 다음 구간 수익률의 스피어만 상관. 양수 구간 비율이 안정성의 핵심.
분위별 성과 요약
연율 수익률·변동성·샤프·최대낙폭.
방법 ⓪ · 실시간 API 연결 자동 · 최초 1회 설정
브라우저는 보안정책(CORS) 때문에 증권 서버를 직접 부를 수 없습니다. 중계용 주소를 한 번 만들어 두면
그 뒤로는 버튼 하나로 최신 시세가 들어옵니다. 만드는 법은 함께 드린
krx-proxy-worker.js 파일 맨 위에 적어 두었습니다.
어디서 되나 — Cloudflare에 올린 사이트에서 가장 잘 됩니다(중계가 같이 올라가므로 주소 입력 불필요).
내려받은 HTML을 직접 열었을 때는 중계 주소를 넣으면 됩니다.
claude.ai 링크로 보는 화면에서는 동작하지 않습니다 — 보안정책상 외부 호출이 전부 차단됩니다.
받아오는 값은 실시간 체결가가 아니라 지연 시세·일별 종가입니다. 이 모델은 일봉 기준이라 충분합니다.
최소 290영업일(약 14개월)이 있어야 계산이 시작됩니다. 12개월 룩백에 1개월을 건너뛰는 구조라 그렇습니다. 백테스트까지 보시려면 3년을 권합니다.
처음 쓰시나요 — 3단계면 됩니다
코랩 노트북을 엽니다. 함께 드린 주도주_팩터엔진_코랩.ipynb 를
colab.research.google.com 에 올리고
수집 기간(15년 · 10년 · 5년 · 3년 · 1년 · 6개월 · 1개월 · 1주일)을 고른 뒤 런타임 → 모두 실행.
파이썬을 설치하실 필요는 없습니다 — 구글 서버가 대신 돌립니다.
최신 수집기라면 Factor_Public ZIP 하나를 그대로 사용하세요. 내부의 prices.csv · master.csv · turnover.csv · 시장자료를 자동 인식합니다.
구형 수집기라면 아래 CSV 상자에 끌어다 놓으면 됩니다. 파일명으로 자동 분류되고,
Firebase 자동 저장이 켜져 있으면 새 날짜만 서버에 쌓입니다.
가장 간단한 정기 갱신 — 맨 위 증분 적립에서 Yahoo Finance를 고르면 코랩 없이 캐시 마지막 날짜 이후 시세만 받아 Firebase에 쌓습니다. 재무·섹터처럼 야후에 없는 정보는 그 패널에 따로 정리됩니다.
정기 갱신은 이렇게 — 코랩 설정에서 업데이트_모드를 켜고 지난번 받은
prices.csv 를 올리면, 기존 종목은 그 이후 날짜만 받아 몇 분이 수십 초로 줄어듭니다.
받으시는 파일은 언제나 합쳐진 전체입니다.
최신 수집기가 만든 Factor_Public_*.zip을 그대로 넣으세요. 엔진이 현재 유니버스에 맞는 종목만 골라
10년 가격·거래대금·현재 재무·시장지수를 한 번에 적용합니다. 혼합 글로벌 CSV를 한국 코드로 잘못 변환하지 않도록
master.region과 membership.csv을 먼저 확인합니다. 이 버튼은 빠른 로컬 미리보기용입니다. 장기팩을 Firebase에 최초 구축하거나 정기 보완할 때는 데이터 관리에서 Factor_Public + sector_commodity ZIP을 함께 검사·누적하세요.
Factor_Public_*.zip
어디에 무엇이 저장되나
파일
내용
없으면
prices.csv
일별 종가 + BENCH 열
계산 불가
master.csv
종목명 · 지역 · 섹터 · PER/Forward PER · ROE · 영업이익률 · 부채 · 시총 · FCF · 배당
퀄리티 · 밸류 정밀도가 낮아집니다
turnover.csv
일별 거래대금
수급 팩터가 자동 제외됩니다
10y/market_prices.csv.gz
한·미 지수 · 환율 등 시장가격
시장국면 자동판정은 수동 선택으로 유지
Firebase 컬렉션은 factor ·
factor_tv · factor_meta 입니다.
마켓 포트폴리오가 쓰는 forwardMarket* 와 겹치지 않아 서로 건드리지 않습니다.
CSV 파일을 이 영역에 끌어다 놓으세요CSV·엑셀(xlsx) 모두 됩니다. 파일명으로 자동 분류 — prices / master / turnover. 여러 개를 한 번에 놓아도 됩니다.
서버 저장소 (Firebase) 누적 저장
한 번 올린 자료는 서버에 남습니다. 다음에 새 파일을 올리면 기존 날짜는 그대로 두고 새 날짜만 추가합니다.
어느 기기에서 접속해도 같은 자료를 쓰며, 설정은 이미 되어 있어 바로 사용하실 수 있습니다.
서버와 합쳐서 적용은
짧은 증분 파일(새로 늘어난 날짜만 담긴 파일)을 올릴 때 쓰세요. 서버의 과거 자료에 새 날짜만 얹은 뒤
합쳐진 전체를 다시 불러옵니다. 14개월이 안 되는 파일을 올리면 자동으로 이 경로를 탑니다.
1 · 가격 시계열 (wide CSV) 필수
첫 열은 date, 나머지 열은 종목코드. 벤치마크는 BENCH 열로 넣습니다(없으면 유니버스 동일가중 지수를 자동 생성). 수정주가 기준 종가.
prices.csv
2 · 종목 마스터 (선택)
인식 열: ticker/symbol,name,region,sector,roe,operating_margin,opgrowth,per,forward_per,pbr,debt,mcap,free_cash_flow,dividend_yield,eps_rev. 최신 Factor_Public 형식을 그대로 인식합니다.
master.csv
3 · 거래대금 시계열 (선택)
가격과 동일한 wide 형식. 수급 모멘텀(VOLTREND) 계산에 사용합니다.
turnover.csv
4 · 벤치마크 지수 (선택)
성과 비교용 벤치마크(코스피200 · S&P 500 · 나스닥 100)의 지수 자료입니다.
market_bundle.json(마켓 포트폴리오 수집 파일)을 그대로 넣거나, date,K200,SPX,NDX,USDKRW 형식 CSV를 넣으세요.
prices.csv에 같은 이름의 열이 있어도 자동으로 인식합니다(종목으로 취급하지 않음). 한 번 넣으면 브라우저에 기억됩니다.
지수·환율은 Firebase에서 가져옵니다. 신규 파일 추가 시 중복 날짜를 제외하고 Firebase에 적립합니다.