전략별 수익률 분석 및 시각화 – 자동매매 전략의 성과 비교 (17)

2025. 8. 2. 05:56프로젝트 (Project)/바이낸스 코인 자동거래

반응형

17. 전략별 수익률 분석 및 시각화 – 자동매매 전략의 성과 비교

자동 거래 시스템을 일정 기간 운영했다면, 이제 중요한 단계는 전략별 성과 분석입니다. 수익률이 높은 전략과 낮은 전략을 비교하고, 성능이 떨어지는 전략은 제거하거나 개선하는 것이 지속적인 수익을 위한 핵심 포인트입니다.


17-1. 전략 로그를 수익률 기준으로 정리

우리는 앞선 시리즈에서 거래 내역을 DB나 로그 파일에 저장하는 구조를 만들었습니다. 이번에는 strategy별로 누적 손익(PnL)을 집계해 시각화해보겠습니다.


# 예시: SQLite 또는 CSV에서 불러온 거래 데이터
import pandas as pd

df = pd.read_csv("tradelog.csv")  # 'strategy', 'pnl', 'exit_time' 컬럼 포함

# 전략별 누적 손익
summary = df.groupby("strategy")["pnl"].sum().reset_index()
summary = summary.sort_values(by="pnl", ascending=False)

17-2. 수익률 시각화 (막대 그래프)


import matplotlib.pyplot as plt

plt.figure(figsize=(10, 5))
bars = plt.bar(summary["strategy"], summary["pnl"], color="#d14124")
plt.title("전략별 누적 수익률")
plt.ylabel("수익 (USDT)")
plt.xticks(rotation=30)

# 각 bar 위에 수익 표시
for bar in bars:
    yval = bar.get_height()
    plt.text(bar.get_x() + bar.get_width()/2.0, yval + 1, f"{yval:.2f}", ha='center', va='bottom')

plt.tight_layout()
plt.savefig("strategy_pnl_chart.png")  # 블로그 이미지로도 활용 가능
plt.show()

이렇게 시각화를 통해 어떤 전략이 얼마나 효율적으로 작동했는지 쉽게 파악할 수 있습니다.


17-3. 고도화 팁

  • 기간 필터링: 최근 7일, 월간 수익률 등 조건 추가
  • 평균 수익률 및 거래 횟수도 함께 표시
  • 시각화 종류 확장: 누적 라인 차트, Pie 차트로 전략 점유율 표시

이 분석을 통해 실질적으로 도움이 되는 전략만 남기고, 미래 전략을 개선하는 기준을 마련할 수 있습니다.


마무리 및 다음 편 예고

이번 편에서는 전략별 수익률을 시각화하고 비교 분석하는 방법을 알아봤습니다. 다음 편에서는 과거 데이터를 활용한 백테스트 시스템 구축을 주제로 실전 전략의 검증 방법을 다뤄보겠습니다.

 

반응형