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
- ICT 전략 자동화: Order Block, FVG, BOS/CHOCH, Liquidity Sweep 자동 탐지
- 자동 매수/매도: 신호 발생 시 설정된 규칙에 따라 자동 주문 실행
- 리스크 관리: 포지션 사이징, Stop-Loss, Take-Profit 자동 관리
- 백테스트: 과거 데이터로 전략 검증 후 실전 투입
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
7. Trading Strategy Detail
7.1 Entry Rules (매수 진입 조건)
Bullish Entry (롱):
- Market Structure: Higher Highs & Higher Lows 확인
- Liquidity Sweep: 이전 저점 스윕 후 반등
- Order Block: Bullish OB 존에 가격 진입
- FVG: Bullish FVG에서 가격 회귀
- BOS: 상방 구조 돌파 확인
- 3개 이상 조건 충족 시 매수 신호 발생
Bearish Entry (숏):
- Market Structure: Lower Highs & Lower Lows 확인
- Liquidity Sweep: 이전 고점 스윕 후 하락
- Order Block: Bearish OB 존에 가격 진입
- FVG: Bearish FVG에서 가격 회귀
- CHOCH: 하방 성격 변화 확인
- 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주)
Phase 2: Strategy Engine (2~3주)
Phase 3: Execution (1~2주)
Phase 4: Monitoring (1주)
Phase 5: Live Trading (지속)
11. Open Source References
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에서 검토)