코인 선물 자동매매 봇 7일차 — 38일 백테스트 후 전략 전면 개편 (다슬롯 정액 모드 도입)
오늘은 거래 0건. 그런데 가장 큰 변화가 있었다. 6일간 굴려본 1포지션 + 3% 복리 전략을 38일치 데이터로 백테스트 돌려보고, 결과 보고서 결국 구조를 갈아엎기로 했다.
핵심 변화: A 전략(라이브)은 1포지션 복리 → 10슬롯 정액으로, B 전략(페이퍼)은 진입조건 강화 (4% 펌프 + 양봉 2연속 필수). 두 모드를 동시에 돌려서 어느 쪽이 실전에서 강한지 1~4주간 검증할 계획.
오늘은 거래 차트 대신 백테스트 숫자와 변경 근거를 정리한다. 6일치 운영 + 38일치 시뮬 데이터로 전략을 다시 짠 기록.
⏱️ 6일 운영 결과 회고 (2026-04-19 ~ 04-25)
라이브 6일간 거래 130여 건. 승률은 24%대, 누적은 양수에서 마감. 1:4 손익비 전략의 이론치(승률 20%만 넘어가도 +EV)와 거의 일치하는 그림. 다만 몇 가지 패턴이 눈에 들어왔다:
- 만성 패자 코인: MOVR, SIREN, BAS, PROM 같은 일부 알트는 진입할 때마다 거의 SL로 끝나는 경향. 코드엔 블랙리스트 안 박았다 — 과거 데이터 기준 빼는 건 hindsight bias라서.
- 신호 빈도 vs 1포지션 제약: 1포지션 보유 중일 때 다른 강한 신호 들어와도 못 잡는 케이스가 자주 보였다. 시그널 EV가 양수라면 잡을 수 있을 만큼 잡는 게 답.
- 빠른 SL 효과 vs 회수 가능성: 가끔 -1.5% 즈음에서 손절 맞고 곧장 되돌아가는 케이스. "손절이 너무 빠른가?" 의심됐는데, 데이터가 답을 알려줬다.
⏱️ 38일 백테스트 — 가설 3개 검증
가설 1: 양봉 시퀀스 low를 SL로 쓰면 노이즈 손절 줄지 않을까?
121심볼 38일 데이터로 비교. 결과는 예상 반대.
| SL 규칙 | 누적 PnL | PF | MDD | |:--|--:|--:|--:| | 고정 -2% | +$5,617 | 1.33 | 75.9% | | 고정 -3% | +$734 | 1.29 | 67.9% | | greenSeq cap-3% | +$697 | 1.30 | 66.7% | | greenSeq cap-5% | +$115 | 1.16 | 63.6% | | greenSeq cap-8% | +$103 | 1.14 | 49.7% |
고정 -2%가 압도적. 원인: SL 거리를 늘리면 포지션 사이즈도 줄여야 리스크 일정 — 그러면 익절 금액도 함께 줄어 1.3:1 손익비로 떨어진다. 손익분기 승률이 44%로 올라가는데 실제는 38%만 달성. 결론: 짧은 SL은 노이즈가 아니라 자본 보존 장치였다.
가설 2: th=4% + 양봉 2연속 강한 필터로 좋아질까?
| 조건 | PnL | PF | MDD | 거래수 | |:--|--:|--:|--:|--:| | cnsc≥2 th4% vM2 | +$19,656 | 1.33 | 35.6% | 524 | | cnsc≥1 th4% vM2 | +$17,824 | 1.41 | 51.4% | 565 | | cnsc≥0 th3% vM2 (현재) | +$14,555 | 1.37 | 53.0% | 571 |
1포지션 + 복리 모드에선 강한 필터가 PnL 1위. 다만 다슬롯에선 결과가 뒤집힌다.
가설 3: 다슬롯으로 모든 시그널 캡처하면?
121심볼 38일 동시 진입 가능 분포 (시간 가중):
| 동시 슬롯 | 시간 비율 | |:--|--:| | 0개 | 84% | | 1개 | 9% | | 2개 | 4% | | 3개+ | 2% | | 5개+ (이벤트) | 0.6% | | 10개+ 동시 | 0.15% (38일 중 6시간) |
대부분 시간은 1포지션도 충분. 이벤트 시점(BTC 큰 무브 + 알트 동시 펌프)에만 다슬롯이 의미. 5~10슬롯이 sweet spot, 그 이상은 자본 묶임.
⏱️ 결정 — A는 다슬롯 정액, B는 1포지션 복리
A 전략 (Bitget 라이브):
- 10슬롯, 슬롯당 $2 SL / $8 TP 정액 (4:1 RR 고정)
- 진입 조건은 그대로 두고 (
th=3%, cnsc=0) 다슬롯이라 모든 시그널 캡처 - 슬롯당 마진 $10 (10x 레버리지) → 자본 $100으로 풀 가동
- isolated 마진 (슬롯간 격리), 24h 강제청산 도입
- 최소 주문량 미달 시 minQty fallback (현재 30M 유니버스 19개 코인 모두 fallback 미발생 확인)
- WS 멀티심볼 모니터: 활성 슬롯 심볼만 동적 subscribe (단일 연결로 multiplexing)
B 전략 (Binance 페이퍼):
- 진입 조건 강화:
threshold=4%, consec_up_min=2추가 - SL/TP/Risk 동일 (
-2%/+8%/3%), 1포지션 풀 사이즈, 복리 - 페이퍼 시드 $100 fresh start
A는 "선형 성장 + 변동성 낮음", B는 "지수 성장 + 큰 변동". 누가 강한지는 forward test로 확인.
⏱️ 코드 개편
vol_scalper.py1689줄로 확장 (단일 → 다슬롯)
- state["position"] → state["slots"] (10개 리스트), 슬롯별 독립 추적 - scan_for_signal(want_n=N) 옵션 — top-N 시그널 동시 반환 - execute_entry(signal, state, slot_idx) 슬롯 명시 진입 - _check_24h_timeout() 24h 강제청산 - _set_isolated_margin(symbol) Bitget API 호출 - WS 멀티심볼 (_ws_run_multi, _ws_check_tick, _handle_ws_exit_slot)
- 대시보드: 슬롯 칩 UI (수익률 + 색상 — 초록/빨강), 브라우저 타이틀 동적 갱신
- 모니터봇: BOTS desc 갱신, 슬롯 표시, /status_a/status_b 슬래시 메뉴 갱신
하루 마감 — 거래 0건, 신규 운영 체제 시작
| 지표 | 값 | |:--|:--| | 오늘 거래 | 0건 (전략 전환일) | | 백업된 라이브 거래 | 130여 건 (이전 1포지션 모드) | | 새 시작 자본 (A 라이브) | $170 (Bitget 잔고) / 슬롯당 $10 마진 | | 새 시작 자본 (B 페이퍼) | $100 | | 현재 활성 슬롯 | 0/10 |
오늘의 핵심 관찰:
- 1포지션 + 복리는 인간 직관에 가깝지만, 다슬롯 + 정액은 동전 던지기를 더 많이 하는 구조. 38일 데이터 평균 EV가 양수라면 표본 크기를 늘리는 게 정도.
- 백테스트 PnL이 18~20배(180x)로 비현실적으로 높게 나오는 건 레버리지 + 복리 효과. 상대 비교용으로만 의미 있고 실전은 백테스트의 30~50% 수준 잡아야 함.
- "양봉 시퀀스 low까지 SL을 넓히는" 직관은 1.3:1 손익비로 깎이면서 무너졌다. 짧은 SL이 살린 트레이드보다 길게 둔 SL이 죽인 트레이드가 더 많다.
- 그동안 1포지션 룰이 평균 11% 시간만 점유 중이었다 — 89%가 놀고 있던 자본. 다슬롯이 이걸 메운다.
다음 1주 검증 포인트
- A 슬롯 평균 활성률 (백테스트 예측 11% vs 실제)
- A 누적 PnL vs B 누적 PnL (정액 vs 복리)
- 실 슬립 vs 백테스트 슬립 모델 (SL +0.12%, TP -0.28%) 차이
- WS 누락 → 폴링 백업 발동 빈도
- 24h 강제청산 발동 빈도
내일부턴 거래 결과로 채워진 매매일지가 다시 시작될 것. 새 카운터에서 출발 — 깨끗한 0/0/0/$0.00.
오늘의 숫자
체결 내역
| 시각(KST) | 심볼 | 진입 | 청산 | 결과 | 손익$ | 손익% |
|---|---|---|---|---|---|---|
| 00:30:04 | KATUSDT | 0.02285 | 0.02238 | SL | $-6.94 | -2.06% |
| 01:57:03 | LABUSDT | 0.71353 | 0.69711 | SL | $-7.49 | -2.30% |
| 02:33:03 | CHIPUSDT | 0.0914 | 0.0895 | SL | $-6.55 | -2.08% |
| 10:06:03 | LABUSDT | 0.7261 | 0.71115 | SL | $-6.28 | -2.06% |
| 10:12:03 | APEUSDT | 0.2021 | 0.2183 | TP | +$22.41 | +8.02% |
| 11:24:03 | BSBUSDT | 0.44358 | 0.43382 | SL | $-7.21 | -2.20% |
| 11:54:03 | BSBUSDT | 0.4965 | 0.48495 | SL | $-7.35 | -2.33% |
| 12:54:03 | TRADOORUSDT | 1.104 | 1.084 | SL | $-5.57 | -1.81% |
| 13:12:03 | CHIPUSDT | 0.07983 | 0.07821 | SL | $-6.04 | -2.03% |
| 13:45:04 | TRADOORUSDT | 1.184 | 1.152 | SL | $-7.71 | -2.70% |
| 14:27:03 | TRADOORUSDT | 1.273 | 1.243 | SL | $-6.48 | -2.36% |