본 문서는 BTCGridTradingEnv 의 시간별 변천 기록 + 본 졸업 논문이 사용할 정식 환경(canonical) 정의 + 이전 결과의 인용 가능성 매트릭스를 담는다. 본 문서가 환경에 관한 단일 기준점이다. 다른 문서가 본 문서와 충돌하면 본 문서가 우선한다. RQ는 PROJECT_GOAL.md, 결과 표는 RESULTS_SUMMARY.md 참조.
Status: 2026-05-14 결정. 환경 복원 진행 중 (Step 6~7).
| 항목 | 정의 |
|---|---|
| State | 7D [log_price, divergence, holdings_value_ratio, cash_ratio, volatility, trend_short(72h), trend_long(720h)] (rolling z-score 정규화) |
| Action | 2D [aggressiveness, profit_target] ∈ [0, 1]² |
| 공식 | ATR 비례 스케일링 — gap = atr_ratio × (A + B × action) |
| Buy 공식 | buy_hi_gap = atr_ratio × (A_b + B_b × aggressiveness), buy_lo_gap = atr_ratio × (C_b + D_b × aggressiveness) |
| Sell 공식 | sell_market_gap = atr_ratio × (A_s + B_s × profit_target), sell_cost_gap = atr_ratio × (C_s + D_s × profit_target) |
| 체결 | 지정가 (limit price) — next_low ≤ buy_* 시 buy_* 가격으로 체결, next_high ≥ sell_* 시 sell_* 가격으로 체결 |
| Reward | step_return × β (β=1.0 symmetric, β=2.0 asymmetric. config에서 결정) |
| 사이클 | holdings == 0 → 첫 매수 시 시작 / holdings → 0 복귀 시 종료 |
| Order sizing | cycle_slot_size = cycle_start_cash / n_splits, per_order_size = cycle_slot_size / n_buy_orders |
| 매도 | threshold_btc = cycle_slot_size / price 이하면 전량 청산, 아니면 holdings / n_splits 분할 |
| 데이터 분할 | Train 2017-10 ~ 2020-12 (~3.4년), Val 2021-01 ~ 2023-12 (~3년), Test 2024-01 ~ (봉인, exp035까지) |
| Fee | 0.05% (Binance maker fee) |
| 기본 계수 (formula_coefs) | A_b=0.285, B_b=1.748, C_b=5.223, D_b=18.683 (Buy: exp023 Bayesian Trial #42), A_s=0.05, B_s=1.95, C_s=2.5, D_s=7.5 (Sell: Phase 2 재설계 — Bayesian 대상 제외, RL action 충돌 방지) |
→ Phase 3 의 exp030~035 는 모두 본 환경 (Env-v4) 위에서 진행.
| 항목 | 값 |
|---|---|
| Action | 2D [aggressiveness, profit_target] |
| 공식 | 고정 절대 범위 — 예: buy_hi_gap = 0.0001 + aggressiveness × 0.05 ([0.01%, 5%]) |
| ATR 사용 | State[4] 만, 공식에는 없음 |
| 체결 | next_low/high (favorable bias) |
| 데이터 분할 | Train 2020-01 ~ 2022-12, Val 2023, Test 2024~ |
주요 결과: exp001 Val Sharpe 0.795, exp002 0.745, exp005 0거래 수렴. → fee 손익분기 문제 발견.
전환 commit: 352a98b (action 공식 ATR 비례 스케일링 도입).
| 항목 | 값 |
|---|---|
| Action | 2D [aggressiveness, profit_target] |
| 공식 | ATR 비례 — gap = atr_ratio × (A + B × action) |
| ATR 사용 | State[4] + Action 공식 |
| 체결 | next_low/high (favorable bias) ⚠️ |
| 데이터 분할 | exp017 시점: Train 2020-01 ~ 2022-12 / Val 2023. exp019 이후: Train 2017-08 ~ 2020-12 / Val 2021-2023H1 (Split B) |
주요 결과:
→ 환경 구조는 본 논문 (Env-v4) 와 거의 같지만 체결가 favorable bias 로 수치 부풀려짐. 본 논문 인용 시 ⚠️ 주의.
전환 commit: 757c1ce (exp024 env 재설계 — ATR 제거, 4D 절대 gap), e84862e (체결가 지정가 수정).
| 항목 | 값 |
|---|---|
| Action | 4D [buy_hi_coef, buy_lo_extra, sell_m_coef, sell_c_coef] |
| 공식 | 절대 % gap — 예: buy_hi_gap = action[0] × 0.10 ([0%, 10%]), ATR 미사용 |
| ATR 사용 | State[4] 만 (Action 공식엔 없음 — dead state 문제) |
| 체결 | 지정가 ✓ |
| Reward | step_return × β (asymmetric 옵션) |
| 데이터 분할 | Train 2017-08 ~ 2020-12 / Val 2021-01 ~ 2023-12 / Test 2024-01 ~ |
주요 결과 (지정가 체결로 현실화):
→ 본 논문 사전 증거 (asymmetric reward 효과) 가 이 환경에서 나옴. 다른 환경이라 본 논문 (Env-v4) 에서 재현 검증 필요.
본 졸업 논문의 정식 환경. exp030~035 가 모두 Env-v4 에서 진행.
Env-v2 와의 차이:
Env-v3 와의 차이:
ATR Baseline (Bayesian 50 trials):
RL with Asymmetric Reward β=2.0 재현 (1M steps):
결론: 본 논문 §5 strong positive thesis 사전 증거 확보. exp032 4 variant 비교에서 정식 검증 예정.
→ Phase 2~3 의 핵심 발견 (asymmetric reward, exp027_rl) 이 Env-v4 에서도 유지됨. 환경 복원 작업 성공.
| Exp | 환경 | 본 논문 직접 인용? | 사유 / 처리 |
|---|---|---|---|
| exp001 ~ exp005 | Env-v1 | ❌ | 다른 환경. Phase 1 negative finding 정성적 언급만 |
| exp006 ~ exp016 | Env-v2 (체결가 버그) | ⚠️ 정성적 | 학습 안정화 발견 (random_start, ent_coef 등) 은 인용. Sharpe 수치는 favorable bias artifact 명시 |
| exp017 ~ exp023 | Env-v2 (체결가 버그) | ⚠️ 정성적 | state 7D 확장, Bayesian 계수 등 설계 결정은 인용. Sharpe 수치는 artifact 명시 |
| exp020 “RL = Fixed [1.0, 0.0]” 발견 | Env-v2 | ⚠️ 정성적 only | Policy saturation 발견은 §4 메인 인용. 단 Val Sharpe 45.39 수치는 artifact 처리 |
| exp024 ~ exp026 ATR | Env-v3 (4D) | ❌ 직접 인용 불가 | 환경 다름. 단 “체결가 수정으로 수치 현실화 (수조% → 1~2)” 발견은 §3.1 method 설명 |
| exp026 ATR (Bayesian) | Env-v3 | ❌ | Env-v4 에서 재최적화 필요 (Step 9) |
| exp027 ATR+direction | Env-v3 | ❌ | Val 과적합 사례. 정성적 인용 가능 (§7.2 CPCV 필요성 motivation) |
| exp027_rl (asym β=2.0) Test Sharpe 1.955 | Env-v3 | ❌ 재현 필요 | Env-v4 에서 재현 결과가 본 논문 §5 의 사전 증거 (Step 12~13) |
| exp028 (early stopping) | Env-v3 | ❌ | 환경 다름. 학습 안정화 방법론은 exp030 에서 재구현 |
| exp029 (5D action) | (코드 commit X) | ❌ | 코드도 결과도 본 논문 외 |
가장 큰 위험: exp027_rl 의 “Test Sharpe 1.955 (ATR 2배)” 가 Env-v4 (2D ATR 비례) 에서 재현 안 될 가능성.
가능성:
대응:
본 논문 RQ 가 열린 질문이라 어느 결과든 무너지지 않음.
| 날짜 | 변경 | 근거 |
|---|---|---|
| 2026-05-14 (1차) | 본 문서 신설 (Step 1). 환경 변천 4단계 (Env-v1~v4) 정리. 본 논문 정식 환경 (Env-v4) 정의. 인용 가능성 매트릭스 작성. | 옵션 A (2D ATR 비례 복원) 결정 후 무효화 범위 명시 + 재현 작업 토대 마련 |
| 2026-05-14 (2차) | Env-v4 검증 결과 채움. ATR Bayesian (Val Sharpe 1.505) + RL asym β=2.0 재현 (Val Sharpe 2.250, +49%) 완료. 시나리오 A 확정. | 환경 복원 + 재현 작업 완료 |