https://github.com/sowon2222/kream
작년 초, 팀 프로젝트로 KREAM 운동화 리셀가 예측 시스템을 개발했다.
운동화 리셀 시장의 미래 시세를 예측해보자는 목표로, KREAM 거래 데이터를 Selenium으로 약 3만 건 이상 크롤링하고
RandomForest 회귀 모델을 사용해 리셀 가격을 예측했다. 모델의 성능은 꽤 준수했다. MAE 4.7%로 오차가 작았고, 데이터 전처리와 피처 엔지니어링 과정을 직접 설계하며 머신러닝 파이프라인 전체를 경험할 수 있었다.
이후에는 결과 예측에 그치지 않고,
예측된 정보를 실시간으로 제공하는 서비스화까지 확장해보고 싶다는 목표가 생겼다.
그 아이디어가 이번에 진행 중인 디스코드 알림 시스템 프로젝트로 이어졌다.
현재 상태
현재 나는 팀 프로젝트에서 만든 코드와 모델을 기반으로, 이를 개인 프로젝트 형태로 재구성하고 있다.
이전 프로젝트가 ‘모델 학습’ 중심이었다면, 이번에는 그 모델을 활용해 “이 시점에 사고/팔아라”를 알려주는 디스코드 봇 서비스로 발전시키는 것이 목표다. 즉, 단순히 데이터를 예측하는 단계를 넘어서 → 데이터 수집 → 모델 예측 → 알림 발송으로 이어지는
완전 자동화된 시스템을 구축하려 한다.
프로젝트 개요
| 항목 | 내용 |
| 프로젝트명 | SneakerTrader(?)- 운동화 리셀가 예측 및 트레이딩 알림 봇 |
| 핵심 아이디어 | 머신러닝 기반 예측 모델을 통해 “지금 사야 할 신발 / 팔아야 할 신발”을 실시간으로 디스코드로 알려주는 서비스 |
| 주요 기술 | Python, FastAPI, Discord.py, PostgreSQL, scikit-learn, Pandas, EC2 (AWS) |
| 프로젝트 성격 | 개인 프로젝트 (기존 ML 모델 확장형) |
| 개발 기간 | 약 1~2개월 (12월 ~ 1월 초 예상) |
| 목표 | 완전 자동화된 예측 + 알림 파이프라인 구축 |
서비스 시나리오
1. 데이터 수집
- KREAM 거래 데이터 + 트렌드(검색량, 거래량, 인기 지수 등)를 주기적으로 수집
- EC2 인스턴스에서 스케줄러(cron)로 자동 실행
2. 예측 모델 학습 및 갱신
- 기존 RandomForest 모델 리팩토링
- 새 데이터가 쌓일 때마다 자동 재학습 및 예측 수행
- 7일, 14일 단위 예측
3. 시그널 생성 (BUY / SELL)
- 예측값 대비 현재가를 비교해
- 수익률이 +6% 이상 → “BUY”
- 수익률이 -4% 이하 → “SELL”
- 불확실성(표준편차)을 반영해 신뢰도(confidence) 계산
4. 디스코드 봇 알림
- /rec <모델명> → 특정 신발의 매수/매도 신호 표시
- /watch add <sku> → 관심 상품 등록
- /watch list → 관심 상품의 실시간 알림 리스트
- 자동 푸시: 조건 만족 시 개인 DM 발송
시스템 구조
[크롤러] → [DB 적재] → [예측 모델] → [시그널 계산] → [디스코드 봇 알림]
- FastAPI: 예측 결과/시그널 API
- PostgreSQL: 가격, 예측, 시그널, 유저 watchlist 저장
- Discord.py: 명령어 + 알림 메시지 처리
- Scheduler: 데이터 수집 및 모델 업데이트 자동화
기술 스택 요약
| 영역 | 기술 |
| 데이터 수집 | Selenium, BeautifulSoup, Cron |
| 모델 학습 | Scikit-learn (RandomForest), Pandas, Numpy |
| 백엔드 | FastAPI, SQLAlchemy, PostgreSQL |
| 챗봇 | Discord.py (slash commands) |
| 인프라 | AWS EC2 (Ubuntu), Docker |
| 자동화 | crontab, systemd, Python 스케줄러 |
진행 계획 (로드맵)
1주차 — 환경 세팅 & 기존 모델 리팩토링
- EC2 서버 세팅, 가상환경 구축
- 기존 KREAM 크롤링 코드 정리 및 DB 연동
- 예측 모델 코드 구조화 (pipeline/model.py)
2주차 — FastAPI & 시그널 로직 구축
- /recommend, /signals/latest API 구현
- 수익률/신뢰도 기반 BUY/SELL 규칙 설계
- 예측 자동 갱신 파이프라인 연결
3주차 — 디스코드 봇 구현
- /rec, /watch 명령어 구현
- FastAPI 연동 → JSON 결과를 메시지 템플릿으로 포맷팅
- 시그널 변화 감지 시 DM 자동 전송 기능 추가
4주차 — 자동화 & 배포
- cron으로 데이터 수집/예측 자동 실행
- systemd로 봇 프로세스 상시 실행
- 로그/에러 핸들링 추가