AI 기반 주식 자동매매 프로젝트의 두 번째 단계로, 학습된 모델(DecisionTreeClassifier
)을 ONNX 포맷으로 변환하고, 이를 기반으로 실시간 수익률 예측기를 구축하였습니다.
ONNX 모델 변환 및 저장
다음 Python 코드를 사용하여 pkl → onnx 변환을 성공적으로 수행했습니다:
from skl2onnx import convert_sklearn
from skl2onnx.common.data_types import FloatTensorType
model = joblib.load("xgb_model.pkl")
initial_type = [("input", FloatTensorType([None, 4]))]
onnx_model = convert_sklearn(model, initial_types=initial_type)
with open("xgb_model.onnx", "wb") as f:
f.write(onnx_model.SerializeToString())
ONNX 예측 실행 결과
train_data_20250627.csv
파일을 기반으로 예측한 결과는 다음과 같습니다.
종목명 | 수익률 | 예측결과 |
---|---|---|
코나아이 | 3.12% | 1 |
에코프로머티 | 3.37% | 1 |
제주은행 | 3.54% | 1 |
한국정보인증 | 3.79% | 1 |
유라클 | 3.43% | 1 |
예측 결과는 1
이면 3% 이상 수익 도달 확률이 높은 것으로 판단하며, 0
은 도달 가능성이 낮은 것으로 해석됩니다.
예측 결과 저장
전체 예측 데이터는 predicted_result.csv
로 저장되었습니다.
다음 단계는 이 ONNX 예측기를 실시간 자동 매수 감시 시스템에 연동하여, 신호 발생 시 예측 결과에 따라 전략을 다르게 적용하는 시스템을 구축하는 것입니다.