- 1분봉 다운로드 제외, MONITOR_PERSIST로 05/06 수집 시 coins.db INSERT - Phase C paper_fires 로그·07 모의 리포트, hybrid 시뮬 산출물·reference 문서 갱신 - .env Phase C(LIVE=0), bootstrap dotenv override=True Co-authored-by: Cursor <cursoragent@cursor.com>
3.9 KiB
3.9 KiB
2~3단계 — dry-run·실거래 (hybrid primary)
운영 모델 (시뮬과 동일)
dry-run(Phase C)과 실거래(Phase B) 모두 시뮬 sim_primary = sim_causal_hybrid 와 같은 경로이다.
| 구분 | 내용 |
|---|---|
| 신호 | matched_rules.json → monitor_rules 2개 |
| 매수 규칙 | buy_compound_tight |
| 매도 규칙 | sell_mtf_cross_all_tf |
| 배분 | hybrid DD tier + past-leg, enhanced=False |
| 금지 | sim_tier_enhanced (conviction), GT oracle 타점 |
코드: deepcoin/ops/live_trader.py (GT_SIGNAL_CAUSAL=1 시 plan_buy_amount_krw(..., enhanced=False))
Phase C — dry-run (주문 없음, 3단계 전)
정의: 빗썸 시장가 주문 없음. 신호·tier·알림·로그만 검증.
| 항목 | 설정 |
|---|---|
LIVE_TRADING_ENABLED |
0 |
| 스크립트 | 05_run_monitor.py, 06_verify_live_dryrun.py, 06_execute_live.py --once |
| 기간 | 배포 체크리스트 기준 ~Phase C 종료(금요일 Go/No-Go) |
# .env: LIVE_TRADING_ENABLED=0, GT_SIGNAL_CAUSAL=1, SIM_PRIMARY_SIZING=auto
python scripts/01_download.py # 1일 1회
python scripts/06_verify_live_dryrun.py # 설정·tier·규칙 점검
python scripts/05_run_monitor.py # 텔레그램 알림 (상시)
python scripts/06_execute_live.py --once # dry_run 로그만 (선택)
- 06은 발화 시
dry_run (LIVE_TRADING_ENABLED=0)만 기록, API 매수·매도 호출 없음 - 잔고 조회는 알림·tier 계산용으로 API를 쓸 수 있음
상세: DEPLOYMENT_CHECKLIST.md §4 · env.recommended.md Phase C
Phase B — 실거래 (3단계 오픈)
정의: 실제 KRW가 빗썸 주문으로 나간다. 05 알림만으로는 3단계가 아니다.
선행 조건
- SIMULATION.md — 시뮬 GO (완료)
- Phase C GO (5일 모니터·verify·알림 안정)
- env.recommended.md Phase B-1
.env - RISK.md, OPERATIONS.md 숙지
실행
python scripts/06_verify_live_dryrun.py # B-1 당일 재확인
# LIVE_TRADING_ENABLED=1 확인 후
python scripts/06_execute_live.py --once
python scripts/06_execute_live.py # 상시
환경 변수
| 변수 | Phase C | Phase B-1 (예) | 설명 |
|---|---|---|---|
LIVE_TRADING_ENABLED |
0 | 1 | 1일 때만 실주문 |
GT_SIGNAL_CAUSAL |
1 | 1 | hybrid sizing |
SIM_PRIMARY_SIZING |
auto | auto | primary=hybrid |
LIVE_ORDER_KRW |
100000 | 100000 | 매도·비-hybrid fallback 참고 |
LIVE_DAILY_KRW_MAX |
300000 | 1,000,000 | sim 대비 체결 상한 |
LIVE_COOLDOWN_MIN |
180 | 180 | 규칙별 재주문 간격 |
LIVE_MAX_TRADES_PER_DAY |
10 | 10 | 일 최대 시도 |
LIVE_DAILY_LOSS_LIMIT_KRW |
50000 | 50000 | 일 손실 한도 |
MONITOR_LOOP_SLEEP_SEC |
180 | 180 | 05/06 루프 주기 |
MONITOR_ALERT_COOLDOWN_MIN |
180 | 180 | 텔레그램 중복 방지 |
Phase별 전체 블록: env.recommended.md
주문·배분 동작
- 매수: EV/WF 통과 규칙만 hybrid tier 원화 산출 →
_can_trade(일한도·쿨다운) → 시장가 매수 - 매도: 보유 WLD 전량 기준 시장가 매도 (
LIVE_ORDER_KRW는 매도 경로에서 수량 우선) - 스킵: 현금 부족, 일한도, hybrid planned >
LIVE_DAILY_KRW_MAX, 미승인 규칙
로그
| 경로 | 내용 |
|---|---|
data/ops/live_trades.jsonl |
06 주문·dry-run 시도 (JSONL) |
docs/05_ops/live_verification_*.md |
Phase C/B 일별 기록 |
4단계 연결
오픈 후 1~2주 실계좌 PnL·슬리피지·장애를 verification 문서에 기록 → B-2 한도 검토.
관련 문서
- SIMULATION.md — Go/No-Go·
sim_primary - OPERATIONS.md — 일상 루틴·장애
- RISK.md — Kill switch·한도