"""S1 spike:vnpy.alpha A 股支撑度。 验证在 scripts/spike_s1_alpha_ashare.py(NAS 容器内运行,用 Phase 1 真实数据)。 VERDICT: PASS —— vnpy.alpha 完整处理 A 股数据。 关键发现(修正后续 task): - AlphaLab 存的列名是 open/high/low/close(非 _price)→ data_adapter.py - 表达式语法是 ts_/cs_/math 算子 + 列名 DataProxy(非 pl.col)→ library.py - prepare_data 用 spawn pool(~11s/因子,spawn 开销)→ 编排层性能注意 """ def test_s1_a_share_support_recorded(): findings = { "alphalab_init": "OK", "data_convert_from_phase1": "OK (117 bars 600000.SSE 2024-01~06)", "save_load_roundtrip": "OK (vt=600000.SSE, 117 loaded)", "expression_factor_calc": "OK (ts_mean(close,5) → ma5 列, 31 rows in TEST segment)", "t_plus_1_support": "N/A (因子层不强制,由策略/回测层处理)", "price_limit_support": "N/A", "suspend_support": "N/A", } # S1 VERDICT: PASS assert findings["alphalab_init"] == "OK" assert findings["data_convert_from_phase1"].startswith("OK") assert findings["save_load_roundtrip"].startswith("OK") assert findings["expression_factor_calc"].startswith("OK")