v0.24.0
Added
rebalance --no-sweep(orsweep = falsein the config / per[[account]]):
touch only the tickers listed in the CSV and leave every other held
position untouched — for running a strategy sleeve inside a mixed account.- Default (
--sweep) is unchanged: the CSV is the complete book, so any held
ticker not in it is liquidated (the account-wide sweep). - Under
--no-sweep, close a rotated-out name by listing it explicitly with
weight 0 (handled by the existing weight-0 exit path). Held-but-unlisted
positions are surfaced in the preview askept — not in targets (--no-sweep)
with no order, and never trigger a whole-book snap. - Threaded through
rebalance,multi, and the post-trade verify/self-heal path.
- Default (
Note
- This addresses a long-standing footgun: pointing the rebalance at an account
that holds positions outside the target CSV would liquidate them.--no-sweep
makes that opt-out explicit. Companion change in msts-live: the published
weights feed can emitweight=0rows for rotated-out names (theremovedset
it already computes) so liquidations are explicit rather than sweep-implicit.
What's Changed
- feat(rebalance): --no-sweep — leave unlisted positions untouched (0.24.0) by @markudevelop in #5
Full Changelog: v0.23.0...v0.24.0