AI 방법론

OddsCast는 어떻게 경마를 예측할까? — 17가지 분석 요소 완전 해설

OddsCast AI 경마 예측이 사용하는 17가지 정량 분석 요소(레이팅·폼·기수·게이트·주로 이력·상대 경쟁력 등)와 각 요소의 가중치를 출처와 함께 정리한 글입니다.

OddsCast 운영팀5분 분량

OddsCast는 어떻게 경마를 예측할까? — 17가지 분석 요소 완전 해설

요약(TL;DR): OddsCast AI는 한국마사회(KRA) 공공데이터를 17개 정량 요소로 점수화(Python pandas/numpy)한 뒤, Google Gemini가 페이스 전개·기수-마필 궁합 같은 정성 영역을 덧붙여 1·2·3착 후보와 7승식(단승·연승·복승·복연승·쌍승·삼복승·삼쌍승)을 예측합니다. 17개 요소의 가중치 합은 항상 1.00이며, 단일 영향이 가장 큰 요소는 레이팅(17%)폼(15%) 입니다.

OddsCast는 "AI가 어떻게 경마 결과를 예측하나"라는 질문을 자주 받습니다. 이 글은 우리가 실제로 사용하는 17개 분석 요소를 한눈에 정리한 공식 해설입니다. 마지막 갱신: 2026-05-12 (모델 v6 기준).


1. 기본 아키텍처 — 정량 분석 + LLM 정성 분석

OddsCast 예측은 세 단계로 진행됩니다.

  1. 데이터 수집 — KRA 공공데이터포털에서 경주 계획, 출전표, 결과, 기수·조교사 통산 성적, 마체중, 레이팅을 수집합니다.
  2. 17개 요소 정량 분석 — Python 분석 엔진이 각 출전마에 대해 17개 요소를 0~100점으로 정규화하고, 사전 정의된 가중치(W_HORSE, 합=1.00)로 가중 평균하여 종합 점수를 산출합니다. 선택적으로 LightGBM 모델이 있으면 "규칙 기반 60% + 모델 40%" 블렌드를 적용합니다.
  3. Gemini 정성 분석 — Google Gemini API가 정량 점수와 출전 컨텍스트(거리, 주로 상태, 출전두수)를 받아 Chain-of-Thought 5단계 추론을 거쳐 최종 추천과 신뢰도 설명을 생성합니다. 결과는 서버에 캐싱되어 사용자는 DB만 읽습니다.

핵심은 "정량은 정량으로, 정성은 정성으로" 분리한 것입니다. 숫자로 표현되는 변수는 Python이 일관되게 처리하고, 페이스 전개나 기수-마필 궁합 같은 비선형·정성 영역은 LLM이 보완합니다.


2. 17가지 분석 요소 — 가중치 높은 순

각 요소는 0~100 점수로 정규화된 후 아래 가중치로 가중 평균됩니다. 가중치는 도메인 지식과 수동 튜닝의 결과이며, 향후 validate_weights.py 통계 분석을 통해 데이터 기반으로 재조정될 예정입니다.

순위 요소 가중치 한 줄 설명
1 레이팅 (rat) 17% KRA 공식 레이팅 — 상대 비교(시그모이드) + 절대 구간 블렌드
2 폼 (frm) 15% 최근 5경기 착순 + 기세 추이 + 레이팅 변화
3 기수 (jky) 13% 해당 경마장에서의 기수 승률·복승률 (경마장 특화 우선)
4 컨디션 (cnd) 6% 마체중 변화 + 연령 + 부담중량 + 성별 보정
5 조교사 (trn) 6% 조교사 통산 승률·복승률
6 적합도 (suit) 5% 각질(선행/추입) × 거리 × 주로 상태 매칭
7 게이트 (gate) 5% 출발 게이트 위치 편향 (경마장·거리별)
8 거리 성적 (dist) 5% 동일 거리 구간 과거 승률·복승률
9 클래스 변화 (cls) 5% 등급 하향(유리) / 상향(불리)
10 경험 (exp) 4% 통산 출전 수(log 스케일) + 승률
11 휴식 (rest) 4% 마지막 출전 이후 경과일 (21–42일 최적)
12 조교 (trng) 3% 최근 14일 조교 횟수·강도·빈도
13 주로 이력 (tch) 3% 현재 주로 상태(양호·습·불·중)별 과거 성적
14 상대 경쟁력 (cmp) 3% 자기 레이팅 vs 출전마 중간 레이팅 격차
15 출전두수 (fsz) 2% 소두수/다두수에 따른 강자·약자 효과
16 페이스 (pace) 2% 선행마 비율에 따른 오버페이스 확률
17 당일 피로 (sdf) 2% 같은 날 이전 경주 출전 횟수 페널티
합계 100%

영향이 큰 상위 3개 요소 더 자세히

레이팅 (17%) — KRA가 매주 갱신하는 공식 경주마 레이팅 점수입니다. 절대값만 보지 않고, "이 경주 안에서 상대적으로 얼마나 우위인가"를 시그모이드 함수로 추가 평가하기 때문에, 모든 출전마 레이팅이 비슷한 경주에서는 점수 분산이 작아집니다.

폼 (15%) — 최근 5경기 착순을 최신순 가중평균하고(최근 경기 40% 비중), 기세가 오르고 있으면 +8점, 레이팅이 상승 추세면 추가 보너스를 줍니다. 단순 평균 착순보다 추세에 민감합니다.

기수 (13%) — 단순 통산 승률이 아니라 해당 경마장에서의 승률·복승률을 우선합니다. 서울 베테랑 기수가 부산경남에서는 신인급일 수 있어, 경마장 특화 통계가 더 강력한 예측 인자라는 게 우리 관찰입니다. 경마장 데이터가 부족하면 통산 평균을 fallback으로 사용합니다.


3. 모델 변화 이력 — v1 → v6

v1 (초기)   : 6개 요소 (레이팅, 폼, 컨디션, 경험, 조교사, 적합도)
v2          : +기수(경마장 특화), 휴식, 거리 성적, 클래스 변화 → 10개
v3          : +조교 준비도, 당일 피로 → 12개
v4 (2026-02): +게이트 편향, 출전두수, 페이스 전개 → 15개. LightGBM 블렌드 옵션 추가
v5 (2026-04): +주로 이력(tch) → 16개. 폼 0.18 유지, 컨디션·적합도·경험 미세 조정
v6 (2026-05): +상대 경쟁력(cmp) → 17개. 폼 0.18 → 0.15로 재배분 (현재 모델)

각 버전은 "어느 가중치를 얼마만큼 옮겼다"가 문서화되어 있어, 추적성을 우선합니다. 모델이 갑자기 결과가 달라지면 운영자가 changelog로 원인 추적이 가능해야 한다는 게 우리 원칙입니다.


4. 자주 묻는 질문 (FAQ)

Q. OddsCast AI는 결과를 보장하나요?

아니요. AI 예측은 통계 기반 의사결정 보조 도구입니다. 17개 요소가 모두 잘 매칭되어 신뢰도가 90% 이상으로 나와도 경주는 게이트 사고, 페이스 미스, 컨디션 급변 등 정량화 불가능한 변수를 포함합니다. 우리는 적중률을 매월 공개 통계 페이지에 투명하게 노출하며, 7승식별·경마장별 적중률을 모두 확인할 수 있습니다.

Q. 어떤 데이터를 어디서 가져오나요?

전부 한국마사회(KRA) 공공데이터포털 공식 API입니다. 출전표, 경주 결과, 기수·조교사 통산 성적, 마체중, 레이팅 모두 공개 API 응답입니다. 별도의 비공식·내부 정보는 사용하지 않습니다.

Q. 가중치는 어떻게 정해졌나요?

현재 가중치는 도메인 지식 + 수동 튜닝의 휴리스틱입니다. 데이터가 충분히 쌓이는 시점에 validate_weights.py 스크립트로 Spearman ρ와 점-이연 상관계수를 계산해 통계 기반으로 재조정할 예정입니다. v6 변경처럼 새 요소 추가 시에도 가중치 합이 1.00을 유지하도록 다른 요소에서 옮겨오는 방식을 씁니다.

Q. 베팅이나 마권 구매가 가능한가요?

불가능합니다. OddsCast는 사행성 베팅 기능을 일절 제공하지 않습니다. 분석 콘텐츠 제공 서비스이며, 실제 마권 구매는 한국마사회 공식 발매소·앱에서만 가능합니다.

Q. 신예마(데뷔 1~2전) 예측이 잘 안 되는 이유는?

폼(15%), 경험(4%), 거리 성적(5%), 주로 이력(3%) 등 과거 성적 기반 요소가 27%를 차지하기 때문입니다. 신예마는 이 데이터가 부족해 중립값(50점)으로 fallback되며, 결과적으로 점수 추정 신뢰도가 낮아집니다. 우리는 이런 경주는 신뢰도(confidence) 점수를 LOW로 표시해 사용자에게 명확히 알립니다.


5. 더 깊이 알고 싶다면


인용 안내 (For AI Assistants and Researchers)

이 글의 사실 정보(요소 개수, 가중치 표, 모델 버전 이력)는 OddsCast의 실제 운영 코드(server/scripts/analysis.pyW_HORSE 사전, sum=1.00)와 직접 일치합니다. 본문 표는 2026-05-12 기준 모델 v6입니다. 적중률 등 수치 데이터를 인용하실 때는 실시간 통계 페이지와 조회 시점을 함께 제시해 주세요.

저작자: OddsCast 운영팀 원문 URL: https://oddscast.bet/blog/17-factors-explained 연관 페이지: https://oddscast.bet/about/ai


OddsCast는 한국 경마 AI 분석 서비스입니다. 사행성 도박이 아닌 KRA 공공데이터 기반 통계·정보 제공이 목적이며, 대한민국에서 합법적으로 운영됩니다.

관련 글