docs(phase1): 数据层完成报告 + 端到端冒烟脚本
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
"""端到端冒烟:验证 read_db_daily 能读 NAS quant_trading.db(真实数据)。
|
||||
|
||||
在临时容器内跑(docker run --rm,挂载 /volume1/stock + /app)。
|
||||
探测 vnpy 4.4.0 database 配置 + 验证数据读取。
|
||||
"""
|
||||
import sys
|
||||
sys.path.insert(0, "/app")
|
||||
|
||||
print("=== Step 1: 探测 vnpy 4.4.0 database 配置 ===")
|
||||
from vnpy.trader.setting import SETTINGS
|
||||
db_keys = {k: v for k, v in SETTINGS.items() if "database" in k.lower() or "sql" in k.lower()}
|
||||
print("database 相关 SETTINGS:", db_keys)
|
||||
|
||||
SETTINGS["database.driver"] = "sqlite"
|
||||
SETTINGS["database.database"] = "/volume1/stock/sanguo_vnpy/data/quant_trading.db"
|
||||
print(f"已设置: driver=sqlite, database={SETTINGS['database.database']}")
|
||||
|
||||
print("\n=== Step 2: 加载 sanguo_data 配置 ===")
|
||||
from sanguo_data.config import load_config
|
||||
cfg = load_config("config/data_platform.yaml")
|
||||
print(f"cfg vnpy_db: {cfg.data_paths.get('vnpy_db')}")
|
||||
|
||||
print("\n=== Step 3: read_db_daily 读 600000 ===")
|
||||
try:
|
||||
from sanguo_data.datareader import read_db_daily
|
||||
bars = read_db_daily("600000", "2026-01-01", "2026-06-30", cfg)
|
||||
print(f"RESULT: 读取 {len(bars)} 条 BarData")
|
||||
if bars:
|
||||
b = bars[0]
|
||||
print(f"FIRST: symbol={b.symbol} dt={b.datetime} close={b.close_price} vol={b.volume}")
|
||||
else:
|
||||
print("WARN: 0 条——可能 vnpy database 路径配置不对,或数据不在该 symbol/区间")
|
||||
except Exception as e:
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
print(f"FAIL: {type(e).__name__}: {e}")
|
||||
|
||||
print("\n=== Step 4: 直接探测 NAS db 文件 ===")
|
||||
import os
|
||||
db_path = "/volume1/stock/sanguo_vnpy/data/quant_trading.db"
|
||||
print(f"{db_path} exists: {os.path.exists(db_path)}, size: {os.path.getsize(db_path) if os.path.exists(db_path) else 'N/A'}")
|
||||
Reference in New Issue
Block a user