주식 시장 예측이 가능한가? - 닫힌 가격만 사용한 분석

주식 시장 예측이 가능한가? - 닫힌 가격만 사용한 분석

카테고리

데이터 과학/AI

서브카테고리

데이터 분석

대상자

- 시간적 시계열 분석을 수행하는 데이터 과학자

- 양적 분석가 및 금융 모델링 전문가

- 머신러닝 기반 주식 예측 모델 개발자

- 난이도: 중급(시계열 데이터 전처리 및 모델 평가 지표 이해 필요)

핵심 요약

  • 닫힌 가격만으로 주식 시장을 예측하는 것은 가능하지만, 모델의 정확도는 제한적이다
  • 시간 시계열 데이터는 60일 이동 평균 기반의 '수익률(returns)'로 정규화하여 처리 (코드: ret_t-{n})
  • 10일 예측 범위 설정은 실용적 성능과 현실성의 균형을 고려한 선택
  • 모델 평가 시 MAE/MSE 등 기본 지표 누락이 흔한 문제점 지적

섹션별 세부 요약

1. 데이터 수집 및 준비

  • 17,610개 데이터 포인트 수집 (10개 기업, 2018-2025 기간)
  • DataFrame 생성 (pd.read_csv('data.csv', index_col=0))
  • 데이터 정규화 (회사별 가격 차이를 완화하기 위해)
  • 수익률 계산 공식: (target_price - current_price) / current_price

2. 시간 시계열 데이터 생성

  • prepare_supervised_return_data 함수 사용
  • window_size=60, forecast_horizon=10 설정
  • 수익률 기반 특성 생성: ret_t-60 ~ ret_t-1 (총 60개 특성)
  • 정규화 방법: (input_seq - np.mean(input_seq)) / np.std(input_seq)

3. 데이터 분할 및 표준화 검증

  • 7:1.5:1.5 비율로 train/val/test 분할
  • StandardScaler 사용 검토
  • 표준화 전후 분포 비교 결과: 표준화 필요성 미미 확인
  • Boxplot 비교 코드: plot_boxplot 함수 사용

4. 모델 평가 및 한계

  • 기존 연구의 평가 지표 누락 문제 지적 (MAE/MSE 등)
  • 수익률 기반 모델이 가격 기반 모델보다 일반화 성능 우수
  • 10일 예측 범위는 과도한 예측(예: 30일 이상)보다 현실적

결론

  • 닫힌 가격만으로 주식 예측 가능하지만, 모델 평가 지표(예: MAE) 누락은 주의해야 함
  • 수익률 기반 정규화(ret_t-{n})는 기업별 가격 차이를 완화하는 핵심 전략
  • 10일 예측 범위 설정은 실용성과 예측 가능성의 균형을 고려한 선택
  • GitHub 코드 활용 시 StandardScaler 사용 여부를 추가 실험으로 검토 권장