feat: OI nan 마스킹 / epsilon 통일 / 정밀도 우선 임계값 #1
Reference in New Issue
Block a user
Delete Branch "feature/oi-nan-epsilon-precision-threshold"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
dataset_builder.py에서 0.0 구간(데이터 미제공 구간)을np.nan으로 마스킹. LightGBM은 nan 자체 처리, MLX는nanmean/nan_to_num으로 처리bb_pct,atr_pct,vol_ratio,xrp_btc_rs,xrp_eth_rs분모에1e-8epsilon 패턴으로 통일하여 zero-division 방지train_model.py/train_mlx_model.py모두 F1 기반 그리드 탐색 →precision_recall_curve기반 recall≥0.15 조건부 정밀도 최대화로 교체Test Plan
test_oi_nan_masking_no_column: oi_change 컬럼 없을 때 전부 nantest_oi_nan_masking_with_zeros: 0.0 구간 nan 마스킹, 실제 값 구간 유한값 존재test_epsilon_no_division_by_zero: 극단값(close=0, bb_range=0)에서 inf 없음test_fit_with_nan_features: MLX GPU 환경에서 실행 필요 (현재 환경 Metal 초기화 실패)