feat(옵투나·웹): 후처리 재탐색·ob_modes·적용감사·수집통계
- Optuna web jobs/TPE/apply snapshot·틱로더 정합, jobs limit·감사로그 - 백테 UI 호가모드·후보 적용 흐름, feed_collect_stats API/탭 - 가설검증·교차검증 룰, 4전략 스모크·OB slot41 진단 스크립트 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -124,11 +124,16 @@ def prepare_scalp_search_context(
|
||||
base_fixed["_orderbook_filter_enabled"] = False
|
||||
elif _ob_mode == "on":
|
||||
base_fixed["_orderbook_filter_enabled"] = True
|
||||
ob_filter_on = bool(base_fixed.get("_orderbook_filter_enabled")) or _ob_mode == "auto"
|
||||
from kis_trader.backtest.optuna_tpe_common import optuna_tpe_needs_orderbook_feed
|
||||
|
||||
# TPE+호가축: CLI off 여도 스냅 로드. trial 이 _orderbook_filter_enabled 로 ON/OFF.
|
||||
need_ob_feed = optuna_tpe_needs_orderbook_feed(mode, _ob_mode)
|
||||
ob_filter_on = bool(base_fixed.get("_orderbook_filter_enabled")) or _ob_mode == "auto" or need_ob_feed
|
||||
logger.info(
|
||||
"📌 호가필터: %s (%s)",
|
||||
"📌 호가필터: %s (%s)%s",
|
||||
_ob_mode.upper(),
|
||||
"적용" if ob_filter_on else "스킵 — 코어 파라미터 순수 탐색 (실매 ORDERBOOK도 OFF 권장 정합)",
|
||||
"스냅로드" if need_ob_feed else ("적용" if ob_filter_on else "스킵 — 코어 파라미터 순수 탐색"),
|
||||
" · TPE 호가축" if (mode == "tpe" and need_ob_feed) else "",
|
||||
)
|
||||
|
||||
db = TradeDB()
|
||||
@@ -300,7 +305,7 @@ def prepare_scalp_search_context(
|
||||
program_by_code: Dict[str, Any] = {}
|
||||
_ob_axes = ("max_spread_pct", "min_bid_ask_ratio", "ask_max_mult")
|
||||
_ob_sweeping = any(len(set(grid_axes.get(k) or [])) > 1 for k in _ob_axes)
|
||||
if ob_filter_on:
|
||||
if need_ob_feed or ob_filter_on:
|
||||
from kis_trader.backtest.trigger_snapshot_loader import load_trigger_snapshots_by_code
|
||||
_ob_db = TradeDB()
|
||||
try:
|
||||
|
||||
Reference in New Issue
Block a user