멀티 전략 등록 및 동적 실행 시스템 설계 – 코인 자동 거래 앱 개발기 (12)
2025. 7. 28. 05:26ㆍ프로젝트 (Project)/바이낸스 코인 자동거래
반응형
12. 멀티 전략 등록 및 동적 실행 시스템 설계 – 코인 자동 거래 앱 개발기 (12)
자동 거래 시스템이 실전에서 더 똑똑하게 작동하려면 하나의 전략만이 아니라 다양한 전략을 상황에 맞게 선택하고 병행 실행할 수 있어야 합니다. 이번 글에서는 **멀티 전략 등록 시스템**을 만들고, 전략 선택 → 실행 여부 ON/OFF → 전략별 결과 출력까지 구성합니다.
12-1. 전략을 파일로 분리하고 관리하기
각 전략을 클래스로 만들고, 별도 파일로 관리합니다. 예를 들어 디렉토리 구조는 다음과 같이 구성할 수 있습니다:
/strategies/
├── macd_rsi.py
├── ema_cross.py
├── vwap.py
각 파일은 공통 인터페이스를 따르도록 작성합니다:
class Strategy:
def generate_signal(self, df):
raise NotImplementedError
12-2. 공통 인터페이스 설계
모든 전략은 generate_signal() 메서드를 구현해야 합니다.
class MACDRSIStrategy(Strategy):
def generate_signal(self, df):
# MACD + RSI 기반 신호 반환
return signal
이렇게 하면 전략 파일을 자동으로 불러와서 등록할 수 있습니다.
12-3. 동적 전략 로딩
import importlib
import os
def load_strategies():
strategy_list = []
for filename in os.listdir("strategies"):
if filename.endswith(".py"):
module_name = filename[:-3]
module = importlib.import_module(f"strategies.{module_name}")
strategy_class = getattr(module, "Strategy")
strategy_list.append(strategy_class())
return strategy_list
이제 새로운 전략을 파일만 추가하면 자동으로 등록되는 구조가 됩니다.
12-4. 전략별 실행 여부 설정 (토글 기능)
# 예시: 실행할 전략만 선택
active_strategies = {
"MACDRSIStrategy": True,
"EMACrossStrategy": False,
"VWAPStrategy": True
}
실행 루프에서 조건에 맞는 전략만 수행:
for strategy in strategies:
name = strategy.__class__.__name__
if active_strategies.get(name, False):
signal = strategy.generate_signal(df)
# 시그널 처리
12-5. 전략별 결과 로깅
각 전략의 신호 발생 횟수, 성공률, 수익률 등을 따로 추적합니다.
strategy_logs = {
"MACDRSIStrategy": {"win": 0, "loss": 0, "profit": 0},
"VWAPStrategy": {"win": 0, "loss": 0, "profit": 0}
}
이를 기반으로 전략별 성능 리포트 자동 출력도 가능합니다.
12-6. 마무리 및 다음 편 예고
이제 자동 거래 시스템은 여러 전략을 동시에 관리하고, 동적으로 켜고 끌 수 있는 유연한 구조를 갖추게 되었습니다. 다음 편에서는 전략별 실시간 수익률 집계 및 시각화 기능을 개발해봅니다.
반응형
'프로젝트 (Project) > 바이낸스 코인 자동거래' 카테고리의 다른 글
| 리스크 경고 시스템과 손실 제한 로직 설계 – 코인 자동 거래 앱 개발기 (14) (1) | 2025.07.30 |
|---|---|
| 전략별 실시간 수익률 집계 및 리포트 기능 구현 – 코인 자동 거래 앱 개발기 (13) (3) | 2025.07.29 |
| 백테스트 기능 구현과 전략 검증 시스템 설계 – 코인 자동 거래 앱 개발기 (11) (4) | 2025.07.27 |
| 리스크 알림 시스템과 손실 경고 기능 구현 – 코인 자동 거래 앱 개발기 (10) (0) | 2025.07.26 |
| 자동 거래 기록과 수익률 추적 시스템 구축 – 코인 자동 거래 앱 개발기 (9) (0) | 2025.07.25 |