chore: safety snapshot 2026-03-05 — HCM infrastructure before 2y klines experiment
Captures critical infrastructure surrounding the nautilus_dolphin core package: - dolphin_vbt_real.py: VBT vectorized backtest engine (6008 lines) - dolphin_paper_trade_adaptive_cb_v2.py: champion runner (champion_5x_f20) - _update_vbt_cache.py / update_VBT_parquet_cache.bat: cache builder - external_factors/: ExF system (all 85 indicator fetchers + NPZ cache) - mc_forewarning_qlabs_fork/: QLabs-enhanced MC-Forewarner research fork - DATA_LOCATIONS.md: source-of-truth path registry - .gitignore: excludes vbt_cache*, backfilled_data, .venv, models, etc. Note: nautilus_dolphin/ has own git repo (inner) — safety snapshot committed there separately. Champion state: WR=49.3%, ROI=+44.89%, PF=1.123, DD=14.95%, Sharpe=2.50 (55d, full-stack, abs_max_lev=6.0). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
40
_update_vbt_cache.py
Normal file
40
_update_vbt_cache.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
Helper script to update VBT Parquet cache.
|
||||
Called by update_VBT_parquet_cache.bat
|
||||
"""
|
||||
import sys
|
||||
from pathlib import Path
|
||||
from multiprocessing import freeze_support
|
||||
|
||||
# Add current directory to path
|
||||
sys.path.insert(0, str(Path(__file__).parent))
|
||||
|
||||
def main():
|
||||
try:
|
||||
from dolphin_vbt_real import build_parquet_cache
|
||||
except ImportError as e:
|
||||
print(f"ERROR: Cannot import dolphin_vbt_real: {e}")
|
||||
print("Make sure you're running from the project root directory.")
|
||||
return 1
|
||||
|
||||
print("Starting VBT cache update...")
|
||||
print()
|
||||
|
||||
try:
|
||||
stats = build_parquet_cache(force=False)
|
||||
print()
|
||||
print("Update complete!")
|
||||
print(f" Dates processed: {stats.get('dates_processed', 0)}")
|
||||
print(f" Total scans: {stats.get('total_scans', 0):,}")
|
||||
print(f" Time: {stats.get('elapsed_s', 0):.1f}s")
|
||||
return 0
|
||||
except Exception as e:
|
||||
print(f"ERROR: {e}", file=sys.stderr)
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
return 1
|
||||
|
||||
if __name__ == '__main__':
|
||||
freeze_support()
|
||||
sys.exit(main())
|
||||
Reference in New Issue
Block a user