BTCUSDT 무기한선물. 국면(레짐)에 따라 전략을 바꾸는 규칙 시스템을 비용·펀딩 차감(net-of-cost) + point-in-time로 정직하게 재채점한 성적. 궁극 목표는 2개월 버킷마다 (+). 원본 44억 틱은 로컬, 여기엔 요약만.
지금 이 순간의 펀딩비 — 군중은 어디에 몰렸나
차트 지표는 가격만 본다. 무기한선물 펀딩비는 레버리지 롱/숏 쏠림을 드러내는 우리 유일한 심리 축이다. 아래는 Binance 공개 API에서 브라우저가 직접 가져온 실시간 값(1분마다 갱신).
국면 스위칭 규칙 시스템 — 반칙 없는 계좌로 재채점
100만원 · 일봉 · 수수료+슬리피지+펀딩비 실데이터 차감 · 이벤트 기반 계좌(실현 자본 사이징 · 합산 노셔널 ≤ 자본 강제) · 펀딩비 조기청산 · 추세 품질 필터(가짜 추세 휩쏘 차단, 현물 OOS 통과). 매 봉 레짐·펀딩·신호를 실시간 판별해 국면에 맞는 전략을 실행한다. 페이퍼 워커가 이 규칙 그대로 24/7 가동 중.
| 연도 | 완료 거래 | 실현 손익 | 연말 실현자본 | 수익률 |
|---|---|---|---|---|
| 2020 | 76 | +88만 | 188만 | +87.6% |
| 2021 | 57 | +112만 | 300만 | +59.8% |
| 2022 🐻 | 48 | +63만 | 363만 | +21% |
| 2023 | 58 | +56만 | 418만 | +15.4% |
| 2024 | 52 | -13만 | 406만 | -3% |
| 2025 | 50 | +110만 | 516만 | +27.2% |
| 2026 | 20 | +105만 | 621만 | +20.4% |
계좌 규칙: 이벤트 기반(진입/청산 시간순) · 사이징은 실현 자본만 참조(미실현 손익 미사용) · 합산 노셔널 ≤ 자본을 코드가 강제(위반 시 시뮬 중단) · 신호·전략·비용(0.12%)· 실데이터 펀딩비는 기존과 동일. 변동성 배수·3연패 스로틀·낙폭 비례 축소는 P0 감사 기각으로 제거. 24/7 페이퍼 워커가 이 규칙 그대로 가동 중. ⚠️ 전략 파라미터의 선택 편향은 남아 있으며 워크포워드·페이퍼 전방 검증 통과 전에는 검증된 기대값이 아님. 투자 조언 아님.
매 봉 실시간 판별 → 국면별 전략 → 결과 대기
매 봉 ADX+DI로 국면을, 펀딩비로 심리를 실시간 재계산(미리 라벨링이 아님 — 테스트로 증명). 매크로 곰(종가<EMA200 & 기울기↓)에선 롱 금지. 사이징은 거래당 자본 10%·최대 8개, 무레버리지(합산 노셔널을 코드가 자본 이하로 강제). 무기한 대기 대신 펀딩이 위협하면(롱 연 ≥+40%·숏 ≤−10%) 다음 봉 조기청산.
표본 외(OOS)·워크포워드·경로 분포로 거른 결과
워크포워드 (진짜 OOS)
구성 36조합을 과거로 고르고 미래로만 채점. 고정 구성 순수 OOS 연 +11.5%. 자주 재튜닝하면 오히려 피팅(WFE 0.08). 정직한 미래 기대: 연 +10%대~20%대 초반.
DSR (탐색 보정)
거래당 net Sharpe +0.3대, 탐색 60회를 정직 신고하고 깎아도 DSR>0.99. 거래 하나하나의 엣지는 우연이 아니다.
누수 없음 증명
레짐/신호를 전체 배열로 계산한 값과 바별로 하나씩 계산한 값이 비트 단위로 동일 — 미래참조 0. 실전 워커와 동일.
현물 2017~ (한계)
파라미터를 안 본 2018~19 현물에서 롱온리 −0.3%(생존만). 수익은 2020 이후 구간에 의존 — 전방(페이퍼) 검증이 최종 심판.
6h ~ 39h 스윕 — 일봉이 정점
같은 구성·파라미터(1d 튜닝값 고정, 재튜닝 0)를 6·9·12·24(1d)·27·36·39h에 그대로 적용한 견고성 시험. 궁극 목표(2개월 버킷) 기준 일봉(24h)이 봉우리 — 더 잘게(6~12h)도 더 굵게(27~39h)도 열등하다. 24시간이라는 자연 주기 + 펀딩 3회/일 정렬이 맞물린 자리로 보인다.
| 타임프레임 | 거래 | 최종(100만→) | CAGR | MDD | Sharpe | 2개월 버킷 | 최악 버킷 |
|---|---|---|---|---|---|---|---|
| 6h | 1474 | 366만 | 22.1% | −35.3% | 0.98 | 23/39 | -16.7% |
| 9h | 978 | 432만 | 25.3% | −36.5% | 1.09 | 23/39 | -13.9% |
| 12h | 705 | 398만 | 23.7% | −25.2% | 1.06 | 25/39 | -11.4% |
| 1d ★ | 389 | 569만 | 30.7% | −32.9% | 1.15 | 28/39 | -19.1% |
| 27h | 330 | 295만 | 18.1% | −28.5% | 0.81 | 23/39 | -15.6% |
| 36h | 238 | 304만 | 18.7% | −40.4% | 0.81 | 23/39 | -25.5% |
| 39h | 210 | 380만 | 22.8% | −30.1% | 1.01 | 23/39 | -19.3% |
ML로 이길 거래만 골라낼 수 있을까? — 아니오
진입 시점 피처(레짐·ADX·펀딩·변동성·RSI…)로 P(승)을 LightGBM으로 예측 → Purged K-Fold로 표본 외 평가. 저확률 거래를 걸러 버킷을 올리려 했으나 실패.
| 구성 | 거래 | 최종 | MDD | Sharpe | 버킷 | 최악 |
|---|---|---|---|---|---|---|
| 기준(전체) | 389 | 569만 | −32.9% | 1.15 | 28/39 | -19.1% |
| 필터 P≥0.45 | 259 | 331만 | −27.7% | 0.93 | 24/39 | -17.8% |
| 필터 P≥0.5 | 243 | 321만 | −27.9% | 0.92 | 23/39 | -17.8% |
| 필터 P≥0.55 | 212 | 269만 | −27.4% | 0.81 | 24/39 | -17.3% |
| 상위25% 레버2배 | 388 | 639만 | −51.4% | 0.94 | 26/39 | -32.7% |
기준(전체) 대비 어떤 필터도 2개월 버킷을 개선하지 못했고 오히려 줄었다(28→23~24). 노이즈 확신도에 레버리지를 걸면 최악 버킷이 −19→−33%로 깊어진다. → 이 피처들로는 "어느 거래가 이길지" 예측 불가. 시스템의 엣지는 개별 거래 선별이 아니라 규칙+펀딩청산+사이징 규율에 있다.
실데이터 (원본은 로컬, 요약만 표시)
2,373일 · 일봉 2,373개
2,182일 · 일봉 2,182개
왜 이 전략들인가 — TF별 net Sharpe
시스템에 쓰는 각 전략이 애초에 비용을 넘는지를 개별로 검증한 토대. 저빈도(일봉 근처)로 갈수록 거래당 이동이 왕복 비용을 넘어 엣지가 산다 — 이게 일봉을 메인으로 쓰는 이유다.
BTCUSDT
통과 2 / 20| 전략 | TF | 거래 | net Sharpe | DSR | 서브구간+ | 판정 |
|---|---|---|---|---|---|---|
| 돈치안 돌파 | 1w | 6 | 표본 부족 | — | ||
| 돈치안 돌파 | 1d | 145 | 0.2649 | 0.989 | 0.83 | 통과 |
| 돈치안 돌파 | 4h | 887 | 0.0726 | 0.002 | 0.67 | — |
| 돈치안 돌파 | 1h | 3,324 | -0.0557 | 0.000 | 0.17 | — |
| 볼린저 + CCI | 1w | 23 | 표본 부족 | — | ||
| 볼린저 + CCI | 1d | 244 | 0.0766 | 0.075 | 0.50 | — |
| 볼린저 + CCI | 4h | 1,352 | 0.0341 | 0.000 | 0.50 | — |
| 볼린저 + CCI | 1h | 5,769 | -0.0306 | 0.000 | 0.17 | — |
| Triple RSI + 50 EMA | 1w | 123 | 0.1534 | 0.471 | 0.67 | — |
| Triple RSI + 50 EMA | 1d | 1,145 | 0.1293 | 0.147 | 0.50 | — |
| Triple RSI + 50 EMA | 4h | 7,614 | 0.0385 | 0.000 | 0.67 | — |
| Triple RSI + 50 EMA | 1h | 29,622 | -0.0199 | 0.000 | 0.33 | — |
| ttm_squeeze | 1w | 5 | 표본 부족 | — | ||
| ttm_squeeze | 1d | 58 | 0.1120 | 0.354 | 0.50 | — |
| ttm_squeeze | 4h | 379 | 0.0182 | 0.003 | 0.50 | — |
| ttm_squeeze | 1h | 1,510 | -0.0660 | 0.000 | 0.17 | — |
| heikin_ashi | 1w | 20 | 표본 부족 | — | ||
| heikin_ashi | 1d | 126 | 0.1683 | 0.538 | 0.67 | 통과 |
| heikin_ashi | 4h | 730 | -0.0013 | 0.000 | 0.33 | — |
| heikin_ashi | 1h | 2,735 | -0.0773 | 0.000 | 0.00 | — |
DOGEUSDT
통과 2 / 20| 전략 | TF | 거래 | net Sharpe | DSR | 서브구간+ | 판정 |
|---|---|---|---|---|---|---|
| 돈치안 돌파 | 1w | 4 | 표본 부족 | — | ||
| 돈치안 돌파 | 1d | 99 | 0.1512 | 0.712 | 0.50 | 통과 |
| 돈치안 돌파 | 4h | 715 | 0.0935 | 0.255 | 0.50 | — |
| 돈치안 돌파 | 1h | 2,995 | 0.0051 | 0.000 | 0.33 | — |
| 볼린저 + CCI | 1w | 21 | 표본 부족 | — | ||
| 볼린저 + CCI | 1d | 215 | 0.1397 | 0.803 | 0.67 | 통과 |
| 볼린저 + CCI | 4h | 1,331 | 0.0662 | 0.001 | 0.67 | — |
| 볼린저 + CCI | 1h | 5,365 | -0.0099 | 0.000 | 0.33 | — |
| Triple RSI + 50 EMA | 1w | 98 | -0.0152 | 0.110 | 0.50 | — |
| Triple RSI + 50 EMA | 1d | 1,075 | -0.0030 | 0.000 | 0.33 | — |
| Triple RSI + 50 EMA | 4h | 6,865 | 0.0848 | 0.015 | 0.83 | — |
| Triple RSI + 50 EMA | 1h | 28,395 | 0.0285 | 0.000 | 0.50 | — |
| ttm_squeeze | 1w | 5 | 표본 부족 | — | ||
| ttm_squeeze | 1d | 58 | -0.0150 | 0.174 | 0.50 | — |
| ttm_squeeze | 4h | 336 | -0.0858 | 0.000 | 0.50 | — |
| ttm_squeeze | 1h | 1,416 | 0.0096 | 0.000 | 0.67 | — |
| heikin_ashi | 1w | 12 | 표본 부족 | — | ||
| heikin_ashi | 1d | 96 | 0.0407 | 0.247 | 0.67 | — |
| heikin_ashi | 4h | 620 | -0.0318 | 0.000 | 0.33 | — |
| heikin_ashi | 1h | 2,499 | -0.0425 | 0.000 | 0.00 | — |
이 프로젝트가 배운 것
자체 감사에서 헤드라인 숫자가 무너졌다 (P0)
+11,290% v4 를 우리 게이트로 재검사: ① 동시보유 합산 노셔널이 자본의 최대 237%(몰래 레버리지) ② 3연패 스로틀이 미청산(미래) 결과를 참조 — 실시간 구현 불가 ③ 실제 경로가 셔플 분포의 97백분위(운). 셋 다 적신호 → 전면 재산출.
반칙 없이 다시 재면 +469%가 진짜 (P1)
이벤트 기반 계좌(실현자본만·무레버리지 강제·미래참조 금지)로 재채점: 최종 569만(+469%)·CAGR 30.7%·MDD 32.9%·Sharpe 1.15. '모든 해 흑자'는 소멸(과적합 타깃이었다). 하지만 반칙 다 빼고도 플러스 — 뼈대는 진짜.
펀딩비 = 유일한 심리 지표 → 조기청산 채택
차트는 가격만 본다. 펀딩비는 군중 쏠림을 드러내는 센티먼트 축. 과열 롱(연 ≥+40%)·숏 크라우딩(≤−10%)에서 조기청산하니 2개월 버킷 27→28·Sharpe 1.05→1.15·MDD 38→33% 동시 개선.
레버리지·메타라벨링은 정직하게 기각
레버리지 2배(펀딩/승률/ML 확신 어느 게이트든)는 최악 버킷을 −19→−30%로 깊게 해 궁극목표와 상충. 메타모델 OOF AUC 0.49(무작위) — 어느 거래가 이길지 예측 불가. 규칙 시스템 유지.
추세 품질 필터 — 진단→개선이 OOS서 통과
패배 버킷 해부: 손실 주범은 triple_rsi 롱이 '가짜 추세'(ADX 높지만 초핑)에서 반복 손절. ADX 상승 중일 때만 진입하게 하니 현물 2018-19 진짜 OOS서 −2.4%→+33%·최악버킷 −16.5→−11.5%. 채택(최종 심판=페이퍼). 메타라벨링과 달리 원리가 일반화.
레짐은 매 봉 실시간 재계산 (누수 아님)
Wilder DMI·EMA·RSI 는 인과적이라 regime[t] 는 바 ≤ t 만 참조. '전체 배열 계산 == 바별 증분 계산'을 테스트로 증명. 미리 라벨링해두고 맞추는 게 아니다 — 워커도 봉마다 다시 판별.
1d 가 정점 — 짧아도 길어도 나빠진다
6·9·12·24(1d)·27·36·39h 를 재채점: 2개월 버킷 1d 28/39 ★ 가 최고, 양옆(12h 25 · 나머지 23)은 모두 열등. 엣지는 일봉에서 봉우리 — 24h(일 주기+펀딩 3회/일 정렬)가 특별. 더 잘게도 더 굵게도 답이 아님.
2020 이전 현물(진짜 OOS)에선 본전 — 한계 인정
파라미터를 전혀 안 본 2018~19 현물 구간에서 롱온리 −0.3%(생존은 함). 수익은 상당 부분 2020 이후 구간의 것. 궁극 목표(2개월 버킷) 현재 72% — 전방(페이퍼) 검증이 최종 심판.
용어 사전
리포트 곳곳의 용어 옆 ? 에 마우스를 올리거나(모바일은 탭) 하면, 그 자리에서 설명 팝업이 뜹니다. 아래는 전체 목록입니다.
CPCV
조합적 퍼지 교차검증데이터를 조각내 일부를 '안 본 시험문제'로 남기고 나머지로만 배운 뒤 채점 — 조합을 바꿔 여러 번.
공부한 문제로 시험 보면 당연히 100점(암기=과적합). 진짜 실력은 안 본 문제로 잰다.
DSR
디플레이티드 샤프'진짜 실력이야?' 점수. 여러 번 시도할수록 운으로 잘 나온 걸 깎아낸다.
로또 100번 사면 한 번쯤 당첨되지만 실력은 아니다. 보통 0.5 넘으면 '실력 가능성'.
PBO
과적합 확률'과거엔 됐는데 실제론 꽝일 확률'을 0~1로. 낮을수록 좋다.
0.5 근처면 동전 던지기 수준. 여기선 '서브구간 양수 비율'로 견고성을 대신 본다.
net Sharpe
비용차감 샤프수수료·슬리피지(왕복)를 뺀 뒤의 위험 1단위당 수익. 양수여야 실제로 돈이 된다.
무비용 성과는 환상. 거래당 이동이 비용보다 커야 살아남는다. 0.2면 낮은 편.
MDD
최대낙폭 · Max Drawdown자산이 고점 대비 가장 크게 쪼그라든 폭. 클수록 위험.
100만원이 한때 30만원까지 녹았다 회복하면 MDD 70%. 총수익보다 이걸 먼저 본다.
OOS
표본 외 · Out-Of-Sample전략을 만들 때 '안 보여준' 기간으로 낸 실전 성적.
시험문제 미리 안 보고 친 점수. 여기서도 양(+)이어야 진짜 실력.
PSR
확률적 샤프비율이 성과(샤프)가 0보다 클 '진짜' 확률.
샤프가 우연히 양수로 나왔을 가능성을 확률로 환산한 것. 높을수록 좋다.
워크포워드
Walk-Forward Analysis과거 구간에서만 규칙을 고르고, 그 뒤 '안 본' 구간으로 채점하기를 굴려가며 반복하는 검증.
모의고사(과거)로 공부법을 정하고 본시험(미래)으로만 점수를 매기는 것. 본시험 점수가 진짜 실력.
청산(종료)
close / exit열어둔 포지션을 닫는 것(팔거나 되사기). 강제청산(liquidation)과 완전히 다르다 — 우리는 무레버리지라 강제청산 자체가 없다.
10만원어치 산 걸 파는 것. 파는 순간 10만 ± 그동안의 가격변동을 돌려받지, 10만을 통째로 날리는 게 아니다. 손절도 손실을 작게(평균 약 1.3만) 막고 닫는 것.
펀딩비
funding rate무기한선물에서 8시간마다 롱↔숏이 주고받는 수수료. 롱이 많으면 롱이 숏에 지불(양수).
군중이 어느 쪽에 몰렸는지 보여주는 유일한 심리 지표. 우리 시스템의 센티먼트 축.
2개월 버킷
bimonthly bucket달력을 2개월씩 잘라 각 구간의 자본 증감(+/−)을 세는 것. 궁극 목표는 '전 버킷 +'.
한방 대박이 아니라 두 달마다 꾸준히 플러스인지 보는 잣대. 우리 프로젝트의 핵심 아젠다.
point-in-time
PIT (미래 미참조)각 시점의 판단이 그 시점까지의 데이터만 쓰는 것. 미래를 훔쳐보면 백테스트가 거짓이 된다.
레짐·신호를 매 봉 실시간으로 다시 계산 — 미리 라벨링해두고 맞추는 게 아니다(누수 금지).
AUC
Area Under ROC분류 모델이 승/패를 얼마나 잘 가르는지. 0.5=무작위(찍기), 1.0=완벽.
0.5 근처면 그 모델은 아무 것도 못 맞히는 것. 우리 메타모델이 0.49라 채택 안 함.
Purged K-Fold
purged cross-validation거래의 보유구간이 겹쳐 생기는 누수를 제거한 교차검증(López de Prado). 겹치는 학습표본 삭제+엠바고.
시험 범위와 겹치는 예습자료를 빼고 채점 — 미래 정보로 부풀린 점수를 막는다.
승률
win rate전체 거래 중 이긴 거래의 비율.
추세추종은 승률 40%라도 크게 벌 때 크게 벌어 이익. 승률 ≠ 수익.
서브구간+
sub-period positive전체 기간을 여러 토막 내, 그중 이익 난 토막의 비율.
특정 한 해만 잘한 게 아니라 여러 구간서 고르게 벌었나 보는 견고성 척도(PBO 대용).
레짐(국면)
market regime시장 상태 — 추세장(한 방향)·횡보장(왔다갔다)·중립.
같은 전략도 국면 따라 먹히고 안 먹힌다. 국면에 맞춰 전략을 매칭한다.
ADX
평균방향지수추세가 얼마나 강한지 0~100으로. 높으면 추세, 낮으면 횡보.
여기선 ADX≥25 추세장 / ≤20 횡보장으로 국면을 나눈다.
왕복 비용
round-trip cost한 번 사고팔 때 드는 총비용 = (수수료 + 슬리피지) × 2.
여기선 0.12%. 거래당 가격 이동이 이보다 커야 남는다.
슬리피지
slippage주문 낸 가격과 실제 체결 가격의 차이(대개 불리하게).
호가가 움직여 생각보다 비싸게 사고 싸게 팔리는 손실.
net-of-cost
비용 차감수수료·슬리피지를 다 뺀 뒤의 순성과.
비용 전 성과는 환상. 뺀 뒤에도 양(+)이어야 실제 돈.
자산곡선
equity curve시간에 따라 자본이 어떻게 늘고 줄었나 그린 선.
우상향이면 성장, 중간에 파인 골짜기가 MDD.
베팅 비중
bet fraction매 거래에 자본의 몇 %를 거나(여기선 예시 10%).
풀 베팅은 파산 위험 — 일부만 거는 게 생존 원칙.
n_trials
시행 수몇 가지 조합을 시도했나. 많이 시도할수록 우연히 좋아 보이는 게 생겨 DSR이 깎아낸다.
10번 돌리면 그중 최고는 운일 수 있다 — 그래서 시행 수를 성적에 반영.
통과 판정
passnet DSR≥0.5 · 비용 후 net+ · 서브구간≥0.5를 모두 만족.
참고용 신호일 뿐. 실제 채택·라이브는 사람이 최종 결정한다.
ccxt
거래소 연결 라이브러리바이낸스 등 거래소에 주문을 넣어주는 파이썬 어댑터.
거래소 API를 직접 안 짜도 '매수/매도'를 대신 전달. 지금은 안 씀 — 실주문 단계에서만.
Testnet
테스트넷거래소가 주는 '가짜 돈' 모의 거래 환경.
실제 자금 0으로 시스템이 실거래처럼 도는지 점검. 라이브 전 필수 관문.
페이퍼(모의)
paper trading실제 주문 없이 '샀다 치고' 자산 변화만 계산.
코드 배관을 실주문 위험 없이 점검하는 단계. 지금 ③이 이것.
CAGR
연복리 수익률여러 해 수익을 '해마다 몇 %씩 복리로 불었나'로 환산한 값.
6년에 3배면 CAGR ≈ 20%/년. 들쭉날쭉한 성과를 하나의 연율로.
복리
compounding번 돈을 다시 원금에 더해 굴리는 것 — 이자에 이자가 붙음.
월 1.5%씩 1년이면 단리 18%가 아니라 복리로 약 19.6%.
동적 달러 바
dollar bar시간마다가 아니라 거래가 일정 금액 쌓일 때마다 캔들 1개.
고빈도라 거래당 이동이 작아 비용에 취약 → 지금은 시간봉을 주력, 달러바는 옵션.
타임프레임(TF)
timeframe캔들 하나의 시간 길이(5분~주봉). 저빈도일수록 거래당 이동↑ → 고정비용 넘기 쉬움.
핵심 발견: 에지는 TF(홀딩 기간)의 함수다.