chore: 작업 중 발생한 부수적 변경 사항 및 누락된 파일 전체 커밋

- 프론트엔드 UI 업데이트 (backtest.html, backtest.js) 엔진 라디오 버튼 통합 관련 반영
- Rust 플러그인(kis_rust_core) 및 컴파일 소스코드 추가
- CLI 백테스트 스크립트 수정 및 최신화
- 기타 스크래치 테스트 스크립트, 로그 요약 마크다운(.md) 등 누락 파일 일괄 반영
- 추가적으로 아직 발견되지 않은 엣지 케이스나 렌더링 오류가 포함되어 있을 가능성이 있음
This commit is contained in:
Your Name
2026-09-06 17:04:50 +09:00
parent 4dbb1387a1
commit e1ac8d119b
181 changed files with 8371 additions and 503 deletions

21
scratch/simulate_fill.js Normal file
View File

@@ -0,0 +1,21 @@
const fs = require('fs');
const glob = require('glob');
const jobs = glob.sync('/home/hoon/kis_bot/logs/optuna_web_jobs/*.json');
const latest = jobs.sort((a,b) => fs.statSync(b).mtime - fs.statSync(a).mtime)[0];
console.log("Latest job:", latest);
const jobData = JSON.parse(fs.readFileSync(latest, 'utf8'));
// Find best gated trial (usually rank 1)
const resultJsonPath = jobData.result_json || jobData.log_path.replace('.log', '.json');
console.log("Result JSON:", resultJsonPath);
const resultData = JSON.parse(fs.readFileSync(resultJsonPath, 'utf8'));
const gated = resultData.top5_gated[0];
console.log("Top gated params:", gated.params);
const pTune = gated.params || {};
const pEng = gated.params_full || {};
const p = Object.assign({}, pEng, pTune);
console.log("Merged sl_pct:", p.sl_pct);
console.log("Merged use_defense_filters:", p.use_defense_filters);
console.log("Merged skip_hts_scan_dupes:", p.skip_hts_scan_dupes);