📦 영웅문4 OpenAPI + Python 완전 정복 - 7단계: 자동 실행 + .EXE 배포 + 스케줄링 자동화

반응형

OpenAPI + Python 완전 정복 - 7단계: 자동 실행 + .EXE 배포 + 스케줄링 자동화

✅ 7단계 개요: 진짜 자동매매로 가는 마지막 걸음

지금까지 만들었던 모든 기능:

  • 전략 설정
  • 실시간 시세 감지
  • 조건검색 연동
  • 자동 주문 실행
  • 수익률 분석
  • 로그 저장 및 알림 전송

이제 이걸 버튼 클릭 하나로 실행하거나,
매일 자동 실행되도록 스케줄링할 수 있어야 완성입니다.


🛠️ STEP 1. 실행 전용 Python 메인 파일 만들기 (run_manual.py)

python

# run_manual.py
from strategies import run_strategy
from utils.discord import send_discord_alert

if __name__ == "__main__":
    code = "005930"
    strategy = "MA 골든크로스"
    start_date = "2024-01-01"
    
    df = run_strategy(code, strategy, start_date)
    
    df.to_csv(f"logs/{code}_{strategy}.csv")
    
    cum_return = round(df['cumulative'].iloc[-1]*100 - 100, 2)
    send_discord_alert(f"✅ 자동매매 완료 | 전략: {strategy} | 수익률: {cum_return}%")

✅ 이 파일만 실행하면 전체 자동매매가 한 번에 수행됩니다.


🧪 STEP 2. .exe 파일로 배포하기 (PyInstaller 사용)

bash

pip install pyinstaller
pyinstaller --onefile run_manual.py
  • 실행 파일이 dist/run_manual.exe로 생성됩니다.
  • 실행 시 Python 없이도 작동!

📂 생성된 폴더 구조 예시:

📁 dist/
└── 📄 run_manual.exe

📁 logs/
📄 run_manual.py
📄 strategies.py
📄 utils/

📷 실행 예시 (cmd):

bash

dist\run_manual.exe

⏰ STEP 3. 매일 자동 실행 (Windows 작업 스케줄러)

🔹 자동 실행 예약

  1. Windows → 작업 스케줄러 실행
  2. 기본 작업 만들기 클릭
  3. 트리거: 매일 오전 9시
  4. 동작: 프로그램 시작 → run_manual.exe 선택
  5. 저장

📷 작업 스케줄러 설정 화면


🔄 STEP 4. 전략 자동 변경 + 반복 실행 (선택)

🔹 여러 전략 자동 반복 실행 예시

python

strategies = ["MA 골든크로스", "RSI 30 이하", "볼린저밴드"]
for s in strategies:
    df = run_strategy("005930", s, "2024-01-01")
    df.to_csv(f"logs/005930_{s}.csv")
    send_discord_alert(f"[{s}] 수익률: {df['cumulative'].iloc[-1]}")

🔔 STEP 5. 에러 감지 및 알림 기능 추가 (옵션)

python

try:
    # 전략 실행
    ...
except Exception as e:
    send_discord_alert(f"❌ 자동매매 실패: {str(e)}")

✅ 전체 자동화 흐름 요약

📷 자동매매 전체 흐름도 (.exe + 스케줄링 포함)

자동매매 전체 흐름도

키워드: 파이썬 자동매매 배포, .exe 만들기, 자동매매 자동 실행, Python 스케줄러, 키움증권 자동매매 완성

반응형