암호화폐 거래 봇 개발 경험
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
앱 개발
대상자
- 개발자: Python 및 암호화폐 API 사용 경험을 가진 중급 이상 개발자
- 난이도: 중간 (API 연동, 알고리즘 설계, 로깅 구현 필요)
핵심 요약
- Python 기반 암호화폐 거래 봇 개발: CoinDCX API와 Twilio를 활용한 실시간 거래 자동화
- 알고리즘 로직:
decide_buy_sell_hold()
메서드를 통해 가격 추세 분석 및 거래 결정 - 핵심 기술 스택:
Python
,CoinDCX Developer API
,Twilio
,Flat file logging
- 개선 방향: AI 통합, 로깅 데이터베이스 전환, 디자인 패턴 적용
섹션별 세부 요약
1. 배경 및 목적
- 암호화폐 시장의 주간 변동성에 대응하기 위한 자동 거래 시스템 개발
- CoinDCX 계정 생성 후 500 루피 출발로 초기 거래 시도
- 수동 거래의 번거로움으로 인한 자동화 필요성 인식
2. 알고리즘 로직
- 가격 추세 분석: 5개의 최근 가격 데이터를 기반으로
bullish
/bearish
트렌드 판단 - 거래 조건:
- Buy: 5개 가격이 엄격히 상승 → BUY
신호
- Sell: 5% 손실 시 stop-loss
, 20% 수익 시 profit booking
- 결정 메서드:
decide_buy_sell_hold()
로 거래 결정 후log.txt
에 기록
3. 구현 및 배포
- 코어 클래스 구조:
- Crypto
클래스: Portfolio
, Trader
, Logger
통합
- Trader
클래스: decide_buy_sell_hold()
메서드 핵심 로직
- Portfolio
클래스: 자산 관리 및 주문 상태 추적
- 배포 환경: Amazon EC2 인스턴스 사용 (1년 무료 계획)
- 알림 시스템: Twilio API를 통한 WhatsApp 메시지 알림
4. 결과 및 개선점
- 초기 테스트:
- 1일간 84.6 루피 수익
- 주문 상태 추적 오류로 342 루피 손실
- 개선 방향:
- AI 기반 예측 모델 도입
- 로깅 데이터베이스 전환
- Strategy
/Observer
디자인 패턴 적용
- 예외 처리 강화 및 웹 대시보드 구현
결론
- 실무 팁:
- log.txt
대신 데이터베이스로 로깅 데이터 저장
- try-except
구문을 활용한 예외 처리 강화
- Strategy
패턴 적용으로 알고리즘 확장성 향상
- 주의 사항: 거래 금액 제한 설정 및 시장 변동성 대응 전략 필요