Originally tracked as an inline TODO at qsh_parser.py:273.
Current state: to_ohlcv produces open/high/low/close/volume/buy_volume/sell_volume/oi/trades columns.
Add: VWAP column = sum(price * volume) / sum(volume) per bucket.
Acceptance criteria:
- New 'vwap' column in to_ohlcv output, computed from deals.
- NaN-safe (empty bucket → NaN, not 0).
- Add a unit test with a small synthetic deals stream.
Originally tracked as an inline TODO at qsh_parser.py:273.
Current state: to_ohlcv produces open/high/low/close/volume/buy_volume/sell_volume/oi/trades columns.
Add: VWAP column = sum(price * volume) / sum(volume) per bucket.
Acceptance criteria: