MagicTradeBot 봇 인스턴스는 Windows, Linux, macOS를 지원하는 크로스 플랫폼 실행 파일입니다. 단독으로 또는 여러 인스턴스와 함께 실행될 수 있으며, 구성은 중앙의 .yaml
파일을 통해 처리됩니다.
각 봇 인스턴스는 MagicTradeBot 관리 앱 API에 연결되어 인증, 거래 실행, 실시간 시장 스캔을 수행합니다. 이 문서는 구성 파라미터와 보안 통신 모범 사례를 설명합니다.
📄 YAML 구성 구조
각 봇 인스턴스의 핵심 구성은 config.yaml
파일에 저장됩니다. 아래는 참조 레이아웃입니다:
server:
# 이름
botName: "Bybit_Mainnet_Trading_Bot" # 봇 인스턴스의 고유 이름
# 라이선스 키
licenseKey: "hRnWOLo91ESUiZ8SkN986w" # 봇 인스턴스를 활성화하고 인증하는 데 필요
# 데모 모드 설정
isDemo: true # true = 시뮬레이션 모드; false = 실거래 모드
# API 구성
api: "https://localhost:7225/" # MagicTradeBot 관리 API의 URL
# 실행 제어
refreshRate: 5 # 시장 스캔 간격(초)
totalConcurrentTrades: 0 # 동시 거래 최대 수 (0 = 무제한)
# 리스크 관리 (0 = 비활성화)
maxLoss: 0 # 누적 손실이 이 임계값에 도달하면 봇이 중지됨
maxProfit: 0 # 누적 수익이 이 임계값에 도달하면 봇이 중지됨
# 계정 설정
exchangeId: 0 # 거래에 사용할 계정 ID (관리 앱에서 가져옴)
# 템플릿 설정
templateId: 0 # 전략 전용 템플릿 ID (0 = 기본값)
# 거래 전략
strategy: 0 # 전략 ID (아래 목록 참조)
strategyMaxCount: 55 # 최대 진행 단계 수 (0 = 무제한)
# 전략 참조:
# 0: 전략 없음
# 1: 마틴게일 2: 역 마틴게일
# 3: 피보나치 4: 역 피보나치
# 5: 3-2-6-3 6: 3-2-6-3 역전략
# 7: 달렘베르 8: 역 달렘베르
timeZone: "UTC" # 스케줄 및 거래 작업에 사용할 시간대
# 시스템 설정
debug: true # 자세한 로그 활성화
🔐 보안 통신 지침
봇 인스턴스는 심볼을 가져오고, 시장을 스캔하며, 거래를 실행하기 위해 관리 API와 통신합니다. 이 통신을 보호하는 것이 중요합니다. 다음은 핵심 보안 지침입니다:
1. API 엔드포인트에 HTTPS 사용
api
필드가 HTTPS URL을 사용하고 있는지 확인- 트래픽 암호화를 위해 유효한 TLS 인증서 사용 (예: Let’s Encrypt)
- HTTP 연결은 모두 차단
2. JWT 인증 적용
- 시작 시 봇 인스턴스가 인증 정보를 제공하여 JWT 토큰을 요청
- 검증되면 관리 앱이 서명된 토큰을 반환하며, 이는 모든 요청의
Authorization
헤더에 첨부됨 - 토큰은 짧은 만료 시간을 가지며, 메모리 내에 안전하게 저장
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
3. IP 화이트리스트로 접근 제한
- 관리 API에 접근 가능한 IP를 봇 인스턴스가 배포된 서버로 제한
- 방화벽 규칙을 설정하여 외부의 무단 접근 차단
4. API 키 및 라이선스 키 보호
- 소스코드에 비밀번호를 하드코딩하거나 로그에 노출하지 않음
- 환경 변수 또는 암호화된 비밀 관리자 사용
- 라이선스 키와 거래소 API 자격 증명을 주기적으로 교체
5. 각 봇 인스턴스를 격리
- 각 봇에 고유한
botName
을 지정하고 컨테이너 또는 격리된 환경에 배포 - OS 수준의 권한 제어를 사용하는 경우 최소 권한 원칙 적용
6. API 사용 모니터링 및 감사
- 관리 앱에서 감사 로그 활성화
- 모든 JWT 인증 시도 및 비정상 접근 패턴 기록
- Sentry, Pushover, LogDNA 등을 통해 이상 징후 감지 및 알림 설정
✅ 권장 사항
- 📌 모든 서비스 간에 강력한 비밀번호와 암호화된 통신 사용
- 📌 봇 인프라를 공개 네트워크 노출에서 격리
- 📌 관리 앱 및 봇 앱을 최신 보안 패치로 업데이트
- 📌 봇 구성 및 거래 기록에 대해 자동 백업 스케줄링