Skip to content

fix: keep full-day liquidity out of auction bars - #1040

Open
wolfgang-aura wants to merge 1 commit into
ricequant:masterfrom
wolfgang-aura:mailman/issue-1039
Open

wolfgang-aura wants to merge 1 commit into
ricequant:masterfrom
wolfgang-aura:mailman/issue-1039

Conversation

@wolfgang-aura

Copy link
Copy Markdown

Closes #1039.

Open-auction bars were returning the day's full volume and total turnover even though those values are only known after the trading session. That exposed future liquidity to auction consumers.

The base data source now leaves volume and total_turnover unavailable on default open-auction bars. Explicit auction-bar providers remain supported, and the default volume helper follows the bar or returns NaN when no auction bar exists.

How this was tested

  • Focused tests for the base data source and matcher: 18 passed.
  • The exact open-auction reproducer passed after the change.
  • The matcher regression confirms that an explicit auction volume of 900 fills 900 shares of a 1000-share order and cancels the remainder.

The broad repository suite remains environment-limited by existing fixture and TA-Lib requirements. The target repository's CI should provide the full-project check.

Alternative considered

Returning zero for unavailable auction liquidity would be numeric but misleading. The focused override test covers the explicit provider path, while NaN marks data that is unavailable at auction time.

AI disclosure

This change was drafted and reviewed with AI assistance through Codex (gpt-5.6-luna) under Mailman. The verification results above were recorded by Mailman's test harness.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Open-auction bar copies the full day's volume and total_turnover

1 participant