순서만 기억하세요: 데이터 수집 → 백테스트(과거 검증) → 페이퍼(실시간 연습, 주문 없음). 실제 주문은 별도 준비가 필요합니다. 처음이면 시작 가이드 · 용어는 쉬운 설명.
아래 명령 빌더로 명령을 만든 뒤 터미널에서 실행하세요. 전략 표·고급 API·연동 준비도는 더 보기에서 펼칩니다.
라이브 곡선이 대시보드와 다르면 웹·워커의 DB·스냅샷 설정을 같게 맞추세요 — 설정 · 레포 docs/STRATEGY_OPERATIONS_HUB.md.
OI 페이퍼 실행 후
python scripts/real_use_ready.py --skip-binance-probe --skip-preflight --json 또는 python scripts/prepare_paper_live.py (.run/logs·specs/·CLI 점검)python scripts/readiness_paper_and_live.py --preset quick (prepare 선행; 전체 pytest 없음 — 전체는 CI 또는 --paper-e2e-seconds 0)python scripts/oi_trend_try.py · 자동화·파이프는 --dry-run 권장; --seconds·--profiles로 범위 축소python scripts/real_use_ready.py (현물 계정 읽기로 키 유효성·선택 preflight)python scripts/paper_command_from_nl.py --query "…" · 실제 기동은 --execute --confirm-execute (둘 다 필요)상세: docs/PAPER_TRADING_EXECUTION_PLAN.md §0 · docs/STRATEGY_OPERATIONS_HUB.md (리모트·수치·동기화) · docs/INTEGRATION_ECOSYSTEM_UX_AND_AI.md §5 · docs/USER_FLOW_SIM_TO_LIVE.md
python scripts/paper_command_from_nl.py --query "BTC 선물 oi 스파이크 랠리 페이퍼"
slippage_bps에 가깝습니다.--ws-tob · Redis: ws_to_redis --with-tob + --redis-merge-tob(위 CLI 빌더 체크박스).tob_depth_slippage_walk / PAPER_TOB_DEPTH_SLIPPAGE_WALK 로 레벨 소비 추가 bps 휴리스틱을 켤 수 있습니다.market_kind·--leverage·--margin-mode·--position-mode는 수수료·펀딩·청산 단순 모델에 쓰입니다(환경 PAPER_MARKET_KIND 등 참고; 페이퍼 hedge = 듀얼 슬롯; 저장소 백테스트 hedge = --use-paper-runtime + --simulation-hedge-mode).PaperEngine · apps/paper_trader/run_realtime.py · 가정 공통 요약은 설정 표 아래 접기
한 터미널에서 페이퍼를 띄운 뒤, 같은 머신에서 다른 터미널로 개발·백테스트를 계속할 수 있습니다. 종료는 CLI로만 해도 됩니다.
python scripts/paper_live_ctl.py start -- --source ws --symbol BTCUSDT --venue BINANCE --strategy oi_flow --market-kind linear_perp --ws-market futures --futures-derivatives --oi-preset oi_pb_coinalyze_strict --performance-snapshot-every 5
python scripts/paper_live_ctl.py start -- --source ws --strategy oi_spike_rally --oi-spike-preset oi_spike_balanced --symbol BTCUSDT --venue BINANCE --market-kind linear_perp --ws-market futures --futures-derivatives
python scripts/paper_live_ctl.py start -- --source ws --strategy coinalyze_zip_legacy --zip-legacy-preset zip_btc_coinalyze --symbol BTCUSDT --venue BINANCE --market-kind linear_perp --ws-market futures --futures-derivatives
.run/paper_live_status.json(누적 손익·체결 수 등), 로그 꼬리python scripts/paper_live_ctl.py status
python scripts/paper_live_ctl.py stop
로그 스트림: PowerShell Get-Content -Wait -Tail 30 .run/logs/paper_live.log · sh tail -f .run/logs/paper_live.log. start 시 --status-file / --console-summary-every 가 없으면 ctl이 기본값을 붙입니다.
목표 달성 시 자동 종료 (OPS-1): 크래시 복구용 supervise에 목표를 붙입니다. 대시보드 진행률은 PAPER_RUNTIME_GOAL_FILE 설정 시 표시됩니다.
python scripts/paper_supervise.py --stop-when-met --goal-file goals/example_paper_goal.json --goal-poll-sec 30 -- --source ws --strategy breakout_deriv_overlay --symbol BTCUSDT --venue BINANCE --market-kind linear_perp --ws-market futures --futures-derivatives --status-file .run-paper-breakout_deriv_overlay/paper_status.json --performance-snapshot-every 1
N개 동시 (전략마다 다른 status·로그·PAPER_SNAPSHOT_SESSION_PREFIX): paper_live_ctl 은 PID 하나 전제이므로 멀티는 아래 스크립트.
python scripts/paper_launch_pool.py start --n 4 python scripts/paper_launch_pool.py status python scripts/paper_launch_pool.py stop
짧은 스모크: python scripts/paper_launch_pool.py start --n 2 --demo-seconds 20 --force (끝나면 자동 stop). 레지스트리: .run/paper_multi_registry.json
터미널·배포에서 남은 단계 요약입니다. 정본: docs/GAP_AND_TODO.md · docs/PAPER_TRADING_EXECUTION_PLAN.md · runtime-summary(JSON).
python -m apps.paper_trader.run_realtime --source ws --symbol BTCUSDT --venue BINANCE --strategy breakout --ws-market spot --market-kind spot
| 전략 | 진입 조건 | 적합한 시장 | 주요 파라미터 |
|---|---|---|---|
| Breakout | 거래량 급등 + 레짐(TREND_UP/DOWN) 확인 | 추세가 뚜렷한 시장 (TREND_UP / TREND_DOWN) | volume_z_min, atr_stop_mult |
| Mean Reversion | Z-score 과매수/과매도 (zscore_price_60 ≥ 2.0) |
횡보 구간 (RANGING / MEAN_REV 레짐) | zscore_entry, zscore_exit |
| OI + 보조지표 | OI 변화·거래량 Z·모멘텀 등 (oi_volume_flow_tutorial_strategy) |
선물 + --futures-derivatives 권장 |
--oi-preset 플레이북 라벨 |
| zip 레거시 OI | coinalyze_zip_legacy — 5m 상대 OI + 캔들 조건 (bots.zip 이식) |
선물 + OI REST | --zip-legacy-preset (zip_btc_coinalyze / zip_eth_coinalyze) |
전략 파라미터 최적화는 전략 대시보드의 Grid Search / Walk-Forward를 사용하세요.
python -m apps.paper_trader.run_realtime --source ws --symbol BTCUSDT --strategy breakout
python -m apps.paper_trader.run_realtime --source ws --symbol BTCUSDT --strategy mean_reversion
python -m apps.paper_trader.run_realtime --source ws --symbol BTCUSDT --strategy breakout --ws-tob
python -m apps.paper_trader.run_realtime --source redis --symbol BTCUSDT --venue BINANCE --redis-url redis://localhost:6379/0 --stream md.candles.BINANCE.BTCUSDT.1m --strategy breakout --redis-merge-tob
python -m apps.paper_trader.run_realtime --source redis --symbol BTCUSDT --venue BINANCE --redis-url redis://localhost:6379/0 --stream md.candles.BINANCE.BTCUSDT.1m --strategy breakout
포그라운드 실행이면 Ctrl+C로 종료합니다. 백그라운드·다른 터미널 작업은 위 paper_live_ctl을 쓰면 PID·상태 JSON·로그로 가시성을 유지한 채 stop으로 끊을 수 있습니다. 장기 실행만 직접 띄울 때는 nohup / systemd 등도 가능합니다. 외부 시그널 연동은 설정의 환경 변수(.env)를 참고하세요.