BTC 변곡점·강추세 종료 특징 연구
v4_btc · 2026-04-29 · BTCUSDT Bybit perp · 3년 5m 315,360개 + 15m/1h/4h resample · NQ 메소드 cross-asset 적용
NQ v4_path 의 사후 식별(retrospective profiling) 메소드를 BTC 에 적용한 결과 — 4 TF (5m/15m/1h/4h) 모두 변곡점·추세종료 식별 AUC 0.863~0.952 통과. KST 23시 (NY 시장 첫 시간) 가 BTC 의 1순위 변곡 hot spot (lift 2.5x — NQ 의 KST 21시 NY pre-open 과 다름). 조건부 셀 결합 시 sharpe +0.7+ / 승률 80%+. top features (위/아래꼬리 + 사전 5봉 + 스토캐 D) 가 NQ 와 동일 — 메소드는 자산 독립적 edge. 단 BTC 에선 거래량 시그널 (vol_z, rvol) 비중이 NQ 보다 큼 (24/7 시장 특성).
BTC 4 TF Pre-only AUC (사전 features 만)
1. 배경
NQ v4_path 연구 가 PASS (AUC 0.875~0.954, 셀 결합 승률 75-89%). 같은 사후 식별 메소드를 BTC 에 적용해 cross-asset edge 검증. 자산 간 fingerprint 차이로 BTC 만의 특성 발견 + 메소드 보편성 입증.
NQ → BTC 적응 (방법론 차이)
| 항목 | NQ | BTC |
|---|---|---|
| 거래 시간 | 22h/day, RTH 우선 | 24/7 (세션 필터 제거) |
| 1순위 시간대 | KST 21시 lift 2.0x (NY pre-open) | KST 23시 lift 2.53x (NY mid-morning) |
| 변동성 | ATR 5-30 pt | ATR 100-2000+ USD (% 정규화) |
| 데이터 | 17.4년 1m+5m (5.8M) | 3년 5m (315K) + 15m/1h/4h resample |
| 장세 정의 | EMA200 24시간 기울기 | 동일 룰 — 7일 윈도 (BTC 사이클 특성) |
2. 데이터·방법론
| 출처 | Bybit linear BTCUSDT/USDT 영구 선물 (ccxt fetch) |
|---|---|
| 기간 | 2023-04-30 ~ 2026-04-29 (3년) |
| 5m 봉 | 315,360 개 |
| 15m 봉 | 105,120 개 (resample) |
| 1h 봉 | 26,281 개 (resample) |
| 4h 봉 | 6,571 개 (resample, 소표본 주의) |
| 가격 범위 | $24,242 ~ $125,981 (BTC 사이클: 2023 약세 → 2024 강세 → 2025 횡보 → 2026) |
이벤트 / Features
NQ v4_path 와 동일한 룰 / 동일한 22 features (asset-independent edge 검증 위해):
- 변곡점 (inflection): ZigZag 1.5×ATR + back leg ≥ 2.0×ATR + forward leg ≥ 2.0×ATR
- 강한 추세종료 (trend_end): leg ≥ 3.0×ATR over ≥ 5 bars
- 22 features: 보조지표 9 (ATR/RSI/MFI/Stoch/BB/RVOL/vol_z) + 장세 2 + 봉 모양 3 + SR 거리 5 + 사전 변동 3
3. 결과
3.1 사전 features 만으로 AUC × 4 TF — H1·H2·H3 ALL PASS ✓
표본외 6개월 (2025-10-31 ~ 2026-04-29), 그래디언트 부스팅 (n_est=100, depth=3).
| 이벤트 | 봉 | N | 로지스틱 AUC | 부스팅 AUC | 과적합 격차 | 상위 10% 정밀도 |
|---|---|---|---|---|---|---|
| 변곡 상단 | 5m | 16,533 | 0.883 | 0.896 | −0.004 | 0.915 |
| 변곡 하단 | 5m | 16,885 | 0.881 | 0.895 | +0.009 | 0.935 |
| 상승 종료 | 5m | 8,479 | 0.945 | 0.950 | +0.004 | 0.951 |
| 하락 종료 | 5m | 8,218 | 0.944 | 0.950 | +0.012 | 0.955 |
| 변곡 상단 | 15m | 5,166 | 0.878 | 0.891 | +0.032 | 0.884 |
| 변곡 하단 | 15m | 5,356 | 0.903 | 0.918 | +0.010 | 0.928 |
| 상승 종료 | 15m | 2,491 | 0.944 | 0.951 | +0.024 | 0.927 |
| 하락 종료 | 15m | 2,393 | 0.948 | 0.952 | +0.029 | 0.952 |
| 변곡 상단 | 1h | 1,243 | 0.899 | 0.902 | +0.057 | 0.947 |
| 변곡 하단 | 1h | 1,309 | 0.911 | 0.913 | +0.057 | 0.923 |
| 상승 종료 | 1h | 604 | 0.944 | 0.939 | +0.058 | 0.941 |
| 하락 종료 | 1h | 551 | 0.961 | 0.938 | +0.062 | 0.900 |
| 변곡 상단 | 4h | 320 | 0.877 | 0.863 | +0.132 | 1.000 |
| 변곡 하단 | 4h | 319 | 0.874 | 0.863 | +0.135 | 0.900 |
최저 AUC 0.863 / 최고 0.952. 4h 추세종료는 N<200 (170/151) 으로 학습 보류.
4 TF 평균 AUC (변곡·추세종료)
3.2 KST 시간대 효과 — H4 ALL PASS ✓
변곡점 발생 시간대 분포 vs 무작위 봉:
| 봉 | 최대 lift | 1순위 KST | 2순위 | 3순위 |
|---|---|---|---|---|
| 5m | 1.60x | 22시 (1.60) | 23시 (1.53) | 21시 (1.42) |
| 15m | 2.31x | 23시 (2.31) | 22시 (1.93) | 0시 (1.60) |
| 1h | 2.53x | 23시 (2.53) | 0시 (1.75) | 22시 (1.51) |
| 4h | 1.50x | 21시 (1.50) | 1시 (1.44) | 5시 (1.11) |
TF 클수록 lift 강함 (5m 1.60 → 1h 2.53). BTC 24/7 거래라 시간대 노이즈 많지만 NY 개장 시간 효과 누적되어 큰 TF 에서 명확.
KST 시간대별 변곡점 lift (TF 별)
3.3 조건부 셀 — 진짜 우위 ⭐
셀 = 이벤트 종류 × KST 시간대 × ATR 구간 × 사전 방향.
| 봉 | N≥30 셀 | 고기대값 (샤프>0.05) | 진입 (V+추세 ≥25%) | 저기대값 |
|---|---|---|---|---|
| 5m | 69 | 59 (85%) | 1 | 1 |
| 15m | 57 | 38 (67%) | 0 | 0 |
| 1h | 24 | 13 (54%) | 0 | 0 |
| 4h | 7 | 3 (43%) | 0 | 0 |
최강 셀 (5m, 샤프 기준, ATR 정규화 변동)
| 종류 | 시간대 | ATR | 사전 방향 | N | 평균 변동 (×ATR) | 샤프 | 승률 |
|---|---|---|---|---|---|---|---|
| 저점 | 기타 | 저 | 하락 | 134 | +2.60 | +0.775 | 83.6% |
| 고점 | 아시아 후반 | 중 | 상승 | 1,490 | +1.41 | +0.640 | 79.0% |
| 저점 | 아시아 후반 | 중 | 하락 | 1,567 | +1.48 | +0.639 | 79.6% |
| 고점 | NY burst | 중 | 하락 | 91 | +1.56 | +0.578 | 70.3% |
| 저점 | EU 후반 | 중 | 하락 | 897 | +1.50 | +0.542 | 72.9% |
유일한 GO 셀 (5m, V+추세 ≥ 25%)
kind=고점 / slot=기타 / atr=저 / pre_dir=상승 — N=105, V+추세 27.6%, 평균 +2.45×ATR, 샤프 +0.487, 승률 81.9%.
1h TOP HIGH EV 셀
kind=저점 / slot=기타 / atr=중 / pre_dir=하락 — N=303, 샤프 +0.477, 승률 73.9%, 평균 +1.43×ATR. NQ 1h GO long 의 같은 패턴 (저점/기타/저ATR/하락) 과 일치.
3.4 Cross-asset (NQ ↔ BTC) ⭐
핵심: NQ 메소드가 BTC 에 그대로 작동 — 단 시간대·거래량 시그널 비중 자산별 차이.
5m AUC + Top-3 features
| 비교 | NQ 5m | BTC 5m | 차이 |
|---|---|---|---|
| 평균 AUC | 0.917 | 0.923 | +0.006 |
| 변곡 상단 Top-1 | 위꼬리 (0.484) | 위꼬리 (0.473) | 동일 ✓ |
| 변곡 상단 Top-2 | 사전 5봉 (0.170) | 사전 5봉 (0.153) | 동일 ✓ |
| 변곡 상단 Top-3 | 저점거리 (0.075) | 거래량 z (0.093) | BTC 만 — 거래량 시그널 |
| 추세종료 상단 Top-1 | 스토캐 D (0.455) | 스토캐 D (0.551) | BTC 더 강 ✓ |
1순위 KST 시간대
| 자산 | 1순위 KST | 해석 | lift |
|---|---|---|---|
| NQ | KST 21시 | NY pre-open (08:00 ET) — 미국 정규장 직전 | 2.0x |
| BTC | KST 23시 | NY 개장 1h 후 (10:00 ET) — 시장 방향 결정 | 2.53x (1h) |
최강 셀 (5m)
| 자산 | 셀 (kind/slot/atr/pre_dir) | 샤프 | 승률 | N |
|---|---|---|---|---|
| NQ | 저점/기타/저/하락 | +0.556 | 88.9% | 496 |
| BTC | 저점/기타/저/하락 | +0.775 | 83.6% | 134 |
가설 검증 종합
| 가설 | 기준 | BTC 결과 | 판정 |
|---|---|---|---|
| H1 변곡 AUC | ≥ 0.75 | min 0.863 | PASS |
| H2 추세종료 AUC | ≥ 0.80 | min 0.938 | PASS |
| H3 사전 AUC (전체) | ≥ 0.70 | min 0.863 | PASS |
| H4 KST max lift | ≥ 1.5x | 2.53x (1h) | PASS |
| H6 Top features 동일 | top-3 중 2개 일치 | 위꼬리 + 사전 5봉 동일 | PASS |
4. Pine 룰 (BTC 적응)
본 연구 결과를 직접 반영한 Pine 인디케이터 2종. NQ 의 v5_Fingerprint 룰을 BTC 24/7 + KST 23시 hot spot + 거래량 가중에 맞게 조정. 코드는 crypto_scan/research/v4_btc/pine/ 위치.
4.1 BTC_Common_v4 (환경)
| 마커 | 색·두께 | 의미 | NQ 와 차이 |
|---|---|---|---|
| EMA20 / 50 / 200 | 흰 굵 / 주황 중 / 빨강 얇 | 단/중/장기 추세선 | 동일 룰 |
| VWAP | 청록 stepline | 일중 평형점 | 동일 |
| BB 20·2 | 회색 얇 (fill 없음) | v5 변곡 임계 시각화 | 동일 |
| 아시아 / 런던 / 미국 세션 | 보라 / 주황 / 청록 박스 | 참고용 (BTC 24/7) | NQ 는 진입 가능 시간 표시 / BTC 는 단순 컨텍스트 |
| KST 23시 hot vline | 노랑 점선 (얇) | BTC 변곡 1순위 시간대 마커 | BTC 신규 (NY 10시) |
HUD 5행: KST 시각 (23시 노랑 강조) / Session / EMA 정렬 / 변동성 구간 / BTC Hot 표시.
4.2 BTC_v5_Fingerprint (변곡·추세종료 + 셀 GO)
| 마커 | 색·위치 | 의미 | 발동 조건 |
|---|---|---|---|
| ▼ 변곡 상단 | 주황 ▼ · 위 | 상승 후 반전 후보 | 위꼬리 > 0.5×ATR · 사전 5봉 +0.8×ATR · 스토캐K > 65 · BB%B > 70 |
| ▲ 변곡 하단 | 청록 ▲ · 아래 | 하락 후 반전 후보 | 대칭 (스토캐K < 35 · BB%B < 30 등) |
| ◆ 강한 상승 종료 | 빨강 ◆ · 위 | 강상승 끝 후보 | 스토캐D > 80 · 사전 5봉 +1.5×ATR · 위꼬리 > 0.4×ATR · close-EMA20 > 1.0×ATR |
| ◆ 강한 하락 종료 | 초록 ◆ · 아래 | 강하락 끝 후보 | 대칭 |
| ▮ 거래량 가중 ★ | 노랑 flag · 봉 위/아래 | BTC 신규 — detector 발동 + 거래량 시그널 강함 | vol_z > 1.0 또는 rvol > 1.5 (사용자 임계 조정) |
| ▲ GO LONG | 밝은 초록 ▲ (small) | 실제 진입 신호 | 변곡·추세종료 하단 + 셀 = 기타시간/저ATR/사전하락 → 승률 83.6% / 샤프 +0.775 / N=134 |
| ▼ GO SHORT | 밝은 빨강 ▼ (small) | 실제 진입 신호 | 변곡·추세종료 상단 + 셀 = 기타시간/저ATR/사전상승 → 승률 81.9% / 샤프 +0.487 / N=105 |
마이크로 HUD 4행 (오른쪽 아래): 현재 셀 / 마지막 detector / 거래량·hot spot 표시 / GO 상태.
4.3 핵심 Pine 코드 (BTC 특화 부분)
거래량 가중 (BTC 만)
// vol_z + rvol — BTC 에선 NQ 보다 importance 높음
v_ma = ta.sma(volume, 20)
v_std = ta.stdev(volume, 20)
vol_z = v_std > 0 ? (volume - v_ma) / v_std : 0.0
rvol_ma = ta.sma(volume, i_rvol_length) // 5m=288, 15m=96, 1h=24, 4h=6
rvol = rvol_ma > 0 ? volume / rvol_ma : 1.0
vol_boost = vol_z > 1.0 or rvol > 1.5
// detector 발동 + vol_boost 동시 시 ★ flag 추가 표시
BTC 셀 GO 필터 (NQ 와 동일 패턴, BTC 결과 직접 반영)
// GO LONG: 저점 detect + cell = 기타/저ATR/사전하락
// → 연구 결과 샤프 +0.775, 승률 83.6%, N=134
go_long_cell_btc = (slot == "Other" and atr_bin == "low"
and pre_dir == "down")
go_long_btc = (inflection_low or trend_end_low) and go_long_cell_btc
// GO SHORT: 고점 detect + cell = 기타/저ATR/사전상승
// → V+추세 27.6%, 샤프 +0.487, 승률 81.9%, N=105
go_short_cell_btc = (slot == "Other" and atr_bin == "low"
and pre_dir == "up")
go_short_btc = (inflection_high or trend_end_high) and go_short_cell_btc
KST 23시 BTC hot spot (Common 에)
kst_hour = hour(time, "Asia/Seoul")
is_btc_hot = (kst_hour == 23) // NY 10시 (시장 첫 시간 1h 후)
// 진입 시점 노랑 점선 vline 추가
if show_btc_hot and btc_hot_enter
line.new(bar_index, low * 0.9995, bar_index, high * 1.0005,
color=color.new(color.yellow, 50), width=1,
style=line.style_dotted, extend=extend.both)
4.4 차트 셋업 (TDV)
| 차트 TF | 활성 indicator | 주력 신호 |
|---|---|---|
| 5m | BTC_Common_v4 + BTC_v5_Fingerprint | 변곡·추세종료 detector + GO LONG/SHORT (셀 WR 83.6%/81.9%) |
| 15m | 동일 | KST 23시 lift 2.31x 활용 — NY 첫 시간 진입 |
| 1h | 동일 (단 RVOL 윈도 24 로 조정) | 최강 lift 2.53x · TOP HIGH EV 셀 샤프 +0.477 |
| 4h | 동일 (RVOL 윈도 6) | 표본 적음 — 참고 용 |
4.5 NQ Pine 과의 차이 요약
| 항목 | NQ v5_Fingerprint | BTC v5_Fingerprint |
|---|---|---|
| 거래 시간 필터 | session_active 룰 (KST 21:00-01:45) | 제거 (24/7) |
| 1순위 hot spot | KST 21시 (NY pre-open) | KST 23시 (NY 10시) |
| 거래량 가중 | 없음 (NQ 에선 marginal) | vol_z + rvol 별도 ★ 마커 |
| GO LONG 셀 | 저점/기타/저ATR/하락 (NQ 1m, WR 77.8%) | 저점/기타/저ATR/하락 (BTC 5m, WR 83.6%) — 패턴 동일 |
| HUD 행수 | 3행 | 4행 (vol/hot 행 추가) |
5. 거래 함의
| 능력 | 정확도 | 비고 |
|---|---|---|
| BTC 변곡점 식별 (실시간) | AUC 0.86~0.92 | 4 TF 모두 적용 가능 |
| BTC 추세종료 식별 | AUC 0.94+ | NQ 보다 더 강한 fingerprint |
| 최강 셀 (5m 저점/기타/저ATR/하락) | 샤프 +0.775, 승률 83.6% | NQ 동일 패턴 (cross-asset) |
| KST 23시 진입 | lift 2.53x (1h) | BTC 만의 hot spot |
운용 가이드 (BTC 특화)
- NQ 와 동일한 사전 features (위/아래꼬리 + 사전 5봉 + 스토캐 D) 사용 가능 — Pine 룰 그대로 이식
- 거래량 시그널 추가 가중 — BTC 에선 vol_z, rvol 가 NQ 보다 importance 높음 (특히 1h+ TF)
- KST 22-00시 집중 운용 — NY 개장 직후 변곡 lift 최대
- 최강 진입 셀: 저점/기타시간/저ATR/사전하락 → BTC 5m 샤프 +0.775, 승률 83.6%
- 4h TF 표본 작음 주의 — N=639 inflection only, 추세종료 N<200 결론 보류
6. 재현·한계
코드
crypto_scan/research/v4_btc/
├── download_3y.py # ccxt Bybit 3년 5m 다운로드
├── data_loader_btc.py # 5m → 15m/1h/4h resample
├── data/btc_*.parquet # 4 TF
├── (NQ 재사용) indicators.py / path_metrics.py / regime.py / events.py / profiler.py / compare.py
├── run_phase_3_2_btc.py # Pre-only AUC × 4 TF
├── run_phase_3_36_btc.py # KST lift + Conditional cells
└── results_btc_3_*/ # JSON + CSV 결과
실행 순서
cd crypto_scan/research/v4_btc
py -3.12 download_3y.py # ~70 sec, 315K rows
py -3.12 data_loader_btc.py # resample 즉시
py -3.12 run_phase_3_2_btc.py # ~2 min
py -3.12 run_phase_3_36_btc.py # ~30 sec
한계
- 4h 표본 부족 — 6,571 rows × cells 분할 시 일부 cell N<30. 추세종료 4h 학습 보류 (N<200).
- BTC 사이클 영향 — 2023 약세 → 2024 강세 → 2025 횡보 → 2026 — regime drift 큼. 시간 가중치 미적용 (flat) — 최근 6개월 OOS 로 부분 보정.
- Bybit perp 만 검증 — Binance spot 또는 Coinbase 와 미세 차이 가능 (funding rate, basis).
- 3년 = 1 cycle 미만 — 진정한 cross-cycle 검증엔 5-7년 필요. 추가 데이터 확장 시 재검증 권장.
- Pine 룰 backtest 미실행 — 진짜 entry/exit 결합 효과 별도 단계.