Improve validations for LimitIfTouchedOrder #2533
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Standardized validations for
LimitIfTouchedOrder
(fixes #2529)Summary of the changes
new_checked
forLimitIfTouchedOrder
, bringing it in line withMarketOrder
andLimitOrder
.quantity
,price
,trigger_price
display_qty
≤quantity
TimeInForce::Gtd
→ non‑zeroexpire_time
requiredBUY ⇒ trigger ≥ limit
,SELL ⇒ trigger ≤ limit
)new
now wrapsnew_checked
, preserving the old panic‑on‑error behaviour for external callers.Display
implementation.Type of change
How has this change been tested?
cargo test -p nautilus-model --lib limit_if_touched --features python
– rule set runs 5 dedicated unit-tests:ok
quantity_zero
gtd_without_expire
buy_trigger_lt_price
sell_trigger_gt_price