1. 최종 권장 구성
전략 이름: (미정 — 쿼터샷 후속 후보) 유니버스: Bybit USDT 선물 539종 타임프레임: 15분봉 (진입/청산)
일일 필터 (D-1 기준, UTC 자정 갱신)
- Top 20 by daily volume ∩ Top 20 by daily price change
진입 조건 (15m 봉 기준)
- EMA10 > EMA20 > EMA50 (정배열 → LONG) 또는 EMA10 < EMA20 < EMA50 (역배열 → SHORT)
- 세 EMA 모두 직전 봉 대비 같은 방향 기울기
- LONG: 종가 > EMA10 / SHORT: 종가 < EMA10
- 현재 봉 거래량 ≥ 직전 20봉 평균 × 3
- MACD 히스토그램(12/26/9): LONG > 0, SHORT < 0
- 해당 심볼이 당일 Hot Coin 필터에 포함되어야 함
자산 관리 및 청산
- 레버리지:
min(50x, 20 / |entry - EMA50|%) - 예: EMA50까지 거리 5% → 레버리지 4배 (손실 목표 -20%)
- 최소 거리 0.4% 미만 시 스킵 (cap 초과 노이즈)
- 손절: 종가가 진입 시점 EMA50 가격 침범 시 전량 청산
- TP1: 가격이 "거리 × 2" 이동 → 절반 청산 (ROI +40%) + 나머지 50% 포지션의 SL을 진입가로 이동 (Breakeven)
- TP2: 종가 기준 EMA10이 EMA20을 반대 방향 침범 → 나머지 청산
- 자본 배분: 동시 최대 포지션 3개 / 포지션당 마진 = 당시 자산의 10% (복리) / 총 노출 = 자산의 30% × 평균 레버리지 ≈ 450~600%
- 수수료 가정: Bybit Taker 0.055% × 2 (왕복) × 레버리지
2. 전략 진화 과정
v1 (폐기) — EMA 10/20/60 + 거래량 3배
- 2026-04-09 백테스트 후 폐기
- 전체 539종 기댓값 −0.02%, 알트 LONG 구조적 손실 (−1.36%)
- 상세:
memory/strategy_ma_ribbon_deprecated.md(아티팩트 전량 삭제)
v2 — EMA 10/20/50 + 3MA 기울기 + MACD + SL −20%
v1의 구조적 개선안:
- MA slow 60 → 50 / 진입 조건 강화: 3개 MA 모두 같은 방향 기울기
- MACD 히스토그램 필터 추가 / SL 손실 목표 -30% → -20%
- 레버리지 = 20 / 거리% (v1의 30/거리% 대비 완화) / TP1 +60% → +40% (손익비 1:2 유지)
- 메이저 10종 결과: wr 38.2%, avgRoi +1.43%, 최대 손실 -25.5% (v1의 -35.5%에서 개선)
v3 — v2 + HTF 필터 + Breakeven Stop
- 1시간봉 EMA 10/20/50 정배열·기울기 일치 시에만 진입
- TP1 히트 시 SL을 진입가로 이동 (Breakeven)
- 메이저 10종 결과: 시그널 5,248 → 2,976 (−43%), avgRoi +1.43% → +1.06% (악화)
- 교훈: HTF 필터가 역효과였다. "1h 정배열 완성"은 추세 후반부 진입을 의미해 fake breakout에 취약함.
v2.5 — v2 + Breakeven만 유지 (HTF 제거)
최종 본체. Hot Coin 필터와 조합하여 사용 결정.
3. Rolling Adaptive Filter 실험 (폐기)
아이디어: "직전 N개 시그널 성과가 좋을 때만 해당 심볼 거래"
| Window | 베이스라인 | 최선 필터 | 최선 결과 |
|---|---|---|---|
| 10 | +1.34% | avgRoi > 2% | +2.39% (1,648 trades) |
| 20 | +1.17% | avgRoi > 0 | +1.09% (악화) |
| 50 | +1.02% | avgRoi > 2% | +0.58% (악화) |
- 발견: W=10 유일하게 개선. 긴 window는 느린 반응으로 레짐 변화 놓침.
- 폐기 사유: Hot Coin 필터와 아이디어 중복 및 적용 시 원인 분석 복잡화.
4. Hot Coin Rotation 발견
가설 및 설계
- "그날의 가장 핫한 코인"에서만 거래하면 승률·기댓값이 개선될 것.
- 매일 UTC 자정 기준, 전일(D-1) 데이터로 roster 생성 (lookahead 방지)
- 기준: 거래대금 / 상승률 / 변동폭 × Top 10/20/50 교집합·합집합 조합
1차 결과 (180일, 동시 무제한)
- No filter (baseline): wr 35.5% / avgRoi +0.42%
- Top 20 by volume: wr 38.8% / avgRoi +2.06%
- Top 20 by chg: wr 35.1% / avgRoi +0.40%
- Top20 vol ∩ Top20 absChg: wr 42.1% / avgRoi +3.39% ⭐
주요 관찰
- 거래대금 기준이 압도적: 상승률 단독은 피크 근처 진입으로 되돌림에 취약함.
- 교집합(vol ∩ absChg)이 최고 품질: "유동성 + 변동성" 둘 다 있는 활력 시장 선별.
5. Walk-Forward 검증 (결론 뒤집힘)
5.1 180일 Walk-Forward (IS 90일 / OS 90일)
동시 포지션 3 기준 결과입니다.
- Baseline: IS +75.3% / OS −63.1% (실패)
- Top 20 vol: IS +129% / OS +242% (유지, 최고)
- Top20 vol ∩ absChg: IS +148.6% / OS +28.8% (감쇠 −81%)
앞서 "최고 균형"으로 본 교집합 필터가 OS에서 급감했습니다. 이는 인샘플(IS) 구간의 특수성에 기댄 후향 편향이었음이 드러났습니다.
5.2 1년 Walk-Forward (IS 6개월 / OS 6개월)
검증 기간 확장 후 결과가 다시 뒤집혔습니다.
| 필터 | IS 수익률 / MDD | OS 수익률 / MDD | 판정 |
|---|---|---|---|
| Top 20 vol | +22.1% / 52% | +362.7% / 52% | 유지 (IS 약함) |
| Top20 vol ∩ chg | +121.5% / 66% | +192.6% / 46% | 최종 챔피언 ⭐ |
5.3 검증 결론 비교 및 교훈
- 왜 결론이 뒤집혔나: 180일 WF의 IS 구간(3개월)이 너무 짧아 특정 시장 상황을 진리로 오인했습니다. 1년으로 확장하자 vol ∩ chg가 모든 구간에서 가장 강력한 강건성을 보였습니다.
- 교훈: Walk-forward 자체도 검증 길이가 충분해야 신뢰할 수 있습니다. 6개월×2가 진정한 검증의 기준입니다.
6. 최종 성과: Top20 vol ∩ chg
1년 전체 성과 (1,250 trades) 상세 수치:
- IS (2025-03-31 ~ 2025-10-04): 643회 거래 / wr 36.1% / avgRoi +1.83% / 수익률 +121.5% / MDD 65.6%
- OS (2025-10-04 ~ 2026-04-09): 607회 거래 / wr 40.9% / avgRoi +2.56% / 수익률 +192.6% / MDD 46.4%
특이사항: 모든 지표가 OS에서 개선되었습니다. 이는 과적합이 없음을 의미하는 매우 강력한 신호입니다. 방향성(chg) 필터가 추세 추종 전략과 최고의 궁합을 보였습니다.
7. 남은 Risk 및 한계
- MDD 과소평가: 현재 MDD는 확정 수익 기준이므로, 실전에서는 미실현 손실을 포함해 5~10%p 더 높게(70~75%) 잡아야 합니다.
- Bull Market 편향: 검증 기간이 강세장 중심이므로 bear market에서의 성과 보장이 불가합니다.
- 병목 현상: 동시 포지션 3개 제한으로 인해 피크 타임에 유효 신호가 스킵될 수 있습니다.
8. 구현 완료 사항 (2026-04-10)
작성된 시스템 파일
- DB 스키마:
hot_roster,hot_positions등 5개 전용 테이블 구축 - API 레이어:
config.php포함 총 10개 엔드포인트 (n8n 연동 최적화) - 대시보드:
html/hot/index.php(실시간 통계, 로스터 패널, 3슬롯 포지션 뷰) - n8n 가이드: RosterBuilder, Scanner, Monitor 워크플로우 설계 및 JS 코드 포함
배포 전 사용자 수동 액션
- DB 반영:
hot_tables.sql실행 및 테이블 생성 확인 - API 키 교체:
config.php내 Bybit 실제 API Key/Secret 입력 - Dry-run 단계:
HOT_POSITION_SIZE_PCT를 1.0으로 설정하고 2일간 관찰 - 실전 소액: 1~2주간 실측 성과가 백테스트와 일치하는지 확인 후 사이즈 복귀
9. 다음 결정사항
- 추가 검증: 4개월×3 rolling WF 및 2년 데이터 확장(Bear regime 포함) 검토
- 기존 전략 관계: 테일샷(/alt2/) 폐기 확정, 쿼터샷 유지 및 새 전략 병행
Status: 본체 전략 및 필터 검증 완료. 실전 시스템 코드 구축 완료. 배포 준비 완료. ✅