Files
ftdt-quant-lab/dashboard
ramseshk 2aca789581 fix: NaN win_rate/profit_factor/expectancy crash JSON serialization
Root cause: VBT produces NaN for win_rate, profit_factor, and
expectancy when all trades have zero PnL (no winners, no losers).
JSON.dumps() rejects NaN/Inf values with 'ValueError: Out of range
float values are not JSON compliant'.

Fixes:
- Add _sanitize_nan(): recursive NaN/Inf → 0.0 for JSON safety
- Apply at end of _normalize_vbt_fields (after field fixes)
- Fix win_rate check: use 'is None' instead of 'not' (0.0 is falsy)
- Previously crashing files now work:
  grid_mm_BTC_4h_100b, hurst_vpin_BTC_1m_100b, etc.
2026-08-07 16:46:14 +08:00
..