# Plan: ICT Crypto Trading Bot > **Feature**: ict-crypto-bot > **Created**: 2026-03-17 > **Phase**: Plan > **Level**: Dynamic --- ## 1. Overview ICT(Inner Circle Trader) Smart Money Concepts 기반의 크립토 자동매매 봇을 개발한다. 기관 트레이더의 행동 패턴을 알고리즘으로 구현하여, Order Block / Fair Value Gap / Market Structure Shift 등의 신호를 자동 탐지하고 매수/매도를 실행하는 시스템. --- ## 2. Problem Statement | 문제 | 설명 | |------|------| | 24/7 시장 모니터링 불가 | 크립토 시장은 24시간 운영, 사람이 지속 감시 불가 | | 감정적 매매 | 공포/탐욕에 의한 비합리적 의사결정 | | 기관 움직임 포착 어려움 | ICT 신호를 실시간 수동 분석하는 것은 비현실적 | | 진입/청산 타이밍 | 밀리초 단위의 정확한 실행 필요 | --- ## 3. Goals & Success Criteria ### 3.1 Primary Goals 1. **ICT 전략 자동화**: Order Block, FVG, BOS/CHOCH, Liquidity Sweep 자동 탐지 2. **자동 매수/매도**: 신호 발생 시 설정된 규칙에 따라 자동 주문 실행 3. **리스크 관리**: 포지션 사이징, Stop-Loss, Take-Profit 자동 관리 4. **백테스트**: 과거 데이터로 전략 검증 후 실전 투입 ### 3.2 Success Criteria | 지표 | 목표 | |------|------| | 백테스트 승률 | >= 60% | | 리스크/리워드 비율 | >= 1:2 | | 최대 낙폭 (Max Drawdown) | <= 15% | | 시스템 가동률 | >= 99% (24/7) | | 주문 실행 지연 | <= 500ms | --- ## 4. Core Features ### 4.1 ICT 지표 엔진 | 지표 | 설명 | 활용 | |------|------|------| | **Order Block (OB)** | 기관 주문 집중 캔들 존 탐지 | 매수/매도 진입 포인트 | | **Fair Value Gap (FVG)** | 급격한 가격 이동 후 갭 탐지 | 가격 회귀 매매 신호 | | **Break of Structure (BOS)** | 기존 고점/저점 돌파 감지 | 추세 지속 확인 | | **Change of Character (CHOCH)** | 시장 성격 변화 감지 | 추세 반전 신호 | | **Liquidity Sweep** | 스탑로스 사냥 후 반전 패턴 | 가짜 돌파 필터링 | | **Market Structure Shift** | 고점/저점 패턴 변화 | 매수↔매도 전환 판단 | ### 4.2 매매 실행 시스템 - **멀티 거래소 지원**: Binance, Bybit, OKX (CCXT 통합) - **주문 유형**: Market, Limit, Stop-Limit - **포지션 관리**: 분할 진입/청산, 트레일링 스탑 - **실시간 데이터**: WebSocket 기반 실시간 캔들/호가 수신 ### 4.3 리스크 관리 모듈 - 계좌 대비 포지션 사이징 (1~5% per trade) - 자동 Stop-Loss / Take-Profit 설정 - 일일 최대 손실 한도 (Daily Max Loss) - 동시 포지션 수 제한 - Drawdown 기반 자동 정지 ### 4.4 백테스트 & 시뮬레이션 - 과거 OHLCV 데이터 기반 전략 검증 - 수수료/슬리피지 반영 - 성과 리포트 (승률, PnL, Sharpe Ratio, Max Drawdown) - Paper Trading (모의 거래) 모드 ### 4.5 모니터링 & 알림 - 실시간 대시보드 (포지션, PnL, 신호) - Telegram/Discord 알림 (매매 체결, 신호 발생, 에러) - 로그 시스템 (모든 매매 기록 저장) --- ## 5. Technical Stack | 구성요소 | 기술 | 선택 이유 | |----------|------|-----------| | **언어** | Python 3.11+ | 풍부한 금융 라이브러리 생태계 | | **ICT 지표** | smart-money-concepts (pip) | ICT 전략 구현 검증된 오픈소스 | | **거래소 API** | CCXT / CCXT Pro | 100+ 거래소 통합, WebSocket 지원 | | **데이터 처리** | Pandas, NumPy | 시계열 데이터 분석 | | **백테스트** | Freqtrade / Backtrader | 내장 백테스트 + 라이브 트레이딩 | | **스케줄링** | APScheduler | 주기적 분석 실행 | | **DB** | SQLite → PostgreSQL | 매매 기록, 성과 데이터 저장 | | **알림** | python-telegram-bot | 실시간 매매 알림 | | **모니터링** | Streamlit | 빠른 대시보드 구축 | --- ## 6. Architecture Overview ``` ┌─────────────────────────────────────────────────────────┐ │ ICT Crypto Bot │ ├─────────────────────────────────────────────────────────┤ │ │ │ ┌──────────┐ ┌──────────────┐ ┌────────────────┐ │ │ │ Data Feed │──▶│ ICT Indicator│──▶│ Signal Engine │ │ │ │ (CCXT Pro)│ │ Engine │ │ (Buy/Sell) │ │ │ └──────────┘ └──────────────┘ └───────┬────────┘ │ │ │ │ │ ┌──────────┐ ┌──────────────┐ ┌───────▼────────┐ │ │ │ Risk Mgmt│◀──│ Position Mgr │◀──│ Order Executor │ │ │ │ Module │──▶│ │──▶│ (CCXT) │ │ │ └──────────┘ └──────────────┘ └────────────────┘ │ │ │ │ ┌──────────┐ ┌──────────────┐ ┌────────────────┐ │ │ │ Backtest │ │ Dashboard │ │ Notification │ │ │ │ Engine │ │ (Streamlit) │ │ (Telegram) │ │ │ └──────────┘ └──────────────┘ └────────────────┘ │ │ │ │ ┌──────────────────────────────────────────────────┐ │ │ │ Database (SQLite/PostgreSQL) │ │ │ └──────────────────────────────────────────────────┘ │ └─────────────────────────────────────────────────────────┘ ``` --- ## 7. Trading Strategy Detail ### 7.1 Entry Rules (매수 진입 조건) **Bullish Entry (롱)**: 1. Market Structure: Higher Highs & Higher Lows 확인 2. Liquidity Sweep: 이전 저점 스윕 후 반등 3. Order Block: Bullish OB 존에 가격 진입 4. FVG: Bullish FVG에서 가격 회귀 5. BOS: 상방 구조 돌파 확인 6. **3개 이상 조건 충족 시 매수 신호 발생** **Bearish Entry (숏)**: 1. Market Structure: Lower Highs & Lower Lows 확인 2. Liquidity Sweep: 이전 고점 스윕 후 하락 3. Order Block: Bearish OB 존에 가격 진입 4. FVG: Bearish FVG에서 가격 회귀 5. CHOCH: 하방 성격 변화 확인 6. **3개 이상 조건 충족 시 매도 신호 발생** ### 7.2 Exit Rules (청산 조건) | 조건 | 설명 | |------|------| | Take-Profit | 반대편 OB 또는 FVG 도달 | | Stop-Loss | OB 너머 또는 최근 스윙 고/저점 | | Trailing Stop | 수익 구간 진입 후 동적 추적 | | Time Exit | 일정 시간 경과 후 무반응 시 청산 | | CHOCH Exit | 보유 방향 반대로 CHOCH 발생 시 즉시 청산 | ### 7.3 Timeframe Strategy | Timeframe | 용도 | |-----------|------| | **4H / 1D** | 전체 시장 방향 (HTF Bias) | | **1H** | 구조 분석 + OB/FVG 탐지 | | **15M / 5M** | 정밀 진입 타이밍 | --- ## 8. Target Markets ### Phase 1 (MVP) - **BTC/USDT** - 유동성 최고, 가장 안정적 - **ETH/USDT** - 두 번째 유동성 ### Phase 2 (확장) - SOL/USDT, BNB/USDT - 주요 알트코인 (시총 Top 20) ### Phase 3 (고급) - 밈코인 스나이핑 (선택적) - 크로스 거래소 차익거래 --- ## 9. Risk Assessment | 리스크 | 영향도 | 대응 | |--------|--------|------| | 거래소 API 장애 | 높음 | 멀티 거래소 페일오버 | | 급격한 변동성 | 높음 | 일일 최대 손실 한도 + 자동 정지 | | 슬리피지 | 중간 | Limit 주문 우선, 슬리피지 한도 설정 | | 전략 과최적화 | 중간 | Walk-forward 분석, Out-of-sample 검증 | | API Key 유출 | 높음 | 환경변수 관리, IP 화이트리스트 | | 거래소 규제 변경 | 중간 | 멀티 거래소 지원, 규제 모니터링 | --- ## 10. Implementation Phases ### Phase 1: Foundation (1~2주) - [ ] 프로젝트 구조 설정 - [ ] CCXT 거래소 연동 (Binance) - [ ] OHLCV 데이터 수집 모듈 - [ ] smart-money-concepts 통합 ### Phase 2: Strategy Engine (2~3주) - [ ] ICT 지표 엔진 구현 (OB, FVG, BOS, CHOCH, Liquidity) - [ ] 멀티 타임프레임 분석 - [ ] 신호 생성 로직 (Entry/Exit Rules) - [ ] 백테스트 엔진 구축 ### Phase 3: Execution (1~2주) - [ ] 주문 실행 모듈 (Market/Limit/Stop) - [ ] 포지션 관리자 - [ ] 리스크 관리 모듈 - [ ] Paper Trading 모드 ### Phase 4: Monitoring (1주) - [ ] Telegram 알림 시스템 - [ ] Streamlit 대시보드 - [ ] 매매 기록 DB 저장 - [ ] 성과 리포트 생성 ### Phase 5: Live Trading (지속) - [ ] 샌드박스 실전 테스트 - [ ] 소액 실전 투입 - [ ] 성과 모니터링 & 전략 튜닝 - [ ] 추가 거래소/페어 확장 --- ## 11. Open Source References | Repository | 용도 | |------------|------| | [smart-money-concepts](https://github.com/joshyattridge/smart-money-concepts) | ICT 지표 라이브러리 | | [smc_quant](https://github.com/starckyang/smc_quant) | SMC 기반 ETH 트레이딩 참조 | | [Asian-Turtle-Soup-Bot](https://github.com/martin254/Asian-Turtle-Soup-Trading-Bot) | ICT Turtle Soup 전략 참조 | | [CCXT](https://github.com/ccxt/ccxt) | 거래소 API 통합 | | [Freqtrade](https://github.com/freqtrade/freqtrade) | 봇 프레임워크 참조 | | [ICT-Risk-Management](https://github.com/LesterALeong/ICT-Risk-Management) | 리스크 관리 참조 | --- ## 12. Constraints & Assumptions ### Constraints - 초기 운영 자본: $500~$1,000 (소액 시작) - 거래소: Binance 우선 (API 안정성) - 레버리지: 최대 3x (보수적) - 동시 포지션: 최대 3개 ### Assumptions - ICT 전략은 크립토 시장에서도 유효하다고 가정 - 거래소 API는 안정적으로 동작한다고 가정 - 네트워크 지연은 500ms 이내라고 가정 --- ## 13. Out of Scope (v1.0) - 고빈도 트레이딩 (HFT) - MEV / Sandwich Attack - DEX 온체인 트레이딩 - 소셜 시그널 기반 매매 - AI/ML 기반 예측 모델 (v2.0에서 검토)