크라우니트레이더 자동거래 엔진 구축
개요
trader.crowny.org(7741)에 퀀트멘토 시그널 기반 자동거래 엔진을 구축. 닌자트레이더 대용으로 시뮬 엔진 위에서 실시간 자동매매 테스트 성공.
무엇을 했는지
1. Tradovate API 연동 시도
- APEX_452284 계정으로 demo/live 인증 시도
- 결과: 계정 유효 확인 (에러가 "incorrect password" → "app not registered"로 변경)
- Tradovate REST API는 CMS 등록 앱(cid/sec) 필수 → 현재 미발급
- 웹 트레이더(trader.tradovate.com) JS 번들 분석:
appId:"tradovate_trader(web)" 확인했으나 1st-party 전용
2. 자동거래 엔진 구축 (lib/autotrade-engine.js)
- EventEmitter 기반, 플러거블 백엔드 (sim / tradovate)
- 퀀트멘토 SSE 시그널 → 리스크 체크 → 주문 실행 → 로깅
- 리스크 파라미터: 최소신뢰도, 일일최대손실, 일일최대거래, 멘토/심볼 필터
- 자동 SSE 재연결, 일일 리셋
3. 서버 통합 (server.js 전면 개편)
- 7개 자동거래 API 엔드포인트 추가
- SSE 실시간 이벤트 스트림 (fill/reject)
- JSONL 거래 로그
- 레거시 copytrade 호환 유지
4. 테스트 결과
- 689건 시그널 수신, 30건 체결 (일일 한도 도달), 에러 0건
- 리스크 관리 정상 (신뢰도 < 0.65 거절, 일일 30건 한도 적용)
- 시뮬 주문 trading:7740 SimEngine에 정상 라우팅
관련 파일
/Users/ef/crowny-trader/lib/autotrade-engine.js — 자동거래 엔진
/Users/ef/crowny-trader/server.js — 서버 (자동거래 API 추가)
/Users/ef/crowny-trader/한선씨/자동거래엔진.한선 — 한선씨 동반
/Users/ef/crowny-trader/CLAUDE.md — v0.2.0 업데이트
/Users/ef/crowny-trader/data/autotrade.jsonl — 거래 로그
잔여 이슈
- Tradovate cid/sec 미발급: trader.tradovate.com → Settings → API Access에서 발급 필요
- P&L 추적: 현재 dailyPnl은 0 고정 (시뮬 엔진에서 realized P&L 콜백 미연결)
- 대시보드 UI: 자동거래 현황 대시보드 페이지 미구현
- 멘토 시그널 품질: 현재 mock (랜덤). 실전용 시그널 생성 로직 필요